diff options
Diffstat (limited to 'install/upgrade.php')
-rw-r--r-- | install/upgrade.php | 49 |
1 files changed, 33 insertions, 16 deletions
diff --git a/install/upgrade.php b/install/upgrade.php index 55b4316..04cc03a 100644 --- a/install/upgrade.php +++ b/install/upgrade.php @@ -38,23 +38,40 @@ function lower_version($that, $new) { if (isset($_GET['upgrade'])) { - if (lower_version($_GET['upgrade'], '0.1')) { - try { - $_pdo->query("ALTER TABLE `".constants::db_prefix."assignment` CHANGE `hours` `hours` FLOAT UNSIGNED NOT NULL"); - } catch (PDOException $e) { - echo "Altering the database structure failed with a PDOException ({$e->getCode()}): {$e->getMessage()}<br/>" . $e->getTraceAsString(); - } - } - - if (lower_version($_GET['upgrade'], '0.2.2')) { - try { - $_pdo->query("ALTER TABLE `".constants::db_prefix."assignment` DROP FOREIGN KEY `assignment_ibfk_1`"); - $_pdo->query("ALTER TABLE `".constants::db_prefix."assignment` ADD CONSTRAINT `assignment_ibfk_1` FOREIGN KEY (`offerId`) REFERENCES `".constants::db_prefix."offer` (`id`) ON DELETE CASCADE ON UPDATE CASCADE"); - } catch (PDOException $e) { - echo "Altering the database structure failed with a PDOException ({$e->getCode()}): {$e->getMessage()}<br/>" . $e->getTraceAsString(); - } + if (lower_version($_GET['upgrade'], '0.1')) { + try { + $_pdo->query("ALTER TABLE `".constants::db_prefix."assignment` CHANGE `hours` `hours` FLOAT UNSIGNED NOT NULL"); + } catch (PDOException $e) { + echo "Altering the database structure failed with a PDOException ({$e->getCode()}): {$e->getMessage()}<br/>" . $e->getTraceAsString(); + } + } - } + if (lower_version($_GET['upgrade'], '0.2.2')) { + try { + $_pdo->query("ALTER TABLE `".constants::db_prefix."assignment` DROP FOREIGN KEY `assignment_ibfk_1`"); + $_pdo->query("ALTER TABLE `".constants::db_prefix."assignment` ADD CONSTRAINT `assignment_ibfk_1` FOREIGN KEY (`offerId`) REFERENCES `".constants::db_prefix."offer` (`id`) ON DELETE CASCADE ON UPDATE CASCADE"); + } catch (PDOException $e) { + echo "Altering the database structure failed with a PDOException ({$e->getCode()}): {$e->getMessage()}<br/>" . $e->getTraceAsString(); + } + } + + if (lower_version($_GET['upgrade'], '0.3')) { + try { + $_pdo->query("CREATE TABLE IF NOT EXISTS `".constants::db_prefix."discount` ( + `id` smallint(5) unsigned NOT NULL AUTO_INCREMENT, + `offerId` smallint(5) unsigned NOT NULL, + `title` tinytext NOT NULL, + `description` text NOT NULL, + `value` float unsigned NOT NULL, + `VAT_percentage` float NOT NULL, + PRIMARY KEY (`id`) + ) ENGINE=InnoDB DEFAULT CHARSET=latin1;"); + $_pdo->query("ALTER TABLE `".constants::db_prefix."discount` + ADD CONSTRAINT `discount_ibfk_1` FOREIGN KEY (`offerId`) REFERENCES `".constants::db_prefix."offer` (`id`);"); + } catch (PDOException $e) { + echo "Altering the database structure failed with a PDOException ({$e->getCode()}): {$e->getMessage()}<br/>" . $e->getTraceAsString(); + } + } echo "<br/>All done."; } |