public function editpostAction()
 {
     if ($datas = $this->getRequest()->getPost()) {
         $html = array();
         $datas['value_id'] = $this->getCurrentOptionValue()->getId();
         $game = new Socialgaming_Model_Game();
         $current_game = new Socialgaming_Model_Game();
         $current_game->findCurrent($this->getCurrentOptionValue()->getId());
         $next_game = new Socialgaming_Model_Game();
         $next_game->findNext($this->getCurrentOptionValue()->getId());
         try {
             // Sauvegarde le jeu
             if ($current_game->getId()) {
                 $next_game->setData($datas)->save();
                 // Si le jeu n'a pas de date de fin
                 if (!$current_game->getEndAt()) {
                     // Met à jour la date de fin du jeu en cours
                     $current_game->setEndAt()->save();
                 }
             } else {
                 $current_game->setData($datas)->save();
             }
             $html = array('success' => 1, 'success_message' => $this->_('Game successfully saved'), 'message_button' => 0, 'message_timeout' => 3, 'message_loader' => 1);
         } catch (Exception $e) {
             $html = array('message' => $e->getMessage(), 'message_button' => 1, 'message_loader' => 1);
         }
         $this->getLayout()->setHtml(Zend_Json::encode($html));
     }
 }
Exemplo n.º 2
0
 public function saveAction()
 {
     if ($datas = $this->getRequest()->getPost()) {
         $game = new Socialgaming_Model_Game();
         $current_game = new Socialgaming_Model_Game();
         $current_game->findCurrent($this->getSession()->getAdminId());
         $next_game = new Socialgaming_Model_Game();
         $next_game->findNext($this->getSession()->getAdminId());
         try {
             // Sauvegarde le jeu
             $datas['admin_id'] = $this->getSession()->getAdminId();
             if ($current_game->getId()) {
                 $next_game->setData($datas)->save();
                 // Si le jeu n'a pas de date de fin
                 if (!$current_game->getEndAt()) {
                     // Met à jour la date de fin du jeu en cours
                     $current_game->setEndAt()->save();
                 }
             } else {
                 $current_game->setData($datas)->save();
             }
             $this->getSession()->addSuccess('Le jeu a été sauvegardé avec succès');
             $this->_redirect('socialgaming/admin_game/list');
         } catch (Exception $e) {
             $this->getSession()->addError('Une erreur est survenue lors de la sauvegarde');
             $this->_redirect($this->getRequest()->getHeader('referer'));
         }
     }
     return $this;
 }