Jump to content

bsmither

Member
  • Posts

    17,959
  • Joined

  • Last visited

  • Days Won

    602

Posts posted by bsmither

  1. Let's look at a couple of the skin's templates.

    Look at the template main.php. Probably within the first 50 lines of HTML, there will be:

    this:
    
    {foreach from=$HEAD_JS item=js}{$js}{/foreach}
    
    or this:
    
    {include file='templates/element.js_head.php'}

    If the template has the {include} statement, look for a template named element.js_head.php, or whatever the include file is.

    In the GA plugin settings panel, there should be a checkbox that says "Collect Stats Regardless of Cookie Permission". This is necessary if, in admin, Store Settings, Extra tab, 'Cookie Compliance Dialog' setting, is not checked, then 'Collect Stats' must be checked.

    Please give us a web address where we can look for the GA code.

     

  2. This is what I want you to try. Go to CubeCart's Marketplace and download the Google Analytics plugin. You may prefer to use a Thunderbolt Icon token.

    In CubeCart's admin, Store Settings, Features tab, blank the Google Analytics ID text field, Save.

    In Manage Extensions, enter the Thunderbolt token value to fetch and install the plugin. Once installed, click the Edit icon to access the plugin's Settings page.

    Hopefully, you have a GA code suitable for your purposes. Enter that code, click the Enable checkbox, and Save. Click the flashing orange button in the top-right corner to clear CubeCart's cache.

    Test (as best you can).

     

     

  3. "How did someone add an IP address to my listing like that?"

    It was probably a web crawler. A less-than competently programmed crawler.

    The web server receives a data packet addressed to it by the server's IP address. The web server starts examining the packets that follow, where those packets have the HTTP Header array. Nearly everything in those HTTP Headers can be customized.

    The HTTP header element named 'HTTP_HOST' can be anything. Usually, the HTTP_HOST is the domain name of the site being requested. But it doesn't have to be.

    In a development environment, often times, the IP address of the development server box is used, perhaps 127.0.0.1, because there is no domain name set up on the internal network. Sometimes, the name of the server box can be used, including the name 'localhost'.

    There is more to it, of course, especially when HTTPS gets involved.

  4. According to this:

    https://php.watch/versions/8.0/gd2-gd-windows

    the actual file has been renamed.

    So the question is: what actual version of PHP is in that environment? PHP4, PHP5, PHP7, PHP8?

    Find the actual folder where all the actual extensions are located, and verify the actual name of the GD library file.

    Make sure the filename is spelled in the PHP.INI file exactly as it appears in the directory listing.

  5. Yes.

    Please review whatever control panel you have to manage the stack - specifically the PHP version and the extensions enabled within it.

    Did you mention a XAMPP stack? The stack controller should have this functionality to enable PHP extensions.

    An Internet search suggests that XAMPP has a file editor. That editor is to be used to edit the PHP.INI file. In the PHP.INI file, find the statement in the [Extensions] block that has "extention=gd.dll" (or something like that) and delete the semicolon in front of it. Then restart the web server.

  6. Working on it.

     

    In the admin skin template 'products.index.php', find:

    Near line 109:
    
    <td>{$product.price}</td>
    
    Add after:
    
    <td>{$product.sale_price}</td>
    
    Near line 75:
    
    <th nowrap="nowrap">{$THEAD.price}</th>
    
    Add after:
    
    <th nowrap="nowrap">Sale</th>

    This is a quick solution. As such, this column is not sortable, and reflects only what the product's sale price is specific to the product. That is, this sale price is not a calculation based on the global percentage sale mode.

  7. The SFWS products are not available anymore.

    Without a copy, the best I can do is create a difference report, specific to what affected the GA code, for Foundation from the version that matches CC625 to the version that matches CC653, then we work on trying to apply those changes to the SFWS skin.

  8. The error notice posted above might have been from Amzin. There was found to be a syntax error in version 1.05 (that took PHP8 to reveal it). Amzin 1.06 fixed it.

    I do believe CBurst has been made to work with PHP8. And Basix I haven't tried recently, but I believe it should work as it has the new capability of ElasticSearch.

  9. If the traffic chart on the dashboard does not have a comparable way to limit the results to Customers Only, then perhaps your solution is to rewrite the custom code to add more to the WHERE clause:

    AND `session_last` > `session_start`

     

  10. I would think you would have the same problem.

    "I would like to weed out any sessions that I don't need to track."

    Where are you tracking sessions? In admin, Statistics, Users Online tab? If so, is there a link above the table to Display Customers Only?

    The database table CubeCart_sessions gets trimmed of records that are older than seven days.

     

  11. I have no idea why 'location' is varbinary. CubeCart uses that column to store the web address used to access the site, including any querystring. Nothing in that textual string would require the table column to handle binary (that is, non-textual) data.

    Let's review what you actually need to accomplish.

    What is the nature of the content that is in the 'location' column that contains 2022?

     

  12. Using CubeCart's Database class, the statement would be:

    Database::getInstance()->delete('CubeCart_sessions', array('location' => "~2022"));

    The third parameter (false) is not necessary. It defaults to an empty string. That third parameter limits how many records get deleted.

  13. The phrase "Please enter a value less than or equal to" is from the skin's jquery.validate.js vendor plugin. It's a message related to the quantity input form element that has a max attribute, which appears only if there is in the product's details specify a "Maximum Quantity Purchase" value, and that value is greater than or equal to the min attribute's value.

    However, in admin, the product details screens, Pricing tab, the "Maximum Quantity Purchase" says to 'Leave blank to disable'.

    And the database table CubeCart_inventory has a default value of null for the 'maximum_quantity' column.

    However, for me, at least, my database shows that column has a zero as the value - which is what shows on the Pricing tab. Blanking that field does cause that form element to POST as a zero-length string, but still ends up in the database as a zero, not a null.

    So, still researching the situation.

     

     

  14. Looking at the comments in the PHP documentation for imagecreatefromjpeg(), it says:

    Quote

    If imagecreatefromjpeg() fails with "PHP Fatal error: Call to undefined function: imagecreatefromjpeg()", it does NOT necessarily mean that you don't have GD installed.

    If phpinfo() shows GD, but not JPEG support, then that's the problem. You would think that --with-gd would do the right thing since it does check for the existence of libjpeg (and finds it) and add that feature to GD, but it doesn't in v4.4.4 at least on RHEL v2.1, RHEL v3, CentOS v2.1 or CentOS v4.3.

    On those platforms, it's *important* that --with-jpeg-dir be *before* --with-gd. If it's not, GD won't build with jpeg support as if --with-jpeg-dir had never been specified...

    That comment is from 17 years ago, and it may be referring to PHP4.

    In admin, at the bottom of the Navigation pane, click PHP Info. Scroll to the GD table -- if it exists. Note whether JPEG Support is enabled.

  15. You mention "select [specific?] orders"? Which might be only those most recent orders for that day or past 2-3 days? At most those orders made after your last data extraction?

    Modules written for the Sales Report page can extract data on a 'whole day' basis.

    If you would be interested in testing one already written, please send a PM with your email address.

    Then again, I see the value in having among the choices in the drop-down selector, on the admin, Orders page, the new choice of "Extract to CSV".

    I am going to do that -- see what it looks like.

  16. Anything can be done. Just depends how far away one needs to get away from keeping the stock CubeCart code untouched.

    Then there is Sales Reports. Plugins can be written to get whatever info you need.

    You phrase the task as 'export the order'. Does that mean you need to provide specific details about one specific order at a time to import into some other data analysis tool?

×
×
  • Create New...