public function execute() { // Shouldn't be needed for Postgres $this->db = $this->getDB(DB_MASTER); if ($this->db->getType() == 'postgres') { $this->error("This script is not needed when using Postgres.\n", true); } if ($this->db->getType() == 'sqlite') { if (!DatabaseSqlite::getFulltextSearchModule()) { $this->error("Your version of SQLite module for PHP doesn't " . "support full-text search (FTS3).\n", true); } if (!$this->db->checkForEnabledSearch()) { $this->error("Your database schema is not configured for " . "full-text search support. Run update.php.\n", true); } } if ($this->db->getType() == 'mysql') { $this->dropMysqlTextIndex(); $this->clearSearchIndex(); $this->populateSearchIndex(); $this->createMysqlTextIndex(); } else { $this->clearSearchIndex(); $this->populateSearchIndex(); } $this->output("Done.\n"); }