Jump to content



Photo
- - - - -

osCommerce Online Merchant v2.3.4


  • Please log in to reply
101 replies to this topic

#21   multimixer

multimixer

    Lemons or Melons ?

  • Partner
  • 4,752 posts
  • Real Name:George Zarkadas
  • Gender:Male
  • Location:Greece

Posted 12 June 2014 - 08:23

@Mort-lemur

 

The query and jqueryUI updates will not affect your store, you can select the versions you want to use in admin. No MTS settings are affected by the osCommerce upgrade.

 

I would do the complete upgrade



#22   Mort-lemur

Mort-lemur
  • Members
  • 2,387 posts
  • Real Name:Heather
  • Gender:Female
  • Location:UK

Posted 12 June 2014 - 08:33

@multimixer Thanks George - I forgot that I dont have to select the latest version - Ill give tat a go later. Thanks


Now running on a fully modded, Mobile Friendly 2.3.4 Store with the Excellent MTS installed - See my profile for the mods installed ..... So much thanks for all the help given along the way by forum members.


#23   burt

burt

    I drink and I know things

  • Community Team
  • 12,492 posts
  • Real Name:G Burton
  • Gender:Male
  • Location:UK/DEV/on

Posted 12 June 2014 - 08:41

@burt Not doing the Jquery / UI / Flot changes at the moment because my sites are live, and this will mess up the formatting / colour settings of my MTS which I cant do when there are customers online - and some of my customers shop at strange hours........


I think that the MTS is fine with the newer fileset. George will confirm - ooops should have read the following posts prior to replying. George has already confirmed...
 

Its an Interesting point the "Near Enough" statement...... If all the Code changes to core files are carried out then can this be classed as now 2.3.4? For example Not everyone will see the point of updating ALL the payment modules - as they will only ever use one or two of these.


it is *always* best (my opinion) to do the full fileset changes as you then have the knowledge that you are 100% up to date.

By "near enough" I mean the exact changes, but if you have an extra line break in a file, no big deal..or if you have changed a new language define to some other words. You know the score.

Edited by burt, 12 June 2014 - 08:43.

This is a signature that appears on all my posts.  It is not specifically aimed at you.

 

IF YOU MAKE A POST REQUESTING HELP...please state the exact version of osCommerce that you are using. THANKS
 
If you are still on the old style osCommerce, it is time to move to Responsive.

 


#24   Harald Ponce de Leon

Harald Ponce de Leon

    Healthy Giraffe

  • Core Team
  • 5,349 posts
  • Real Name:Harald Ponce de Leon
  • Gender:Male
  • Location:Solingen, Germany

Posted 12 June 2014 - 09:30

Not every existing store owner needs to perform each changeset in the upgrade guide. Any security fixes should of course be applied though.
 
Not performing each changeset will of course make it harder to review and compare changes in future releases as the next release is only based on its previous release.

The following are the changesets related to the jQuery library updates:

jQuery UI
jQuery
Flot (jQuery Library)
PhotosetGrid and ColorBox
Administration Tool Boxes


:heart: , osCommerce


#25   multimixer

multimixer

    Lemons or Melons ?

  • Partner
  • 4,752 posts
  • Real Name:George Zarkadas
  • Gender:Male
  • Location:Greece

Posted 12 June 2014 - 12:09

The file admin/includes/configure.php is not mentioned in the list of modified files ( http://library.oscom...se_notes&v2_3_4 ) and also not part of the upgrade package

 

It is a bit hard to find out that the new constants need to be added to that file

 

Unless I'm missing something, this need to be done manually, correct?



#26   burt

burt

    I drink and I know things

  • Community Team
  • 12,492 posts
  • Real Name:G Burton
  • Gender:Male
  • Location:UK/DEV/on

Posted 12 June 2014 - 12:20

Unless I'm missing something


http://library.oscom...es&v2_3_4#upg14

This is a signature that appears on all my posts.  It is not specifically aimed at you.

 

IF YOU MAKE A POST REQUESTING HELP...please state the exact version of osCommerce that you are using. THANKS
 
If you are still on the old style osCommerce, it is time to move to Responsive.

 


#27   multimixer

multimixer

    Lemons or Melons ?

  • Partner
  • 4,752 posts
  • Real Name:George Zarkadas
  • Gender:Male
  • Location:Greece

Posted 12 June 2014 - 12:29

 

Yes, that is clear, so the change is a manual one

 

Still, the file is not included in the list of modified files ?



#28   Harald Ponce de Leon

Harald Ponce de Leon

    Healthy Giraffe

  • Core Team
  • 5,349 posts
  • Real Name:Harald Ponce de Leon
  • Gender:Male
  • Location:Solingen, Germany

Posted 12 June 2014 - 12:32

The admin/includes/configure.php file is not included in the update package to prevent people overwriting their existing config files with a blank version. It's not included in the modified files listing as it is not a php code file but the changes are referenced in the relevant changeset.

 

Similarly, install/oscommerce.sql is not listed as a modified file but SQL changes are referenced in their relevant changesets.


:heart: , osCommerce


#29   Mort-lemur

Mort-lemur
  • Members
  • 2,387 posts
  • Real Name:Heather
  • Gender:Female
  • Location:UK

Posted 12 June 2014 - 14:12

Im currently ploughing ahead with the 2.3.3.4 to 2.3.4 upgrades - and am trying to understand each change rather than just copy & paste, hence my questions.

 

On the subject of forcing SSL on the Admin use by modding the 22 files why has this approach been taken? I have my Configs set to point to SSL for the admin and have the following line in my admin/.htaccess

SSLRequireSSL

as defined here: http://httpd.apache....l#sslrequiressl

 

Are the 22 files modified so that OSC auto detects if SSL is selected or not ?

 

Thanks


Edited by Mort-lemur, 12 June 2014 - 14:13.

Now running on a fully modded, Mobile Friendly 2.3.4 Store with the Excellent MTS installed - See my profile for the mods installed ..... So much thanks for all the help given along the way by forum members.


#30   Harald Ponce de Leon

Harald Ponce de Leon

    Healthy Giraffe

  • Core Team
  • 5,349 posts
  • Real Name:Harald Ponce de Leon
  • Gender:Male
  • Location:Solingen, Germany

Posted 12 June 2014 - 14:23

The links in the admin produced by tep_href_link() have hardcoded NONSSL parameters. The hardcoded NONSSL has been removed thus the high number of files affected.

 

The admin tep_href_link() function has been updated to detect if ENABLE_SSL is enabled and to treat the default connection for links as SSL rather than NONSSL.

 

An even easier approach is to use a https url for HTTP_SERVER however it's not a clean consistent solution.

 

Forcing SSL with htaccess requires Apache. We are moving towards a web-server independent based solution to have a consistent behaviour across Apache, Nginx, IIS, ... and to document areas that need strengthening (eg, through the extended security check modules).


:heart: , osCommerce


#31   Mort-lemur

Mort-lemur
  • Members
  • 2,387 posts
  • Real Name:Heather
  • Gender:Female
  • Location:UK

Posted 12 June 2014 - 14:33

@Harald Ponce de Leon Thank you for the explanation :)


Now running on a fully modded, Mobile Friendly 2.3.4 Store with the Excellent MTS installed - See my profile for the mods installed ..... So much thanks for all the help given along the way by forum members.


#32   katapofatico

katapofatico
  • Members
  • 62 posts
  • Real Name:Marcos
  • Gender:Male
  • Location:Madrid

Posted 14 June 2014 - 17:35

Hello :)

 

I'm very happy to see at least MVC pattern on oscommerce with Content Modules and templates. However, I miss the necessary documentation to develop our modules following this pattern. I could (and I do) to analyze the code to infer its logic. But it is clear that who has designed it can best explain. Some questions to inspire the documentation:

a) What feature aspects should be implemented according to this pattern and which are not?

b) What feature aspects should be implemented with templates and which are not?

c) Are they reusable? For example: Can I reuse the "Login form" module on another page than login?
What's the propper way?

 

d) Is this pattern a middle step to osc 3? Learning 2.4 MVC pattern are we learning osc3 develop ways?

 

e) What are the components of a Content Module? And their responsabilities? Which are essential and wich not?

 

These are only the first questions that pops on my mind, sure you have more, don't you? If we improve the documentation, we are also improving the quality of future and recycled contributions: I consider that it's crucial!

 

I vote for documentation moment, a lot of thanks :)



#33   Harald Ponce de Leon

Harald Ponce de Leon

    Healthy Giraffe

  • Core Team
  • 5,349 posts
  • Real Name:Harald Ponce de Leon
  • Gender:Male
  • Location:Solingen, Germany

Posted 14 June 2014 - 18:20

I wouldn't exactly call it MVC ;)

 

a) What feature aspects should be implemented according to this pattern and which are not?
b) What feature aspects should be implemented with templates and which are not?

Currently only the Login, My Account, and Checkout Success pages support Content Modules. If you would like to add content to or rearrange content on those pages, doing so with Content Modules means no more source code changes are required.

 

The My Account page is different as it is built from an array of links. Content Modules on this page have the capability of adding/replacing/removing links from the My Account page.

 

Other pages will be updated to support Content Modules in the next v2.3.x releases.

 

c) Are they reusable? For example: Can I reuse the "Login form" module on another page than login? What's the propper way?

 

No. Content Modules require a group to belong to, which the group code is then called from the relevant page to load the modules.

 

d) Is this pattern a middle step to osc 3? Learning 2.4 MVC pattern are we learning osc3 develop ways?

 

No. What ends up being in v3 and down the line in v2.4 will be more flexible.

 

e) What are the components of a Content Module? And their responsabilities? Which are essential and wich not?

 

Content Modules are located in includes/modules/content/ inside group directories. Here are the pages and their relevant group codes:

  1. My Account -> account
  2. Checkout Success -> checkout_success
  3. Login -> login

Both Login and Checkout Success pages call their content modules before the template is loaded. This allows content modules to perform actions under certain conditions and to perform page redirects where necessary. The main My Account page does not perform any processing at all so its content modules are loaded in the middle of the template.

 

Content Modules are called with their group code:

 

$page_content = $oscTemplate->getContent('login');

For the login page, to avoid having each login content module have duplicate code to process the login, a $login_customer_id variable is processed - if it is set with a customer ID then the login page continues to register the customer in their session. It is up to the login content module to assign this variable as soon as it has authenticated the customer.

 

For example, Log In with PayPal authenticates the customer then assigns $login_customer_id with their customer ID which login detects and registers them in their session. It is possible to create a Google Login content module which authenticates the customer through Google, then that module must assign $login_customer_id to complete their session.

 

Some pages may need to initialize code before its first content module is processed. For these cases before the first content module is processed, it looks in the includes/modules/pages/ directory for a file matching the following name:

tp_CODE.php

The code matches the Content Module group being called. If such a file exists, it is executed then the content modules are processed.

 

This is used for the My Account page to initialize the base set of links that are shown on the My Account page.


:heart: , osCommerce


#34   Mort-lemur

Mort-lemur
  • Members
  • 2,387 posts
  • Real Name:Heather
  • Gender:Female
  • Location:UK

Posted 15 June 2014 - 19:01

Hi Harald - I have noticed that when updating to 2.3.4 from 2.3.3.4 when carrying out the $PHP_SELF changes - that my admin/includes/application_top.php has 2 instances of

$current_page = basename($PHP_SELF);

Should they both be changed to

$current_page = $PHP_SELF;

Many Thanks


Now running on a fully modded, Mobile Friendly 2.3.4 Store with the Excellent MTS installed - See my profile for the mods installed ..... So much thanks for all the help given along the way by forum members.


#35   Harald Ponce de Leon

Harald Ponce de Leon

    Healthy Giraffe

  • Core Team
  • 5,349 posts
  • Real Name:Harald Ponce de Leon
  • Gender:Male
  • Location:Solingen, Germany

Posted 15 June 2014 - 19:17

Hi Heather..

 

It's fine the way it is. Only the first one was updated due to a page redirect when logging in.


:heart: , osCommerce


#36   Mort-lemur

Mort-lemur
  • Members
  • 2,387 posts
  • Real Name:Heather
  • Gender:Female
  • Location:UK

Posted 15 June 2014 - 19:27

@Harald Ponce de Leon Thank You :)


Now running on a fully modded, Mobile Friendly 2.3.4 Store with the Excellent MTS installed - See my profile for the mods installed ..... So much thanks for all the help given along the way by forum members.


#37   Gergely

Gergely

    Json Juggler

  • Community Team
  • 2,125 posts
  • Real Name:Gergely Tóth
  • Gender:Male
  • Location:Budapest

Posted 19 June 2014 - 09:36

Thanks!


Next PHP changes will kill the current codes on the following years. We should do programing for the future and never stick in the present.

My addons: Conversion Tools::Hungarian Translation::Email Templates::URL redirection
 
Development Works: Setup Languages::Email Templates::Languages from ini files::Parcel Shops::Facebook App
 
What core codes have been complained?

In orders table payment_methods value would be better if payment class name used than payment's language name.
In the orders class we found order status does not contains $order->info['orders_status'] but instead there is $order->info['orders_status_name'], and that property is language dependant.
We can not identify in order the customer language.


#38   raiwa

raiwa
  • Community Sponsor
  • 1,804 posts
  • Real Name:Rainer Schmied
  • Gender:Male
  • Location:Sant Iscle de Vallalta, Barcelona, Spain

Posted 22 June 2014 - 18:23

Hello @Harald Ponce de Leon,

 

The Upgrade Instructions 2.3.3.4 to 2.3.4 say:

Improve $PHP_SELF (11 files)

This changeset improves the value of $PHP_SELF and keeps the path when the value is used in subdirectories (eg, viewing pages from the ext/ directory).

I Updated Mobile OsC to support osc 2.3.4 and found that the $PHP_SELF  updates in catalog/includes/classes/navigation_history.php broke my links, I got /mobile/ duplicated, for example: after logging in mobile/login.php the redirect URL(Depending on the history, of course) points to:

 

catalog/mobile/mobile/index.php

 

If I revert the update in navigation_history.php and leave basename($PHP_SELF) in all instances, all works fine like before.

 

Maybe this can produce issues in other add-ons too.

 

Kind regards

Rainer

 

PS: Mobile 2.3.4 support update is almost finished, including content modules support and PayPal login.  Works great , Thank You! :rolleyes:



#39   Harald Ponce de Leon

Harald Ponce de Leon

    Healthy Giraffe

  • Core Team
  • 5,349 posts
  • Real Name:Harald Ponce de Leon
  • Gender:Male
  • Location:Solingen, Germany

Posted 23 June 2014 - 07:02

@raiwa, you will have to update your add-on to support the fixed behaviour of $PHP_SELF. Modules taking advantage of the new Content Modules implementation may call pages from the ext/ directory which is why $PHP_SELF was fixed to be compatible with pages being called from subdirectories.

 

New behaviour:

 

account.php

ext/modules/content/account/set_password.php

 

Old behaviour with basename():

 

account.php

set_password.php (broken link due to basename()).

 

Hope that helps,


:heart: , osCommerce


#40   raiwa

raiwa
  • Community Sponsor
  • 1,804 posts
  • Real Name:Rainer Schmied
  • Gender:Male
  • Location:Sant Iscle de Vallalta, Barcelona, Spain

Posted 23 June 2014 - 09:11

@raiwa, you will have to update your add-on to support the fixed behaviour of $PHP_SELF. Modules taking advantage of the new Content Modules implementation may call pages from the ext/ directory which is why $PHP_SELF was fixed to be compatible with pages being called from subdirectories.

 

New behaviour:

 

account.php

ext/modules/content/account/set_password.php

 

Old behaviour with basename():

 

account.php

set_password.php (broken link due to basename()).

 

Hope that helps,

 

ok, I will do it. Thank You :)