Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation since 04/29/2015 in all areas

  1. Can you believe that CubeCart has been around since 2003? What started out as a small project has snowballed powering thousands of stores globally. If you have a success story you would allow us to publish we would be truly very grateful if you could share it with us. We need new merchants to realise the potential they have using CubeCart. This will help contribute to further growth, new features and an all round brighter future for everyone. Please feel free to email me personally at [email protected] with your company name, store URL and short success story of upto say 300 words. Many thanks to you all for your support.
    4 points
  2. In the skin's config.xml, find the <image reference="category">. It is set for 800 pixels on the longest dimension. Change this to 900. It will auto-scale down to fit the container (which is 848 px wide). Next, you will need to find the CSS rule (I do not know where it would be.): .cat-hdr-img img { margin: 0px auto 5px; } Change to: .cat-hdr-img img { margin: 0 0 5px; } This CSS change will remove the margin that the browser adds to either side of the image, in equal part, to center the image in the slightly wider container. Be sure to clear Cubecart's cache.
    2 points
  3. The developer will probably / should be releasing a new version of the skin to take account of all of the skin changes included in this recent version. However, if you are using a modified version, then that update will not automatically apply to your store and you should chat to the developer about this. If you dont make all the front end skin changes then you wont be able to take advantage of any fixes / new functionality that has been added - you may say that you dont need this functionality but it is always best to stay fully up to date because the situation simply gets worse and worse with each upgrade that is released - this is the problem with having custom changes
    2 points
  4. Try this: In includes/ckeditor/config.js, at the bottom, find: config.allowedContent = true; }; Change to: config.allowedContent = true; config.coreStyles_italic = {element : 'em'}; config.extraAllowedContent = 'i[*]{*}(*)'; }; CKEDITOR.dtd.$removeEmpty = '{i: 0}'; The same added statements can be used for other HTML tags used in unorthodox ways.
    2 points
  5. Email routing will automatically be set to "Automatic" or sometimes "Local Mail Exchanger" which in 99.99% of cases will be the same thing. You only need to set it to Remote if you are using external MX records pointing away from your hosting company which is effectively what Godaddy are forcing you to do by closing email ports. Some people choose to use gmail or other email service providers, but why should you have to ? Disabling php mail() is standard practice now for security reasons (WHM built in security advisor flags this as a high security risk if it is enabled !) and SMTP should always be used and configured to use SSL / TLS. Email sent via SMTP is much more secure, more likely to be delivered and not rejected or put into spam and isnt complicated to use. So much so, I would recommend that php mail() is removed as an option in CubeCart as it is very likely to disappear as an option in the near future Ian
    2 points
  6. For anyone that uses git with CubeCart (or any other packages for that matter), cPanel have been adding a huge amount of functionality which will be included in V68 - see https://features.cpanel.net/topic/allow-users-to-install-websites-from-version-control V68 is already in Edge release status so most people will not have access to it yet, but V68 should be into general release in a few months (V66 has just been released in the last week) Ian
    2 points
  7. This is the first time using this cart. Like it a lot, easy to work with and the CMS feature is excellent, my previous cart didn't have that. Didn't customize too much but happy with the way it came out. Don's Vintage Audio Feedback welcome!
    2 points
  8. The 'top menu' is the "Navigation" bar (or sometimes "Shop by Category" box). The menu is built from all the categories (enabled and unhidden) there are. There are also three special items: Home, Sale Items, and Gift Certificates. To add any other links to this group would require editing the skin template "box.navigation.php".
    2 points
  9. There will be some problems with PHP 8.0+. There are several incompatible changes compared to earlier PHP version families. PHP 7.3 is in the same situation as PHP 5 - end of life. I think PHP 7.4 would work without too much trouble for CC642, - again, end of life.
    1 point
  10. From what I see, the CBurst "View Product" page will show a "Swipe Gallery" if there are more than one image assigned to the product. (This is not images assigned to options.) If there is only one main image assigned to the product, there is no gallery. (The images posted above suggest there is more than one image assigned to that product.) So, there are edits that need to be made to the skin so that "Images Assigned to Options" feature will work. But not on a Gallery. I will post what those edits are soon. (There also seems to be a problem with some CSS code bleeding over into the Short Description area.)
    1 point
  11. Yes please use SagePay-1.0.13.zip. It should be fine with PHP 7.2 but 7.4 would be safer.
    1 point
  12. There are three phases to CubeCart's search function (four for CC650+). For short words, the last two phases will be the only ones to find that one short word: the whole word man, or the part of the word commander. (The first phase(s) will not look for a word with less than four letters.) CubeCart's search will look at the product's Name (Title), the Product Code, and the product's description. Therefore, if the last phase was the phase that actually found something, the irrelevant product shown might have had a word with the search term as part of it contained in its description. There was another conversation on the forums asking if it is possible to have CubeCart ignore looking at the product description for the search term. That can be done, but would require a code edit. As for the strange missing products that have "man" in the Name (or Title), perhaps we can explore why that is happening.
    1 point
  13. Why, why, why you have to be so smart @bsmither? That's exactly what the issue was, since initially they both had the same route /powerball the system added a re-direct when leaving blank, creating the redirection. Is there a module, under product page, tab #product spec, to have custom stuff? I could jam everything into the actual product page but it would be cool to add some custom stuff, in our case we don't need to specify the code or if it's new or used. Thanks again kid, Happy Thanksgiving of whatever you celebrate today!
    1 point
  14. Using a programmer's text editor, please make this edit. In /classes/catalogue.class.php, near line 893: From: $GLOBALS['catalogue']->searchCatalogue((int)$_GET['cat_id'], $page, $catalogue_products_per_page); To: $GLOBALS['catalogue']->searchCatalogue($_GET['cat_id'], $page, $catalogue_products_per_page); The variable $_GET['cat_id'] could actually contain the value 'sale'. Should this text value be cast to a numerical type, it equals 0, for which there is nothing to be found. The use of (int) was added in an attempt to solve some other problem.
    1 point
  15. 1 point
  16. 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
  17. Thanks, I realised it but forgot to hide it!
    1 point
  18. My bad. Replace that other new code with this new code: if (!empty($item['product_options'])) { $product['product_options'] = array(); if (($list = unserialize($item['product_options'])) !== false) { foreach ($list as $value) { $product['product_options'][] = $value; } } else { if(method_exists($order,'unSerializeOptions')) { $options = $order->unSerializeOptions($item['product_options']); } else { if(empty($item['product_options'])) { $options = array(); } else if(($options = cc_unserialize($item['product_options'])) !== false) { } else if (($options = cc_unserialize(base64_decode($item['product_options']))) !== false) { } else { $options = explode("\n", $item['product_options']); } } foreach ($options as $option) { $value = trim($option); if (empty($value)) continue; $product['product_options'][] = $value; } } $product['product_options'] = implode("\n", $product['product_options']); }
    1 point
  19. Hey @radman Pretty sure i have gotten to the bottom of it. Due to a recent change with CubeCart the Sale Items / Gift Certificates links don't appear to work in the way that they used to which in turn affects the way that i used them in the template. So, as a solution if you like them above the search box i would suggest you hard code them. If this is a route you would like to take please find the instructions below: in skins > amzin > templates > main.php around lines 74 - 79 find {if $CTRL_CERTIFICATES && !$CATALOGUE_MODE} <li><a href="{$URL.certificates}" title="{$LANG.navigation.giftcerts}"><i class="fas fa-gift"></i> {$LANG.navigation.giftcerts}</a></li> {/if} {if $CTRL_SALE} <li><a class="sale-link" href="{$URL.saleitems}" title="{$LANG.navigation.saleitems}"><i class="fas fa-tag"></i> {$LANG.navigation.saleitems}</a></li> {/if} and simply replace them with <li><a href="https://mybikerleather.com/gift-certificates.html" title="{$LANG.navigation.giftcerts}"><i class="fas fa-gift"></i> {$LANG.navigation.giftcerts}</a></li> <li><a class="sale-link" href="https://mybikerleather.com/sale-items.html" title="{$LANG.navigation.saleitems}"><i class="fas fa-tag"></i> {$LANG.navigation.saleitems}</a></li> Sorry for any inconvenience caused by this oversight.
    1 point
  20. So, the browser did not find ORDER BY popularity DESC. The next step I would like for you to do is edit the skin template box.popular.php and at the very end of the file, add {debug}. Save the edited file. When you next ask for the Homepage, your browser will want to popup a window. Let it. (You may need to request the Homepage a second time if you need to give permission for the popup.) The popup contains all the variables assigned to the template. Scroll down to near the bottom and find $POPULAR in the left pane. If it is there, is there a value for it as shown in the right pane? It might be an array with 20 elements. (Do not post the array here. Just indicate if it is an array with 20 elements, or if the value is something else.)
    1 point
  21. Hey, No, you'd go from the one above the version you have installed as any below it will already be done in the skin. So if you installed Amzin V1.02 then you'd only want V1.03 and above updates. If you go to yoursite > skins > amzin > docs > changelog.txt the top entry shows which version of amzin you had when you installed the skin. I'm guessing you have Amzin V1.02 installed so the only one i would say is necessary would be on V1.03 - #23 Prevent Add To Cart Cache Once your store is running CubeCart 6.4.1 then you'll need #16 to #21 (SEO EXT Support) to fix the login/register/search URLs The updates in the guide only cover skin edits to support core features, some of which cover new features added in CubeCart V6.4.1. So to use those features you'd need to upgrade your store to CubeCart V6.4.1 which is entirely separate from skin updates. Just doing skin updates won't update CubeCart's core.
    1 point
  22. I would be quite careful for several reasons : 1) The plugin hasnt been updated in over two years - while this doesnt necessarily mean anything by itself, CubeCart has moved on a lot in 2 years 2) It isnt just the demo site that is suspended, the whole website is suspended - this again could be a temporary oversight and may be back online any time soon or may mean a lot more. 3) There have been numerous complaints over quite a long period of time from users and many posts on these forums about not hearing back from this developer both for paid development work and also support
    1 point
  23. Hey, I can't offer any guarantees as i don't have access to the plugin and the developers demo site has been suspended (not sure if hes still active with cubecart). Looking at the plugin info and screenshots the only compatibility issues i predict is layout issues on the customer side. Providing the template side of things for the plugin are not encrypted this can be overcome by converting it over to bootstrap layout and adding any additional styling no problem.
    1 point
  24. Thanks @bsmither for helping out while i catch some Joys of timezones.
    1 point
  25. Two ways: FTP the folder that was extracted from the ZIP file to CubeCart's /modules/gateways/ folder, or obtain the lightning bolt token and enter it in CubeCart's admin, Manage Extensions page. It will automagically appear in the Extensions list.
    1 point
  26. Welcome Welshy! Glad to see you made it to the forums. The MarketPlace isn't a CubeCart store (at least, I don't think it is), so there isn't much other CubeCart users can help with this. I think contacting CubeCart HQ directly will be the quickest way to let them know of your difficulties. https://www.cubecart.com/contact
    1 point
  27. In the Noodleman skin template main.php, find: Near line 26: <a href="{$ROOT_PATH}" class="main-logo"><img src="{$STORE_URL}/skins/noodleman_v6/images/noodleman/noodleman-logo.png" alt="{$CONFIG.store_name}"></a> Change to: <a href="{$ROOT_PATH}" class="main-logo"><img src="{$STORE_LOGO}" alt="{$CONFIG.store_name}"></a>
    1 point
  28. A problem with the AIOS module is that adding, editing, deleting rates will submit all the rates on the tabs, regardless even if they have not changed. This could lead to submitting a very large number of data points (key/value pairs). (This is because browsers submit arrayed keys even with empty values.) PHP has a default limit of 1000 key/value pairs of data input. Exceeding this limit will cause PHP to truncate the collection of data, including the security token that had been added at the end. No security token, nothing gets updated. This hack makes each tab of the administrative screen of AIOS to function as an independent form. This then drastically cuts down the number of key/value pairs. There is a consequence to doing this --- Each separate zone tab is a complete and distinct "form". This is different than any other admin settings area. That is, (as of CC611 and earlier) when editing a Product, all the various tabs and the content displayed for each tab is considered to be all on one single form -- the data from ALL tabs' contents are submitted all at once. Thus, you can progress through the various tabs making ALL the settings and properties for that one product. Clicking Save will save ALL the data from all the tab contents. If you are experienced with using your browser's waterfall diagnostics, you can verify what data gets sent out by the browser. NOT SO with this alternate template for the AIOS module. That is, making changes on the first zone tab (USA for example), then making changes on a second zone tab (Canada for example), then clicking the Save button while still viewing that second zone (Canada), will ONLY send the data on the second zone (Canada). The changes on the first zone tab (USA), not being visible, was NOT submitted. So please keep this in mind -- each zone tab is a separate form and only the data for the form being viewed will get submitted. Copy the existing file: /modules/shipping/All_In_One_Shipping/skin/admin/index.tpl to some other name, and using a programmer's text editor, make the following edits. The edits are made from the bottom up so as to not disturb line numbers. Line 314: From: </form> To: </form> *} Line 301 - 304: From: </fieldset> </div> {/if} <div class="form_control"> To: </fieldset> {* NEW *} <div class="form_control"> <input type="hidden" name="save" value="{$FORM_HASH}" /> <input type="hidden" name="previous-tab" id="previous-tab" value="" /> <input type="submit" value="{$LANG.allinoneshipping.save_this_tab}" /> </div> <input type="hidden" name="token" value="{$SESSION_TOKEN}" /> </div> </form> {* /NEW *} {/if} {* <div class="form_control"> Line 149 - 155: From: {include file='admin/shipping_rates.tpl'} </div> {/foreach} {/if} {/if} {if isset($DISPLAY_FORM)} <div id="All_In_One_Shipping" class="tab_content"> To: {include file='admin/shipping_rates.tpl'} {* NEW *} <div class="form_control"> <input type="hidden" name="save" value="{$FORM_HASH}" /> <input type="hidden" name="previous-tab" id="previous-tab" value="" /> <input type="submit" value="{$LANG.allinoneshipping.save_this_tab}" /> </div> <input type="hidden" name="token" value="{$SESSION_TOKEN}" /> </div> </form> {* /NEW *} {/foreach} {/if} {/if} {if isset($DISPLAY_FORM)} {* NEW *}<form action="{$VAL_SELF}" method="post" enctype="multipart/form-data"> <div id="All_In_One_Shipping" class="tab_content"> Line 140 - 145: From: </table> </div> {if $MULTIPLE_ZONES} {foreach from=$ZONES item=zone} <!-- TAB --> <div id="zone_{$zone.id}" class="tab_content"> To: </table> {* NEW *} <div class="form_control"> <input type="hidden" name="save" value="{$FORM_HASH}" /> <input type="hidden" name="previous-tab" id="previous-tab" value="" /> <input type="submit" value="{$LANG.allinoneshipping.save_this_tab}" /> </div> <input type="hidden" name="token" value="{$SESSION_TOKEN}" /> </div> </form> {* /NEW *} {if $MULTIPLE_ZONES} {foreach from=$ZONES item=zone} <!-- TAB --> {* NEW *}<form action="{$VAL_SELF}" method="post" enctype="multipart/form-data"> <div id="zone_{$zone.id}" class="tab_content"> Line 91 - 94: From: {/if} </div> <!-- TAB --> <div id="shipping_zones" class="tab_content"> To: {/if} {* NEW *} <div class="form_control"> <input type="hidden" name="save" value="{$FORM_HASH}" /> <input type="hidden" name="previous-tab" id="previous-tab" value="" /> <input type="submit" value="{$LANG.allinoneshipping.save_this_tab}" /> </div> <input type="hidden" name="token" value="{$SESSION_TOKEN}" /> </div> </form> {* /NEW *} <!-- TAB --> {* NEW *}<form action="{$VAL_SELF}" method="post" enctype="multipart/form-data"> <div id="shipping_zones" class="tab_content"> Line 4 - 8: From: </style> <form action="{$VAL_SELF}" method="post" enctype="multipart/form-data"> {if isset($DISPLAY_RATES)} <!-- TAB --> <div id="All_In_One_Shipping" class="tab_content"> To: </style> {* <form action="{$VAL_SELF}" method="post" enctype="multipart/form-data"> *} {if isset($DISPLAY_RATES)} <!-- TAB --> {* NEW *}<form action="{$VAL_SELF}" method="post" enctype="multipart/form-data"> <div id="All_In_One_Shipping" class="tab_content"> In the AIOS module's language file: Find: <string name="save_all_changes"><![CDATA[Save all changes]]></string> Add After: <string name="save_this_tab"><![CDATA[Save this tab's settings]]></string> This is a change in a Smarty-powered template, so clear the skin cache. You can verify the reduction in the amount of data sent out by re-examining the waterfall.
    1 point
  29. That's what I thought. Thanks Al
    1 point
  30. ok will give it a try thanks yes it is working thanks a lot uploaded the files as in the other discussion Grts Rob
    1 point
  31. I lied, I figured it out. In /foundation/templates/main.php <div class="row"> <div class="small-12 columns small-collapse"> {include file='templates/box.navigation.php'} <div class="hide" id="val_lang_back">{$LANG.common.back}</div> </div> </div> Make it <div class="row row-mod"> <div class="small-12 columns small-collapse"> {include file='templates/box.navigation.php'} <div class="hide" id="val_lang_back">{$LANG.common.back}</div> </div> </div> then go to foundation/css/foundation.css and add .row-mod { max-width: none !important; }
    1 point
  32. Try using https://www.epochconverter.com/ to convert back and forth between the two formats Ian
    1 point
  33. There are no tables in the invoice. The code is all proper. I will have to blame it on the latest version(s) of Firefox. In the meantime, maybe Cyberfox or Waterfox (respectable forks of Firefox) will suffice.
    1 point
  34. Sooo...., if the site administrator has implemented this anti-scrape mechanism, then AJAX exchanges of data may fail if the AJAX package does not send the correct cookie - or may actually fail even with all the correct cookies. I have no experience in this scenario. The template parser (Smarty) does not execute any code other than its own Smarty code. Having PHP code in a template is exactly the same as having any other text. It is just plain text and that plain text will be in the final output that Smarty creates. Also, any code that looks like Smarty code but is not Smarty code in a template could cause PHP to crash. For example: <?php echo "Hello {smiley} World" ?> will cause Smarty to quit parsing the template and stop PHP with a Fatal Error. Please know that you must not think the templates are PHP code scripts just because the filenames end in .php. (The templates can be named anything, and I do not know why the programmers chose '.php' as the filename suffix for the skin templates.)
    1 point
  35. its caused by sessions.gc_maxliftime, and has been the bane of my life for getting on 2 years, until Al and I found it. session.gc_maxlifetime This value (default 1440 seconds (20 minutes)) defines how long an unused PHP session will be kept alive. For example: A user logs in, browses through your application or web site, for hours, for days. No problem. As long as the time between his clicks never exceed 1440 seconds.
    1 point
  36. There is no "transferring over" CubeCart PHP code. An upgrade is "whole cloth". So, you now have a folder named /admin/ and a folder named /admin_hash/. I suggest you determine which folder has this latest update, rename the other one to something completely bogus, then rename the correct folder to the same name that is in the /includes/global.inc.php file. (Yes, I do understand that having implemented a derived name for the admin folder introduced a number of headaches.) Just to make sure, also force your browser to reload the admin page resources (javascript and css - new versions in CC6110 - and images.) This is usually done with CTRL-F5.
    1 point
  37. Even though CubeCart does a good job of figuring out where it is, on a local dev machine, it helps tremendously to override some of this decision making. In /includes/global.inc.php, add the following: $glob['storeURL'] = 'http://127.0.0.1/store'; // No trailing slash $glob['standard_url'] = 'http://127.0.0.1/store'; // No trailing slash $glob['ssl_url'] = 'https://127.0.0.1/store'; // No trailing slash $glob['cookie_domain'] = '127.0.0.1'; // No trailing slash $glob['rootRel'] = '/store/'; // YES trailing slash or just a slash $glob['ssl_path'] = '/store/'; // YES trailing slash or just a slash In .htaccess, make these changes: <IfModule mod_rewrite.c> RewriteEngine On RewriteBase /store ### or just a slash ### ... ### Default store 404 page ### ErrorDocument 404 /store/index.php If CubeCart is installed in the "doc_root" of the server, that is, not in it's own folder, don't include the "/store" part. Then, use 127.0.0.1 instead of 'localhost'.
    1 point
  38. A couple of questions: Are you using AIOS? Do you have a country or region set up in AIOS for the countries you ship too? Are you running the following CC6.1.8 with Skin Foundation and AIOS. + various plugins. ie Card capture+paypal express I may not be able to help for here on, but the answers will help others more knowledgeable.
    1 point
  39. 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
  40. There is a gateway bug that you need to fix. I'll be right back with the link to the fix.
    1 point
  41. after reading this thread i can confirm its the same for me, tested on ff as a guest when i select secure payment it doesn't proceed, if i log in its fine. i am using/testing the invisible recaptcha recommended with site & secret key
    1 point
  42. Hi Niall I have updated the Microdata plugin so two versions are available (for PHP 5.6 and above and another for PHP 5.5 and below) but unfortunately due to some caching issues with the Marketplace (which I have reported to Al), these are not showing. If you would like to register as a client at our site and open a ticket, I can let you have the correct version that way Ian
    1 point
  43. Yes this is coming with 6.1.6 but skin edits will be required.
    1 point
  44. A proper solution would be more involved than the following (a proper list item on the Transaction Logs tab, for example), but here is an edit that puts a field on the Billing tab - which I think is more appropriate than Delivery. In the admin template orders.index.php, find near line 264: <fieldset> <legend>{$LANG.account.contact_details}</legend> On a new blabnk line ABOVE that, add: <fieldset> <legend>{$LANG.orders.gateway_name}</legend> <div><label for="sum_gateway">{$LANG.email.macro_gateway}</label><span><input type="text" id="sum_gateway" name="summary[gateway]" value="{$SUMMARY.gateway}" class="textbox"></span></div> </fieldset>
    1 point
  45. The above was developed for AIOSv108. If you are editing index.inc.php, then you are in the /admin/ folder. You should be editing the /skin/admin/index.tpl file.
    1 point
  46. This is a known issue and will not cause any damage to the store. The programmer's are working on it. CubeCart makes three attempts at searching for a product. 1. Using a complicated (as implemented by the database server) algorithm that searches the database using a 'relevance approach'. The results have a "relevance weighting factor". If nothing found, 2. Using an expression looking for whole words. If nothing found, 3. Looking for the characters entered which may appear anywhere. The problem with the CubeCart code is that the Advanced Search page has a sort selector that defaults to a sort method (Relevance) that is only applicable to method #1. CubeCart is supposed to drop that sort method and default to another, legal sort criteria for #2 or #3, but doesn't. Thus, the error message from the database server. You shouldn't see this error if you choose to sort by something other than Relevance on the Advanced Search page.
    1 point
  47. The next upgrade will have the same fault as the upgrade code it baked into 6.1.5. It will only work after 6.1.6 to 6.1.7 etc.. To get the upgrade working from 6.1.5 to 6.1.6 that file will need replacing.
    1 point
  48. The phrase won't be in the skin templates. This is an advisory/warning phrase in the language file. In admin, Languages, click the edit icon for the language you want to change. When shown the drop-down, choose Checkout. When shown the list, change the phrase associated with the 'error_shipping' key.
    1 point
×
×
  • Create New...