Exemple #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'));
     }
 }
Exemple #2
0
 public function getInscritosEventoGeral()
 {
     $qte = Inscreve::find()->where(['evento_idevento' => $this->idevento])->count();
     return $qte;
 }
Exemple #3
0
 /**
  * @return \yii\db\ActiveQuery
  */
 public function getInscreves()
 {
     return $this->hasMany(Inscreve::className(), ['pacote_idpacote' => 'idpacote']);
 }
Exemple #4
0
 /**
  * @return \yii\db\ActiveQuery
  */
 public function getInscreves()
 {
     return $this->hasMany(Inscreve::className(), ['usuario_idusuario' => 'idusuario']);
 }
Exemple #5
0
 public function getSomaCargaHorariaPacote($idevento, $idusuario)
 {
     $idpacote = Inscreve::find()->select('pacote_idpacote')->Where(['evento_idevento' => $idevento, 'usuario_idusuario' => $idusuario])->one();
     if ($idpacote == null) {
         return null;
     }
     $sql = "select sum(itemProgramacao.cargaHoraria) as cargaHorariaPacote from itemProgramacao where iditemProgramacao in (\n                select itemProgramacao_iditemProgramacao from itemProgramacao_has_pacote \n                as item join pacote as p on item.pacote_idpacote = p.idpacote \n                where idpacote ='" . $idpacote->pacote_idpacote . "')";
     $somaCargaHoraria = Yii::$app->db->createCommand($sql)->queryOne();
     return $somaCargaHoraria['cargaHorariaPacote'];
 }
Exemple #6
0
 public function searchCredenciados()
 {
     $id_evento = Yii::$app->request->post('evento_idevento');
     if (!Yii::$app->user->isGuest) {
         $query = Inscreve::find()->where(['evento_idevento' => $id_evento])->andWhere(['credenciado' => 1])->innerJoin('user', 'user.idusuario = inscreve.usuario_idusuario')->orderBy('user.nome');
     } else {
         return Yii::$app->getResponse()->redirect(array('/evento/', NULL));
         // é redirecionado a tela de eventos, se não estiver logado
     }
     $dataProvider = new ActiveDataProvider(['query' => $query]);
     //$this->load($params);
     if (!$this->validate()) {
         // uncomment the following line if you do not want to return any records when validation fails
         // $query->where('0=1');
         return $dataProvider;
     }
     return $dataProvider;
 }