summaryrefslogtreecommitdiffstats
path: root/modules-available/main/install.inc.php
blob: 4c9d4baa567249ab4a1dc34f05f7c1eed8298d95 (plain) (blame)
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
<?php

$res = array();

$res[] = tableCreate('callback', "
	`taskid` varchar(40) CHARACTER SET ascii COLLATE ascii_bin NOT NULL,
	`dateline` int(10) unsigned NOT NULL,
	`cbfunction` varchar(16) CHARACTER SET ascii COLLATE ascii_bin NOT NULL,
	`args` text NOT NULL,
	PRIMARY KEY (`taskid`,`cbfunction`),
	KEY `dateline` (`dateline`)
");

$res[] = tableCreate('permission', "
	`mask` int(10) unsigned NOT NULL,
	`identifier` varchar(32) NOT NULL,
	PRIMARY KEY (`mask`),
	UNIQUE KEY `identifier` (`identifier`)
");

$res[] = tableCreate('property', "
	`name` varchar(50) NOT NULL,
	`dateline` int(10) unsigned NOT NULL DEFAULT '0',
	`value` text NOT NULL,
	PRIMARY KEY (`name`),
	KEY `dateline` (`dateline`)
");

$res[] = tableCreate('user', "
	`userid` int(10) unsigned NOT NULL AUTO_INCREMENT,
	`login` varchar(100) NOT NULL,
	`passwd` varchar(150) NOT NULL,
	`fullname` varchar(100) DEFAULT NULL,
	`phone` varchar(100) DEFAULT NULL,
	`email` varchar(100) DEFAULT NULL,
	`permissions` int(10) unsigned NOT NULL,
	`lasteventid` int(10) unsigned NOT NULL DEFAULT '0',
	PRIMARY KEY (`userid`),
	UNIQUE KEY `login` (`login`)
");

// Update path

// #######################
// ##### 2014-05-28
// Add dateline field to property table
if (!tableHasColumn('property', 'dateline')) {
	Database::exec("ALTER TABLE `property` ADD `dateline` INT( 10 ) UNSIGNED NOT NULL DEFAULT '0' AFTER `name` , ADD INDEX ( `dateline` )");
}

// #######################
// ##### 2014-08-18
// Remove description column from permission table
tableDropColumn('permission', 'description');
// Add details column to eventlog table
if (!tableHasColumn('user', 'lasteventid')) {
	Database::exec("ALTER TABLE `user` ADD `lasteventid` INT(10) UNSIGNED NOT NULL DEFAULT '0'");
}

// #######################
// ##### 2015-01-16
// Extend config module db table, add argument feature to callbacks
if (!tableHasColumn('callback', 'args')) {
	Database::exec("ALTER TABLE `callback` ADD `args` TEXT NOT NULL DEFAULT ''");
}

// Create response for browser

if (in_array(UPDATE_DONE, $res)) {
	finalResponse(UPDATE_DONE, 'Tables created successfully');
}

finalResponse(UPDATE_NOOP, 'Everything already up to date');