
Upgrade Process
===============

One of our objectives is to make upgrading from an earlier release as
painless as possible, and we provide scripts that should bring your
existing Eventum installation up-to-date.

IMPORTANT:
==========

When upgrading to a new version of Eventum, please follow these
instructions:

- Upgrading from version 2.2 to 2.3 or updating 2.3.x to 2.3.3:
----------------------------------------
1) Move your current copy of Eventum to a new directory.
2) Extract the new Eventum files to a directory.
3) Copy the contents of your old eventum/config/ directory to
   /path-to-eventum/config/
4) Copy your old workflow API and customer API, custom field files to
   /path-to-eventum/lib/eventum/workflow/,
   /path-to-eventum/lib/eventum/customer/ and
   /path-to-eventum/lib/eventum/custom_field/ respectively.
5) Point your webserver to /path-to-eventum/htdocs/
6) Run the upgrade scripts described below from the command line.
   cd /path-to-eventum/upgrade/
   php update-database.php
7) Modify your workflow/customer classes not to require any Eventum core
   classes, they are autoloaded now. So you can just remove following lines:
   require_once(APP_INC_PATH."workflow/class.abstract_workflow_backend.php");
   require_once(APP_INC_PATH."customer/class.abstract_customer_backend.php");

- Upgrading from version 2.1.1 to 2.2:
----------------------------------------

cd /path-to-eventum/upgrade/v2.1.1_to_v2.2/
php db_version.php
php ../update-database.php

Additionally if you want to convert your existing database to UTF-8 you should
look at convert-utf8.php and fix-charset.php scripts in upgrade/v2.1.1_to_v2.2 directory

You need config/* files from older version before you can run the update.

- Upgrading from version 2.1 to 2.1.1:
----------------------------------------

No scripts are needed for this upgraded.

- Upgrading from version 2.0 and 2.0.1 to 2.1:
----------------------------------------

cd /path-to-eventum/upgrade/v2.0_to_v2.1/
php database_changes.php
php update_custom_field_by_type.php

You need config/* files from older version before you can run the update.

- Upgrading from version 2.0-beta to 2.0:
----------------------------------------

cd /path-to-eventum/upgrade/v2.0-beta_to_v2.0/
php database_changes.php

- Upgrading from version 1.7.1 to 2.0:
----------------------------------------

This upgrade will move some configuration files to the new config/
directory. To let the scripts locate the old configuration copy the
files config.inc.php, setup.conf.php and include/private_key.php
to /path-to-eventum/ and /path-to-eventum/include, respectively.
The latter directory needs to be created with mkdir first.

cd /path-to-eventum/upgrade/v1.7.1_to_v2.0/
php upgrade_config.php
php database_changes.php

If you had the IRC bot configured you will have to copy your old
config from misc/irc/bot.php to config/irc_config.php. An example
config file is located in htdocs/setup/irc_config.php

- Upgrading from version 1.7.0 to 1.7.1:
----------------------------------------

cd /path-to-eventum/upgrade/v1.7.0_to_v1.7.1/
php upgrade_config.php


- Upgrading from version 1.6.1 to 1.7.0:
----------------------------------------

cd /path-to-eventum/upgrade/v1.6.1_to_v1.7.0/
php database_changes.php
php upgrade_config.php
php set_root_message_ids.php

- Upgrading from version 1.6.0 to 1.6.1:
----------------------------------------

cd /path-to-eventum/upgrade/v1.6.0_to_v1.6.1/
php database_changes.php
php upgrade_config.php

- Previous versions
----------------------------------------

Please go to the appropriate directories in /path-to-eventum/upgrade/ and run
the included scripts.

If you find any problems while upgrading, please email us in the mailing lists
described in the README file.
