public function proc_upd() { if (isset($_POST['objchange'])) { // Обработчик мультиформы $form = new ormMultiForm('change'); $class = ormClasses::get($form->getParam(0)); if (!$class->isInheritor('handbook') || $class->getSName() == 'handbook') { system::redirect('/reference'); } if (!user::issetRight('val_add')) { $form->withoutAdditions(); } if (!user::issetRight('val_del')) { $form->withoutRemoving(); } $form->process(); if ($_POST['parram'] == 'apply') { system::redirect('/reference/values/' . $class->id()); } else { system::redirect('/reference'); } } else { // Обработчик для еденичного изменения класса $mini_action = substr(system::action(), -3); if (system::action() == "proc_upd") { // Говорим какой объект нужно изменить $obj = ormObjects::get(system::POST('obj_id')); } else { if (system::action() == "proc_add") { // Говорим какой объект нужно создать $obj = new ormObject(); $obj->setClass(system::POST('class_id')); } } // Если произошли ошибки, перенаправляем на главную страницу модуля if ($obj->issetErrors()) { system::redirect('/reference/values/' . system::POST('class_id')); } // Присваиваем пришедшие значения полям в объекте $obj->loadFromPost($mini_action); // Сохраняем изменения $obj_id = $obj->save(); // Если объект не сохранился, выводим пользователю текст ошибки. if ($obj_id === false) { system::savePostToSession(); ui::MessageBox(lang::get('TEXT_MESSAGE_ERROR'), $obj->getErrorListText()); ui::selectErrorFields($obj->getErrorFields()); $obj_id = empty($_POST['obj_id']) ? system::POST('class_id') : system::POST('obj_id'); system::redirect('/reference/val_' . $mini_action . '/' . $obj_id); } // Если данные изменились корректно перенаправляем на соответствующию страницу if ($_POST['parram'] == 'apply') { system::redirect('/reference/val_upd/' . $obj_id); } else { system::redirect('/reference/values/' . $obj->getClass()->id()); } } }
public static function get($obj_id, $filter_class = '') { if (!empty($obj_id)) { $obj = false; if (!is_array($obj_id)) { $id = system::checkVar($obj_id, isInt); } if (!is_array($obj_id) && self::isLoad($id)) { // Подгружаем использованный ранее объект $obj = self::$objects[$id]; } else { if (is_array($obj_id)) { // Подгрузка данных объекта через массив if (isset($obj_id['o_id']) && self::isLoad($obj_id['o_id'])) { $obj = self::$objects[$obj_id['o_id']]; $obj->supplementData($obj_id); } else { $obj = new ormObject($obj_id); if ($obj->id == 0) { $obj = false; } else { self::$objects[$obj->id] = $obj; } } } else { if (!empty($id)) { // Загрузка данных объекта из БД $obj = new ormObject($id); if ($obj->issetErrors() || $obj->id != $id) { $obj = false; } else { self::$objects[$id] = $obj; } } } } if ($obj instanceof ormObject && !$obj->inTrash()) { if (empty($filter_class) || $obj->isInheritor($filter_class)) { return $obj; } } } }
function proc_upd() { $mini_action = substr(system::action(), -3); if (system::action() == "proc_upd") { // Говорим какой объект нужно изменить if (!($obj = ormObjects::get(system::POST('obj_id'), 'eshop_delivery_method'))) { system::redirect('/eshop/delivery'); } } else { if (system::action() == "proc_add") { // Говорим какой объект нужно создать $obj = new ormObject(); $obj->setClass('eshop_delivery_method'); } } // Если произошли ошибки, перенаправляем на главную страницу модуля if ($obj->issetErrors()) { system::redirect('/eshop/delivery'); } // Присваиваем пришедшие значения полям в объекте $obj->loadFromPost(); // Сохраняем изменения $obj_id = $obj->save(); // Если объект не сохранился, выводим пользователю текст ошибки. if ($obj_id === false) { system::savePostToSession(); ui::MessageBox(lang::get('TEXT_MESSAGE_ERROR'), $obj->getErrorListText()); ui::selectErrorFields($obj->getErrorFields()); $class = $mini_action == 'add' ? '' : $_POST['obj_id']; system::redirect('/eshop/delivery_' . $mini_action . '/' . $class); } // Если данные изменились корректно перенаправляем на соответствующию страницу if ($_POST['parram'] == 'apply') { system::redirect('/eshop/delivery_upd/' . $obj_id); } else { system::redirect('/eshop/delivery'); } }
public function copy($with_child = true, $copyTo = 0) { if (!empty($this->id)) { $copy = new ormObject(); $copy->setClass($this->getClass()->id()); // Перенос данных полей $fields = $this->getClass()->loadFields(); while (list($fname, $field) = each($fields)) { if (!empty($field['f_type']) && $field['f_type'] != 97 && $field['f_relation'] < 2) { $copy->__set($fname, $this->__get($fname)); } } if (empty($copyTo)) { $copy->__set('name', $this->__get('name') . lang::get('copy')); } // Устанавливаем родителя if (empty($copyTo)) { $parents = $this->getParents(); while (list($id, $parent) = each($parents)) { $copy->setNewParent($id); } } else { $copy->setNewParent($copyTo); } $copy->save(); if (!$copy->issetErrors() && $with_child) { while ($child = $this->getChild()) { $child->copy(true, $copy->id); } return true; } else { if ($copy->issetErrors()) { return false; } } } }
public function proc_upd() { $mini_action = substr(system::action(), -3); if (system::action() == "proc_upd") { // Говорим какой объект нужно изменить $obj = ormObjects::get(system::POST('obj_id')); } else { if (system::action() == "proc_add") { $class_name = 'user'; $class = ormClasses::get($_POST['class_id']); if ($class instanceof ormClass && $class->isInheritor('user')) { $class_name = $class->getSName(); } // Говорим какой объект нужно создать $obj = new ormObject(); $obj->setClass($class_name); } } // Если произошли ошибки, перенаправляем if ($obj->issetErrors()) { system::redirect('/users/userlist/' . $_POST['groups'][0]); } // Присваиваем полям в объекте пришедшие значения из POST $obj->loadFromPost($mini_action); if ($obj->newVal('active')) { $obj->error_passw = 0; } if ($obj->id == user::get('id')) { $obj->active = 1; } // Сохраняем изменения $obj_id = $obj->save(); // Если объект не сохранился, выводим пользователю текст ошибки. if ($obj_id === false) { system::savePostToSession(); ui::MessageBox(lang::get('TEXT_MESSAGE_ERROR'), $obj->getErrorListText()); ui::selectErrorFields($obj->getErrorFields()); $obj_id = empty($_POST['obj_id']) ? $_POST['groups'][0] : $_POST['obj_id']; system::redirect('/users/user_' . $mini_action . '/' . $obj_id); } else { rights::setListForModuls($obj_id, 1); cache::delete('user' . $obj_id); } // Если данные изменились корректно перенаправляем на соответствующию страницу if ($_POST['parram'] == 'apply') { system::redirect('/users/user_upd/' . $obj_id); } else { system::redirect('/users/userlist/' . $_POST['groups'][0]); } }
public function proc_upd() { // Обработчик для еденичного изменения класса $mini_action = substr(system::action(), -3); if (system::action() == "proc_upd") { // Говорим какой объект нужно изменить $obj = ormObjects::get(system::POST('obj_id')); $parent_id = $obj->parent_id; } else { if (system::action() == "proc_add") { // Говорим какой объект нужно создать $obj = new ormObject(); $obj->setClass('subscribe_msg'); $obj->setParent(system::POST('obj_id')); $parent_id = system::POST('obj_id'); } } // Если произошли ошибки, перенаправляем на главную страницу модуля if ($obj->issetErrors()) { system::redirect('/subscription'); } // Присваиваем пришедшие значения полям в объекте $obj->loadFromPost($mini_action); // Сохраняем изменения $obj_id = $obj->save(); // Если объект не сохранился, выводим пользователю текст ошибки. if ($obj_id === false) { system::savePostToSession(); ui::MessageBox(lang::get('TEXT_MESSAGE_ERROR'), $obj->getErrorListText()); ui::selectErrorFields($obj->getErrorFields()); $obj_id = empty($_POST['obj_id']) ? '' : $_POST['obj_id']; system::redirect('/subscription/msg_' . $mini_action . '/' . $obj_id); } // Если данные изменились корректно перенаправляем на соответствующию страницу if ($_POST['parram'] == 'apply') { system::redirect('/subscription/msg_upd/' . $obj_id); } else { system::redirect('/subscription/msg/' . $parent_id); } }
public function proc_upd() { $mini_action = substr(system::action(), -3); if (system::action() == "proc_upd") { // Говорим какой объект нужно изменить $obj = new ormObject(system::POST('obj_id')); } else { if (system::action() == "proc_add") { // Говорим какой объект нужно создать $obj = new ormObject(); $obj->setClass('feedback_form'); } } if ($obj->issetErrors()) { system::redirect('/feedback/settings'); } $obj->loadFromPost($mini_action); $obj_id = $obj->save(); // Если объект не сохранился, выводим пользователю текст ошибки. if ($obj_id === false) { system::savePostToSession(); ui::MessageBox(lang::get('TEXT_MESSAGE_ERROR'), $obj->getErrorListText()); ui::selectErrorFields($obj->getErrorFields()); $class = $mini_action == 'add' ? '/' . system::POST('class_id') : ''; system::redirect('/feedback/form_' . $mini_action . '/' . $_POST['obj_id']); } // Если данные изменились корректно перенаправляем на соответствующию страницу if ($_POST['parram'] == 'apply') { system::redirect('/feedback/form_upd/' . $obj_id); } else { system::redirect('/feedback/settings'); } }
static function addEmail($email, $subscriptions, $copyUserData = false) { $email = system::checkVar($email, isEmail); if (!empty($email) && !empty($subscriptions)) { $obj = new ormObject(); $obj->setClass('subscribe_user'); $obj->name = $email; if (!user::isGuest() && $copyUserData) { $obj->second_name = user::get('surname'); $obj->first_name = user::get('name'); $obj->user_id = user::get('id'); } // Указываем на какие подписки подписать while (list($key, $val) = each($subscriptions)) { $obj->setNewParent($val); } // Сохраняем изменения $sid = $obj->save(); if ($obj->issetErrors(29)) { // Если указанный e-mail уже существует, пытаемся найти его и подписать на рассылки. $sel = new ormSelect('subscribe_user'); $sel->where('name', '=', $email); $sel->limit(1); if ($obj = $sel->getObject()) { if (!user::isGuest() && $copyUserData) { $obj->second_name = user::get('surname'); $obj->first_name = user::get('name'); $obj->user_id = user::get('id'); } reset($subscriptions); while (list($key, $val) = each($subscriptions)) { $obj->setNewParent($val); } $sid = $obj->save(); } } return $sid; } }
public function proc_upd() { // Обработчик для еденичного изменения класса $mini_action = substr(system::action(), -3); if (system::action() == "proc_upd") { $obj = ormObjects::get(system::POST('obj_id')); $parent_id = $obj->parent_id; } else { if (system::action() == "proc_add") { $obj = new ormObject(); $obj->setClass('subscribe_user'); $parent_id = system::POST('obj_id'); } } // Если произошли ошибки, перенаправляем на главную страницу модуля if ($obj->issetErrors()) { system::redirect('/subscription'); } // Присваиваем пришедшие значения полям в объекте $obj->loadFromPost(); // Сохраняем изменения $obj_id = $obj->save(); if ($obj->issetErrors(29)) { // Если указанный e-mail уже существует, пытаемся найти его и подписать на рассылки. $sel = new ormSelect('subscribe_user'); $sel->where('name', '=', system::POST('name', isString)); $sel->limit(1); if ($obj = $sel->getObject()) { $obj->tabuList('subscribes'); $obj->loadFromPost(); reset($_POST['subscribes']); while (list($key, $val) = each($_POST['subscribes'])) { $obj->setNewParent($val); } $obj_id = $obj->save(); } } // Если объект не сохранился, выводим пользователю текст ошибки. if ($obj_id === false) { system::savePostToSession(); ui::MessageBox(lang::get('TEXT_MESSAGE_ERROR'), $obj->getErrorListText()); ui::selectErrorFields($obj->getErrorFields()); $obj_id = empty($_POST['obj_id']) ? '' : $_POST['obj_id']; system::redirect('/subscription/user_' . $mini_action . '/' . $obj_id); } // Если данные изменились корректно перенаправляем на соответствующию страницу if ($_POST['parram'] == 'apply') { system::redirect('/subscription/user_upd/' . $obj_id); } else { system::redirect('/subscription/user/' . $parent_id); } }