Exemplo n.º 1
0
 public function gravarAction()
 {
     $id = $this->_getParam('id', null);
     $atividade = new Atividade();
     $dados = $this->_getAllParams();
     if ($id) {
         unset($dados['id_palestrante']);
         unset($dados['dt_cadastro']);
         $rowAtividade = $atividade->find($id)->current();
         // Verifica se o usuário que é palestrante da atividade é o usuário logado
         if (Zend_Auth::getInstance()->getIdentity()->id != $rowAtividade->id_palestrante) {
             if (Zend_Auth::getInstance()->getIdentity()->sRole != 'admin') {
                 $this->_addMessage('Você não pode modificar esta atividade');
                 $this->_redirect('participantes');
             }
         }
     } else {
         $rowAtividade = $atividade->createRow();
         unset($dados['id']);
         $idUsuario = Zend_Auth::getInstance()->getIdentity()->id;
         $dados['id_palestrante'] = $idUsuario;
         $dados['dt_cadastro'] = date('Y-m-d H:i:s');
         $dados['situacao'] = Atividade::SUBMETIDO;
     }
     $rowAtividade->setFromArray($dados);
     try {
         $rowAtividade->save();
         $this->_addMessage('A atividade foi gravada com sucesso');
     } catch (Exception $e) {
         $this->_addMessage('Houve problema na gravação da atividade');
     }
     $this->_redirect('participantes');
 }