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'); } }
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]); } }