/** * Update user's approval values action */ public function actionUpdateUsersApprovalValues() { if (isset($_POST['clientID']) && isset($_POST['users'])) { $clientID = intval($_POST['clientID']); $users = $_POST['users']; //check input data if ($clientID == 0) { $this->redirect('/admin?tab=us_appr_value'); die; } //change approval values foreach ($users as $userID => $approvalValue) { $userID = intval($userID); if ($userID == 0) { $this->redirect('/admin?tab=us_appr_value'); die; } $userToClient = UsersClientList::model()->findByAttributes(array( 'User_ID' => $userID, 'Client_ID' => $clientID, )); if ($userToClient) { $previousApprovalValue = intval($userToClient->User_Approval_Value); $approvalValue = intval($approvalValue); if ($approvalValue > Aps::APPROVED) { $approvalValue = Aps::APPROVED; } else if ($approvalValue < Aps::NOT_READY_FOR_APPROVAL) { $approvalValue = Aps::NOT_READY_FOR_APPROVAL; } $userToClient->User_Approval_Value = $approvalValue; if ( $previousApprovalValue == Aps::APPROVED && $approvalValue!=Aps::APPROVED && UsersClientList::isLastApprover($userToClient->Client_ID,$userToClient->User_ID) ) { Yii::app()->user->setFlash('success', "At least one Approver must have an Approval value of 100."); //$this->redirect('/admin?tab=us_appr_value'); } $userToClient->save(); } } Yii::app()->user->setFlash('success', "Approval values have been successfully updated!"); $this->redirect('/admin?tab=us_appr_value'); } else { Yii::app()->user->setFlash('success', "Approval values have not been updated!"); $this->redirect('/admin?tab=us_appr_value'); } }