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