Jump to content


  • Content Count

  • Joined

  • Last visited

  • Days Won


Everything posted by bsmither

  1. Welcome Graham! Glad to see you made it to the forums. An issue has been posted to the Github. In the meantime, I will try to make a work-around.
  2. The reason why only the first works in a set of panels (on a Category page, for example) is because we are using the ID of the node. Generally, nodes on a web page must have unique ID values. So, we will use an alternate means of selecting the nodes. Make these edits: In the template main.php, change to: <script type="text/javascript">$("[rel='counter-one']").htmlNumberSpinner();</script> In the template content.product.php, change to: <div rel="counter-one" name="quantity" class="quantity required" min="1" max="999" style="display:flex;margin-bottom:20px;"></div> In the template content.category.php, find: <input type="hidden" name="add[{$product.product_id}][quantity]" value="1" class="quantity" /> Change to: {* <input type="hidden" name="add[{$product.product_id}][quantity]" value="1" class="quantity" /> *} <div rel="counter-one" name="add[{$product.product_id}][quantity]" class="quantity" min="1" max="999" style="display:flex;margin-bottom:20px;"></div> In the template content.homepage.php, find: <input type="hidden" name="add" value="{$product.product_id}" /> {if $product.ctrl_stock && !$CATALOGUE_MODE} On a new blank line after that, add: <div rel="counter-one" name="quantity" class="quantity required" min="1" max="999" style="display:flex;margin-bottom:20px;"></div>
  3. Well, one would think if the plugin is going to create an input form element, it would work. Make these edits: In jquery.htmlNumberSpinner.js, change to: /* creating the counter buttons */ $(this).append( "<div class='btn decrementer'>-</div>" + "<input class='number-input " + $(this).attr("class") + "' type='text' name='" + $(this).attr("name") + "'/>" + "<div class='btn incrementer'>+</div>"); In the skin template, change to: <div id="counter-one" name="quantity" class="quantity required" min="1" max="999" style="display:flex;margin-bottom:20px;"></div> "at the moment only the first item has the plus and minus capability" So, you are wanting to have spinners on each product panel (the panels being in content.category.php and content.homepage.php)?
  4. In the template element.call_to_action.php, and the plugin code itself gets placed in the skin folder, but practically no other edits are applicable.
  5. The solution is a bit more involved than usual. It starts with realizing that CubeCart provides an HTML segment available to all CC5-based skins (that wish to use it) that has a link to the JQuery library hosted at Google. The version requested is the latest in the 1.7 family. This spinner module is best executed using a later version of JQuery. The plugin demo used version 3.3.1, but that version caused some unsolvable problems with the other javascript plugins that CubeCart includes. So, we will use version 2.2.4. Even this version has removed some functions that a few of the plugins use, but we will make the necessary changes to those plugins. The reason why I want to move away from version 1.7.x is because when clicking on the incrementer and decrementer buttons, the "+" and "-" gets "highlighted" as if the mouse is selecting that text. It then looks really odd. JQuery 2+ seems to have solved that. Please make these edits: In /js/common.html, find: <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js"></script> <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.7/jquery-ui.min.js"></script> Change to: <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script> <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script> In the file /js/plugins/jquery.filetree.js, near line 190, find: $('img.imgtoggle').live('click', function(){ Change to: $('img.imgtoggle').on('click', function(){ Near line 224, find: $('img.checkbox').live('click', function(){ Change to: $('img.checkbox').on('click', function(){ In the file /js/plugins/jquery.rating.min.js, near line 11, find JUST THIS PART: ;if(window.jQuery)(function($){if($.browser.msie)try{document.execCommand("BackgroundImageCache",false,true)}catch(e){}; Change JUST THAT PART to: ;if(window.jQuery)(function($){/*if($.browser.msie)try{document.execCommand("BackgroundImageCache",false,true)}catch(e){};*/ In the file /js/common.js, near line 187, find: $('.insert-text').live('click', function(){ Change to: $('.insert-text').on('click', function(){ Near line 459, find: $('.check-primary').live('click', function(){ Change to: $('.check-primary').on('click', function(){ In the eTrend skin template main.php, find: {/literal} "{$STORE_URL}/skins/{$SKIN_FOLDER}/js/enquire.min.js", "{$STORE_URL}/skins/{$SKIN_FOLDER}/js/superfish.js", "{$STORE_URL}/skins/{$SKIN_FOLDER}/js/script.js" {literal} ]); </script> On a new blank line just after that, add: <script type="text/javascript">$("#counter-one").htmlNumberSpinner();</script> In the eTrend skin template content.product.php, find: <div class="add_to_basket"> <input type="text" name="quantity" value="1" class="quantity required" /> <input type="hidden" name="add" value="{$PRODUCT.product_id}" /> Change to: <div class="add_to_basket"> {* <input type="text" name="quantity" value="1" class="quantity required" /> *} <div id="counter-one" class="counter" min="1" max="999" style="display:flex;margin-bottom:20px;"></div> <input type="hidden" name="add" value="{$PRODUCT.product_id}" /> Regarding the JQuery spinner plugin: Copy the file plugin.js to CubeCart's /js/plugins/ folder and rename that file to jquery.htmlNumberSpinner.js, then make this edit: Near line 5, find: $(this).append("<div class='btn decrementer'>-</div> <input class='number-input' type='number'/> <div class='btn incrementer'>+</div>"); Change to: $(this).append("<div class='btn decrementer'>-</div> <input class='number-input' type='text'/> <div class='btn incrementer'>+</div>"); In the jquery.htmlNumberSpinner.js file, you will find the CSS rules for the incrementer and decrementer buttons. Adjust to suit.
  6. If the plugin was making an external call, the 503 wouldn't be getting sent to the user's browser. PHP would deal with it, or ignore it, or crash from it. It would be interesting to troubleshoot this.
  7. You are taken to the store's homepage because, as you noticed, the document's name is missing (admin.php). Therefore, the web browser, having been configured with a directive to use a specified list of default document names, will use index.php as the first found document. Please examine the file /includes/global.inc.php. There must be $glob array elements for the adminFolder and adminFile, and they must match the actual names of the administration folder and file.
  8. Welcome VARUNISAC! Glad to see you made it to the forums. CubeCart uses a security token for every HTML form that is part of a web page. When submitting the form's data back to CubeCart, the security token is included in that data and is checked against what CubeCart last used and expects it to be. If different, or missing, CubeCart includes this alert on the next page sent to the browser. For the CCAvenue gateway to not include this security token when the visitor choses not to complete a CCAvenue transaction will need to be looked at. However, a different or missing token when submitting a form will also regularly happen when the visitor moves back through the page history using the browser's Back button, and also when the visitor opens more than one CubeCart page in separate tabs or windows, then submits a form after having submitted a prior form. (The security token changes after every form submission.) In cancelling an order, is this simply abandoning the visit to CCAvenue's web portal and returning to your store's home page? Or was the sequence of page requests other than that?
  9. Some time ago, CubeCart programmers decided to code a limit so that PHP wouldn't fault (see: https://github.com/cubecart/v6/issues/2086). Depending on the skin, there is also an HTML size limit placed on the Quantity text input: <input type="text" name="quantity" value="1" maxlength="3" class="quantity required text-center"> Please see the code changes in the Github to determine what to undo: https://github.com/cubecart/v6/commit/32d432378aac7a64b77842207a21253ab9e8b5a5
  10. CubeCart creates some Gravatar data based on the reviewer's email address. A query is made to Gravatar to see if there is an account having a hash of that email. Whether or not, that info is made available to the skin so that the store visitor can go to Gravatar to learn more about the reviewer. In the eSharp skin template content.product.php, near line 171: Find: {$review.title} </h3> <div class="content"> <a href="http://gravatar.com/emails/" class="gravatar"><img src="http://www.gravatar.com/avatar/{$review.gravatar}?s=50&amp;r=g" /></a> {$review.review} </div> Change to: {$review.title} </h3> <div class="content"> {* Do not include link/image: <a href="http://gravatar.com/emails/" class="gravatar"><img src="http://www.gravatar.com/avatar/{$review.gravatar}?s=50&amp;r=g" /></a> *} {$review.review} </div>
  11. A minor edit to the skin template. What skin are you using?
  12. We would need to know exactly where you got the plugin, so we can follow along with their installation instructions. Correct on the template content.product.php line number, but content.homepage.php does not have a quantity selector. (One could easily be added.)
  13. Please note that in eTrend's template main.php, there is: {include file='js/common.html'} The common.html is a file provided by CubeCart for any skin (all CC5 skins use this) to start the sequence that eventually gets jQuery itself (version 1.7 from Google's repository) and then any and all jquery plugins sent to the browser. This file has a <script> link for: <script type="text/javascript" src="{$STORE_URL}/js/plugins.php"></script> The plugins.php is code that gathers up all files found in the /js/plugins/ folder and sends them out to the browser. Thus, any jquery plugin you wish for your CC5-based skin (of which is eTrend) to use can be placed in CubeCart's /js/plugins/ folder. We can assume you have made the necessary edits to the templates' Quantity form elements to show the spinners?
  14. We would ask that you read this conversation: Please let us know if any of that conversation seems to be how you got to this predicament.
  15. I honestly thought it had been added. Please see: https://forums.cubecart.com/topic/53130-all-in-one-shipping-module-gets-a-custom-name/
  16. On the AIOS module's settings page, there should be a text entry field allowing you to specify what is to be used instead of the name of the module. You could name this "S&H". Then what currently says "Postage and Package", could be something more specific, such as "Zone 2".
  17. The template variable {$PRODUCT.isbn} should work. Other than any new template variable, does any other edit to the HTML show? This assumes that CubeCart's internal cache has been cleared after finishing having saved the edit to the skin and entered the data on the product's Add/Edit screens in admin.
  18. Welcome MarkL! Glad to see you made it the forums. You may be interested in this: https://www.cubecart.com/extensions/plugins/category-document-security-plugin-customer-groups-security-plugin-for-cubecart
  19. There are two issues that make this module difficult to use: 1. It requires your hosting provider allow port 30000 to be open 2. Canada Post (most likely) no longer offers this method of getting shipping quotes I haven't recently checked on whether CP still has the API (at sellonline.canadapost.ca) available to use.
  20. There are two approaches: edit core code to not have CubeCart make the check (saves a few seconds on first page load and then there is nothing to show), or edit the admin skin to simply not show it. The following will also not check to see if there are any updates to any extensions you may have had CubeCart install from the Marketplace. In the administration folder /sources/dashboard.index.inc.php, near line 94, find: if ($GLOBALS['session']->has('recent_extensions')) { Change to: if (true || $GLOBALS['session']->has('recent_extensions')) { Near line 113, find: if (!$GLOBALS['session']->has('version_check') && $request = new Request('www.cubecart.com', '/version-check/'.CC_VERSION)) { Change to: if (false && !$GLOBALS['session']->has('version_check')) { $request = new Request('www.cubecart.com', '/version-check/'.CC_VERSION);
  21. Testing and providing feedback, of course. Getting the data into the database is somewhat straightforward. Making sure CubeCart reliably and consistently fetches it all throughout the processing and management of the shopping cart is tricky. CubeCart does not determine the price once and for all, but seems to recalculate it constantly.
  22. Nearly all the information found in admin, Store Settings is in the $CONFIG variable. You will be wanting $CONFIG.store_name, .store_address, and .store_postcode. Not readily available is the .store_zone (expressed as a numerical value). There is, also, $COPYRIGHT, which you can put whatever you want in that (see admin, Store Settings, Copyright tab).
  23. We would ask for more information. Java? Maybe javascript? Helper? Maybe a browser add-on? Which one?
  24. That is bizarre. I would want to know if the names have been saved in the database. Using an external database utility (such as phpMyAdmin available through your hosting control panel), look at CubeCart_config, the row where 'name' is "config". The value in the 'array' column will be in base_64. You will need to find a means to decode it (online, or phpMyAdmin has a decoder built in to the context menu of each cell). You will be looking for "email_smtp_user".
  25. Welcome Lots Moore! Glad to see you made it to the forums. Some browsers want to make your use of it as easy as possible. One such way is to remember what you entered for similarly named form fields from other pages. Your browser may have a setting to automatically fill in some form elements from a collection of fields to data maps. This feature sometimes overwrites what you entered with what is in the map when you click Save. If you recognize this "browser helper" being an add-on to your browser, please try to determine how to submit a form that bypasses the add-on's interference.
  • Create New...