/
maintain.class.php
69 lines (55 loc) · 1.46 KB
/
maintain.class.php
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
<?php
defined('PHPWG_ROOT_PATH') or die('Hacking attempt!');
class polaroid_maintain extends PluginMaintain
{
private $installed = false;
function __construct($plugin_id)
{
parent::__construct($plugin_id);
}
function install($plugin_version, &$errors=array())
{
global $conf;
// add a new column to existing table
$result = pwg_query('SHOW COLUMNS FROM `'.CATEGORIES_TABLE.'` LIKE "polaroid_active";');
if (!pwg_db_num_rows($result))
{
pwg_query('ALTER TABLE `'.CATEGORIES_TABLE.'` ADD `polaroid_active` enum(\'true\', \'false\') default \'false\';');
}
$config = array(
'apply_to_albums' => 'all',
);
// load existing config parameters
if (!empty($conf['polaroid']))
{
$conf['polaroid'] = safe_unserialize($conf['polaroid']);
foreach ($conf['polaroid'] as $key => $value)
{
$config[$key] = $value;
}
}
conf_update_param('polaroid', $config, true);
$this->installed = true;
}
function activate($plugin_version, &$errors=array())
{
global $prefixeTable;
if (!$this->installed)
{
$this->install($plugin_version, $errors);
}
}
function update($old_version, $new_version, &$errors=array())
{
$this->install($new_version, $errors);
}
function deactivate()
{
}
function uninstall()
{
// delete field
pwg_query('ALTER TABLE `'. CATEGORIES_TABLE .'` DROP COLUMN polaroid_active;');
}
}
?>