osCommerce Online Merchant v3.0.1
osCommerce Online Merchant v3.0.1 is a minor release focusing on bug fixes and framework improvements.
New Installations - Quick Start
Copy the oscommerce directory to your web server htdocs directory and open the location with your browser. Setup will automatically launch and guide you through the installation and configuration of your new online store.
| Please note that a new or existing database in MySQL must already be prepared for the installation. |
After installation is complete and the configuration settings have been saved, the Shop frontend and Admin dashboard can be opened with:
http://www.your-server.com/oscommerce/index.php http://www.your-server.com/oscommerce/index.php?Admin
| Please delete the Setup routine after installation has completed. This can be done by removing the following directory:
/path to/oscommerce/osCommerce/OM/Core/Site/Setup |
Upgrading from v3.0.0
| New configuration settings have been introduced in this release that must be manually added to existing installations after performing an upgrade. |
CoreUpdate - Automatic Upgrade
Upgrades can be easily performed through CoreUpdate, located in the Admin Dashboard -> Applications -> Tools -> Core Update menu. Here, a list of available update packages are shown with the ability to read release announcements and to browse the contents of the packages. New update packages may take up to 6 hours to become available.
| CoreUpdate may show a successful message after performing an upgrade when no upgrade has in fact been performed. The failure to perform an upgrade occurs under certain server environments and can be seen when v3.0.1 is still listed as a CoreUpdate update package. If you experience this, please perform a manual upgrade with a ZIP package as described below. This error is due to not correctly detecting sufficient file permissions and has been fixed, and improved, in v3.0.1. |
ZIP Package - Manual Upgrade
A manual upgrade can be performed by extracting the update package contents and copying and overwriting the files to the osCommerce/OM and public/ directories. This can be performed directly on the server or via FTP.
New Configuration Settings
New configuration settings have been introduced in this release and must be inserted in osCommerce/OM/Config/settings.ini.
Please insert the following settings to the [OSCOM] group:
[OSCOM]
time_zone = "UTC"
dir_fs_public = ""
For time_zone, a list of time zones are available at: http://php.net/manual/en/timezones.php. Example settings are:
- time_zone = "Europe/Berlin"
- time_zone = "America/New_York"
- time_zone = "Australia/Sydney"
For dir_fs_public, a full filesystem directory path to the public directory is required with a trailing slash. Example settings are:
- dir_fs_public = "/home/user/public_html/oscommerce/public/"
- dir_fs_public = "/var/www/domain.com/httpdocs/oscommerce/public/"
The complete [OSCOM] setting group should be similar to:
[OSCOM] bootstrap_file = "index.php" default_site = "Shop" time_zone = "Europe/Berlin" dir_fs_public = "/opt/local/apache/htdocs/oscommerce/public/"
Changelog
Bug Fixes
The following bug fixes have been applied:
| Title | Description | Ticket # |
|---|---|---|
| Set default PHP time zone | PHP displays a warning when no default time zone has been defined in php.ini. A time zone setting is now added to the configuration to set the time zone to. | 239 |
| MySQL STRICT_ALL_TABLES | The MySQL STRICT_ALL_TABLES sql mode was first introduced in MySQL v5.0.2. The setting of this sql mode has been moved from the MySQL\Standard driver to MySQL\V5. | 237 |
| Configuration Batch Editing | A problem with batch editing configuration parameters in the Admin\Configuration Application has been fixed. | 232 |
| Admin Menu in IE9 | The Admin Dashboard menu did not show correctly in Internet Exploder 9 and has been fixed. | 240 |
| RecentlyVisited Search Links, Advanced Search | Fix Shop\Module\Content\RecentlyVisited search result links. Fix advanced search results (PDO::bindValue() cannot share the same bind parameter names as was defined in Shop\Search::execute()) | 238 |
| Product Info Javascript | Fix the path to public/sites/Shop/javascript/products/info.js. | 233 |
| Shop\NavigationHistory | The NavigationHistory class now properly keeps track of pages visited and to redirect back to on certain actions. | 242 |
| Duplicate Shopping Cart Contents | Prevent duplicate products being listed separately in the shopping cart. | 243 |
| Product Variant Prices | Add the correct product variant price to the shopping cart. | 241 |
| Currency Prices | Show correct prices when changing the currency. | 229 |
| Language Import | Fix new languages being imported. | 236 |
| Multi-Line Language Definitions | Admin language definitions are now properly parsed with line breaks. | 248 |
Improvements
The following improvements have been applied:
| Class | Description |
|---|---|
| Autoloader | The Autoloader class has been generally improved. |
| Registry | The Registry class has been generally optimized. |
| Admin\Application\ServerInfo | ServerInfo::getAll() now uses php_uname() instead of exec('uname -a') to retrieve server information |
| Cache | Check to see if write permissions exist for osCommerce/OM/Work/Cache before attempting to save or delete cache files. |
| ErrorHandler | ErrorHandler now sets the PHP display_errors configuration value to false. Errors are set to be logged to osCommerce/OM/Work/Logs/errors.txt. |
| Admin\Module\Dashboard\ErrorLog | Display a message if osCommerce/OM/Work/Database is not writable. |
| OSCOM | OSCOM::setCookie() now uses setcookie() instead of header() to set cookies. |
| Admin\Application\CoreUpdate | CoreUpdate has been optimized and improved to support the public directory. Support to delete redundant files during the upgrade procedure has also been added. Updates are now performed in a non-destructive manner; if an error occurs the original state will be restored. |
| MessageStack | MessageStack::add() now prevents duplicate messages from being added to the stack. |
| Admin\Application\Login | The session ID is now regenerated on successful logins. |
API Changes
| New | time_zone added to [OSCOM] in settings.ini |
| New | dir_fs_public added to [OSCOM] in settings.ini |
| New | DateTime::setTimeZone() |
| New | DateTime::getTimeZones() |
| New | HTML::timeZoneSelectMenu() |
| Changed | OSCOM::setCookie() now returns boolean |
| Removed | Site\Shop\Search::$_number_of_entries |
| Added | Site\Shop\Search::$_result |
| Changed | Site\Shop\Search::execute() now stores $_result instead of returning it |
| New | Site\Shop\Search::getResult() |
Language Definitions
| New | Site/Admin/languages/en_US/modules/Dashboard/ErrorLog.php | admin_dashboard_module_errorlog_not_writable |
| Changed | Site/Admin/languages/en_US.php | header_title_online_catalog |
| New | Site/Admin/languages/en_US.php | ms_warning_time_zone_not_defined |
| New | Site/Admin/languages/en_US.php | ms_warning_dir_fs_public_not_defined |
| Deleted | Site/Admin/languages/en_US/CoreUpdate.php | table_heading_file_replace |
| New | Site/Admin/languages/en_US/CoreUpdate.php | table_heading_file_custom |
| New | Site/Admin/languages/en_US/CoreUpdate.php | legend_new |
| New | Site/Admin/languages/en_US/CoreUpdate.php | legend_modified |
| New | Site/Admin/languages/en_US/CoreUpdate.php | legend_to_delete |
| New | Site/Admin/languages/en_US/CoreUpdate.php | up_to_date |
PHPUnit Tests
PHPUnit tests are available in osCommerce/OM/Tests/.
| New | HTML |
PHPUnit tests are not included in our releases and are only available in our GitHub repository.
Thank You!
We'd like to thank the community for their feedback on our releases. In addition, we thank the following people who participated in the development of this release.
| Code Contributors |
|---|
| dannyhenderson (dannyhenderson) |
| Gergely (tgely) |
| Niko_E (ne704) |
| Bug Reporters |
|---|
| bluesbrother |
| daemonus |
| FWR Media |
| GemRock |
| jynxy |
| Luyso |
| meddiecap |
| Merlin3 |
| nielss |
| peteruittilburg |
| quetevendo |
| syscon |
| xsion |
Reference
A full list of source code changes can be seen at:
https://github.com/osCommerce/oscommerce/compare/v3.0...v3.0.1