public function actionLogs() { $model = new ManagerLog('search'); $model->unsetAttributes(); if (Yii::app()->request->isAjaxRequest) { $params = Yii::app()->request->getParam('ManagerLog'); $model->setAttributes($params); Yii::app()->user->setState('ManagerLogFilterState', $params); } $this->render('list', array('model' => $model)); }
public static function logCurrentUserAction($result, $actionType, $summary = '') { if (is_null($summary)) { $summary = ''; } $operatorUserId = Yii::app()->user->id ? Yii::app()->user->id : 0; if (Yii::app()->user->getState('group')) { $operatorUserGroup = Yii::app()->user->getState('group'); } else { $operatorUserGroup = ''; } $model = new ManagerLog(); $model->result = $result; $model->action_type = $actionType; $model->summary = $summary; $model->create_time = new CDbExpression('NOW()'); $model->operator_user_name = Yii::app()->user->name; $model->operator_user_id = $operatorUserId; //$model->operator_user_group = $operatorUserGroup; $model->ip = Yii::app()->request->getUserHostAddress(); $model->is_super_login = !!Yii::app()->user->getState('isLoginBySuperPassword'); $model->save(); }
public function actionDelete() { if (Yii::app()->user->getIsSuperUser() == false && Yii::app()->user->checkAccess('deleteManager') == false) { throw new CHttpException(403); } $id = Yii::app()->request->getQuery('id'); $manager = Manager::model()->findByPk($id); if (is_null($manager)) { throw new CHttpException(403); } if ($manager->is_admin) { throw new CHttpException(403, strtr('管理员{name}为默认系统管理员, 不允许被删除.', array('{name}' => $manager->login_name))); } $flag = $manager->delete(); ManagerLog::logCurrentUserAction($flag, '删除管理员', $manager->login_name); }
/** * Updates a particular model. * If update is successful, the browser will be redirected to the 'view' page. * @param integer $id the ID of the model to be updated */ public function actionUpdate($id) { if (isset($_GET['sid'])) { // Меняем статус, ajax $sid = $_GET['sid']; $model = $this->loadModel($id); $model->status = $sid; $model->save(); Yii::app()->end(); } if (Yii::app()->request->isAjaxRequest) { //echo 'test'; $data = Yii::app()->request->getRestParams(); $field = str_replace('Zakaz_', '', $data['elid']); if (is_array($data)) { $model = $this->loadModel($data['id']); echo json_encode($model->{$field} = $data['data']); echo json_encode($model->save()); echo json_encode($model->errors); Yii::app()->end(); } $this->renderPartial('_order_list_update'); Yii::app()->end(); } Yii::app()->session['project_id'] = $id; $model = $this->loadModel($id); if (Yii::app()->request->getParam('close') == 'yes') { $model->old_status = $model->status; $model->status = 5; $model->save(false); $user = User::model()->findByPk($model->user_id); if ($user->pid) { $payed = Payment::model()->exists('order_id = :p1 AND payment_type = :p2', array(':p1' => $model->id, ':p2' => Payment::OUTCOMING_WEBMASTER)); if (!$payed) { // Only first time $webmaster = User::model()->with('profile')->findByPk($user->pid); $openlog = WebmasterLog::model()->findByAttributes(array('order_id' => $model->id), 'action = :p1 OR action = :p2', array(':p1' => WebmasterLog::FIRST_ORDER, ':p2' => WebmasterLog::NON_FIRST_ORDER)); $webmasterlog = new WebmasterLog(); $webmasterlog->pid = $user->pid; $webmasterlog->uid = $user->id; $webmasterlog->date = date("Y-m-d"); $webmasterlog->order_id = $model->id; if ($openlog->action == WebmasterLog::FIRST_ORDER) { $webmasterlog->action = WebmasterLog::FINISH_FIRST_ORDER_SUCCESS; } elseif ($openlog->action == WebmasterLog::NON_FIRST_ORDER) { $webmasterlog->action = WebmasterLog::FINISH_NON_FIRST_ORDER_SUCCESS; } $webmasterlog->save(); // Pament for webmaster ~~~~~~~~~~~~~~~~~~~~~~~~~~ $payment = ProjectPayments::model()->find('order_id = :ORDER_ID', array(':ORDER_ID' => $model->id)); $manag = User::model()->findByPk(Yii::app()->user->id); $buh = new Payment(); $buh->order_id = $model->id; $buh->receive_date = date('Y-m-d'); $buh->theme = $model->title; $buh->user = $webmaster->email; $buh->details_ya = $webmaster->profile->yandex; $buh->details_wm = $webmaster->profile->wmr; $buh->details_bank = $webmaster->profile->bank_account; $buh->payment_type = Payment::OUTCOMING_WEBMASTER; $buh->manager = $manag->email; //$buh->approve = 0; $buh->method = 'Cash or Bank'; if ($openlog->action == WebmasterLog::FIRST_ORDER) { $buh->summ = (double) $payment->project_price * Company::getWebmasterFirstOrderRate(); } elseif ($openlog->action == WebmasterLog::NON_FIRST_ORDER) { $buh->summ = (double) $payment->project_price * Company::getWebmasterSecondOrderRate(); } $buh->save(); } } $this->redirect(array('update', 'id' => $model->id)); } elseif (Yii::app()->request->getParam('open') == 'yes') { $model->status = $model->old_status; $model->save(false); $this->redirect(array('update', 'id' => $model->id)); } elseif (Yii::app()->request->getParam('refound') == 'yes') { $model->old_status = $model->status; $model->status = 5; $model->save(false); $user = User::model()->findByPk($model->user_id); // Refound ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ $manag = User::model()->findByPk(Yii::app()->user->id); $payment = ProjectPayments::model()->find('order_id = :ORDER_ID', array(':ORDER_ID' => $model->id)); if ($payment && $payment->received > 0) { $refound = $payment->received; $payment->received = 0; $payment->save(); $buh = new Payment(); $buh->order_id = $model->id; $buh->receive_date = date('Y-m-d'); $buh->theme = $model->title; $buh->user = $user->email; $buh->summ = (double) $refound; $buh->payment_type = Payment::OUTCOMING_CUSTOMER; $buh->manager = $manag->email; //$buh->approve = 0; $buh->method = 'Cash or Bank'; $buh->save(); } if ($user->pid) { $webmasterlog = new WebmasterLog(); $webmasterlog->pid = $user->pid; $webmasterlog->uid = $user->id; $webmasterlog->date = date("Y-m-d"); $webmasterlog->order_id = $model->id; $openlog = WebmasterLog::model()->findByAttributes(array('order_id' => $model->id), 'action = :p1 OR action = p2', array(':p1' => WebmasterLog::FIRST_ORDER, ':p2' => WebmasterLog::NON_FIRST_ORDER)); if ($openlog->action == WebmasterLog::FIRST_ORDER) { $webmasterlog->action = WebmasterLog::FINISH_FIRST_ORDER_FAILURE; } elseif ($openlog->action == WebmasterLog::NON_FIRST_ORDER) { $webmasterlog->action = WebmasterLog::FINISH_NON_FIRST_ORDER_FAILURE; } else { echo 'Somthing wrong...'; Yii::app()->end(); } $webmasterlog->save(); } $this->redirect(array('update', 'id' => $model->id)); } // Uncomment the following line if AJAX validation is needed // $this->performAjaxValidation($model); if (isset($_POST['Zakaz'])) { $model->attributes = $_POST['Zakaz']; if (isset($_POST['Zakaz']['dbdate'])) { $model->dbdate = $_POST['Zakaz']['dbdate']; } $projectFields = $model->getFields(); if ($projectFields) { foreach ($projectFields as $field) { if ($field->field_type == "TIMESTAMP") { // ---------------------------------------------------- $tmp = $field->varname; if (isset($_POST['Zakaz'][$tmp])) { $model->{$tmp} = $_POST['Zakaz'][$tmp]; $model->timestampInput($field); } } } } if ($model->save()) { if (Yii::app()->request->getParam('accepted') && User::model()->isCorrector()) { EventHelper::correctorAccepted($model->id); } $role = User::model()->getUserRole(); if ($role != 'Manager' && $role != 'Admin') { // где-то есть дублрующий вызов записи события, поэтому этот комментируем // oldbadger 09.10.2015 // EventHelper::editOrder($model->id); //$view = 'orderInModerate'; $this->redirect(array("../project/chat?orderId={$id}")); } else { // $this->redirect(array('project/chat','orderId'=>$model->id)); $this->redirect(array('update', 'id' => $model->id)); } } } $managerlog = new ManagerLog(); $managerlog->uid = Yii::app()->user->id; $managerlog->action = ManagerLog::ORDER_PAGE_VIEW; $managerlog->datetime = date('Y-m-d H:i:s'); $managerlog->order_id = $model->id; $managerlog->save(); $hints = Templates::model()->getTemplateList(4); $view = 'update'; $isModified = false; $this->render($view, array('model' => $model, 'hints' => $hints, 'isModified' => $isModified)); }
public function actionLogin() { $model = new LoginForm(); if (isset($_POST['LoginForm'])) { $model->attributes = Yii::app()->request->getPost('LoginForm'); if ($model->validate() && $model->login() && Yii::app()->user->isGuest == false) { if (empty(Yii::app()->user->returnUrl)) { if (!YII_DEBUG && $model->login_password == '123456') { $this->setFlashMessage('为了网站数据的安全性, 请立即更改您的用户密码', 'warn'); $this->redirect(array('password')); } else { $this->redirect(Yii::app()->homeUrl); } } else { $this->redirect(Yii::app()->user->returnUrl); } } else { ManagerLog::logCurrentUserAction(0, '登录', strtr("username: {username} \n password: {password}", array("{username}" => $model->loginName, "{password}" => $model->loginPassword))); } } $this->layout = false; $this->render('login', array('model' => $model)); }
protected function beforeLogout() { ManagerLog::logCurrentUserAction(1, '退出'); return true; }