Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation since 06/04/2022 in Posts

  1. Image compression? CubeCart takes a source image, typically PNG or JPG, 750x750 pixels for example, then creates sized variants specific to the intended layout area and page. The source is uploaded to /images/source/, and CubeCart's variants are saved in /images/cache/. The specific variants are coded in the skin's config.xml file. Take a look a Foundation's config.xml file in a programmer's text editor. Here, you will find image nodes with the reference attribute indicating where the image is used. The product page uses 'medium' and 'gallery'. The maximum attribute specifies the length of the longest side, maintaining proportionality, but never longer than the original. (That is, if the source is 450x450 pixels, variants could be smaller, but will never be larger than that.) And, of course, the browser can scale the image to fit the layout's placement if the HTML coding allows it. Note also the quality attribute. For many image formats, there is the 'compression ratio', expressed as a 'quality' -- 100 being very lightly compressed, if at all, and 10 looking like crap. I have visited web pages that initially show a super-blurry image (high compression), then eventually, under javascript control, fetches a high-quality (large filesize) image to replace the blurry one. Currently, CubeCart does not do this.
    1 point
  2. Even though CC651 says it will run under PHP7.1+ (that statement is a bug), we very much recommend running PHP7.4, and highly recommend PHP8.1. That "unexpected =" error is from the new (as of PHP7.4) 'null coalescing assignment' operator. https://www.php.net/manual/en/migration74.new-features.php#migration74.new-features.core.null-coalescing-assignment-operator
    1 point
  3. In admin, Email Templates, click the language of the email you wish to edit. On the next screen, on the HTML Content tab, note that in the list of Available Macros, there is {$DATA.customer_comments}. Add this to the HTML of the email wherever you wish. For example: Find: <p><a href="{$DATA.link}">{$DATA.link}</a></p> Add after: <p>Your comments about this order: &quot;{$DATA.customer_comments}&quot;</p>
    1 point
  4. Please post a PM with your email address and I will send a ZIP file having the "Previous Purchase" plugin.
    1 point
  5. I am not sure what I have done wrong, this still does not seem to work. I have even rebooted my puter. I assume somehow I am not able to "reload resources" I am off to find how to do that. On my laptop I have to press Fn button to get to function keys. When I hit Shift+Fn+F5 I get something that looks like it wants to record something likw a macro or something. I should say I am on Firefox. WORKS PERFECT!!! I had to use CTRL+Fn+F5 Now the images work as described by bsmither. I will say this is a bit tedious and hope it gets fixed in the source soon. But until then bsmither is always awesome!!!
    1 point
  6. It sounds like you may be encountering a technical issue while trying to generate a token. Without additional information, it's difficult to provide specific troubleshooting advice. However, one possible solution could be to clear your browser cache and cookies, and then try generating the token again. Regarding your question about the tracking ID, it depends on which version of Google Analytics you are using. If you are using the newer Google Analytics 4, then you would enter the g-tag number (e.g. G-0K5RYTYZ11) as the tracking ID. If you are still using the older Universal Analytics, then you would enter the UA number (e.g. UA-26600668-1) as the tracking ID. UPSers Login
    1 point
  7. You are getting the address items from the admin, Order Summary page? If so, try the following: In the admin /sources/orders.index.inc.php: Near line 419, find: $overview_summary['country'] = is_numeric($overview_summary['country']) ? getCountryFormat($overview_summary['country'], 'numcode', 'name') : $overview_summary['country']; After that, add: $overview_summary['state_abbrev_d'] = is_numeric($overview_summary['state_d']) ? getStateFormat($overview_summary['state_d'], 'id', 'abbrev') : $overview_summary['state_d']; $overview_summary['state_abbrev'] = is_numeric($overview_summary['state']) ? getStateFormat($overview_summary['state'], 'id', 'abbrev') : $overview_summary['state']; In the admin template orders.index.php: Near lines 163-164, from: {$OVERVIEW_SUMMARY.town_d|upper}<br> {if !empty($OVERVIEW_SUMMARY.state_d)}{$OVERVIEW_SUMMARY.state_d|upper}, {/if}{$OVERVIEW_SUMMARY.postcode_d}<br> To: {$OVERVIEW_SUMMARY.town_d|upper}&nbsp; {if !empty($OVERVIEW_SUMMARY.state_abbrev_d)}{$OVERVIEW_SUMMARY.state_abbrev_d|upper}, {/if}{$OVERVIEW_SUMMARY.postcode_d}<br> Near lines 174-175, from: {$OVERVIEW_SUMMARY.town|upper}<br> {if !empty($OVERVIEW_SUMMARY.state)}{$OVERVIEW_SUMMARY.state|upper}, {/if}{$OVERVIEW_SUMMARY.postcode}<br> To: {$OVERVIEW_SUMMARY.town|upper}&nbsp; {if !empty($OVERVIEW_SUMMARY.state_abbrev)}{$OVERVIEW_SUMMARY.state_abbrev|upper}, {/if}{$OVERVIEW_SUMMARY.postcode}<br>
    1 point
  8. Nice idea! In admin, Maintenance, Rebuild tab, there is a means to "Reset all product view counts". "Views" is one of the choices on what criteria to base a query for "Best Sellers" (aka Popular Products). But resetting Views might be overkill for some. I have in mind a text box next to Store Settings, Layout tab, "Source data for popular products" saying, "Within the past [###] days." This won't be a date range, but will this suffice for your needs?
    1 point
  9. I added more to my post above. Please reload this forum page. There is no urgency in removing the debugging code. It does not affect how CubeCart runs.
    1 point
  10. You can check your "includes/global.inc.php" file it will have the link to the admin page in it, $glob['adminFile'] = 'admin_xxxxx.php';
    1 point
  11. You might be able to set identifier exists = false in the feed rules on Google's end:
    1 point
  12. Please create the error log: https://forums.cubecart.com/topic/51550-how-to-create-the-error-log/ There may be clues to what is happening.
    1 point
  13. Yes. That data item is found in {$PRODUCT.use_stock_level}. The code sequence: {if $PRODUCT.use_stock_level}Extra language{/if} will need to be in template code (as opposed to the "Description" content of the product's data).
    1 point
  14. A Zone, for whatever purpose (i.e., having countries), but no shipping rates for that zone, will not have any rates to offer the customer to choose. Yes, the zone will match (Canada, for example), but there will be no rate available -- neither because, for any of the rates that could be supplied, none fit the conditions, nor because there are no rates at all. Thus (in later versions of AIOS), the module will try to match a rate's conditions listed in "Rest of World". So, short answer, a zone with no rates is as good as being disabled (suspended), and as good as having been deleted, and as good as not having been created at all. The point of the "Uncheck to Suspend" feature is to keep the zone with its list of rates intact, but to not use them.
    1 point
  15. According to this issue in the Github: https://github.com/cubecart/v6/issues/2754 a zone cannot be created against countries and counties/states that are not enabled. However, the question remains, what if a country is later disabled, after a zone has been created for it? Will CubeCart still offer any shipping to a customer whose delivery address contains a disabled country/county/state? Regardless, a means to enable/disable each already created zone is a nice idea. Be back soon.
    1 point
  16. Regarding the template syntax error, an issue has been posted in the Github. https://github.com/cubecart/v6/issues/3126 3. Check the code in the admin skin file filemanager.index.php, near lines 122-129: {if $FILE.type == 1} <div> <label for="alt">{$LANG.filemanager.alt}</label> <span> <input type="text" id="alt" name="details[alt]" class="textbox" value="{$FILE.alt}"> </span> </div> {/if} Also in this file, make this change: Lines 117-119, from: <select name="details[move]" id="move" class="textbox"> <option value="">{$LANG.form.please_select}</option> </select> To; <select name="details[move]" id="move" class="textbox"> <option value="">{$LANG.form.please_select}</option> {if isset($DIRS)}{foreach from=$DIRS item=dir} <option value="{$dir.path}"{$dir.selected}>{$dir.path}</option>{/foreach}{/if} {* #3121 *} </select> 1. Is this what CubeCart reports in admin, Dashboard, Store Overview tab? Or is this aspect of the server environment being shown somewhere else?
    1 point
  17. On my development system, I am trying Amzin 1.05 on CC647 running under PHP8.1. (Found a bug in a template.) But the links appear correct. I have not yet installed CC649. But analyzing code differences between CC647 and CC649 shows no likely source of this situation.
    1 point
  18. The package of files that has been offered to replace a few existing troublesome files did have a change in the one file (ini.inc.php) that declares the version (now 6.4.9). Replacing these troublesome files does not require that setup be run again. This package contains no changes to be made to the database or the database contents. Hence, normally, setup makes an entry in the database table CubeCart_history with the version "processed" and the timestamp when it happened. But simply replacing these troublesome files did not also make the appropriate entry in the CubeCart_history table. Using an external database utility, view CubeCart_history and change the value "6.4.8" to "6.4.9".
    1 point
  19. Please try this edit: In /classes/language.class.php, line 106: From: if(ADMIN_CP == false && isset($d[$url['host']]) && !empty($d[$url['host']])) { To: if( (!defined('ADMIN_CP') || ADMIN_CP == false) && isset($d[$url['host']]) && !empty($d[$url['host']])) {
    1 point
  20. Did you follow the steps in method 1? https://support.cubecart.com/hc/en-gb/articles/360003794198-How-do-I-upgrade-from-CubeCart-v6-to-latest-v6-
    1 point
  21. We are in the middle of developing a plug-in to cover both these areas of functionality. It is a big job to do it fully so have no release date yet but will be in the first half (hopefully first quarter) of next year. If you want to register as a client at our website and open a support ticket asking about this, we are interested in people’s views on functionality and we can keep you updated regarding progress
    1 point
  22. An enhancement regarding Gift Cards allows: the admin to assign a collection of images to the Gift Card system. One image is the default (master). the admin to have a text editor to add more content to the Gift Card purchase page. the customer to choose an image when purchasing a Gift Card. for the additional content to appear on the Gift Card purchase page. At checkout, a small-sized image of the chosen image appears in the list of basket items. For a physical Gift Card, the card can be (pre)printed with the chosen image. For an emailed notice, the HTML content can now include a link to the image the customer chose. For example, the collection of images may include birthday, Mother's day, Winter holiday, Valentine's day, Thank You, and other themes. This enhancement is not a plugin. It involves hard code edits.
    1 point
  23. My solution was to remove the registration page link from my skin and form fields within the registration page. I only have the the option to create an account on the checkout, therefore users and spammers will need to place an order to create an account, genuine users will do so but the spammers wont proceed. Has worked well for me for 2 years, no fake accounts created. I believe they create fake accounts so your shop sends registration emails or password resets to their targets & used to spam people and will give your store/email a bad reputation, some users may report these emails as spam and accounts like google mail will auto junk any future mail you send or your report your site to your hosting provider for sending spam.
    1 point
  24. Yes, as well as all logs.
    1 point
  25. This may be related to an open issue: https://github.com/cubecart/v6/issues/3057 If the error was copied from CubeCart's admin, System Error Log, if you hover the mouse over the error, there may be a popup that gives the trace PHP made to get to the code that errored. If that popup appears, try to copy/paste the contents to a reply here.
    1 point
  26. Please make the following change: {literal} <!-- Google tag (gtag.js) --> ... all the javascript code ... </script> {/literal} That is, surround the supplied code with Smarty's "Take this literally!" command. Otherwise, Smarty will try to interpret anything between braces as commands for itself.
    1 point
  27. Currently, no. But, CubeCart has the ability to respect a custom API call that a "cron job" would execute on schedule, as well as hooks that could be used every time that a web page is requested to update if a specified amount of time has elapsed since the last update.
    1 point
  28. Configuring Mod Security is a server administrator's responsibility. As best I know, Mod Security is configurable on a per site basis. Therefore, it may be the case that your other website may (or may not) have Mod Security installed, and/or configured differently. We would encourage you to contact your hosting provider for assistance.
    1 point
  29. The bsmither’s advice is good. It’s hard to tell when Google will start showing your website in search results. All you can do is make the website’s pages as adapted for this search engine as possible. You need to use some key phrases in all textual content on your website and make sure they look like search engine requests. You need to make the search engine believe you have the best content and that your website matches the user’s request the most. This is why people use keywords. And after you get visitors from search engines, you need to keep them on your website. You might use some help from www.atwix.com to make your eCommerce website look more attractive to the users.
    1 point
  30. Decided to persist with getting the wamp server to work in a ssl mode, so I could use PayPal commerce working offline with CubeCart. Well it has gone 10pm now and after looking at lots of variations on other sites and lots of trial and error, I have FINALLY got the PayPal Commerce extension working fully in wamp, meaning I can develop my sites offline and upload to live servers when completed... Yay.!!! This is the difference with working with outfits like CubeCart, you get help rather than sarcasm and assistance rather than bitter critique. Forwards and onwards..... Thanks Al
    1 point
  31. Thank you. By way of a bit of background for you. In the early stages of our online shop journey we checked out many different platforms including some of the well known names such as ZenCart. We found the setup of these other platforms to be quite difficult and certainly not as well organised and intuitive as CubeCart. The ease of setup and the organised admin area were the main reasons for us deciding to go with CubeCart, a good decision and we look forward to using it for a long time to come. These forum pages have been a big help, we really appreciate you being there and the assistance you provide, keep up the good work because no doubt I'll be back
    1 point
  32. 1 point
  33. For step D, be sure that the updated plugins (that needs the ionCube that works with PHP 7.4) are not enabled. Otherwise, there is still the situation of an ionCube-encoded plugin wanting a later version of ionCube that is not running under PHP 5.6. Otherwise, the above is the sequence of steps I would suggest.
    1 point
  34. If there is a blank page, then there could be error messages in admin, System Error Log.
    1 point
  35. If you have CubeCart's debug mode enabled, turn it off. I *believe* that switching off Debug mode will quiet the PHP8 Warnings (used to be Notices in PHP7). As for Google, please see: https://github.com/cubecart/v6/issues/3047
    1 point
  36. In admin, Currencies, uncheck all currencies Status except INR. Save. In admin, Store Settings, General tab, Default Currency, choose INR. Save. Have CubeCart clear its internal cache.
    1 point
  37. In Catalogue Mode, customers are not even able to add items to a shopping basket. So, there is no way for CubeCart to log what the customer wanted. The admin can try to not enable any Payment Gateways. A shopping basket should be created and an Order Summary created, which the store owner can review and amend in CubeCart's administrative backend. But there will be no means for the customer to actually pay for the items via CubeCart.
    1 point
  38. I think nearly all of the log entries matching the examples shown in the document provided, relate to the parts of the skin template system you have stripped out (Language chooser, Featured box, Sale Items box, Newsletter box, Live Help, Debug, and Skin chooser). Looking at the source HTML delivered to my browser, I see that there is a removed text entry field for the person's phone number. This will cause the form to not even be submitted if the form validation fails. In the file /skins/ho/js/3.cubecart.validate.js, at lines 66-97, there are the rules for the contact form. Remove 92-94: }, 'contact[phone]': { phone: $('#validate_phone').text() Remove 83-85: }, 'contact[phone]': { phone: true What I do not know is this: How smart is the Validator? If the Validator does not find a text entry input field having the name contact['phone'], even with a rule referencing it, will the validator still submit the form? According to this, the Validator does not check non-existing fields (from five years ago): https://forum.jquery.com/topic/jquery-validate-check-that-a-field-exists-before-validating In other words, I do not know if this edit will fix things. FYI: The core code in cubecart.class.php, says only that 'email', 'name', 'subject', 'enquiry' are the only required fields. So maybe an issue will get posted in the Github that compares the Validator rule for the phone being required, but the core code does not.
    1 point
  39. If you are used to using it, then it should not have gotten out of hand like I am theorizing it did -- if it did! You can always try a sandboxed effort of applying the CC646 edits of the new code to a copy of that file from CC645 and see if it happens again. If you have a mind to. Good reviews about Notepad++. (I don't use it because it doesn't do a few things I find very useful.)
    1 point
  40. Experiments have shown that making these two edits will resolve this issue.
    1 point
  41. CubeCart version 6.4.6 is now available. This is a maintenance release with full PHP 8 and 8.1 support. This release is backward compatible to earlier PHP versions so your hosting environment doesn't need PHP 8 or above to run it. What's New? - PHP 8 Support - Miscellaneous bug fixes Download: CubeCart-6.4.6.zip Download: CubeCart-6.4.7.zip
    1 point
  42. Brains suggestion is definately the way to go initially. Create a new file ini-custom.inc.php in the root of your store. I did have issues with the memory size when i did this, so you might want to play with this. <?php # Custom initialization commands # Filename: ini-custom.inc.php # File location: main CubeCart folder ini_set('memory_limit', '256M'); ini_set('max_execution_time', '60'); ini_set('error_log', 'error_log'); ini_set('log_errors', 'on'); ?> To add to this, Cubecart support is extermely fair. You'd be hard pushed to find dedicated product support at such a price anywhere else. https://www.cubecart.com/technical-support
    1 point
  43. Sorry to hear this Rosemary. Best of luck achieving what you want. I'm not sure I have any valuable input.
    1 point
  44. Chaps.. This situation is embarrasing, I'm getting female members of my team telling me that they are receiving explicit messages from one of our contact forms. Can anyone suggest how I get invisible working, failing that I'll have to employ the services of a dev to write something which works.
    1 point
  45. Recently had to change the password on a friend's Outlook 2013 (which does not do OAuth like Thunderbird). Now, I have not actually done this for my development installations of CubeCart yet, but I have every expectation that this will work. What you need to do is to acquire an "app password" for your "less-than-secure" app (as Google puts it). See: https://support.google.com/accounts/answer/185833 To do this, you will need a cell-phone. In your GMail account settings page, find the Security section. Enable "Two-step Verification". (This is not as bad as it sounds.) This is only to verify that the person doing this process is, in fact, you. Google will text a code when you begin the process of generating an app password. There should now be a new option in the "Signing in to Google" section for App Passwords. Select this option. On the App Password page, choose Select App, and for the name of the app, choose something like FettleBox Store (something in one or two words to describe what you are to use this app password for). Then choose Generate. The 16-digit number in a yellow banner is what you will enter in CubeCart's SMTP Password field (the banner shows spaces between each set of four digits that are not part of the password - do not include the spaces). This is all how it worked for Outlook 2013. I expect it to also work when wanting to use GMail as the SMTP server for CubeCart.
    1 point
  46. Attached is a follow-on report for more edits needed to make CC645 run under PHP 8.1 - attempting to eliminate (at least minimize) the numerous error messages that PHP logs. Some of these edits assume that the edits and file replacements found in the prior report have already been made. PHP8.1_Changes2.txt.zip
    1 point
  47. Hi, I just tried this again with with PayPal Commerce 1.6.2 and still no joy, therefore I downloaded the 1.6.2 code to get a better look .. And this is what I found - /** * CubeCart v6 * ======================================== * CubeCart is a registered trade mark of CubeCart Limited * Copyright CubeCart Limited 2019. All rights reserved. * UK Private Limited Company No. 5323904 * ======================================== * Web: http://www.cubecart.com * Email: [email protected] * License: GPL-3.0 http://opensource.org/licenses/GPL-3.0 */ function ppcp_body_js($tpl_output, Smarty_Internal_Template $template) { $skins = $GLOBALS['gui']->getSkinData()['info']; // $skin = $GLOBALS['gui']->getSkinData(); if (($pp_config = $GLOBALS['cache']->read('pp_config.'.$skins['name'])) === false) { if(file_exists('modules/plugins/paypal_commerce/config.custom.json')) { $pp_config = file_get_contents('modules/plugins/paypal_commerce/config.custom.json'); } else if(file_exists('modules/plugins/paypal_commerce/config.'.$skins['name'].'.json')) { $pp_config = file_get_contents('modules/plugins/paypal_commerce/config.'.$skins['name'].'.json'); } else { $pp_config = file_get_contents('modules/plugins/paypal_commerce/config.foundation.json'); } $GLOBALS['cache']->write($pp_config, 'pp_config.'.$skins['name']); } if(isset($GLOBALS['cart']->basket['total']) && $GLOBALS['cart']->basket['total'] > 0) { $pp_amount = $GLOBALS['cart']->basket['total']; } else { $pp_amount = "null"; } return preg_replace('/\<\/body\>/i','<script id="pp_config" type="application/json">'.$pp_config.'</script><script> var pp_config = JSON.parse(document.getElementById(\'pp_config\').textContent) var pp_amount = '.$pp_amount.';</script></body>', $tpl_output); return $tpl_output; } $GLOBALS['smarty']->registerFilter("output","ppcp_body_js"); On about the third line of code you can see I have replaced a line. Now the thing is that this was never going to work the variable '$skin' is never referenced in the code so its clearly in error. The question is why did nobody else experience the same ? Its probably because, and this is just a guess, many other skins are strongly based upon the foundation skin, but as I say that's only a guess .. Anyway it seems to be working now but no production test yet.. Chris.
    1 point
  48. I had issues with SendinBlue. I don't recall the exact scenario, but it went along the lines of them rejecting my mailing campaign half way through sending. I quickly spent my credits and went elsewhere. Moosend is perfect for our requirements, although they are fussy with certain address uploads.
    1 point
  49. I found it! was in navigation.ss and .top-bar-section! I am so rusty on this kind of work! Thanks for the help
    1 point
×
×
  • Create New...