Jump to content
Latest News: (loading..)
ArtcoInc

Purchase without account for 2.3.4 and BS2334

Recommended Posts

@De Dokta

 

I have just installed this in a 234bs cart, and things work very well. Thank you!

 

One thing I would like to see is: Since the customer is buying as a guest, once they move to checking_shipping, is there really a need to offer them the choice of changing addresses in their address book, which they don't have?

 

 

 

If we could have a check in checkout_shipping to see if the customer is a guest, we can eliminate that, and make the guest checkout smoother ...

 

 

 

Here's where it needs to be addressed in checkout_shipping.php

<div class="page-header">
  <h1><?php echo HEADING_TITLE; ?></h1>
</div>

<?php echo tep_draw_form('checkout_address', tep_href_link(FILENAME_CHECKOUT_SHIPPING, '', 'SSL'), 'post',

'class="form-horizontal"', true) . tep_draw_hidden_field('action', 'process'); ?>

<div class="contentContainer">
  <h2><?php echo TABLE_HEADING_SHIPPING_ADDRESS; ?></h2>

  <div class="contentText row">


    <div class="col-sm-8">

<!--  If this could be applied *only* if the customer is NOT a guest ...

      <div class="alert alert-warning">
        <?php echo TEXT_CHOOSE_SHIPPING_DESTINATION; ?>
        <div class="clearfix"></div>
        <div class="pull-right">
          <?php echo tep_draw_button(IMAGE_BUTTON_CHANGE_ADDRESS, 'glyphicon-home',

tep_href_link(FILENAME_CHECKOUT_SHIPPING_ADDRESS, '', 'SSL')); ?>
        </div>
        <div class="clearfix"></div>
      </div>
    </div>
    <div class="col-sm-4">
-->

      <div class="panel panel-primary">
        <div class="panel-heading"><?php echo TITLE_SHIPPING_ADDRESS; ?></div>
        <div class="panel-body">
          <?php echo tep_address_label($customer_id, $sendto, true, ' ', '<br />'); ?>
        </div>
      </div>
    </div>
  </div>

  <div class="clearfix"></div>

<?php
  if (tep_count_shipping_modules() > 0) {
?>

Thoughts?

 

Malcolm


If you are running the "official" osC 2.3.4 or 2.3.4.1 download, your installation is obsolete! Get the latest community-supported responsive "Edge" release here

Share this post


Link to post
Share on other sites

@@ArtcoInc

 

The question is if you want to give your customers the opportunity to have a shipment sent to an address other than his home address - even if he is a guest customer. I want that!  For us it often happens that customers let mail send to the office, because no one is at home during the day.

 

But I agree that the reference to the address book is awkward. In German, I have a more neutral formulation: "Should your order be shipped to a different address, please click here."

 

If you don't want to offer this opportunity add:

 

if(!tep_session_is_registered('customer_is_guest')) {

 

<--- code for parts to be available only for "normal" registered customers here -->

 

}

 

 

J.J.

Edited by De Dokta

Share this post


Link to post
Share on other sites

@@De Dokta

 

New question .... :)

 

In checkout_success_pwa.php, would it be possible to add a feature that asks the customer 'one last time' to create an account. It might state all the benefits of having an account, etc, etc, ...

 

If the customer chooses to create an account, all they really have to do is enter a password, right?

 

So, if the customer does chose to create an account, and does enter a password, then an account would be created, and all of the sales information would be now linked to that account.

 

One more thing ... The acknowledgement email ... This needs to be sent *after* the customer makes the choice to create an account or not, and a different email would be needed if they do, or if they don't.

 

Thoughts? And thank you for all of your support and contributions!

 

Happy Holidays!

 

Malcolm


If you are running the "official" osC 2.3.4 or 2.3.4.1 download, your installation is obsolete! Get the latest community-supported responsive "Edge" release here

Share this post


Link to post
Share on other sites

@@De Dokta

 

One more thing ... ;)

 

@@ArtcoInc


If you don't want to offer this opportunity add:

 

if(!tep_session_is_registered('customer_is_guest')) {

 

<--- code for parts to be available only for "normal" registered customers here -->

 

}

 

 

Would this if() statement work in the order acknowledgement email? Right now, the order acknowledgement email still tells the customer that to check on the status of their order, to log into their account (which doesn't exist).

 

Thanks!

 

Malcolm


If you are running the "official" osC 2.3.4 or 2.3.4.1 download, your installation is obsolete! Get the latest community-supported responsive "Edge" release here

Share this post


Link to post
Share on other sites

@@ArtcoInc

@@De Dokta

 

One more thing ... ;)

 

 

Would this if() statement work in the order acknowledgement email? Right now, the order acknowledgement email still tells the customer that to check on the status of their order, to log into their account (which doesn't exist).

 

Thanks!

 

Malcolm

 

If that happens you have something overseen in the installation.

Installation.txt:

 

2.1 checkout_process.php;

Finde / find:

   // lets start with the email confirmation
  $email_order = STORE_NAME . "\n" .
                 EMAIL_SEPARATOR . "\n" .
                 EMAIL_TEXT_ORDER_NUMBER . ' ' . $insert_id . "\n" .
                 EMAIL_TEXT_INVOICE_URL . ' ' . tep_href_link(FILENAME_ACCOUNT_HISTORY_INFO, 'order_id=' . $insert_id, 'SSL', false) . "\n" .
                 EMAIL_TEXT_DATE_ORDERED . ' ' . strftime(DATE_FORMAT_LONG) . "\n\n";
  if ($order->info['comments']) {
    $email_order .= tep_db_output($order->info['comments']) . "\n\n";
  }

Ersetze durch / replace by:

  // lets start with the email confirmation
  $email_order = STORE_NAME . "\n" .
                 EMAIL_SEPARATOR . "\n" .
                 EMAIL_TEXT_ORDER_NUMBER . ' ' . $insert_id . "\n";
                
       if(!tep_session_is_registered('customer_is_guest')) {         
  $email_order .=              EMAIL_TEXT_INVOICE_URL . ' ' . tep_href_link(FILENAME_ACCOUNT_HISTORY_INFO, 'order_id=' . $insert_id, 'SSL', false) . "\n";
  }

  $email_order .= EMAIL_TEXT_DATE_ORDERED . ' ' . strftime(DATE_FORMAT_LONG) . "\n\n";
       if(tep_session_is_registered('customer_is_guest')) {         
  $email_order .=              EMAIL_WARNING . "\n\n";
  }
  if ($order->info['comments']) {
    $email_order .= tep_db_output($order->info['comments']) . "\n\n";
  }

 

With that the link to a customer account is displayed only in confirmation mails to registered customers.

 

J.J.

Share this post


Link to post
Share on other sites

@@ArtcoInc

 

 

New question .... :)

 

In checkout_success_pwa.php, would it be possible to add a feature that asks the customer 'one last time' to create an account. It might state all the benefits of having an account, etc, etc, ...

 

If the customer chooses to create an account, all they really have to do is enter a password, right?

 

 

Nothing is impossible with osc (w00t) . But how this could be done in the case, I have to think about it when I have some more time for it...........

 

J.J.

Share this post


Link to post
Share on other sites

@@De Dokta   Thank you.

 

When I reformatted the Order Acknowledgement email, I accidentally omitted this.

 

It's also good to know that I can use this to conditionally change the outgoing email.

 

Thank you again!

 

Malcolm


If you are running the "official" osC 2.3.4 or 2.3.4.1 download, your installation is obsolete! Get the latest community-supported responsive "Edge" release here

Share this post


Link to post
Share on other sites

@@De Dokta   Thank you.

 

When I reformatted the Order Acknowledgement email, I accidentally omitted this.

 

It's also good to know that I can use this to conditionally change the outgoing email.

 

Thank you again!

 

Malcolm

hi

which plugin is this?

do you have a link to it?

thanks

Share this post


Link to post
Share on other sites

I loaded this contribution and it works well. There are 2 items that I think would be nice to have. 1) Have the entered address be used for both billing and shipping (since there is an option in checkout to change the shipping address). For non-account holders, they have to re-enter their shipping address which could be annoying for the customer and we could lose a potential sale. 2) A drop down box to select the State codes to standardize the entry of this field and help alleviate misspellings / typos. 

 

I appreciate your time and efforts in coding this contribution.

Share this post


Link to post
Share on other sites

Hello,
Ive installed this PWA-Module with the Bootstraped-gold version.
It worked well - but only in english language.
If I switched to german language and tried to purchase without account, I saw only a blank, white screen.
After searching a while, I found a few typos in the file /includes/languages/german/checkout_pwa.php. There are 1 ";" and 1 "'" missing.
Here ist the file:
 

<?php
/*
  $Id$

  osCommerce, Open Source E-Commerce Solutions
  http://www.oscommerce.com

  Copyright (c) 2015 osCommerce
  Released under the GNU General Public License
*/
define('NAVBAR_TITLE_1', 'Kasse');
define('NAVBAR_TITLE_2', 'Erfolg');
define('NAVBAR_TITLE_3', 'Rechnungs- und Versanddaten');
define('HEADING_TITLE', 'Ihre Personaldaten');
define('HEADING_TITLE_SUCCESS', 'Ihre Bestellung wurde übermittelt!');
define('TITLE_PLEASE_SELECT', 'Bitte wählen');
define('TEXT_ORIGIN_LOGIN', 'Wenn Sie bereits ein Kundenkonto besitzen, können Sie sich  <a href="%s"><u>hier</u></a> anmelden.');
define('ITEMS', '<strong>Gekaufte Artikel</strong>');
define('TEXT_SUCCESS', 'Ihre Bestellung ist eingegangen und wird bearbeitet! Die Lieferung erfolgt innerhalb von ca. 2-3 Werktagen.');
define('TEXT_THANKS_FOR_SHOPPING', '<strong>Wir danken Ihnen für Ihren Online-Einkauf!</strong>');
define('TEXT_CONTACT_STORE_OWNER', 'Bei Fragen kontaktieren Sie uns bitte über unsere <a class="btn btn-info" role="button" href="%s">Kontakt-Seite</a>.');

After changing this it works perfect.
Thank You a lot this this module!

Share this post


Link to post
Share on other sites

Hello,

 

I just installed this add-on for 2.3.3.4 BS version. It seems to be working just fine. I have one question. 

 

Would it be better if the customers aren't added to the customers table until after an order was placed? My reason for the question is it runs a high risk of duplicate entries if the customer abandon the cart then return later to complete the order.

 

Forgive me if this has been answered already.

Share this post


Link to post
Share on other sites

@@De Dokta

 

How "should" this PWA behave when paying with PayPal?

 

I think I have now everything correctly installed and it works fine with Bank transfer or COD payment methods.

But when using PayPal Standard I click on "checkout with out account", enter all data as always, then I get redirected to the PayPal payment site, complete the payment and get redirected back to the shop.

Now in my shop it shows the "Log Off" link which should not be because if I am a guest then I am not "logged in", right? Anyway looking at the admin area, there too the orders.php doesn't show a green check mark for that PayPal order.

So it is an order with an account. Looking at the customers area I can see a new account with all the data from the PayPal checkout process.

So in short, when I select PayPal to pay it creates and account even though I chose to checkout as guest.

 

Can you tell me what went wrong? Or is this the normal behaviour when using PayPal as payment method?

 

Danke.

Share this post


Link to post
Share on other sites

@@De Dokta,

 

Hello, just installed the PWA add-on in a 2.3.4 BS store. All fine except there are some cosmetic updates from post BS Gold versions which may be good to update in account_pwa.php. These changes are applied in the actual 2.3.4BS master version.

 

1. The classes "col-xs-3" and "col-xs-9" should be changed to "col-sm-3" and "col-sm-9" for stacked view of labels and input fields on xs.

2. The correct input types "e-mail" and "phone" should be added to the respective input fields for easier input on mobile devices.

Example:

    <div class="form-group has-feedback">
      <label for="inputEmail" class="control-label col-sm-3"><?php echo ENTRY_EMAIL_ADDRESS; ?></label>
      <div class="col-sm-9">
        <?php
        echo tep_draw_input_field('email_address', NULL, 'required aria-required="true" id="inputEmail"', 'email');
        if (tep_not_null(ENTRY_EMAIL_ADDRESS_TEXT)) echo '<span class="help-block">' . ENTRY_EMAIL_ADDRESS_TEXT . '</span>';
        ?>
      </div>
    </div>

Otherwise excellent contribution

 

regards

Rainer

Share this post


Link to post
Share on other sites

@@raiwa

 

Thanks for your advice. :)  Just working on some improvements (I hope) on different of my add-ons - among them also the PWA addon. I'll add the changes you proposed to the next release.

 

J.J.

Share this post


Link to post
Share on other sites

@@De Dokta

 

How "should" this PWA behave when paying with PayPal?

 

I think I have now everything correctly installed and it works fine with Bank transfer or COD payment methods.

But when using PayPal Standard I click on "checkout with out account", enter all data as always, then I get redirected to the PayPal payment site, complete the payment and get redirected back to the shop.

Now in my shop it shows the "Log Off" link which should not be because if I am a guest then I am not "logged in", right? Anyway looking at the admin area, there too the orders.php doesn't show a green check mark for that PayPal order.

So it is an order with an account. Looking at the customers area I can see a new account with all the data from the PayPal checkout process.

So in short, when I select PayPal to pay it creates and account even though I chose to checkout as guest.

 

Can you tell me what went wrong? Or is this the normal behaviour when using PayPal as payment method?

 

Danke.

 

did you manage to find out?

Share this post


Link to post
Share on other sites

Hi,

 

not really! I discussed the issue with Tsimi and we found that PP Express returns the user to checkout_confirmation, while PP Standard returns him to checkout_success: So PP Express can be used with PWA, PP Standard does not work with the add-on. Actually I have no idea how to solve the problem.........

 

J.J.

Share this post


Link to post
Share on other sites

@@vampirehunter

 

Nope, as @@De Dokta already mentioned the PP Standard module works a bit different then the PP Express module.

I am sure you could somehow hack the return URL/patch in the standard module but not sure how the whole thing is working. That is Haralds area of expertise.

About a month ago I switched to PP Epxress and haven't reinstalled the PWA addon anymore. But it would be a good time to give it another shot.

Share this post


Link to post
Share on other sites

Thank you for the contribution.

 

I found few annoying issues with PWA.  I put some "band aid" fixes, but would be good to get problem fixed in main stream code.

 

1. Order confirmation/status e-mails include the link to the order info page. In case of a guest checkout, customer can not login and customer gets frustrated. Link should not be included in case customer checked out as a guest. Perhaps add a message about not being able to see the details, but say they can do so if they create an account next time.

 

2. Consider situation -- customer tries to checkout as a guest, then abandons shopping cart for a while. Then customer comes back. This creates a problem, as customer e-mail is in database already, so they can no longer check out as a guest or create an account. Or customer went  through to the shipping (guest account created), then hits BACK button and tries to check out as a guest again. At the moment, I just allowed duplicates of e-mails, but this causes whole lot of other issues. Proper way would be to run periodic checks and clean out entries that are expired. In case customer comes back before session expired, old entry should be either re-used or removed. Current code causes lost customers and it is not very obvious.

 

3. Related to the one above -- guest customer can just abandon the cart and this causes "zombie" entry in database. Should really be cleaned out periodically. (actually will be good to see a report of those "cleaned" entries)

 

4. Consider situation where existing customer with an account just want to check out as a guest. Should they be redirected to a login or should they be allowed? I think, they should be allowed to check out as quest if they want to.

 

 

Rudolf

Share this post


Link to post
Share on other sites

Just installed this into my Repo

https://github.com/newburns/osCommerce-234-bootstrap-wADDONS

 

Wondering what will happen for those with Digital Downloads?

 

I agree with same issues as @rudolfl

Now I'm just waiting to see what will happen when you purchase something that requires an account, such as an MP3 download. Especially if the download is an attribute,

ie. MP3, CD, DVD

MP3 should not allow checkout as guest

Share this post


Link to post
Share on other sites

Just out of curiosity, why should buyers of digital files not be able to checkout as a guest.


REMEMBER BACKUP, BACKUP AND BACKUP

Before installing the official version of oscommerce first look at a responsive version here

It's very easy to over complicate what are simple things in life

Share this post


Link to post
Share on other sites

@@14steve14

 

 

Just out of curiosity, why should buyers of digital files not be able to checkout as a guest.

If someone purchase's a downloadable virtual file, they will not have the login needed to receive the file.

Currently, not that I know of, there is no way to email the file to be downloaded. And everyone that purchases digital material can only retrieve the download by logging into their account history.

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

×