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