protected function saveData() { $subscriptionID = parent::saveData(); $this->dbh->modify('UPDATE mail_subscriptions2users SET session_id = NULL, subscription_id=%s WHERE (subscription_id IS NULL and session_id = %s) or (subscription_id = %1$s)', $subscriptionID, session_id()); return $subscriptionID; }
protected function saveData() { //Для всех с не админскими правами принудительно выставляем в те сайты на которые у юзера есть права if ($this->document->getRights() < ACCESS_FULL) { $_POST[$this->getTableName()]['ads_item_site_multi'] = $this->document->getUser()->getSites(); } return parent::saveData(); }
protected function saveData() { $subscribersTable = 'mail_email_subscribers'; if (!isset($_POST[$subscribersTable]['me_name']) || !$_POST[$subscribersTable]['me_name']) { throw new SystemException('ERR_NO_DATA', SystemException::ERR_CRITICAL); } $email = $_POST[$subscribersTable]['me_name']; if (!($id = $this->dbh->getScalar($subscribersTable, 'me_id', ['me_name' => $email]))) { $id = $this->dbh->modify(QAL::INSERT, $subscribersTable, ['me_date' => date('Y-m-d'), 'me_name' => $_POST[$subscribersTable]['me_name']]); } unset($_POST[$subscribersTable]); if (!($result = $this->dbh->getScalar($this->getTableName(), 'mes_id', ['me_id' => $id]))) { $_POST[$this->getTableName()]['me_id'] = $id; $result = parent::saveData(); } return $result; }
/** * @copydoc Grid::saveData */ protected function saveData() { //обрезаем лишние незначащие пробелы и прочее в самих тегах и в переводах //в переводах - сделано на случай вывода в джаваскрипт $_POST[$this->getTableName()]['ltag_name'] = strtoupper(trim($_POST[$this->getTableName()]['ltag_name'])); foreach (array_keys(E()->getLanguage()->getLanguages()) as $langID) { if (isset($_POST[$this->getTranslationTableName()][$langID]['ltag_value_rtf'])) { $_POST[$this->getTranslationTableName()][$langID]['ltag_value_rtf'] = trim($_POST[$this->getTranslationTableName()][$langID]['ltag_value_rtf']); } } $result = parent::saveData(); $c = E()->getCache(); if ($c->isEnabled()) { $c->dispose(Cache::TRANSLATIONS_KEY); } return $result; }
/** * @copydoc Grid::saveData */ protected function saveData() { //При сохранении данных из формы редактирования //Если не пришел пароль - не трогаем его if ($this->getPreviousState() == 'edit' && $_POST[$this->getTableName()]['u_password'] === '') { unset($_POST[$this->getTableName()]['u_password']); } else { $_POST[$this->getTableName()]['u_password'] = password_hash($_POST[$this->getTableName()]['u_password'], PASSWORD_DEFAULT); } if ($this->getPreviousState() == 'add' && $this->dbh->getScalar('SELECT COUNT(*) FROM ' . $this->getTableName() . ' WHERE u_name=%s', $_POST[$this->getTableName()]['u_name'])) { throw new SystemException('ERR_USER_EXISTS', SystemException::ERR_CRITICAL); } $result = parent::saveData(); $UID = is_int($result) ? $result : current($this->getFilter()); $this->dbh->modify(QAL::DELETE, 'user_user_groups', null, array('u_id' => $UID)); if (isset($_POST['group_id']) && is_array($_POST['group_id'])) { foreach ($_POST['group_id'] as $groupID) { $this->dbh->modify(QAL::INSERT, 'user_user_groups', array('u_id' => $UID, 'group_id' => $groupID)); } } return $result; }
protected function saveData() { if (isset($_POST[$this->getTableName()]['domain_root']) && substr($_POST[$this->getTableName()]['domain_root'], -1) != '/') { $_POST[$this->getTableName()]['domain_root'] .= '/'; } return parent::saveData(); }
protected function saveData() { $voteID = parent::saveData(); $this->dbh->modify('UPDATE apps_vote_question SET vote_id=%s WHERE (vote_id IS NULL) or (vote_id = %1$s)', $voteID); return $voteID; }
protected function saveData() { $result = parent::saveData(); $roleID = is_int($result) ? $result : current($this->getFilter()); $this->dbh->modify(QAL::DELETE, 'share_access_level', null, ['group_id' => $roleID]); if (isset($_POST['div_right']) && is_array($_POST['div_right'])) { foreach ($_POST['div_right'] as $smapID => $rightID) { if (!empty($rightID)) { $this->dbh->modify(QAL::INSERT, 'share_access_level', ['group_id' => $roleID, 'smap_id' => $smapID, 'right_id' => $rightID]); } } } return $result; }
protected function saveData() { if (isset($_POST[$this->getTableName()][$this->getPK()]) && empty($_POST[$this->getTableName()][$this->getPK()])) { $_POST[$this->getTableName()]['lang_default'] = '0'; } $langID = parent::saveData(); if ($this->saver->getMode() == QAL::INSERT) { //При создании нового языка для всех таблиц переводов //создаем переводы копируя данные из дефолтного языка if ($translationTables = $this->dbh->select('SHOW TABLES LIKE "%_translation"')) { $defaultLangID = E()->getLanguage()->getDefault(); foreach ($translationTables as $row) { $tableName = current($row); $fields = array_keys($this->dbh->getColumnsInfo($tableName)); $fields[1] = $langID; $this->dbh->modify('INSERT INTO ' . $tableName . ' SELECT ' . implode(',', $fields) . ' FROM ' . $tableName . ' WHERE lang_id=%s', $defaultLangID); } } } return $langID; }