Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation since 09/27/2022 in all areas

  1. I answered this question just a few days ago. But I cannot find that conversation. In admin, Product Options, Add a new group using the type "Textbox (Single Line)". Give an appropriate description (optional - only the admin will see this) and a Name. Save. In admin, Products, bring a product up for editing. On the Options tab, Add New Option, select the name of the textbox from the drop-down. Here, you can also specify a price differential. CubeCart does not yet have the code to dynamically add/display follow-on options based on some other option or option combination.
    1 point
  2. Some CC users may find this little code hack handy. I found a solution after it was flagged as an accessibility issue by Google. It allows you to add a title and/or description to an svg icon , in this instance the svg home icon seen in the mobile skin or on small screens, improving the user experience for people with accessibility issues. Find this original code in template element.breadcrumb.php <a itemprop="item" href="{$STORE_URL}"> <span class="show-for-small-only"> <svg class="icon"><use xlink:href="#icon-home"></use></svg> </span> <span class="show-for-medium-up" itemprop="name">{$LANG.common.home}</span> </a> Edit to include the information for aria-describedby mark up: <a itemprop="item" href="{$STORE_URL}"> <span class="show-for-small-only"> <svg class="icon" aria-describedby="svg-titlehome1 svg-deschome1" role="img"><title id="svg-titlehome1">home</title><desc id="svg-deschome1">home</desc><use xlink:href="#icon-home"></use></svg> </span> <span class="show-for-medium-up" itemprop="name">{$LANG.common.home}</span> </a> The result of the additional code is the word 'home' appearing on hover over the home SVG icon in the mobile skin. I've also made the same code addition to the home svg icon in box.navigation.php however you will need to change the aria-describedby title and desc to unique / different ID names in a second instance for it to work with both templates.
    1 point
  3. These {$var} entities are for Smarty, the template rendering engine, and are evaluated before the finished HTML is sent out of the web server. Using the More button causes javascript (at the browser) to request, receive, and use only a specific portion of the next page, which gets appended to the end of the scrollable products area. This specific portion of the incoming HTML may have the page number somewhere in it, but it will not be tied to {$page}. That is, having added {$page} to a different template, or a new place in the content template, when Smarty replaces it with a actual number (at the server), that new number won't show if it is outside of the portion of the finished HTML that the javascript uses.
    1 point
  4. It is the whole reported number as the percentage, that is, for you, 7.00 (do not include the actual percent character). If you are experiencing this in CC654, please know that several stores are experiencing tax calculation issues. The solution at present is to make an edit to the following file: /classes/cart.class.php, line 1203, remove the line: $this->get(); The value $37.90 is 3X what the tax should be, thus somewhere, somehow, CubeCart is running $179 through the tax calculator three times. (Personally, I have not discovered why, but the programmers imply this should be the fix.)
    1 point
  5. You were absolutely correct @Al Brookbanks Yesterday - I tried to fix this by reinstalling 1.9.6 and got the same errors but 1.9.7 from today has solved it! Many thanks. Really helpful
    1 point
  6. Ok in that case try 1.9.7 (just released): https://www.cubecart.com/extensions/plugins/paypal-commerce
    1 point
  7. This issue will be resolved with an upgrade to the latest version. I'd recommend using the latest build: https://github.com/cubecart/v6/archive/refs/heads/v6.5-master.zip
    1 point
  8. I have read that CC650+ works with PHP 8.3. (Currently, I cannot experiment with PHP 8.3 because my server's operating system is too old.)
    1 point
  9. Is it possible to show random products in the sidebar, instead of featured products? Or perhaps to show random products instead of latest products on the homepage? Thank you very much for your time!
    1 point
  10. Yes please use SagePay-1.0.13.zip. It should be fine with PHP 7.2 but 7.4 would be safer.
    1 point
  11. Please try: https://cubecart.zendesk.com/hc/en-gb/articles/360003831497-How-can-I-create-a-plugin-using-the-code-hooks-system
    1 point
  12. The knowledgebase article that (sparsely) covers this is: https://cubecart.zendesk.com/hc/en-gb/articles/360003794038-How-do-I-create-a-new-front-end-dynamic-section-or-page (Ignore the mention about the encoded index file.) A deeper discussion can be had here on the forums.
    1 point
  13. I tried uploading a sscreenshot but server rejects it, error code 200. Instead: Product with webp image: https://cavalier-gift-shop.org/magic-puppy-valentine-s-card.html (fails) Product with a jpeg (any other product): https://cavalier-gift-shop.org/best-cavalier-mum-mug.html (all ok)
    1 point
  14. It could be that the Apache web server, in its main config settings, has not yet been set to allow for directory overrides. Please see: https://stackoverflow.com/questions/18740419/how-to-set-allowoverride-all
    1 point
  15. I am going to ignore the lines that appear to come from an SSL Cert manager. I just wanted to make sure there is an appropriate RewriteBase directive. It will be interesting as to what would be found in the web access logs.
    1 point
  16. Great! Thank you very much. It is working, I used the database credential and host localhost:9200. In the search box, to get the drop down list product, need to use mouse cursor. Can we add keyboard up,down to reach to the downward list instead of mouse cursor. Even after click outside of the search box, ES search dropdown list wont disappear. Need to used ESC key. It would be good idea to add one click functionality to clear search dropdown list like ESC key.
    1 point
  17. Thank you so much for your replies - I think I will take up your offer in the New Year for sure after my Christmas rush is over.
    1 point
  18. 1 point
  19. Since upgrading to version 6.5.2 we have the following issue: For reference our shop is located at https://www.airbornesappers.org.uk/shop/index.php We do have products with a Sale price entered, which are less than retail and greater than zero In Store Settings - Features we have Sales Mode set to Per Product, with Number of sale items to display set to 20 I don't know if the upgrade to 6.5.2 has caused this, all I can say is that prior to the upgrade Sale Items were displayed in the Sale Items category I've searched other topics and checked as much as I know what to check but can't fix this error Any help appreciated Thank you
    1 point
  20. A 'throbber' (spinning circle) that does not go away indicates that the javascript that is supposed to cancel the throbber and make the browser proceed to the next step, has crashed, failed to start, or failed to load. Failing to load could be caused by a browser extension that prohibits fetching javascript from non-whitelisted sources. While stuck on the CloudFlare page, examine the browser settings menu for a "Developer" section, then view the browser 'console'. It will indicate the cause of being stuck on the CloudFlare page.
    1 point
  21. Have done that for you on Github now. Hopefully that can be sorted, as those skins are a big plus.
    1 point
  22. That makes sense. I think I'll keep making the change instead of changing the rate rule. Thanks!
    1 point
  23. In shipping.class.php: Find near lines 237-240: $this->debug(sprintf('<strong>&gt;&gt;&gt; Shipping zone [ID %s] matches the delivery address! Use this zone for shipping calculations.</strong>', $this->_all_zones[$i]['id'])); if ($this->_settings['multiple_zones'] == 'first') { $this->debug('Looking for first matching zone of best match (instead of searching for all matching zones - see AIOS module settings)'); } else { Change to: $this->debug(sprintf('<strong>&gt;&gt;&gt; Shipping zone [ID %s] matches the delivery address! Use this zone for shipping calculations.</strong>', $this->_all_zones[$i]['id'])); if ($this->_settings['multiple_zones'] == 'first') { $this->debug('Looking for first matching zone of best match (instead of searching for all matching zones - see AIOS module settings)'); $closest_match_zone_id = $this->_all_zones[$i]['id']; break; } else { The above is the exact same edit as was posted earlier, just the line numbers have changed.
    1 point
  24. Please bring up the extension for viewing the settings in admin, Extensions, find Card Capture and click the Edit icon. On the next page shown, what does the Description field show?
    1 point
  25. Please reload this forum conversation. I made a mistake on the last line of the new code.
    1 point
  26. Yes, you can. Having different content implies having a distinct and separate database - or, at least a distinct table prefix (can be on the same database server).
    1 point
  27. I'm only running All in One Shipping v 1.0.24, Card Capture v 1.0.12, and Google Base v 1.0.3. So far, so good, but I'll keep an eye on them.
    1 point
  28. During the running of 'setup', CubeCart makes some tests: certain folders must exist and be writable, and key PHP extensions must be initialized. For CubeCart 6.5+, PHP 7.4+ (8.2 recommended but will probably be required for CC652+), the extensions include: MySQLi, GD Image library, Simple XML parser, cURL, ZipArchive, and the MultiByte String library. The test during setup is reported as a list of Pass/Fail line items on the second page shown. Setup will not proceed to the third page if any item shows as failed. CubeCart continuously checks to make sure the version of PHP is compatible, so should PHP change versions (7.4 downgrade to 7.3, for example), CubeCart will make complaints. However, CubeCart does not do continuous compliance checks for the presence of required extensions.
    1 point
  29. 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
  30. 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
  31. 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
  32. 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
  33. 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
  34. This is the one I wanted to see: [14] HookLoader::_build_hooks_list:451:Hooks: class.cubecart.display_gateways => Array ( [paypal_commerce] => Array ( [hook_id] => 248 [plugin] => paypal_commerce [hook_name] => Display Gateway or Make Payment [enabled] => 1 [trigger] => class.cubecart.display_gateways [filepath] => [priority] => 0 ) ) More to come.
    1 point
  35. 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
  36. 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
  37. 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
  38. 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
  39. 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
  40. 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
  41. 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
  42. Yes, as well as all logs.
    1 point
  43. As per Al's comments on the github issue you raised, this is almost certainly down to a faulty or partially completed upgrade
    1 point
  44. 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
  45. 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
  46. 1 point
  47. 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
  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...