Jump to content

Cannot change order status from 'Pending' to 'Processing' CCv6.04


Syler

Recommended Posts

Hi Guys,

How are we? Hope everyone's fine.

I have an issue here that I'm hoping if you guys would kindly assist please.
I tried to manually change the order status from 'Pending' to 'Processing' but always ended up with a blank page (why..) ?
I've also done a couple of test purchase with real payments through PayPal and waiting to see if the status change automatically but nothing's changed even after I have received payment confirmations from PayPal. It has been like over 30 minutes ago now.

Thank you.

Link to comment
Share on other sites

A blank page is indicative of either of two likely problems: 1) a skin syntax error or 2) something else.

In either case, there is a good chance that PHP is logging an error about it. So, please make a new file, named ini-custom.inc.php, and enter these contents:

<?php
# Custom initialization commands
# Filename: ini-custom.inc.php
# File location: main CubeCart folder

ini_set('memory_limit', '256M'); // Platypus Suhosin limit is 256M
ini_set('max_execution_time', '60');
ini_set('error_log', 'error_log');
ini_set('log_errors', 'on');

?>

Save the file in CubeCart's main folder.

Make your change to get a blank page. Then, look at the contents of a new file that will be created in CubeCart's main folder, error_log.

Link to comment
Share on other sites

Thank you bsmither.
I have done as per your instruction and I hope you don't mind if I sent you the error log over email.
By the way, it's been overnight and status still showing as PENDING, so nothing is automated obviously.

 

Link to comment
Share on other sites

I'm reviewing the error_log. But there is nothing found yet to explain why an order cannot be put to Processing (unless you are simultaneously opening more than one order, each in its own browser window/tab).

Link to comment
Share on other sites

Hi bsmither, I have done a few testings and changed some codes as per your email but not getting any different results.
I then take a look at the dates on the error log and realised that the blank page issue is not getting log at all.
Whatever that were on the error log, looks to me as just irrelevant issues based on the dates.
So to confirm that, I deleted the error log off the server (with the ini-custom.inc.php still there of course) and then gone back to the browser, at my store admin area and did what I did to trigger the blank page (by changing the status from pending to processing) and returned to the server and apparently no error log file is created.

I'm confused now..

Link to comment
Share on other sites

I've just realised that my TRANSACTION LOGS is not showing any transactions at all.
I have done a number of test orders and can see them in the ORDERS section.
When I put one of the order number in the 'Search' field of the TRANSACTION LOGS area, I get this message 'No logs found that match'.

Link to comment
Share on other sites

I found this error message from inside cubecart admin 'Error log' (System error log) and it's definately from this issue.
So what is this mean please?

[Exception] /home/clcl1636/public_html/includes/lib/smarty/sysplugins/smarty_internal_templatecompilerbase.php:62 - Syntax error in template "a0ddd539d19b431dc865286d516bfb67383832ee" on line 62 "{if !empty($DATA.ship_method)}{$DATA.ship_method|replace:'_':' '}:{if !empty($DATA.ship_product)} ({$DATA.ship_product}){/if}{else}Shipping:{/if}

Link to comment
Share on other sites

Very interesting.

{if !empty($DATA.ship_method)}
  {$DATA.ship_method|replace:'_':' '}:
  {if !empty($DATA.ship_product)}
    ({$DATA.ship_product})
  {/if}
{else}
  Shipping:
{/if}

There is a SQL upgrade script that addresses this. The script is not correct, but it seems there has been something noticed that needs fixing.

Either in phpMyAdmin, or in CubeCart's SQL Query editor, enter and execute these two statements one at time (these are corrected versions):

UPDATE `CubeCart_email_content` SET `content_html` = replace(`content_html`, "{$DATA.ship_method|replace:&#39;_&#39;:&#39; &#39;}", "{$DATA.ship_method}");
UPDATE `CubeCart_email_content` SET `content_html` = replace(`content_html`, "{$DATA.ship_method|replace:'_':' '}", "{$DATA.ship_method}");
UPDATE `CubeCart_email_content` SET `content_text` = replace(`content_text`, "{$DATA.ship_method|replace:'_':' '}", "{$DATA.ship_method}");

Note that if your CubeCart database uses a prefix for the table names, be sure to include it in the statements.

It seems that

{$DATA.ship_method|replace:&#39;_&#39;:&#39; &#39;}

is not the correct syntax for the variable modifier replace. The modifier attempted to replace the underscores that may be part of the shipping method (when using the folder name) with a space character.

Link to comment
Share on other sites

Probably an easier way is to go to admin, Email Templates, click the "en-GB" flag to edit.

The specific templates to fix are Cart: Order Confirmation and Admin: Order Received, both HTML and Plain contents.

There is still the email_definitions.xml file in the /language/ folder, to be used when a email_language does not have a given phrase key.

Link to comment
Share on other sites

Hi Dirty Butter & bsmither, the only shipping plugin I use is 'Per Category' but have installed 'Multi Level Shipping' to test out previously and have uninstalled it.
Would that have any effect?

@ bsmither, please forgive me but I don't think I fully understood what you've said above. So what exactly the cause of the issue here, is it the 'Email' or is it the 'Shipping'?
And what do you mean by 'uses a prefix for the table names' ?

Link to comment
Share on other sites

Looks like problem is solved..! :D THANK YOU BSMITHER

So, if anyone is having the same issue, go to your admin area and go to Maintenance > Query Database (Advanced)
and as per bsmither's instruction above, enter and execute these two statements one at time (these are corrected versions):

UPDATE `CubeCart_email_content` SET `content_html` = replace(`content_html`, "{$DATA.ship_method|replace:&#39;_&#39;:&#39; &#39;}", "{$DATA.ship_method}");
UPDATE `CubeCart_email_content` SET `content_html` = replace(`content_html`, "{$DATA.ship_method|replace:'_':' '}", "{$DATA.ship_method}");
UPDATE `CubeCart_email_content` SET `content_text` = replace(`content_text`, "{$DATA.ship_method|replace:'_':' '}", "{$DATA.ship_method}");

Note that if your CubeCart database uses a prefix for the table names, be sure to include it in the statements.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...