/** * @copydoc Grid::deleteData * * @throws SystemException 'ERR_CANT_DELETE_YOURSELF' */ public function deleteData($id) { //если мы пытаемся удалить текущего пользователя //генерим ошибку if ($this->document->user->getID() == $id) { throw new SystemException('ERR_CANT_DELETE_YOURSELF', SystemException::ERR_CRITICAL); } parent::deleteData($id); }
protected function deleteData($id) { $default_group = $this->dbh->select($this->getTableName(), 'group_id', ['group_id' => $id, 'group_default' => true]); if (!empty($default_group)) { throw new SystemException('ERR_DEFAULT_GROUP', SystemException::ERR_NOTICE); } parent::deleteData($id); }
/** * @copydoc Grid::deleteData */ protected function deleteData($id) { parent::deleteData($id); $res = $this->dbh->select('SHOW FULL TABLES FROM `' . FormConstructor::getDatabase() . '` LIKE "%form_' . $id . '%"'); if (is_array($res)) { $tables = array_map(function ($row) { return current($row); }, $res); $this->dbh->modify('SET FOREIGN_KEY_CHECKS=0;'); foreach ($tables as $tableName) { $this->dbh->modify('DROP TABLE `' . FormConstructor::getDatabase() . '`.' . $tableName); } } }
protected function deleteData($id) { if (!($PID = $this->dbh->getScalar('share_sitemap', ['smap_pid'], [$this->getPK() => $id]))) { throw new SystemException('ERR_DEV_BAD_DATA', SystemException::ERR_CRITICAL); } if (empty($PID)) { $PID = null; } $this->setFilter(['smap_pid' => $PID]); parent::deleteData($id); }
/** * @copydoc Grid::deleteData */ public function deleteData($id) { //если мы пытаемся удалить текущий язык //генерим ошибку if ($this->document->getLang() == $id || $id == E()->getLanguage()->getDefault()) { throw new SystemException('ERR_CANT_DELETE', SystemException::ERR_CRITICAL); } parent::deleteData($id); }