diff options
Diffstat (limited to 'db/update.d/06_Shifts.php')
-rw-r--r-- | db/update.d/06_Shifts.php | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/db/update.d/06_Shifts.php b/db/update.d/06_Shifts.php new file mode 100644 index 00000000..721d73bc --- /dev/null +++ b/db/update.d/06_Shifts.php @@ -0,0 +1,29 @@ +<?php +if(sql_num_query("SHOW COLUMNS FROM `Shifts` LIKE 'Date_'") == 2) { + if(sql_num_query("DESCRIBE `Shifts` `Len`") != 0) { + if(sql_num_query("SELECT * FROM `Shifts` WHERE DATE_SUB(`DateE`, INTERVAL (`Len`*60) MINUTE) != `DateS`") != 0) + die("Inconsistent data in Shifts table, won't do update " . __FILE__); + else { + sql_query("ALTER TABLE `Shifts` DROP `Len`"); + } + } + sql_query("ALTER TABLE `Shifts` CHANGE `DateS` `start` INT NOT NULL, CHANGE `DateE` `end` INT NOT NULL"); + + $applied = true; +} + +if(sql_num_query("DESCRIBE `Shifts` `Man`") === 1 && sql_num_query("DESCRIBE `Shifts` `name`") === 0) { + sql_query("ALTER TABLE `Shifts` CHANGE `Man` `name` VARCHAR(1024) NULL"); + + $applied = true; +} + +$res = sql_select("DESCRIBE `Shifts` `PSID`"); +if($res[0]['Type'] == 'text') { + sql_query("ALTER TABLE `Shifts` CHANGE `PSID` `PSID` INT NULL"); + + $applied = true; +} +_add_index("Shifts", array("PSID"), "UNIQUE"); +_add_index("Shifts", array("RID")); +?> |