/** * Entrée générique dans un agenda * @author Christophe Beyer <*****@*****.**> * @since 2006/08/24 * @param integer $id Id de l'agenda (si aucun, l'envoie dans l'agenda perso) */ public function go() { $id = $this->getRequest('id', null); $dao = CopixDAOFactory::create('agenda|agenda'); if ($id == null) { // Si pas d'id, on l'envoie dans son agenda perso $userInfo = Kernel::getUserInfo(); // Création des modules inexistants. Kernel::createMissingModules($userInfo["type"], $userInfo["id"]); // Liste des modules activés. $modsList = Kernel::getModEnabled($userInfo["type"], $userInfo["id"]); foreach ($modsList as $modInfo) { if ($modInfo->module_type == "MOD_AGENDA" && $modInfo->module_id) { $id = $modInfo->module_id; } } } if ($id && ($agenda = $dao->get($id))) { $this->_setSessionSemaineParams(null); $obj = new AgendaService(); $obj->setAgendaAffiches(array($id => $id)); return new CopixActionReturn(COPIX_AR_REDIRECT, CopixUrl::get('agenda|agenda|')); } return new CopixActionReturn(COPIX_AR_REDIRECT, CopixUrl::get('||')); }
/** * Récupère de la session la liste des agendas à afficher * Si rien en session, revoie l'agenda personnel * @author Audrey Vassal <*****@*****.**> * @since 2006/07/28 * @return array $arAgendaAffiches agendas à afficher */ public function getAgendaAffiches() { if (_sessionGet('modules|agenda|affiches')) { return _sessionGet('modules|agenda|affiches'); } else { $listAgendas = AgendaService::getAvailableAgenda(); //print_r($listAgendas); $arAgendaAffiches = array(); foreach ($listAgendas as $agenda) { if ($agenda->type_agenda == AgendaType::getPersonnal()) { $arAgendaAffiches[$agenda->id_agenda] = $agenda->id_agenda; } } AgendaService::setAgendaAffiches($arAgendaAffiches); return $arAgendaAffiches; } }