106
public function actionRequestPerforming ($id_request)
{
$request = RequestController::findModel($id_request);
if ($request->id_request_status !=
Request::REQUEST_STATUS_FULL)
throw new UserException (Yii::t('app', 'Bad Request Status'));
if ($request->paid != true)
throw new UserException (Yii::t('app', 'Request Not Paid'));
$request->id_request_status =
Request::REQUEST_STATUS_PERFORMING;
$request->save();
return $this->redirect(Yii::$app->request->referrer);
}
public function actionRequestPerformed ($id_request)
{
$request = RequestController::findModel($id_request);
if ($request->id_request_status !=
Request::REQUEST_STATUS_PERFORMING)
throw new UserException (Yii::t('app', 'Bad Request Status'));
$request->id_request_status =
Request::REQUEST_STATUS_PERFORMED;
$request->save();
return $this->redirect(Yii::$app->request->referrer);
}
public static function RequestEditable ($id_request, $exception = true)
{
$result = false;
$model = RequestController::findModel($id_request);
switch (Yii::$app->user->identity->id_user_type)
{
case \app\models\User::USER_TYPE_CLIENT :
{
$result = $model->id_request_status ==
Request::REQUEST_STATUS_OPEN;
} break;
case \app\models\User::USER_TYPE_MANAGER :
{
$result = $model->id_request_status ==
Request::REQUEST_STATUS_FULL && $model->paid == false;
} break;