/** * create division table * * @param ConfigEntity $config document's instance config * @return void */ public function createDivisionTable(ConfigEntity $config) { if ($config->get('division') === true) { $row = $this->connection->select(sprintf('show create table %sdocuments', $this->connection()->getTablePrefix())); $createTable = $row[0]['Create Table']; $tables = $this->connection->select(sprintf("SHOW TABLES like '%sdocuments_%s'", $this->connection()->getTablePrefix(), $config->get('instanceId'))); if (empty($tables) === false) { throw new Exceptions\DivisionExistsException(); } $this->connection->insert(str_replace(sprintf('CREATE TABLE `%sdocuments`', $this->connection()->getTablePrefix()), sprintf('CREATE TABLE `%s%s`', $this->connection()->getTablePrefix(), $this->document->divisionTable($config)), $createTable)); } }