/**
  * Action pour la création.
  *
  * @return array
  */
 public function createAction()
 {
     $oForm = new \Commun\Form\ItemPersonnageRaidForm();
     //new \Commun\Form\ItemPersonnageRaidForm($this->getServiceLocator());
     $oRequest = $this->getRequest();
     $oFiltre = new \Commun\Filter\ItemPersonnageRaidFilter();
     $oForm->setInputFilter($oFiltre->getInputFilter());
     if ($oRequest->isPost()) {
         $oEntite = new \Commun\Model\ItemPersonnageRaid();
         $oForm->setData($oRequest->getPost());
         if ($oForm->isValid()) {
             $oEntite->exchangeArray($oForm->getData());
             $this->getTable()->insert($oEntite);
             $this->flashMessenger()->addMessage($this->_getServTranslator()->translate("La item-personnage-raid a été créé avec succès."), 'success');
             return $this->redirect()->toRoute('backend-item-personnage-raid-list');
         }
     }
     // Pour optimiser le rendu
     $oViewModel = new ViewModel();
     $oViewModel->setTemplate('backend/item-personnage-raid/create');
     return $oViewModel->setVariables(array('form' => $oForm));
 }
 /**
  * Sauvegarde ou met a jour le personnage et le raid passé.
  * @param \Commun\Model\Personnages $oPersonnage
  * @param \Commun\Model\Raids $oRaids
  * @param \Commun\Model\Items $oItems
  * @param string $sNomBoss
  * @param string $sBonus
  * @param string $sNote
  * @param date $dDateLoot date du loot
  * @return  \Core\Model\RaidPersonnage
  */
 public function saveOrUpdateItemPersonnageRaid($oPersonnage, $oRaids, $oItems, $sNomBoss, $sBonus, $sNote, $dDateLoot)
 {
     try {
         $oItemPersonnageRaid = new \Commun\Model\ItemPersonnageRaid();
         $oItemPersonnageRaid->setIdItem($oItems->getIdItem());
         $oItemPersonnageRaid->setIdRaid($oRaids->getIdRaid());
         $oItemPersonnageRaid->setIdPersonnage($oPersonnage->getIdPersonnage());
         $oItemPersonnageRaid->setBonus($sBonus);
         $oItemPersonnageRaid->setDate($dDateLoot);
         $oBoss = $this->_getTableBoss()->selectBy(array('nom' => strtolower($sNomBoss)));
         if (!$oBoss) {
             throw new DatabaseException(9000, 6, $this->_getServiceLocator(), array(strtolower($sNomBoss)));
         }
         $oItemPersonnageRaid->setIdBosses($oBoss->getIdBosses());
         $oItemPersonnageRaid->setNote($sNote);
         $this->insert($oItemPersonnageRaid);
         return $oItemPersonnageRaid;
     } catch (\Exception $ex) {
         throw new DatabaseException(8000, 2, $this->_getServiceLocator(), array($oPersonnage, $oRaids, $oItems, $sNomBoss, $sBonus, $sNote, $dDateLoot), $ex);
     }
 }