Jump to content

bsmither

Member
  • Posts

    18,013
  • Joined

  • Last visited

  • Days Won

    605

Posts posted by bsmither

  1. Other than the timeouts working with an image, the next thing that needs fixed is the "Permission Denied" messages with respect to session garbage collection. Your hosting provider should be able to assist with that.

    There is no other message logged that would explain the blank screen.

    Do you have any image larger than 350KB filesize in the /images/source/ folder?

  2. Let me research the errors. A couple of them look interesting.

    I also ask that you try making the edits to the database calls I published above.

    I did verify that the list of gateways gets destroyed (that is, the query succeeds, but the if/then expression is faulty). Fixing the expression does solve that.

    Please examine the ini-custom.inc.php file. The 'max_execution_time' should let PHP run for a max of 60 seconds. I fear your hosting provider may have locked your site to a max of 30 seconds.

    Still, 30 seconds is a ridiculously long time unless CubeCart has to rebuild derivatives of hundreds/thousands of source images, or on very large image files (causing the timeouts in the GD class).

     

  3. There are two database calls that I do not like.

    In /classes/cubecart.class.php, near line 1934, find:
    
    if($gateways = $GLOBALS['db']->select('CubeCart_modules', false, $where, array('position' => 'ASC')) == false) {
    
    Change to:
    
    if(($gateways = $GLOBALS['db']->select('CubeCart_modules', false, $where, array('position' => 'ASC'))) === false) {
    
    Near line 2280, find:
    
    if($gateways = $GLOBALS['db']->select('CubeCart_modules', false, array('module' => 'gateway', 'status' => '1'), array('position' => 'ASC')) == false ) {
    
    Change to:
    
    if(($gateways = $GLOBALS['db']->select('CubeCart_modules', false, array('module' => 'gateway', 'status' => '1'), array('position' => 'ASC'))) === false ) {

    I am still installing CC646 in my dev environment, so I cannot, as yet, test if this is the problem.

     

  4. Please determine if the upgrade changed the name of the admin script and folder names. There may be more than one script and folder name that starts with admin.

    In this new version, there is new code that is supposed to show the custom order number format, if implemented. Otherwise, the standard order number format should show.

    I have not yet experimented with CC646.

     

  5. "Would being logged in make a difference?"

    During checkout as a guest, when one tries to enter and apply a coupon code, the (Foundation) form verification code will prevent that submission until all the details of the customer has been filled in -- including an email address. Whether CubeCart creates the customer record first or processes the coupon code first, I have not yet determined. But this is probably not relevant because you say you are logged in.

    A concern of mine, maybe the smoking gun, is the code that makes sure the coupon code can be added to the basket. This happens in the Cart class, discountAdd() function.

    CubeCart queries for records from CubeCart_customer_coupon, requesting the 'used' value, where the 'email' or 'customer_id' matches the customer,  logged-in or a new guest.

    The problem here is that the query does not specify which coupon is being searched for. Thus, if the customer has used any coupon previously, there will be a record of it - a false positive of testing for this specific coupon used by this specific customer.

    Please try again after making this edit:

    In the file /classes/cart.class.php, near line 541, find:
    
    $usage = $GLOBALS['db']->select('CubeCart_customer_coupon', array('used'), "`email` = '$email' OR `customer_id` =  ".(int)$customer_id, false, 1, false, false);
    
    Change to:
    
    $usage = $GLOBALS['db']->select('CubeCart_customer_coupon', array('used'), "`coupon` = '$code' AND (`email` = '$email' OR `customer_id` =  ".(int)$customer_id.")", false, 1, false, false);

     

  6. Please use an external database utility to examine the following:

    In the table CubeCart_customer_coupon, are there any rows where the value in the 'customer_id' column is zero?

    If so, note the value in the 'coupon' column for that row.

    Are there any other rows that have the same 'coupon' value? (Probably not, as CubeCart is detecting a usage problem with that code.)

    Would the problematic coupon code be that noted value?

     

  7. Consider that CubeCart does not keep a history of a product's price, I cannot determine how one would go about creating such a report.

    The closest I can imagine is by examining the records of past sales (CubeCart_order_inventory). But, CubeCart allows for that "sold" price to be a sales price, a customer's group price, or a product's bulk purchase price.

    Can you you let us know if you have a means of maintaining some sort of history (aside from examining routine but frequent backups of the database)?

     

×
×
  • Create New...