Jump to content


  • Content Count

  • Joined

  • Last visited

  • Days Won


bsmither last won the day on May 6

bsmither had the most liked content!

Community Reputation

1,379 Excellent

Profile Information

  • Gender
  • Location
    Pacific Coast

Recent Profile Visitors

89,197 profile views
  1. There is no existing, simple way to make a test for whether a product has options when shown in the Latest Products. (Probably also not available for Featured Product, Best Sellers, and On Sale boxes.) However, a simple test can be made on the View Category page (content.category.php, two places). {if $product.options}From {/if} This test can also be implemented on the View Product page (element.product.call_to_action.php). {if $PRODUCT.options}From {/if} As I may have mentioned, on the View Product page, the price does get updated when an option is chosen. So, a solution to show the base price would be best here.
  2. You will need to point me to that conversation regarding the fix to View Category. But it should work. Three lines after what you just changed, change the Smarty variable from {$LANG.common.info} to {$LANG.common.more_info}.
  3. Try this for the Homepage: In the skin template content.homepage.php, near line 46, find: {if $CTRL_HIDE_PRICES} Change to: {if true or $CTRL_HIDE_PRICES} The Category template is a bit more involved because there is no exact duplicate of the {if} test sequence.
  4. This can be done, and it will probably involve edits to the key skin templates. Keep in mind that the later versions of CubeCart allow for an option to increase the price or decrease the price by some difference, as well as establish a new fixed price as well. So, should you ever find yourself adding an option that actually decreases the price, saying "From #.##" might be a bit strange, but still semantically correct. To experiment, edit the skin template content.homepage.php. Find: {if $product.ctrl_sale} <span class="old_price">{$product.price}</span> <span class="sale_price">{$product.sale_price}</span> {else} {$product.price} {/if} Change to: From: {if $product.ctrl_sale} <span class="old_price">{$product.price}</span> <span class="sale_price">{$product.sale_price}</span> {else} {$product.price} {/if} If you don't see the change immediately, you may need to have CubeCart clear its internal cache. However, since the price is updated when an option is selected, we will need to get creative and use a different data item to show the base price if different than the price to pay.
  5. There are two "invoice" pages (more like "receipts:), one is shown to the customer when the customer is reviewing past orders, and the other is for the admin to use as a kind of shipping list. In admin, Documents, Invoice Editor tab, CubeCart takes the content from the admin template orders.print.php and offers it to be edited. The edited version is then databased (which means it survives upgrades). The editor starts in Source mode because the other mode shows nothing but a few dozen blue squares. Each blue square is a Smarty variable or command. Getting the footer to be at the bottom of the page would be a matter for CSS to solve, and how/if the browser incorporates the page dimensions as reported by the printer driver -- I have no experience in doing this. The basic problem is that HTML and CSS are developed for a display viewport of arbitrary width and unlimited length. Sure, there are workarounds, but getting a browser to do layout work for print media is hit or miss. See: https://stackoverflow.com/questions/1360869/ https://stackoverflow.com/questions/21032137/
  6. The country/state(county) list comes from CubeCart's management of Countries/Zones. In admin, Countries/Zones, Zones tab, verify that where the Country is Australia, that "Australian Capitol Territory" is present and enabled. On the Add Zone tab, you can add this, if necessary, as well as "Canberra" (if desired, and that if it has a unique Zone Abbreviation, possibly CBR but that is for the airport).
  7. In /classes/catalogue.class.php, find the public function descriptionShort(). A test is made that, when having stripped out HTML tags, if the result is still longer than the "precis", then use the stripped content, truncated. Otherwise, use the complete original. What you are looking for is where to set the Product Precis. That would be admin, Store Settings, Layout tab, "Length of product precis".
  8. Welcome captinmax! Glad to see you made it to the forums. Please check the contents of the offline message (admin, Store Settings, Offline tab). There could be way too much content there. Also, see: https://forums.cubecart.com/topic/55841-system-error-log/ https://forums.cubecart.com/topic/55301-la-fonction-save-nagit-plus/
  9. If you are being hosted, then perhaps there is a "gateway" server being used by your host to determine which real server amongst the "farm" is responsible for your site. The other site may or may not be on that same server. (How you access your sites via FTP may provide a clue.) So, I think the real server where your site is located is having a problem, and the gateway server has waited long enough for a response. Contact your hosting provider to have then check server logs. You might also look at your hosting control panel for any kind of error log. A person more familiar with running a hosting company should be along shortly with better suggestions.
  10. The code looks proper -- be sure to use item_location in the name attribute, to match what we are expecting in POST. (I say this to note that product_price is not the same as the name of the database table column, price. It just illustrates that the name attribute need not be the same as the database table column, you just need to pay attention and look for what POST is sending, and what table column you are updating.) <td><span class="editable number" name="product[{$product.product_id}][item_location]">{$product.item_location}</span></td> It is safe to delete your private columns, but completely unnecessary. You do not need to empty the columns of values first.
  11. This is looking at each element of $_POST['product'] as a key/value pair, with the key being the product_id, but making no distinction as what the value represents. It could be either the product_code or the price. The name we give to the variable simply helps us read the code, but has no true relationship to what the variable actually holds. In fact, it seems the value of each key/value pair is another array where the key is either 'product_code' or 'product_price', with the value being the text entered into the textbox. We are, in fact, using $product_code['product_code'] and $product_price['product_price'], but recall that the name we give the variable $product_code and $product_price does not truly indicate what the value actually is. This is badly explained, and I could go on to elaborate, but instead, let's try to fix it. Substitute the following: if (isset($_POST['product']) && is_array($_POST['product'])) { // Update Product Code foreach ($_POST['product'] as $product_id => $product_code) { $GLOBALS['db']->update('CubeCart_inventory', array('product_code' => $product_code['product_code']), array('product_id' => $product_id)); } } if (isset($_POST['product']) && is_array($_POST['product'])) { // Update Product Price foreach ($_POST['product'] as $product_id => $product_price) { $GLOBALS['db']->update('CubeCart_inventory', array('price' => $product_price['product_price']), array('product_id' => $product_id)); } } With: if (isset($_POST['product']) && is_array($_POST['product'])) { // Update Product Detail foreach ($_POST['product'] as $product_id => $product_detail_to_update) { if (isset($product_detail_to_update['product_code'])) { $GLOBALS['db']->update('CubeCart_inventory', array('product_code' => $product_detail_to_update['product_code']), array('product_id' => $product_id)); } if (isset($product_detail_to_update['product_price'])) { $GLOBALS['db']->update('CubeCart_inventory', array('price' => $product_detail_to_update['product_price']), array('product_id' => $product_id)); } } } What is happening now is that a test is made to make sure the detail to be changed actually has a value associated with it. (Note: My development server crashed a few days ago, and I have yet to fix it. So, I can't actually test this code.)
  12. There may be issues with the HTML of your content.checkout.medium-up.php template. It may be affecting the content.checkout.php template where the input that holds the security token is located. The token is not getting added to the form submission. Also, I'm not finding the buttons for the Empty Basket, Update Basket, and Proceed. It is among these buttons that the security token is located.
  13. I have not had to merge two or more customer accounts in CC6.
  14. When I was managing this situation on CC3, I had to make an education guess as to which email address the customer was going to try next: the one that was temporarily forgotten, or the new one. Quickly, I instituted a protocol of emailing both addresses explaining the situation and requesting: to use this one, or that one, or keep both (because they had reason to). So, combining the list of tables you examined and mine, should be it. What other concerns do you have?
  • Create New...