Ejemplo n.º 1
0
 public function actionCancelar()
 {
     $searchModel = new InscreveSearch();
     $dataProvider = $searchModel->search(Yii::$app->request->queryParams);
     $id_usuario = Yii::$app->user->identity->idusuario;
     $id_evento = Yii::$app->request->post('evento_idevento');
     $model = $this->findModel($id_evento);
     $id_pacote = Inscreve::findOne(['usuario_idusuario' => $id_usuario, 'evento_idevento' => $id_evento])->pacote_idpacote;
     $data_final_evento = Evento::findOne(['idevento' => $id_evento])->dataFim;
     $data_atual = date('Y/m/d');
     if (strtotime($data_atual) > strtotime($data_final_evento)) {
         Yii::$app->getSession()->setFlash('danger', ['type' => 'danger', 'message' => 'O Evento ' . $model->sigla . ' já foi encerrado, não sendo possível cancelar a inscrição.', 'title' => 'Inscrição', 'positonY' => 'bottom', 'positonX' => 'right']);
         //Yii::$app->session->setFlash('message', 'Erro: Você não está inscrito nesse evento');
         return Yii::$app->getResponse()->redirect(array('/inscreve/', 'mensagem' => 'erro'));
     }
     $cancela = new Inscreve();
     $resultado = $cancela->cancelar($id_evento);
     if ($resultado == 1) {
         $pacote = new Inscreve();
         $quantidade_de_pacotes = $pacote->possuiPacote();
         if ($quantidade_de_pacotes != 0) {
             $aumentar = new Inscreve();
             $aumentar->aumentarVagas($id_pacote, $id_evento, 2);
         } else {
             $aumentar = new Inscreve();
             $aumentar->aumentarVagas(NULL, $id_evento, 1);
         }
         Yii::$app->getSession()->setFlash('success', ['type' => 'success', 'message' => 'Inscrição no evento ' . $model->sigla . ' foi cancelada com sucesso', 'title' => 'Inscrição', 'positonY' => 'bottom', 'positonX' => 'right']);
         return Yii::$app->getResponse()->redirect(array('/inscreve/', 'mensagem' => 'sucesso'));
     } else {
         Yii::$app->getSession()->setFlash('danger', ['type' => 'danger', 'message' => 'Você não está inscrito no evento ' . $model->sigla . '.', 'title' => 'Inscrição', 'positonY' => 'bottom', 'positonX' => 'right']);
         //Yii::$app->session->setFlash('message', 'Erro: Você não está inscrito nesse evento');
         return Yii::$app->getResponse()->redirect(array('/inscreve/', 'mensagem' => 'erro'));
     }
 }