activate(); } public static function onDeactivate(): void { static::getInstance()->deactivate(); } public function createTable(): void { $this->getDb()->executeStatement(' CREATE TABLE IF NOT EXISTS `oecaptcha` (' . "`OXID` int(11) NOT NULL AUTO_INCREMENT COMMENT 'Captcha id'," . "`OXHASH` char(32) NOT NULL default '' COMMENT 'Hash'," . "`OXTIME` int(11) NOT NULL COMMENT 'Validation time'," . "`OXTIMESTAMP` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP COMMENT 'Timestamp'," . 'PRIMARY KEY (`OXID`), ' . 'KEY `OXID` (`OXID`,`OXHASH`), ' . 'KEY `OXTIME` (`OXTIME`) ' . ") ENGINE=MEMORY AUTO_INCREMENT=1 COMMENT 'If session is not available, this is where captcha information is stored'; "); } public function dropTable(): void { $this->getDb()->executeStatement('DROP TABLE IF EXISTS `oecaptcha`;'); } public function activate(): void { $this->createTable(); } public function deactivate(): void { $this->dropTable(); } }