Saurus CMS version converter 3 to 4

By Saurus www.saurus.info

About

This is README file for Saurus CMS version converter script. Script converts Saurus CMS based website between two version generations - from version 3.x to 4.x.
Please read these instructions carefully before starting a conversion process.
You may run conversion only if you have a valid software assurance agreement.

Requirements

  1. Old website with Saurus CMS version 3.5.0 or later - source site.
  2. New freshly installed website with Saurus CMS version 4.2.1 - target site. Install a new site using Saurus CMS full installation package ver4.2.0 and upgrade to the version 4.2.1. You may use Saurus CMS Trial license for setting up a new default installation.
  3. Conversion scripts convert.php, addprefix2dump.sh
  4. Encoding conversion script convert_encoding.php (optional)

How To Convert

Step 1 - export database of the source site

Source site: create database dump file:
$ mysqldump -u<username> -p --default-character-set=latin1 --skip-opt -Q <ver3db> > ver3.dump
Note: Use parameter "--skip-opt" only in MySQL 4.1 and later, otherwise remove it.


Step 2 - import database into the target site

2A If created dump file size is > 50 MB
  1. Run shell command what creates a new dump file "new_ver3.dump":
    $ bash ./addprefix2dump.sh ver3.dump
  2. Import dump file "new_ver3.dump" into the target site database:
    $ mysql -u<user> -p --default-character-set=latin1 <ver4db> < new_ver3.dump
2B If created dump file size is <= 50 MB (exact limit depends on your server settings)

Proceed with Step 3


Step 3 - copy files

  1. create a new folder "ver3" under target website root folder
    $ mkdir ver3
  2. copy database dump file and the following folders from source site to the target site:
  3. Source siteTarget site
    ver3.dump=> ver3/ver3.dump (skip it if you passed step 2A)
    failid/=> ver3/failid/
    classes/smarty/templates/=> ver3/templates/
    px_custom/*=> px_custom/*
    Sample: $ cp -a /path/to/sourcesite/failid/ /path/to/targetsite/ver3/
  4. copy conversion script "convert.php" to the target website root folder


Step 4 - run conversion

  1. Open "convert.php" in the browser, eg http://www.yoursite.com/convert.php. Follow instructions on the screen.
    NB! Check also system information displayed in the Step 1, you may need to increase PHP settings.
  2. When viewing conversion results in Step 3, search for string "error" to be sure in conversion accuracy.


Step 5 - delete conversion files

  1. Delete file "convert.php"
  2. Delete folder "ver3/"


Step 6 - upgrade Saurus CMS version

Upgrade your website to the latest official version of Saurus CMS.


Step 7 - enter a license

Log in to the admin/ environment and enter a correct site license key.


Step 8 (optional) - site encoding conversion

In case your website encoding is not UTF-8, we suggest to convert site content to the UTF-8 encoding.
You can use site encoding converter script "convert_encoding.php" for that purpose.


Notes

Deprecated or missing features in version 4

Version history

Version 1.0 / 30.11.2006

Initial beta release

Version 1.1 / 14.12.2006

  • Bugfix: Assets were not converted properly, data was missing
  • SQL for backward compability: section position values 5 and 9 (default in ver3) is replaced with 0 value (default in ver4)
  • Version 1.2 / 15.12.2007

  • Bugfix: Registered users' passwords were not converted correctly. Registered users' ID values are preserved now. [#2617]
  • Version 1.3 / 14.07.2008

  • Bugfix: Allow converting from 3.5.0 and later
  • Improved usability and texts
  • Improved database import error controls
  • Check current version 4 match also (was ver 3 check only)
  • Bugfix: replacing hyperlinks, failid/ => public/ was missed
  • Bugfix: {print_box} added to the list of deprecated tags
  • Bugfix: Last step didn't delete old version3 "ext_" tables
  • Bugfix: language table was overwritten causing missing "locale" values in ver4
  • Known bugs

  • Glossary is not updated automatically and manusal glossary import is required after the conversion
  • Metadata existence should give warnings
  • Deprecated tags check returns faulty results in some cases
  • Site log misses correct usernames in the history - all names are replaced with "system"
  • Add check for Smarty engine backwards compability: parent="$obj->id" doesn't work anymore and should be replaced with parent=$obj->id
  • Encoding conversion should be part of the main conversion script, not separated.