public function restore() { if (system::issetUrl(2) && is_numeric(system::url(2))) { // Одиночное востановление $obj = new ormObject(system::url(2)); if ($obj->isInheritor('section')) { $obj = new ormPage(system::url(2)); } $obj->restore(); echo 'delete'; } else { if (isset($_POST['objects'])) { // Множественное востановление while (list($id, $val) = each($_POST['objects'])) { if (is_numeric($id)) { $obj = new ormObject($id); if ($obj->isInheritor('section')) { $obj = new ormPage($id); } $obj->restore(); } } echo 'delete'; } } ormPages::clearCache(); system::stop(); }
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_status'))) { system::redirect('/eshop/state'); } } else { if (system::action() == "proc_add") { // Говорим какой объект нужно создать $obj = new ormObject(); $obj->setClass('eshop_status'); } } // Если произошли ошибки, перенаправляем на главную страницу модуля if ($obj->issetErrors()) { system::redirect('/eshop/state'); } // Присваиваем пришедшие значения полям в объекте $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/state_' . $mini_action . '/' . $class); } // Если данные изменились корректно перенаправляем на соответствующию страницу if ($_POST['parram'] == 'apply') { system::redirect('/eshop/state_upd/' . $obj_id); } else { system::redirect('/eshop/state'); } }
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") { // Говорим какой объект нужно создать $obj = new ormObject(); $obj->setClass('user_group'); } } // Если произошли ошибки, перенаправляем на главную страницу модуля if (!$obj->isInheritor('user_group')) { system::redirect('/users'); } // Присваиваем пришедшие значения полям в объекте $obj->loadFromPost($mini_action); // Сохраняем изменения $obj_id = $obj->save(); // Если объект не сохранился, выводим пользователю текст ошибки. if ($obj_id === false) { system::savePostToSession(); ui::MessageBox(lang::get('TEXT_MESSAGE_ERROR'), $obj->getErrorListText()); system::redirect('/users/group_' . $mini_action . '/' . $_POST['obj_id']); } else { rights::setListForModuls($obj_id, 0); } // Если данные изменились корректно перенаправляем на соответствующию страницу if ($_POST['parram'] == 'apply') { system::redirect('/users/group_upd/' . $obj_id); } else { system::redirect('/users'); } }
/** * @return null * @param string $callback - Имя php-функции для обработки добавления/изменения объектов. * @desc Сохраняет все пришедшие данные. Метод используется обработчиком формы. */ public function process($callback = '', $addit_parram = '') { if (isset($_POST['obj' . $this->form_name]) && isset($_POST['class_' . $this->form_name])) { $class = ormClasses::get($_POST['class_' . $this->form_name]); $mas = $class->loadFields(); while (list($id, $fields) = each($_POST['obj' . $this->form_name])) { $keys = array_keys($fields); if (is_numeric($id)) { $obj = ormObjects::get($id); } else { if (!$this->without_add && !empty($fields[$keys[0]])) { $obj = new ormObject(); $obj->setClass($class->getSName()); } } if (isset($obj) && $obj instanceof ormObject) { if (!$this->without_del && isset($_POST['delete_' . $obj->id])) { $obj->toTrash(); } else { reset($mas); while (list($key, $f_val) = each($mas)) { if ($f_val['f_type'] > 89 && $f_val['f_type'] < 101 && $f_val['f_relation'] == 2 && isset($fields[$key])) { // Справочник с типом "Выбор родителя" $obj->clearParents(); $ps = $obj->getParents(); $parents = $fields[$key]; if (!empty($parents)) { if (is_numeric($parents) && !empty($parents)) { $pos = isset($ps[$parents]) ? $ps[$parents]['position'] : 0; $obj->setNewParent($parents, $pos); } else { if (is_array($parents)) { while (list($key, $val) = each($parents)) { if (!empty($val)) { $pos = isset($ps[$val]) ? $ps[$val]['position'] : 0; $obj->setNewParent($val, $pos); } } } } } } else { if ($f_val['f_type'] == 50 && !isset($fields[$key])) { // Галочка $obj->__set($key, false); } else { if (isset($fields[$key])) { // Дополнительная проверка для файловых полей if ($f_val['f_type'] > 69 && $f_val['f_type'] < 86) { if (!empty($_FILES['file_obj' . $this->form_name]['tmp_name'][$id][$key])) { // Создаем переменную обманку, чтобы объект сам обработал файл $file = array('name' => $_FILES['file_obj' . $this->form_name]['name'][$id][$key], 'type' => $_FILES['file_obj' . $this->form_name]['type'][$id][$key], 'tmp_name' => $_FILES['file_obj' . $this->form_name]['tmp_name'][$id][$key], 'error' => $_FILES['file_obj' . $this->form_name]['error'][$id][$key], 'size' => $_FILES['file_obj' . $this->form_name]['size'][$id][$key]); $_FILES['file_' . $key] = $file; } } $obj->__set($key, $fields[$key]); } else { if (!empty($fields[$key . '_date']) && isset($fields[$key . '_time'])) { $datetime = $fields[$key . '_date'] . ' ' . $fields[$key . '_time'] . ':00'; $obj->__set($key, $datetime); } } } } } if (!empty($callback) && function_exists($callback)) { $is_ok = call_user_func($callback, $obj, $addit_parram); } else { $is_ok = true; } if ($is_ok) { $is_ok = $obj->save(); } if ($is_ok === false) { // echo $obj->getErrorListText(); system::savePostToSession(); ui::MessageBox(lang::get('TEXT_MESSAGE_ERROR'), $obj->getErrorListText()); //ui::selectErrorFields($obj->getErrorFields()); } unset($obj); } } } } }
public function add_procAction() { $answer = array(); if (!reg::getKey('/users/reg')) { system::redirect('/'); } if (!user::isGuest()) { system::redirect('/users/edit'); } // Проверка капчи if (!system::validCapcha('random_image')) { $answer = array('msg' => lang::get('SITE_CAPHCA'), 'field' => 'captcha'); } // Проверка согласия с условиями оферты if (reg::getKey('/users/confirm') && !system::POST('confirm', isBool)) { $answer = array('msg' => lang::get('USERS_COMFIRM'), 'field' => 'confirm'); } // Добавляем объект if (empty($answer)) { $obj = new ormObject(); $obj->setParent(41); // Устанавливаем группу "Пользователи сайта" $obj->setClass('user'); $obj->tabuList('def_modul', 'active', 'last_visit', 'last_ip', 'groups'); $obj->loadFromPost(); $obj->active = 1; $obj->email = $obj->newVal('login'); $max_tickets = reg::getKey('/booking/max_tickets'); $obj->place_limit = $max_tickets == '' || $max_tickets == 0 ? 6 : $max_tickets; if ($obj->save()) { if (reg::getKey('/users/activation')) { // Регистрация с проверкой // Формируем временный ключ активации пользователя $key = md5(date('d.m.Y') . 'activate' . $obj->id); $obj->md5_flag = $key; $obj->active = 0; $obj->save(); // Отправляем письмо $url_pre = 'http://' . domains::curDomain()->getName() . languages::pre(); page::assign('url', $url_pre . '/users/activate/' . $key); page::assign('passw', system::POST('password')); page::assign('login', $obj->login); page::assign('name', $obj->name); system::sendMail('/users/mails/activate.tpl', $obj->email); $_SESSION['user_email'] = $obj->login; } else { // Регистрация без проверки // Отправляем письмо page::assign('passw', system::POST('password')); page::assign('login', $obj->login); page::assign('name', $obj->name); system::sendMail('/users/mails/registration.tpl', $obj->email); // Автоматическая авторизация user::authHim($obj); } // Все хорошо. Пользователь добавлен. if (system::isAjax()) { system::json(array('ok' => 1)); } else { system::redirect('/users/ok'); } } else { // Произошли ошибки if ($obj->issetErrors(32)) { $answer = array('msg' => lang::get('USERS_ISSET'), 'field' => 'login'); } else { $tmp = $obj->getErrorFields(); $answer = array('msg' => $obj->getErrorListText(' '), 'field' => $tmp['focus']); } } } if (!system::isAjax()) { system::savePostToSession(); system::saveErrorToSession('add_user', $answer); if (!empty($_POST['back_url'])) { system::redirect($_POST['back_url'], true); } else { system::redirect('/users/add'); } } else { system::json($answer); } }
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]); } }
private static function createUserForSocial($user_info) { if (!empty($user_info['login']) && !empty($user_info['first_name'])) { $obj = new ormObject(); $obj->setParent(41); // Устанавливаем группу "Пользователи сайта" $obj->setClass('user'); $obj->active = 1; $obj->login = $user_info['login']; $obj->name = $user_info['first_name']; $obj->surname = $user_info['last_name']; $obj->social_identity = $user_info['identity']; $obj->social_type = $user_info['social_type']; $max_tickets = reg::getKey('/booking/max_tickets'); $obj->place_limit = $max_tickets == '' || $max_tickets == 0 ? 6 : $max_tickets; if (!empty($user_info['photo'])) { $obj->avatara = $user_info['photo']; } $obj->password = rand(100000, 999999); if (!empty($user_info['email'])) { $obj->email = $user_info['email']; } else { $md5 = substr(md5($user_info['login'] . $user_info['social'] . rand(10, 99)), 0, 15); $obj->email = $md5 . '@' . domains::curDomain()->getName(); } if ($obj->save()) { unset($_SESSION['SOCIAL_AUTH_USER_INFO']); } return $obj; } }
/** * @return null * @param ormObject $obj - ORM-Объект информация о котором заносится в журнал * @param string $text - Текст сообщения * @param const $state - Статус сообщения, используйте одну из контант: info - В порядке информации error - Ошибка warning - Предупреждение * @param string $type - Тип записи (для системных нужд, использовать не рекомендуется) 0 - обычная, 1 - информаци о помещении объекта в корзину * @desc Функция реализует добавление событий об изменение ORM-объектов в базу данных */ static function revue(ormObject $obj, $text, $state = error, $type = 0) { $state = system::checkVar($state, isInt); $type = system::checkVar($type, isInt); $text = system::checkVar($text, isString); db::q('INSERT INTO <<revue>> SET rev_state = "' . $state . '", rev_type = "' . $type . '", rev_obj_id = "' . $obj->id . '", rev_class_id = "' . $obj->getClass()->id() . '", rev_user_id = "' . user::get('id') . '", rev_user = "******", rev_datetime = "' . date('Y-m-d H:i:s') . '", rev_message = "' . $text . '", rev_ip = "' . $_SERVER['REMOTE_ADDR'] . '";'); }
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'); } }
public function restore() { $restore = parent::restore(); if ($restore) { $parent_id = $this->getParentId(); $s = empty($this->id) ? '' : 'p_obj_id <> "' . $this->id . '" and '; $s .= empty($parent_id) ? 'r_parent_id is NULL' : 'r_parent_id = "' . $parent_id . '"'; $sql = 'SELECT count(p_obj_id) FROM <<pages>>, <<objects>>, <<rels>> WHERE pseudo_url = "' . $this->__get('pseudo_url') . '" and lang_id = "' . languages::curId() . '" and domain_id = "' . domains::curId() . '" and r_children_id = p_obj_id and ' . $s . ' and o_id = p_obj_id and o_to_trash = 0;'; $count = db::q($sql, value); if ($count > 0) { $pseudo_url = $this->__get('pseudo_url') . rand(100, 999); db::q('UPDATE <<pages>> SET pseudo_url="' . $pseudo_url . '" WHERE p_obj_id = "' . $this->id . '";'); return true; } } return false; }
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; } }
/** * @return Результат выполнения * @param ormObject $obj - Экзепляр ormObject * @param string $field - Имя обрабатываемого поля * @param integer $field_type - Тип ORM-поля * @param string $value - Значение для обработки * @param string $function - PHP-функция для обработки значения, если есть * @desc Обрабатываем значение */ protected function processValue($obj, $field, $field_type, $value, $function) { // Получаем данные класса if ($field == 'class_id') { $value = $obj->getClass()->id(); } elseif ($field == 'class') { $value = $obj->getClass()->getSName(); } elseif ($field == 'class_name') { $value = $obj->getClass()->getName(); } // Обрабатываем значение if (!empty($function)) { $value = $this->exeFunction($value, $obj, $function); } else { if ($field == 'parents') { // Получаем список родителей $value = $this->viewParents($value, $obj); } else { if ($field == 'children') { // Получаем список подобъектов $value = $this->viewChildren($value, $obj); } else { if (!empty($field_type)) { if ($field_type == 20) { $value = $this->viewUrl($value, $obj); } else { if ($field_type == 25) { $value = $this->viewDate($value, $obj); } else { if ($field_type == 30) { $value = $this->viewTime($value, $obj); } else { if ($field_type == 32) { $value = $this->viewDateTime($value, $obj); } else { if ($field_type == 50) { $value = $this->viewBool($value, $obj); } else { if ($field_type == 70 || $field_type == 80 || $field_type == 85) { $value = $this->viewFile($value, $obj); } else { if ($field_type == 73) { $value = $this->viewFiles($value, $obj); } else { if ($field_type == 75) { $value = $this->viewImage($value, $obj); } else { if ($field_type == 90) { $value = $this->viewList($value, $obj); } else { if ($field_type == 95) { $value = $this->viewListMore($value, $obj); } } } } } } } } } } } } } } return $value; }
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); } }
public function save() { if (basket::getCount() > 0) { $order_id = $this->obj->save(); if ($order_id) { // Заказ сохранен добавляем в него товары $goods_list = basket::getGoodsData(); while (list($id, $goods) = each($goods_list)) { $obj = new ormObject(); $obj->setClass('eshop_goods'); $obj->setParent($order_id); $obj->goods_id = $goods['goods_id']; $obj->count = $goods['count']; $obj->cost = $goods['cost']; $obj->save(); } // Если нужно, отправляем сообщение для текущего статуса $this->sendStateMsg(); basket::clear(); return $order_id; } else { //echo $this->obj->getErrorListText(); // Произошла ошибка } } else { if (!empty($this->obj)) { // Изменяем данные заказа $order_id = $this->obj->save(); if ($order_id) { // Если нужно, отправляем сообщение для текущего статуса $this->sendStateMsg(); return $order_id; } else { //echo $this->obj->getErrorListText(); // Произошла ошибка } } else { // Корзина путая, создать новый заказ не возможно } } return false; }