blob: 40523729889b66087db3124830a4b0ed1fc5698f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
|
<?php
/**
* Elgg version library.
* Contains code for handling versioning and upgrades.
*
* @package Elgg
* @subpackage Core
* @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
* @copyright Curverider Ltd 2008
* @link http://elgg.org/
*/
/**
* Get the current version information
*
* @param true|false $humanreadable Whether to return a human readable version (default: false)
* @return string|false Depending on success
*/
function get_version($humanreadable = false) {
global $CONFIG;
if (@include($CONFIG->path . "version.php")) {
if (!$humanreadable) return $version;
return $release;
}
return false;
}
/**
* Determines whether or not the database needs to be upgraded.
*
* @return true|false Depending on whether or not the db version matches the code version
*/
function version_upgrade_check() {
$dbversion = (int) datalist_get('version');
$version = get_version();
if ($version > $dbversion) {
return true;
}
return false;
}
/**
* Upgrades Elgg
*
*/
function version_upgrade() {
$dbversion = (int) datalist_get('version');
db_upgrade($dbversion);
datalist_set('version', get_version());
system_message(elgg_echo('upgrade:db'));
forward();
exit;
}
/**
* Runs an upgrade check on boot.
*
*/
function version_boot() {
if (version_upgrade_check()) {
version_upgrade();
}
}
// Register the boot handler for version
register_elgg_event_handler("boot","system","version_boot");
?>
|