Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation since 04/23/2018 in all areas

  1. 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
  2. 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
  3. you are a hero! - Thanks works perfectly under SMTP!
    1 point
  4. 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
  5. Hey everyone, I recently discovered a fantastic way to elevate your gift-giving game: custom gift packaging! Whether it's for birthdays, weddings, or any special occasion, adding a personal touch to the packaging can make your gift stand out. I've been experimenting with different materials, designs, and embellishments, and it's been so much fun! Not only does it make the recipient feel extra special, but it also shows that you've put thought and effort into the presentation. Do you have any creative packaging ideas or tips to share? Let's inspire each other to spread joy through beautifully wrapped gifts!
    1 point
  6. Please try: https://cubecart.zendesk.com/hc/en-gb/articles/360003831497-How-can-I-create-a-plugin-using-the-code-hooks-system
    1 point
  7. 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
  8. 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
  9. Hm. We can see that right away CubeCart is told to use fr-FR, but the phrases are not coming from that language pack. (See Debug Messages[0]) Please examine the following and try the suggested action: In admin, Languages, take note of any actual entries in the Domain column (not the slightly greyed-out suggested examples). If there are actual entries, blank them out and Save. Have CubeCart clear its internal cache. Did anything change?
    1 point
  10. That makes sense. I think I'll keep making the change instead of changing the rate rule. Thanks!
    1 point
  11. 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
  12. 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
  13. 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
  14. 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
  15. You might be able to set identifier exists = false in the feed rules on Google's end:
    1 point
  16. 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
  17. 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
  18. 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
  19. Sorry to hear this Rosemary. Best of luck achieving what you want. I'm not sure I have any valuable input.
    1 point
  20. 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
  21. 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
  22. Attached is a report that covers the edits needed to make CC645 run under PHP 8.1. Of course, without a comprehensive testing procedure plan - preferably automated - hitting every feature and function that CubeCart can do is impractical. As such, I advise against running this in a production environment, for now. However, I believe I've found and fixed the Fatal Errors, Warnings, Deprecated Notices, as well as a number of general notices that became visible under PHP 8.1, and made a number of code optimizations, but only in the core code. I have chosen to not make a fork of CC645. For those who want to slog through the edits, I hope they will be able to discern the reasons for each change. Any module encoded with ionCube will need a new version from the publisher. The publisher should also take it upon themselves to test their modules under PHP 8.1. Some additional insights can be found reading the latest Github issues. PHP8.1_Changes.txt.zip
    1 point
  23. 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
  24. 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
  25. Thanks, I realised it but forgot to hide it!
    1 point
  26. The All in One Shipping module has a Debug setting. Choose to see a Very Verbose explanation. The debug analysis will show why there were no shipping rates found to satisfy the required conditions.
    1 point
  27. I wonder if a specific browser plugin could be to blame... messing with the DOM.
    1 point
  28. We need to find out why they aren't 'sticking'. My experience tells me to first look at those settings that could possibly make the aggregate amount of content larger than 64KiB. Those settings are the Offline Message and Copyright Text. Then second, look at the error log.
    1 point
  29. For CubeCart not accepting any of the general store settings probably means that one or more of the admin-supplied data items is extraordinarily long. Settings that could get out-of-hand include a really long Offline Message, or a really long Copyright Text. All the data is probably getting sent from the browser to CubeCart, but then CubeCart wants to "serialize" all that data, and the limit is 64KiB. You might also want to create the error log to see if CubeCart is complaining about anything. https://forums.cubecart.com/topic/51550-how-to-create-the-error-log/
    1 point
  30. So there must be another cache. A content delivery network proxy or something typically used by cheap hosting providers. Does the basket reliably hold its contents between page loads?
    1 point
  31. Did you click the clear cache button? Top right in orange.
    1 point
  32. Oh my... Be back soon.
    1 point
  33. The POF module prior to 1.2.2 had its own code to email a courtesy email confirming the order was placed. Version 1.2.2 now is supposed to use the established code in CubeCart's core codebase. Looking at 1.2.2 (version 1.3.0 is the same), it seems more work needed was mentioned to the programmers, but didn't get done. So, please make this edit: In the Print Order Form module, gateway.class.php, near line 206, find: if (!empty($item['product_options'])) $product['product_options'] = implode(' ',unserialize($item['product_options'])); Change to: if (!empty($item['product_options'])) { if (($list = unserialize($item['product_options'])) !== false) { foreach ($list as $value) { $item['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; $item['options'][] = $value; } } }
    1 point
  34. I am wondering if, somehow perhaps a bug in the code, installing de-DE "over" the existing de-DE language pack, didn't actually overwrite the existing databased content of the email-contents with the contents of the new file of that incoming language pack. (Unlike the language phrases that exist in a file in a language pack, the phrases of the email-contents file of the language pack are all databased.) I will check on that. In the meantime, you can sort the above listing and delete all rows having 'content_id' equal to or greater than 26.
    1 point
  35. Hi @radman420 That slider is just a basic bxslider banner slider set in the document content for the homepage which you modify via your admin panel. Firstly create your banners and upload them to your site, for example (images > source > slide_001.png) Banners should be of equal size Then, go to your admin panel and in the left-hand menu go to File Manager > Documents Then, select the document for the homepage OR create a new document On the document content section click the "source" button in the left corner and create a slider box by adding : <ul class="bxslider"> </ul> If you want your banner to link to a page or product, then use the following structure within the ul element above : <li> <a href="#LINK HERE#"> <img src="#IMAGE SRC HERE#" /> </a> </li> Replace the following: #LINK HERE# -- with the url you want it to goto #IMAGE SRC HERE# -- with the image source which for the example would be something like --> images/source/slide_001.png Then, repeat for each slide. If you just want your banner to displayed with no link, then use the following structure within the ul element above : <li> <img src="#IMAGE SRC HERE#" /> </li> So, your final content will look something like the following for a slider with linked images: <ul class="bxslider"> <li><a href="http://www.google.com"> <img src="images/source/slide_001.png" /> </a></li> <li><a href="http://www.google.com"> <img src="images/source/slide_002.png" /> </a></li> <li><a href="http://www.google.com"> <img src="images/source/slide_003.png" /> </a></li> <li><a href="http://www.google.com"> <img src="images/source/slide_004.png" /> </a></li> </ul> Then click save, make sure the document is set for Homepage and that the status option is checked. Might need to clear your sites cache. And that should be it.
    1 point
  36. Hey @radman The W3W compatibility notice in the admin panel is cosmetic - Providing you enter your W3W info it will work as intended. It's just in the admin panel it looks for a certain skin file to determine whether or not its compatible, however for the updates i approached it differently so the certain skin file isn't there. As for the other issues, i can only assume something might have been edited incorrectly during your update, i can't seem to load your site (503 Service Unavailable) at the moment so i can't check whats going on.
    1 point
  37. The debug section can be quite lengthy. Your browser has the ability to Find things in the web page. Usually by the keyboard combo CTRL-f. In the small bar that opens (maybe at the bottom of the browser window) enter one of the terms I mentioned above. If not found, find for the other term. Do NOT copy/paste the entire debug section into a forum post.
    1 point
  38. @radman420 by data issue i mean that it would appear no data (in this case Products) is been supplied to the $POPULAR variable which is used to load the popular products section. Since it appears to happen in both the Foundation and Amzin skin that would suggest that it isn't caused by the skins. All i can suggest is pop a message in Technical Help section as this is beyond a skin issue. Perhaps something went wrong during the CubeCart Update or a setting has changed. I'm running 6.4.1 with Amzin and Foundation and the popular box is loading fine so i'm not sure whats causing yours to not load since you updated.
    1 point
  39. You can do if you're comfortable with it and familiar with github. You'd need to look over at cubecarts github and see what issues have been resolved and look at the code changes needed. Editing the core script can get messy if you lose track of what you're doing. Far more simpler to just update the normal way unless your site is running a modified version of cubecart and you don't want to lose those edits (not including 3rd party skins as those are unaffected by core updates).
    1 point
  40. There is a CSS rule that is setting the max-height of the logo. .main-logo img { display: block; max-width: 100%; max-height: 60px; } I can't really determine where this rule is at, but it can be overruled by adding a style attribute to the <img> tag: <div class="col-xs-7 col-sm-3"> <a href="{$ROOT_PATH}" class="main-logo"> <img src="{$STORE_LOGO}" alt="{$CONFIG.store_name}" style="min-height: 120px;"> </a> </div> Edit the main.php and main.checkout.php templates.
    1 point
  41. Here is what I have from tonight's test: - Order DOES go to "processing" even if the customer bails out after hitting the "Pay" button and doesn't go back to the store by clicking the "Confirm" button on the Auth.net results window. This is great. - Created a copy of the "Default emails" template, called it "Hard-coded emails", replaced the header image and signature macros with hard-coded urls and made it the default. - Under the "Email Contents" tab, I modified Cart: Order Confirmed and Admin: Order Received, replacing the macro {$DATA.link} with a hybrid hard-code / macro combination of https://mystore.com/index.php?_a=vieworder&amp;cart_order_id={$DATA.cart_order_id} (where mystore.com is the actual store domain and the order number is handled by the dynamic macro {$DATA.cart_order_id}). - Have NOT been able to solve the gigantic store title issue on the Auth.net transaction results page. Will have to keep looking or call their support and find out how to get this under control. It looks like all of the information is being sent correctly and the transaction was successful. (NOTE: I only tested auth only since my clients all capture funds when the item ships.). Generally, it works with a few workarounds and the need for a small formatting tweak. I much prefer the new embedded frame and the clean form look and operation to the old SIM. It works well enough for me to put it live in one of my client's stores. We will see how it goes over the next 24 hours of live use.
    1 point
  42. Provided that the digital file is publically accessible, in admin, Add/Edit Product, Digital tab, Custom File Path section, you may enter either a direct path to a folder on CubeCart's server, or a Full Web Address that points to anywhere on the Internet. If your AWS repository requires a login, that may pose an obstacle unless you know how to overcome it.
    1 point
  43. I'd chose CloudLinux with cPanel. Or CentOS with cPanel to save cash. @bsmither would say Windows. Either is ok really but CubeCart is more geared to Linux and I hate Windows personally.
    1 point
  44. All fixed now. We had a GeoIP database fault which is now resolved.
    1 point
  45. Ok, will try and restore a backup file. Thanks
    1 point
  46. Please note that the template rendering engine (Smarty) builds the page before the web browser gets it. Putting HTML comment tags around the Smarty commands does not stop Smarty from replacing those {commands-in-braces} with the intended content. That intended content could also have HTML comment tags. That results in nested comment tags. Look for those statements in the template as mentioned earlier, but change them to look like this: {* include file='templates/box.newsletter.php' *} and {* include file='templates/box.popular.php' *} The brace-asterisk-space sequence is Smarty's comment tag. Thus, the content will not appear in the rendered page sent out to the browser.
    1 point
  47. Seems like I got this working now! This is how I made my filemanager.class.php file to look like: class FileManager { private $_directories; private $_mode; private $_manage_cache; private $_manage_dir; private $_manage_root; private $_recently_uploaded = array(); private $_sub_dir; private $_sendfile = false; //private $_max_upload_image_size = 350000; private $_max_upload_image_size = 6291456; // 6MB public $form_fields = false; Thanks!
    1 point
  48. Hi, I was just wondering if Cubecart is compatible with Apple's iPad and iPhone? I've had several customers tell me that they can not place orders using these devices... I also had a lady tell me that she couldn't email me using her iPhone either (it bounced back)...hmmm Thanks.
    1 point
×
×
  • Create New...