Jump to content
ArtcoInc

Purchase without account for 2.3.4 and BS2334

Recommended Posts

Hello, I'm André. I have an oscommerce 2.3.4. shop since 10 years and its works fine. (www.oi-thebauchladen.de) But now its time for a new phoenix-system.

I have a new empty (with one product) phoenix-v1.0.7.12 with the PWA_Phoenix_4.3.4, but after submitting the purchase without an account, the following error message is displayed:

Zitat

 

Deprecated: The tep_guarantee_subarray function has been deprecated. in catalog/includes/system/versioned/1.0.7.other/1.0.7.12/guarantor.php on line 43

Warning: session_regenerate_id(): Cannot regenerate session id - headers already sent in catalog/includes/functions/sessions.php on line 160

Warning: Cannot modify header information - headers already sent by (output started at catalog/includes/system/versioned/1.0.7.other/1.0.7.12/guarantor.php:43) in /homepages/34/d215537334/htdocs/phoenix/includes/functions/general.php on line 36

 

wat`s wrong ?

Thanks and greetings, André

and sorry for my english, i come from East-Germany, our russian was better 😉

Share this post


Link to post
Share on other sites

This is not related to PWA. It also shows when you create a normal account.

The error is not produced or shown on the create_account_pwa.php page. It shows on checkout_shipping.php and create_account_success.php.

Please post in this thread:

Meanwhile you can get it to work if you switch error reporting off.

Share this post


Link to post
Share on other sites
13 minutes ago, raiwa said:

This is not related to PWA.

Are you sure?  Isn't there a PWA customer data module that runs on the regular create account page to set the is_guest to false? 

There are no calls to tep_guarantee_subarray in core, so it would have to be an App.  The message is basically saying that tep_guarantee_subarray should be replaced with Guarantor::guarantee_subarray instead. 

I agree that turning display_errors to 0 would get rid of

11 hours ago, Kaiser0145 said:

Warning: session_regenerate_id(): Cannot regenerate session id - headers already sent in catalog/includes/functions/sessions.php on line 160

Warning: Cannot modify header information - headers already sent by (output started at catalog/includes/system/versioned/1.0.7.other/1.0.7.12/guarantor.php:43) in includes/functions/general.php on line 36

That is the obvious short term solution to it breaking the store.  Production stores should not have display_errors on in general. 


Always back up before making changes.

Share this post


Link to post
Share on other sites

Thanky ou Matt @ecartz,

Confirmed.

@Kaiser0145 and other Phoenix 1.0.7.12 users, hotfix:

in: includes/modules/customer_data/cd_guest.php, change in line 49 and 54 " tep_guarantee_subarray" to "Guarantor::guarantee_subarray".

So it should look like this:

    public function build_db_values(&$db_tables, $customer_details, $table = 'both') {
      Guarantor::guarantee_subarray($db_tables, 'customers');
      $db_tables['customers']['customers_guest'] = $customer_details['guest'];
    }

    public function build_db_aliases(&$db_tables, $table = 'both') {
      Guarantor::guarantee_subarray($db_tables, 'customers');
      $db_tables['customers']['customers_guest'] = 'guest';
    }

Or use this updated file:

cd_guest.php

 

I'll upload the update with this fix ASAP

Share this post


Link to post
Share on other sites
vor 9 Stunden schrieb raiwa:

Thanky ou Matt @ecartz,

Confirmed.

@Kaiser0145 and other Phoenix 1.0.7.12 users, hotfix:

in: includes/modules/customer_data/cd_guest.php, change in line 49 and 54 " tep_guarantee_subarray" to "Guarantor::guarantee_subarray".

So it should look like this:


    public function build_db_values(&$db_tables, $customer_details, $table = 'both') {
      Guarantor::guarantee_subarray($db_tables, 'customers');
      $db_tables['customers']['customers_guest'] = $customer_details['guest'];
    }

    public function build_db_aliases(&$db_tables, $table = 'both') {
      Guarantor::guarantee_subarray($db_tables, 'customers');
      $db_tables['customers']['customers_guest'] = 'guest';
    }

Or use this updated file:

cd_guest.php

 

I'll upload the update with this fix ASAP

Hello Raiwa,

thank you for the fast answer. its works.

greetings, André

Share this post


Link to post
Share on other sites

Uploaded PWA 4.3.5. with the above fix for Phoenix 1.0.7.12

Purchase without account 4.3.5


Compatibility:
CE Phoenix 1.0.7.12.+.
Tested with Phoenix 1.0.7.12.
PHP 7.0-7.4

Older Phoenix versions please use PWA Phoenix 4.3.0.-4.3.4
Older CE BS versions please use PWA for BS 3.0.5
Older 2.3.4.(1.) versions please use PWA for BS 2.5r2

Changes Version. 4.3.5
- Updated customer data module for Phoenix 1.0.7.12+ compatibility.

Share this post


Link to post
Share on other sites

@raiwa email formating error:

in file includes/hooks/admin/siteWide/oPwa.php

line 39

      $link = $check_status['customers_guest'] != '1' ? MODULE_NOTIFICATIONS_UPDATE_ORDER_TEXT_INVOICE_URL . ' ' . tep_catalog_href_link('account_history_info.php', 'order_id=' . $data['orders_id']) . "\n" : '';

should be replaced with:

      $link = $check_status['customers_guest'] != '1' ? sprintf(MODULE_NOTIFICATIONS_UPDATE_ORDER_TEXT_INVOICE_URL . ' ',tep_catalog_href_link('account_history_info.php', 'order_id=' . $data['orders_id'])) . "\n" : '';


to avoid the %s being printed in the email (%s defined in MODULE_NOTIFICATIONS_UPDATE_ORDER_TEXT_INVOICE_URL )

 

 


osC CE live - developing osC Phoenix adding modules with no core changes(awesome and easy!)

Share this post


Link to post
Share on other sites
On 1/6/2021 at 11:34 AM, raiwa said:

Confirmed.

Reported by me already on Dec 30, 2020😎. Please use search.

Share this post


Link to post
Share on other sites
26 minutes ago, vmn said:

Reported by me already on Dec 30, 2020😎. Please use search.

Saw it later. Sorry too many things to keep track 😉

Share this post


Link to post
Share on other sites

I have PWA as only means of purchase in my shop (so no login possibility at all, hook/redirect directly to create_account_pwa -page). I would like to remove "T&C and Privacy" from create_account_pwa.php page, because T&C is asked again in checkout_confirmation -page. Can it be removed from create_account? Had a quick look at the template, and all the fields of the form seem to be coming from a routine / module.


Installed Version: OSCOM CE Phoenix v1.0.7.12 w/ Featured Products, Purchase Without Account (PWA)

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×