Adding KOHAVERSION management.
authorPaul POULAIN <paul@koha-fr.org>
Thu, 16 Aug 2007 10:28:48 +0000 (12:28 +0200)
committerChris Cormack <crc@liblime.com>
Thu, 16 Aug 2007 11:58:32 +0000 (06:58 -0500)
commit61c72f8f3e533dcc9f0e13850c694c2d3823baa8
tree8e10530e99cd286045494dde0d02ef2004179eb8
parent39cb2ee520dd72a6475887f45f5ca9d3b2269457
Adding KOHAVERSION management.

The kohaversion is in the code directory (in /kohaversion.pl)
C4::Context now has a new method C4::Context->KOHAVERSION
that returns the koha code version.
The systempreference Version contains the database version.

If the 2 are differents, when the user log in, he is redirected to web installer (new behaviour : before this commit, the check was done on everypage, it's too CPU costly I think)

In the web installer, we check now if we do a new setup or an upgrade and show only the appropriate link.

The updatedatabase contains a lot of new things :
* SetVersion($kohaversion), that set the kohaversion after each update
* TransformToNum($kohaversion) that returns a number (3.0000001 from 3.00.00.001 for example) for a given koha version
* DropAllForeignKeys($table) that does what is written : drop all foreign keys. A shame it's not possible directly in mySQL...
* for each database update, just :
add the following lines :
=item
    Describe what it does for other developpers
=cut

$DBversion = "your.koha.version.dbnumber";
if (C4::Context->preference("Version") < TransformToNum($DBversion)) {
#
# DO YOUR UPDATE STUFF
#
        print "Upgrade to $DBversion done (specify what it does if you want)\n";
        SetVersion ($DBversion);
}

IMPORTANT NOTES :
in koha 2.2, a new install was done through installing a 2.2.0 database, then updating it to the installed version.
in Koha 3.0, /installer/kohaversion.sql MUST contain an uptodate version, as the installer set the DB version to kohaversion after uploading kohaversion.sql. It does NOT run updatedatabase.

The update from Koha 2.2 to Koha 3.0 must NOT be done through the webinstaller : updatedatabase is very very long to run and you'll reach Apache timeout for sure. See http://wiki.koha.org/doku.php?id=22_to_30 that contains my notes for upgrading (with some/few UNIMARC specific stuff)

Note For RM, please eyeball this change

Signed-off-by: Chris Cormack <crc@liblime.com>
C4/Auth.pm
C4/Context.pm
about.pl
installer/install.pl
installer/kohastructure.sql
koha-tmpl/intranet-tmpl/prog/en/installer/step3.tmpl
updater/updatedatabase