Jump to content

bsmither

Member
  • Posts

    16,470
  • Joined

  • Last visited

  • Days Won

    540

Everything posted by bsmither

  1. I don't see anything obviously wrong, but I need to ask this: In examining the database table 'stock_levels', do you find that there might be more than one record where product_id is A and location_id is B? Your query is asking for records with these WHERE conditions, then having the database engine sort on the column 'location_id'. The utility phpMyAdmin makes it easy to sort on multiple columns: sort first on product_id then on location_id and see if there is more than one of any of the combinations. However, again, with cache not being used, clearing the cache would have no effect at resolving this kind of scenario.
  2. Currently, you need to create one 'package' - usually as a zipped archive. Coincidentally, I've created a solution to have multiple downloadable files: one solution is as several files assigned to a product (as in an album of songs), and a slightly different solution as the ability to assign one distinct file to each of the several option combinations (as in a choice of flac or mp3 format). See: https://github.com/cubecart/v6/issues/2749
  3. Please let us see the calls to the database, and the code that sets the values for $stock_level_supplier, etc.
  4. "Would it help..." No, I think it wouldn't, although the non-faulting entries in the various logs has some interest. I am going to post an issue in the Github to request that additional info be logged, if present, for problematic request/responses in the PayPal module.
  5. At directknifesales, the "Mobile/Desktop" link does switch between Mobile and Desktop as expected. (I am using FireFox browser.)
  6. I wonder if it is possible to capture and log the additional information that comes along with a 422 response. There is supposed to be a better explanation why the code was sent.
  7. In the template box.session.php and box.search.php, find all instances of a URL that looks like: The Login link, for example: "{$STORE_URL}/login.html" Change to: "{$STORE_URL}/login{$CONFIG.seo_ext}"
  8. Do you think, along with the data shown in the Request Log entries, there are more data sent with the request - like in a POST method containing an address? If so, could it possibly be that PayPal is not agreeing to process this request not because of faulty syntax in the data stream, but rather a questionable or suspect customer or customer address? Which is to be asking, do we know when the entry gets logged in the Request Log? Before the customer gets sent off to the PayPal screen, or after the customer makes payment? This is a strange thing to ask, I know, as you say the order does get paid for by all other indications. (And again, why no Download Delivery email?)
  9. I am thinking that the 'escape' is converting certain characters to their HTML entity (< to &lt;), which means strip_tags no longer sees them. So try reversing the order: {$PRODUCT.description_short|strip_tags:false|escape} But I fear that attempting to strip the tags first may inadvertently catch angle brackets that are not tags. So beware.
  10. I think it strange that CubeCart isn't emailing a Download email when the order goes to Processing - assuming there is a digital item in the cart to trigger this. We may need to do some diagnostic analysis to determine why CubeCart is deciding not to do this. Ten percent of orders through PayPal? If you can recall any past order (maybe examine the Request Log for other red-colored entries) that exhibited the same issue, please examine the total price to see if it ended with zeros.
  11. The search looks only in the Product Code, Product Name, and Product Description. The number of products having the whole word cat vs the total number of products in the inventory?
  12. "occasionally do not complete" So, if most of the time there is no problem, then it can't be a condition that doesn't vary - such as a server feature (like, OpenSSL or CA certs). Is it possible that the 'unprocessable entity' (that is, a node in the JSON string) is not formatted exactly correctly? I am looking at the value->value node value of "21.60", and comparing that to value->breakdown->item_total->value value of "21.6". Please let us know if in admin, Store Settings, Features tab, "Allow order "Processing" status to be skipped?" is not checked.
  13. Nothing for cat? Allow me to ask what percentage do you think the word cat appears in all of your products? Yes, the database column and table configuration, and admin form elements could be added back (but the code would not be upgrade safe).
  14. The complete description? Or maybe you can use the short description? The template variable {$PRODUCT.description} or {$PRODUCT.description_short} could be used. Better might be: {$PRODUCT.description_short|escape|strip_tags:false}
  15. That sounds like a legitimate approach, except CubeCart is saying the query and its results are not being cached. Thus, if there is a file that is holding some sort of cached data from the database regarding this, then CubeCart doesn't know about it. We haven't reviewed the exact code in your customization that makes the query against the database looking for stock levels.
  16. A few versions prior, the meta data "keywords" was removed from CubeCart. Some users elected to not remove that data feature (but still drop it from the templates) because CubeCart could use it in its front-side search algorithm. There is a different search method used in the admin side of CubeCart. Neither search algorithm is as flexible as one might hope for. For example (search|found): cat|cats, tax|taxes, foot|feet would require a sophisticated library of the language. The front-side search has three opportunities (using the database engine's capabilities) to find something. The first is to use MATCH(). If nothing is found, then a whole word search is used (cat but not cats). If nothing found, then a partial word search is used (cat finds cats, copycat, and catsup). There is current work to incorporate access to an ElasticSearch installation. (I don't know the capabilities of ElasticSearch other than that it is incredibly fast.)
  17. The 'version_check' should be under "__system". (Well, maybe that's for versions more recent.) Still, adding the false as shown below should have worked. ## Check current version if (false && !isset($_SESSION['version-check']) && $request = new Request('www.cubecart.com', '/version-check/'.CC_VERSION)) {
  18. My next test would be to examine the database result as close as possible to the code that fetches the recordset from the database connection. (Near line 224 in /classes/db/mysqli.class.php) That would take a bit to set up, and would need to look specifically for the target table name in the query - or get a dumped listing of every database recordset.
  19. The module file /admin/index.inc.php is not a template. But using the assign() function here is appropriate. In admin, near the bottom of the left pane navigation list, click "Error Log". On the page that is displayed, click on the tab labeled "System Error Log". The errors logged in the error_log file are benign. If there is a syntax error with a template, it is not getting recorded in the generated error_log file.
  20. Let's see if the error is getting logged into the System Error Log (admin, Error Log, System Error Log tab). If not, then maybe the error could be caught in PHP's error log. (https://forums.cubecart.com/topic/51550-how-to-create-the-error-log/) It is very difficult to catch an error in the Smarty templates. Have you made any changes in a Smarty template -- including any email templates?
  21. Welcome OpenTheDoor! Glad to see you made it to the forums. From what I recall about CC626, the admin can create a category, but keep "Visible" unchecked. Products can still be assigned to it as their primary and only category. These products will still be found in a search, however. For a more versatile solution, you may be interested in: https://www.cubecart.com/extensions/plugins/category-document-security-plugin-customer-groups-security-plugin-for-cubecart
  22. The next test would be to manually adjust the stock level using an external database utility, such as phpMyAdmin. Find the record in 'stock_levels' where product_id is 11262 and location_id is 1, and change the stock_level value by one. Then request that page and see if the stock level changed any.
  23. Yup. It will be fixed in CC644. See: https://github.com/cubecart/v6/issues/2876
  24. Ok, a distinct table that holds these stock levels. And the query constructed such that the $cache parameter is set to false. In Cubecart's admin, Store Settings, Advanced tab, enable the Debug feature and enter your local IP address in the next field (www.showmyip.com). Request the product page. In the debug section at the bottom of the page, scan the list of queries for the specific query that targets this custom inventory table. The list item will have either 'Cache Read' in green, 'Not Cached' in black, or 'Cache Write' in orange. If 'Not Cached', then we can say the query has been processed as needed - cache not used. We can then look in the /cache/skin/ folder for a file that ends with 'file.content.product.php.php'. Scan through the file looking for the section that has the code that displays the custom data regarding stock levels. Does it look legit?
×
×
  • Create New...