mysql_base($sql); $sql = <<<SQL CREATE TRIGGER update_tag_counts_on_delete AFTER DELETE ON {$this->mySqlTablePrefix}elementTag FOR EACH ROW BEGIN SET @countPublic=(SELECT COUNT(*) FROM {$this->mySqlTablePrefix}photo AS p INNER JOIN {$this->mySqlTablePrefix}elementTag AS et ON p.id = et.element WHERE et.owner=OLD.owner AND et.tag=OLD.tag AND p.owner=OLD.owner AND p.permission='1'); SET @countPrivate=(SELECT COUNT(*) FROM {$this->mySqlTablePrefix}photo AS p INNER JOIN {$this->mySqlTablePrefix}elementTag AS et ON p.id = et.element WHERE et.owner=OLD.owner AND et.tag=OLD.tag AND p.owner=OLD.owner); UPDATE {$this->mySqlTablePrefix}tag SET countPublic=@countPublic, countPrivate=@countPrivate WHERE owner=OLD.owner AND id=OLD.tag; END SQL; mysql_base($sql); $sql = <<<SQL INSERT INTO `{$this->mySqlTablePrefix}admin` (`key`,`value`) VALUES (:key, :value) SQL; mysql_base($sql, array(':key' => 'version', ':value' => '4.0.2')); return true; } catch (Exception $e) { getLogger()->crit($e->getMessage()); return false; } function mysql_base($sql, $params = array()) { try { getDatabase()->execute($sql, $params); getLogger()->info($sql); } catch (Exception $e) { getLogger()->crit($e->getMessage()); throw $e; } }
$sql = <<<SQL CREATE TABLE IF NOT EXISTS `{$this->mySqlTablePrefix}webhook` ( `id` varchar(6) NOT NULL, `owner` varchar(127) NOT NULL, `appId` varchar(255) DEFAULT NULL, `callback` varchar(1000) DEFAULT NULL, `topic` varchar(255) DEFAULT NULL, UNIQUE KEY `id` (`id`,`owner`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; SQL; mysql_base($sql); $sql = <<<SQL INSERT INTO `{$this->mySqlTablePrefix}admin` (`key`,`value`) VALUES (:key, :value) SQL; mysql_base($sql, array(':key' => 'version', ':value' => '1.3.1')); return true; } catch (Exception $e) { getLogger()->crit($e->getMessage()); return false; } function mysql_base($sql, $params = array()) { try { getDatabase()->execute($sql, $params); getLogger()->info($sql); } catch (Exception $e) { getLogger()->crit($e->getMessage()); throw $e; } }