Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

New Checkout Procedure In CVS


Harald Ponce de Leon

Recommended Posts

After the CVS commit marathon in my early morning, the new checkout procedure has been commited in the CVS repository.

 

The daily snapshots were shortly offline - new packages have been generated which contain the new checkout procedure and are now available for download. The daily snapshot package is dated 1101 although its meant to be 1031 - this means tomorrows daily snapshot will have the same filename of 1101 but will include any further cvs commits made today.

 

What does the new checkout procedure bring?

 

First of all, the user interface of the procedure has been vastly improved - this includes new mouse over effects that are fun to play with :D The colours might not be of ones taste at the moment - the colours on my TFT screen produce a nice light blue shade whereas on my CRT a grey silver shade is produced. I like the blue shade better so I will try and get a good mix together for both CRT and TFT later on.

 

The php code behind the scenes has been improved logic wise. It should be easier for developers to follow whats happening during the checkout procedure - there are alot less fail-entry points as before hand (with the amount of sessions there were being registered). The checkout process file still needs a cleanup as its still quite a mess :-/

 

With the improved logic, comes optimizations to the shipping and payment modules. These optimizations unfortunately make modules not in CVS incompatible to use with the new checkout procedure. Contributed modules are in need of an update.

 

Forunately, the update of these modules should be pretty easy to carry out. API documentation will be made soon, but no time-plan is provided (it took 2 months for the new checkout procedure to be ready :sneaky:)

 

The optimizations for the shipping modules include the possibility to return all rates from a given provider. This is shown nicely for the UPS and USPS modules (make sure your delivering from America to get the rates and to see the nice mouseover effects :D) - whats also possible is worldwide rates from America.

 

The payment modules have been optimized in the general sense - the class methods no longer return html data, but arrays. This should make it easier to change the parsing once to take effect on all modules.

 

All parameters for the payment modules that can be set via the Administration Tool are now controlled by radio buttons and include descriptive text (no more 0, 1, etc values). An reinstallation (click on red circle button, click on green circle button) is needed if using the modules on an existing database (as the parameter values have changed).

 

The customer is now able to select unique shipping and billing addresses which are automatically saved in their address book. This makes it possible for the customer to have 3 addresses for one order, their own address (for contact reasons), the shipping address, and the billing address; all three are shown on the Administration Tool -> Customers -> Orders section.

 

Please note, there are some fields that need to be added to the orders table. These new fields can be seen here.

 

There are still some issues to solve - it would be great if any bugs encountered are reported at the Bug Reporter.

 

I'm sure I've forgotten to write something, so i'll do that after I've woken up :D

 

Have fun with the new checkout procedure!

:heart:, osCommerce

Link to comment
Share on other sites

  • Replies 50
  • Created
  • Last Reply

Harald

 

Great work - many thanks. :D

 

Just a point, in view of the fact that many contributions will no longer work with this release - including most non-cvs payment and shipping contributions, would it not make sense to re-post the 31/10/2002 snapshot as the final version 2.2 (even if not stable) and to make this release 2.3?

 

This would enable users to clearly see what will work with the new checkout procedure and what will not.

 

At the same time, the current stable release is more than 18 months old. Why not archive it together with all contributions based on 2.1?

Ian-san

Flawlessnet

Link to comment
Share on other sites

... as the final version 2.2 (even if not stable) and to make this release 2.3?  

 

The guys (and gals) of the osCommerce Team are deserving us a surprise.

 

They will do like the WinAmp Team Theat the end they will jump directly to version 3.0, you will see :lol:

 

8) Lopo

PS: Only to shake up... Great work, Harald. Go sleep, man. Take a few days off. Life is more than programming ;) :D

If I helped you, you can help others too.

Search Affero Network. Thanks :)

--

moving mentalities >> fast forward

Link to comment
Share on other sites

Wow...this is pretty huge news.

 

I just installed OS Commerce 3 days ago and have been experimenting with it.

 

Are you saying that contributed payment modules will not work

 

As I understood, from several posts I read and from some of Harald's words, what is inside the current CVS will work with the new Checkout routine, what is not may work or may not. You must test it. :roll:

 

If you just installed osC from a 3 days older CVS, I surelly advise you to move to the current CVS but install it in a separated directory to test if all works as you expect. If all "Contributions" you need work well, etc., etc. :)

 

Don't forget that this Checkout has only 2 days old. It's a baby and could make some pupu on your trousers :D

 

No! Without joking now. Try it carefully. If you have a system running well, test this new one very well first, don't overwrite the old one.

 

If you know PHP and CVS well enough check the diff in the files too to see what realy changed ;)

 

Remember CVS means Nightly Snapshots, it's not even considered a BETA or a DEV Stable Version. :lol:

 

 

Best,

 

8) Lopo

If I helped you, you can help others too.

Search Affero Network. Thanks :)

--

moving mentalities >> fast forward

Link to comment
Share on other sites

Just in case anyone wants a play (no playing toooooo hard :twisted: ) I've installed the latest snapshot on a test server.

 

This should give people you can't (be arsed :P ) install it on their box to have a look/play with the new checkout procedure. It's pretty much a 'vanilla' install.

 

It may be worth doing a 'sticky' thread on what changes have been made to certain files/db so everyone can suss out exactly how they are gunna 'migrate' to this new version :(

 

Catalog : www.it-gear.net

Admin : www.it-gear.net/admin

 

Have fun.

 

 

Cheers

 

John

Link to comment
Share on other sites

John,

 

is that the latest Paypal IPN? It doesn't carry over the login information (of least for me) to Paypal. You have to re-enter it when it jumps over to Paypal.

Link to comment
Share on other sites

Not sure if that last response was directed at me, but just in case, I tried it again making sure to only have Paypal selected. Same thing. I did noticed something odd...using a IE 5.5 on a Mac, when it was selected the cursor blinks like it's reloading the selection...hard to describe.

Link to comment
Share on other sites

Eager to try the new checkout package, I placed an order at the test venue http://www.it-gear.net but encountered this error in the final stage:

 

1054 - Unknown column 'billing_name' in 'field list'

insert into orders (customers_id, customers_name, customers_street_address, customers_suburb, customers_city, customers_postcode, customers_state, customers_country, customers_telephone, customers_email_address, customers_address_format_id, delivery_name, delivery_street_address, delivery_suburb, delivery_city, delivery_postcode, delivery_state, delivery_country, delivery_address_format_id, billing_name, billing_street_address, billing_suburb, billing_city, billing_postcode, billing_state, billing_country, billing_address_format_id, payment_method, cc_type, cc_owner, cc_number, cc_expires, date_purchased, orders_status, comments, currency, currency_value) values ...

Link to comment
Share on other sites

I was attempting to migrate my old MYSQL DB into this one last night to see if all my mods worked, you found one that didnt :(...

 

I've reset the the DB now and tested orders fine..

 

Please note that this server will be played with by me aswell so no guarantees as to is 'state' :twisted:

 

Cheers

 

John

Link to comment
Share on other sites

I'm just starting to compare the new snapshot against my one (late july)

 

Initially I've found some DB changes to the ORDER table, looks like the following has been added:

 

billing_name; # varchar(64) NOT NULL default ''

billing_city; # varchar(32) NOT NULL default ''

billing_address_format_id; # int(5) NOT NULL default '0'

billing_street_address; # varchar(64) NOT NULL default ''

billing_postcode; # varchar(10) NOT NULL default ''

billing_state; # varchar(32) default NULL

billing_suburb; # varchar(32) default NULL

billing_country; # varchar(32) NOT NULL default ''

 

Which looks like entries for the new checkout process.

 

The other obv. changes in code are all the *checkout*.php scripts ;)

 

Does anyone know if the exact changes will be published, or is it a matter of 'us' attempting to migrate what we've got !?.

 

Cheers

 

John

Link to comment
Share on other sites

the new checkout is awesome but for those who's forced to stick with the old checkout due to the overall incompatibility with many prior contributions (payment modules, if not others as well), the dilemma would worsen because:

 

--Upcoming contributions will most likely be written to work with post-Nov.1 logic.

--Future CVS commits will evolve around post-Nov.1 framework.

 

It means that users running pre-Nov.1 won't be able to install many future contributions nor perform CVS updates that involve the new checkout. Might as well call it OSC 2.3!

 

And I still don't know what to do :cry: :cry: :cry:

There must be an easier way...

Link to comment
Share on other sites

Well, I've just spent the last 3/4 hrs migrating my site www.itsupplies.net to a test site www.it-gear.net running the latest snapshot.

 

I've got alot of mods on my site, like banktransfer, UK PO shipping, Featured products, Define Mainpage, User tracking, Cross Selling etc.

 

In this 'short' space of time, I've managed to get most working!.. (Featured/Cross selling needs more work!).

 

What I'm trying to say is although it may look nigh on impossible, its not, you just need to sit down and go through whats changed, the banktransfer module is a good example, only part of the logic in the code changed, and it was simple enough to fix, same with the UK PO zones mod.

 

See my post above on the extra DB entry, this needs to be made 1st, and I'm not 100% how it effects previous orders yet, but it def. works for new ones!.

 

Maybe there should be a forum category specifically for migrating to the new code???!

 

John

Link to comment
Share on other sites

The database changes for the new checkout procedure are found in CVS in catalog/install/oscommerce.sql v.1.55. The previous post is correct that there are eight fields added to the orders table. (There is also a more recent correction to a couple of configuration table entries.)

Link to comment
Share on other sites

Out of interest, I've now fully migrated my site www.itsupplies.net to the new snapshot, the were a few hicups, more typos, but all mods (as above) worked with a few tweaks.

 

I've mailed the guys who produced the mods I tweaked in order for them to 'OK' them, and if they get time, update the contribution section with the amended mod.

 

There may be others with alot more in-depth hacking in their site, which in turm will be alot harder to migrate, I decided to put all my hacks into the new CVS rather than pickout the updates and put into my old CVS. I think this is a better idea as it gives you a clean base to work on, and will be ready for more updates (sigh :cry: )

 

My view is that this is all 'FREE' code, and the devlopers are creating it all in the spare time, it really isnt up to us to 'badger' them about how hard its gunna be to upgrade to new code, more to thank them for continually producing and supporting this product.

 

Thanks

 

John

Link to comment
Share on other sites

the new checkout is awesome but for those who's forced to stick with the old checkout due to the overall incompatibility with many prior contributions (payment modules, if not others as well), the dilemma would worsen because:

 

--Upcoming contributions will most likely be written to work with post-Nov.1 logic.

--Future CVS commits will evolve around post-Nov.1 framework.

 

It means that users running pre-Nov.1 won't be able to install many future contributions nor perform CVS updates that involve the new checkout. Might as well call it OSC 2.3!

 

And I still don't know what to do :cry: :cry: :cry:

There must be an easier way...

 

I agree with you. Called it 2.3 may be a great jump but it can be called 2.2.1 with out problems. With that we will easly know what Add-ons are updated.

 

Another thing will be a change in the "Contributions" section to make it work more like http://www.phpclasses.org (and avoid the existence on several add-on versions -- some of them are just bug solving) that could be managed by the Authors. I think that Manuel Lemos (the owner of phpclasses.org) could help on that.

 

Best,

 

 

Lopo

If I helped you, you can help others too.

Search Affero Network. Thanks :)

--

moving mentalities >> fast forward

Link to comment
Share on other sites

Assuming we don't start a new thread for problems encountered ...

 

Testing the new checkout package, and with new payment module authorizenet.php v.1.38 installed and enabled in admin as the only active method, no payment method choice shows up in checkout_payment.php.

 

What more must be done to make the payment method's button appear?

Link to comment
Share on other sites

Never mind previous post, the payment method shows up after a shakedown (disabling then enabling in admin, and starting transaction over). This bundle is very handsome.

 

that's right, doing so removes old setup values in the database and writes in new ones

Link to comment
Share on other sites

Hi all

 

Would it be possible to add a "where did you here about us?" question during the checkout process.

 

A drop down list with the available answers (can be modified from admin)

e.g newspaper ad, search engine, repeat order, friend etc.

 

Response statistics displayed for store owner (view through admin only)

 

This would be really useful for to monitor ad effectiveness etc

 

 

I don’t have a clue how to do it, but I think it would be a great feature.

 

John

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...