Jump to content

jasehead

Member
  • Posts

    213
  • Joined

  • Last visited

  • Days Won

    1

Everything posted by jasehead

  1. Trying to trace why Cubecart is throwing this error (for a customer trying to purchase from Romania): "Unfortunately there are no suitable delivery methods available for your order. This may be because the total weight of your order is too high or we cannot deliver to your country. Please contact a member of our staff for any further inquiries." Currently using only the By Weight shipping plugin, expanded from 4 to 9 zones following Al's advice here: https://www.cubecart.com/extensions/shipping-methods/by-weight I've gone through gateway plugins - two are set to allow specific countries only, the third is PayPal Standard which has no countries allowed/disallowed so it should work worldwide. I've also gone through the By Weight plugin to make sure that the 22 disallowed countries do not include Romania and are not included in any of the ISO codes for the different zones. Doesn't appear to be any issues there. Have also checked for errors in the weight-price array but it seems fine. The only idea I have at this stage is that, even if 9 zones are enabled as per Al's advice, that somewhere the additional zones are being ignored. I have Romania in Zone 8.
  2. Is there any way to merge two customers? For example: a customer had 5 previous orders but had difficulty remembering their password so, instead of updating their password, they created a new login with a different e-mail address and password but all other details remain the same - only 1 new order for the new account. I was thinking this could be done in phpMyAdmin by searching for the new customer ID and replacing it with the original (or the other way around, depending on which one you wanted to keep). Suggestions? Ideas? Unseen issues?
  3. @ZeroX42 - I have tawk.to on my store (for me, it beats olark and zopim). Couldn't work out how to make a javascript work as a code snippet(!), so I just added the code to main.php in skins/foundation/templates/main.php after the last </div> tag and before the </body> tag. You may need to use the tawk.to dashboard to modify the tawk.to widget and get rid of the extra image because this blocks some of the page. You should also pay some attention to whether the widget blocks cubecart's back-to-top button on page scroll. Also check how the widget displays and works differently on desktop/tablet/mobile. I find it very good - the mobile phone app is a must and I can answer tawk.to alerts on the run. Customers must be answered right away though (even with a "Let me check...") otherwise they leave. As an admin, during store testing I use the tawk.to widget to record notes to follow up later. It's good how it tracks what page is being viewed as part of the conversation. @bsmither - tawk.to is offered as a block of javascript to be added to the end of a web page (just before the </body> tag). I was hoping that the code snippet function in cubecart would handle exactly that but I couldn't work out how to get it to work. Just adding the block of javascript intended for HTML as a code snippet didn't work. Does it need to be phpified a bit first?
  4. One thing though, about the radio buttons for postage auto-submitting - the radio buttons for payment methods also auto-submit on click. Is it possible to stop that behaviour, perhaps by adding .nosubmit class, without breaking the form? Like this? <input name="gateway" type="radio" value="{$gateway.folder}" id="{$gateway.folder}" class="nosubmit" required {$gateway.checked} rel="gateway_error"><label for="{$gateway.folder}">{$gateway.description}</label>
  5. Still suspicious of field_small_only in content.checkout.small.php, but I'll test it on a range of devices and browsers and see it there's an issue.
  6. Thank you bsmither. Radio buttons for shipping in content.checkout.medium-up.php are now working. Here's a summary for anyone else interested. In /skins/foundation/templates/content.checkout.medium-up.php Find this: <td colspan="4"> {$LANG.basket.shipping_select}: <select name="shipping"> <option value="">{$LANG.form.please_select}</option> {foreach from=$SHIPPING key=group item=methods} {if $HIDE_OPTION_GROUPS ne '1'} <optgroup label="{$group}">{/if} {foreach from=$methods item=method} <option value="{$method.value}" {$method.selected}>{$method.display}</option> {/foreach} {if $HIDE_OPTION_GROUPS ne '1'} </optgroup> {/if} {/foreach} </select> </td> Replace with this: <td colspan="4"> <p>{$LANG.basket.shipping_select}:</p> <ul class="no-bullet center"> {foreach from=$SHIPPING key=group item=methods} {foreach from=$methods item=method} <li> <input name="shipping" type="radio" value="{$method.value}" id="{$method.value}" {$method.selected|replace:'selected':'checked'}><label for="{$method.value}">{$method.display}</label> </li> {/foreach} {/foreach} </ul> </td> And in /skins/foundation/js/2.cubecart.js Find: $(".autosubmit select").not('.nosubmit').change(function() { Replace with: $(".autosubmit select, .autosubmit input[type='radio']").not('.nosubmit').change(function() { Still some tinkering to do, but I think that offering customers an immediately visible choice of shipping using a couple of radio buttons is much better than a select drop-down. Thank you again for your help, bsmither
  7. Grumble - still having other problems with the shipping select. In content.checkout.small.php there is this at line 86: <select name="shipping" class="field_small_only nomarg"> Well, on a small viewport in using my old version of Safari this doesn't work as a dropdown - it's just solid which means customers can't make a selection. If I remove the class, then this interferes with content.checkout.medium-up.php and the dropdown won't accept any changes - maybe there's a conflict in the code with using the name "shipping" because one control is just hidden, not absent from the code. My version of content.checkout.small.php is 100% Foundation - so I'm wondering if it affects medium-up then maybe it's causing some issue with the radio buttons. (Grasping at straws here)
  8. With that change the form submits on radio, but the problem now is that the radio button value will not change. On further testing, it's not defaulting to the cheapest value but to the last selected value. Once there's a selection it won't allow it to change - it returns the first selection only.
  9. For CubeCart v6.0.12 this seems to be in /js/common.js at line 109. $('select.update_form').change(function(){ $('input.required').removeClass('required'); $(this).parents('form').submit(); }); But I wasn't able to get it the code change to work, so returned it to how it was. I tried selecting the expensive radio button and then clicking the update basket button. It submitted/updated the form but the radio button defaulted to the cheapest option again. I tried adding onChange='this.form.submit();' to the input tag for the radio buttons (because I couldn't get update_form to work) but it again defaulted to the cheapest option. The drop-down select keeps its value on select/submit so I don't know what's going on. How do I make the radio option sticky when the form is updated? I'm OK with the cheapest option being chosen by default in the first instance, but I want any change to update the form with new shipping and total values and for the chosen radio button to remain checked after update.
  10. Tested and working - thank you. Although I've added conditional font awesome styles like this (if basket contains something): <i class="fa fa-shopping-cart{if isset($CONTENTS) && count($CONTENTS) > 0} other font awesome styles go here{/if}"></i> Still much less code than my first attempt.
  11. I sell a product where there is a small difference but most people can still use the product OK even if it's not the exact format they prefer. So, let's say I sell toy Zebras - some are white with black stripes, others are black with white stripes - most people don't care, they just want a zebra. If I run out of the black ones, isn't it better to just switch off the matrix status for that and just sell the white ones - the colour preference will still appear in the checkout, so if a customer has a real issue with the stripes then they might check it there. And I'll add a note in the Terms and Conditions to explain our policy about available colour options. I only deal with small quantities, so I often run out of one kind or the other. It would be much easier if the add to basket just worked for the remaining option rather than making the customer go to the product page and choosing the only option before they continue. And it would be great if I could just switch off one option in the matrix (or better for that to happen automatically when one option hit zero) rather than having to switch off all matrix options and rewrite the description only to have to undo everything again when new stock arrives. Like I said, small quantities, so stock levels fluctuate OFTEN. I can't just sell one kind of toy zebra, because I do get customers specifically wanting one kind or the other. I could make these two separate products, but they are very similar and I don't want to have to duplicate hundreds of other minor-difference products as well. Plus duplicate content = negative SEO.
  12. Thank you, but forcing customers to "Please Select" will result in the customer trying to submit their order, receive an error, then having to review the page to find that they have to select an option - any frustration increases the chance of cart abandonment. I would rather have two shipping options as radio buttons and have one option already selected (either cheapest or most expensive with an easy change) - that way customers can either sail through quickly or make a clearly visible choice. The one solution I need is: refresh the checkout page on button select to update the shipping and total Currently, the page will update on shipping drop-down select - but how to do that for radio buttons AND keep the button selection? Here's my code so far, which fixes the label problem at least: <td colspan="4"> <p>{$LANG.basket.shipping_select}:</p> <ul class="no-bullet center"> {foreach from=$SHIPPING key=group item=methods} {foreach from=$methods item=method} <li> <input name="method" type="radio" value="{$method.value}" id="{$method.value}" {$method.selected|replace:'selected':'checked'}><label for="{$method.value}">{$method.display}</label> </li> {/foreach} {/foreach} </ul> </td> I guess the other solution would be to put the select drop-down right in the price column, replacing the Shipping (Estimated) + cost . The final solution has to be obvious and easy for the customer.
  13. The main issue is that customers DO NOT READ as they checkout and tend to miss that there IS any other delivery option other than the default. Which is why a drop-down select menu is bad and radio buttons would be better (especially where there are few delivery options available).
  14. The issue with the current checkout is that VERY FEW customers understand they can make a shipping selection and instead just proceed with the default setting (which is the cheapest and slowest option). For limited shipping choices, radio buttons would be much better. In the medium and small checkout pages I want to be able to get radio buttons for shipping working for Cubecart v6.0.12 Foundation similar to this discussion for v5.2.1 - https://forums.cubecart.com/topic/47002-resolved-default-shipping-method/ So far I have this adapted from bsmither to replace the code in content.checkout.medium-up.php starting around line 49: <td colspan="4"> <p>{$LANG.basket.shipping_select}:</p> <ul style="list-style-type: none;"> {foreach from=$SHIPPING key=group item=methods} {foreach from=$methods item=method} <li style="padding-left:14px;"><input name="shipping" type="radio" value="{$method.value}" {$method.selected|replace:'selected':'checked'}" /> {$method.display}</li> {/foreach} {/foreach} </ul> </td> It works but it's very rough. What I need it to do is: Have the $method.display text as labels or links to activate the correct radio button on click (all buttons are being called "shipping" so they should probably be in a group but have unique names so that labels work) Update the page on radio button checked to refresh the estimated postage and total (like the existing select shipping option does on select) Overwrite the two local shipping options to show only one option (Air Mail) if the order is outside my own country - and have that pass through to the order Then it's a matter of making it pretty, disabling the cheapest-first sort on shipping, and making one radio button already selected. I'm just working with two options from the By Weight shipping module at the moment.
  15. With regards to: </table> {if !empty($DATA.note_to_customer)} <p>&quot;{$DATA.note_to_customer}&quot;</p> {/if} Instead try: </table> {if !empty({$DATA.note_to_customer})} <p>&quot;{$DATA.note_to_customer|nl2br}&quot;</p> {/if} The nl2br converts new lines to breaks in html so any paragraphs in your note will look right. Only add nl2br to the HTML version though, not the Plain Text version.
  16. Actually, try: </table> {if !empty({$DATA.note_to_customer})} <p>&quot;{$DATA.note_to_customer|nl2br}&quot;</p> {/if} The nl2br converts new lines to breaks in html so any paragraphs in your note will look right.
  17. +1 from me - credit card details occasionally disappear. This thread discusses it in more detail https://forums.cubecart.com/topic/51398-credit-card-capture-automatic-delete/ so I'll continue the conversation there...
  18. Although, I will add: If you have a product matrix set up and other options become unavailable so you switch them off (status = off) leaving only one option: The only option on the product page is listed (no radio buttons if you're using them, just the text) If you click the add to basket button from the category you are STILL sent to the product page, told that you have to select a product option (which you can't because there is only one option with no selector) and you have to click the add to basket button again Is there a way to make the add to basket on the category page skip the product page and confusing error message if there is only one product option set to default? If so, will it carry through the default product option so that it is included in checkout?
  19. +1 from me - I can't work out how to set the product options matrix and the main stock level so that I force a "Please select required options before adding to your basket" error. All I seem to get if I try adding a product to basket that has options is a "Sorry but that product is out of stock." AFTER FURTHER INVESTIGATION... You have to go to Product Options > Option Groups and set the option group to REQUIRED.
  20. FIX FOR SEARCH PHRASES - ADD THE 'AND', COPE WITH NOT This line doesn't appear to be working: $rlike .= " AND "; I think this is supposed to insert AND between search words, so: address book violet is supposed to become: address AND book AND violet but it doesn't. The fix below copes with: address book violet, address and book and not violet, address book not violet Find: if ( ($ucSearchTerm != 'AND') && ($ucSearchTerm != 'OR') && (strlen($ucSearchTerm) > 0) ) { Replace with: if ( ($ucSearchTerm != 'AND') && ($ucSearchTerm != 'OR') && ($ucSearchTerm != 'NOT') && (strlen($ucSearchTerm) > 0) ) { After: $rlike .= "(I.name LIKE '".$regexp."' OR I.description LIKE '".$regexp."' OR I.product_code LIKE '".$regexp."')"; insert: $rlike = str_replace(array(')(',') NOT ('), array(') AND (',') AND NOT ('), $rlike); FIX FOR SEARCH RESULTS ORDER After: $rlike .= " )"; } Insert: if(!$order_string){$order_string = 'ORDER BY stock_level DESC';} Ideally, the $order_string should be the Product List Sorting set by admin but I couldn't work out how to get the data so it's just hardcoded.
  21. To answer my own questions - here is the search behaviour: address book violet = no results found (search for ANY PHRASE returns no results, would be better if search was converted to AND by default - eg. address AND book AND violet) - FIX AVAILABLE BELOW address AND book AND violet = works ok address AND violet OR address AND blue = works ok address OR album OR dragon = works ok address NOT violet = no results found (NOT isn't supported) - FIX AVAILABLE BELOW +address -violet = no results found (+/- operators not supported) default sort set by admin does not apply to results from BASIC search, but the sort control in advanced search IS set by the default sort setting - so an ADVANCED search will respect the default sort set by admin (Store Settings > Layout > Product List Sorting). The sort control on the search results is set to Product List Sorting after a basic search, but it has not been applied to the search results. - PARTIAL FIX AVAILABLE BELOW _a=category key appears at end of URL for first search, but moves to start of query if results are sorted using the sort control on the search results page including extra search fields like seo_meta_keywords and short_description will cause search to FAIL if you have no data in these fields - so you already need to be using them for data before you add either of these to search code in catalogue.class.php Would be great if: Basic search would adhere to the Product List Sorting set by admin - PARTIAL FIX AVAILABLE BELOW Search included NOT as an option - FIX AVAILABLE BELOW Search words remain in the search field when results are shown (easier to edit and try again) Someone more skilled than me in regexfu could craft a RewriteRule that would convert incoming v3 mod search links to new v6 mod (including default sort) that would work with existing RewriteRules for v4 SEO in .htaccess: FROM THIS - /index.php?searchStr=address+AND+book+AND+violet&act=viewCat&Submit=Go#AndDeleteAnythingAfterGo TO THIS - /search.html?search%5Bkeywords%5D=address+AND+book+AND+violet&_a=category OR THIS - /search.html?_a=category&search[keywords]=address%20AND%20book%20AND%20violet&sort[stock_level]=DESC
  22. Just to note that I've tried the edits and code snippet to show only featured products in stock. I did find that the featured box didn't appear occasionally (because the result wasn't in stock?) Any way to get cubecart to requery?
  23. Is there a way to change the cart icon color if the cart is not empty? So, default color if it IS empty and red (or green) if there is something in the cart? Maybe a cleaner version of this: {if !$CATALOGUE_MODE} <div id="mini-basket"> <div class="show-for-medium-up"> {if isset($CONTENTS) && count($CONTENTS) > 0} <div class="text-right"><a href="#" id="basket-summary" class="button white small"><span style="color:green;font-size:1.10rem;"><i class="fa fa-shopping-cart"></i> {$CART_TOTAL}</span></a></div> {else} <div class="text-right"><a href="#" id="basket-summary" class="button white small"><i class="fa fa-shopping-cart"></i> {$CART_TOTAL}</a></div> {/if} <div class="basket-detail-container hide" id="basket-detail"> <div class="mini-basket-arrow"></div> {include file='templates/box.basket.content.php'} </div> </div> <div class="show-for-small-only"> {if isset($CONTENTS) && count($CONTENTS) > 0} <div class="show-for-small-only"><a class="right-off-canvas-toggle button white tiny" href="#"><span style="color:green;"><i class="fa fa-shopping-cart fa-2x"></i></span></a></div> {else} <div class="show-for-small-only"><a class="right-off-canvas-toggle button white tiny" href="#"><i class="fa fa-shopping-cart fa-2x"></i></a></div> {/if} <div class="hide panel radius small-basket-detail-container js_fadeOut" id="small-basket-detail"><i class="fa fa-check"></i> {$LANG.catalogue.added_to_basket}</div> </div> </div> {/if}
  24. A few things: Does this v6 search fix allow for AND/OR? This and search by Product ID were features of Cubecart v3 - http://www.cubecartforums.org/docs/CubeCart-v3/Understanding-CubeCart/Features.html I had a v3 search mod set to return AND by default, so search URLs for AND were like: /index.php?searchStr=address+book+violet&act=viewCat&Submit=Go but these would work OK: /index.php?searchStr=address+AND+book+AND+violet&act=viewCat&Submit=Go /index.php?searchStr=address+AND+violet+OR+address+AND+blue&act=viewCat&Submit=Go /index.php?searchStr=address+OR+album+OR+dragon&act=viewCat&Submit=Go (I have Google Adwords keywords that link to specific search results.) Also, any suggestions for implementing search changes into the admin/products side for v6? It's really handy (using an earlier modded cart) to be able to filter products by category, then field, then ASC/DEC, then by search term with AND/OR (makes finding and editing a subgroup of matching products much easier). Would be great if NOT was also an option so that some terms could be excluded, eg. fish NOT fishing, or PT15 NOT PT157 AND NOT PT159 (to list all PT15x items except two).
×
×
  • Create New...