diff options
Diffstat (limited to 'modules-available/runmode/install.inc.php')
-rw-r--r-- | modules-available/runmode/install.inc.php | 26 |
1 files changed, 4 insertions, 22 deletions
diff --git a/modules-available/runmode/install.inc.php b/modules-available/runmode/install.inc.php index e2b1ed0f..db7e07f6 100644 --- a/modules-available/runmode/install.inc.php +++ b/modules-available/runmode/install.inc.php @@ -12,35 +12,17 @@ $res[] = tableCreate('runmode', " KEY `module` (`module`,`modeid`) "); -if (!tableExists('machine')) { - // Cannot add constraint yet - $res[] = UPDATE_RETRY; -} else { - $c = tableGetContraints('runmode', 'machineuuid', 'machine', 'machineuuid'); - if ($c === false) - finalResponse(UPDATE_FAILED, 'Cannot get constraints of runmode table: ' . Database::lastError()); - if (empty($c)) { - $alter = Database::exec('ALTER TABLE runmode ADD FOREIGN KEY (machineuuid) REFERENCES machine (machineuuid) - ON DELETE CASCADE ON UPDATE CASCADE'); - if ($alter === false) - finalResponse(UPDATE_FAILED, 'Cannot add machineuuid constraint to runmode table: ' . Database::lastError()); - $res[] = UPDATE_DONE; - } -} +$res[] = tableAddConstraint('runmode', 'machineuuid', 'machine', 'machineuuid', + 'ON DELETE CASCADE ON UPDATE CASCADE'); if (!tableHasColumn('runmode', 'isclient')) { $ret = Database::exec("ALTER TABLE runmode ADD COLUMN isclient bool DEFAULT '1'"); if ($ret === false) { finalResponse(UPDATE_FAILED, 'Could not add lastchange field'); } elseif ($ret > 0) { - $ret[] = UPDATE_DONE; + $res[] = UPDATE_DONE; } } // Create response for browser - -if (in_array(UPDATE_DONE, $res)) { - finalResponse(UPDATE_DONE, 'Tables created successfully'); -} - -finalResponse(UPDATE_NOOP, 'Everything already up to date');
\ No newline at end of file +responseFromArray($res); |