public function executeGCicles(sfWebRequest $request) { $this->setLayout('gestio'); $this->IDS = $this->getUser()->getSessionPar('idS'); $this->IDC = $request->getParameter('IDC'); $this->MODE = ""; $this->PAGINA = $request->getParameter('PAGINA'); //Inicialitzem el formulari de cerca $this->CERCA = $this->getUser()->ParReqSesForm($request, 'cerca', array('text' => '', 'select' => 1)); $this->FCerca = new CercaTextChoiceForm(); $this->FCerca->setChoice(array(1 => 'Actiu', 0 => 'Inactiu')); $this->FCerca->bind($this->CERCA); $accio = $request->getParameter('accio'); if ($request->hasParameter('BSAVE')) { $accio = 'SAVE'; } if ($request->hasParameter('BDELETE')) { $accio = 'DELETE'; } if ($request->hasParameter('BNOU')) { $accio = 'NOU'; } switch ($accio) { case 'C': $this->CERCA = $this->getUser()->setSessionPar('cerca', array('text' => '', 'select' => 1)); $this->FCerca->bind($this->CERCA); $this->getUser()->addLogAction('inside', 'gCicles'); break; case 'NOU': $this->MODE = 'NOU'; $this->FCICLES = CiclesPeer::initialize(0, $this->IDS); break; case 'EDITA': $this->MODE = 'EDITA'; $this->FCICLES = CiclesPeer::initialize($this->IDC, $this->IDS); break; case 'LLISTA': $this->FCICLES = CiclesPeer::initialize($this->IDC, $this->IDS); $this->LACTIVITATS = ActivitatsPeer::getActivitatsCicles($this->IDC, $this->IDS, false, null, false); break; case 'SAVE': $PC = $request->getParameter('cicles'); $this->FCICLES = CiclesPeer::initialize($PC['CicleID'], $this->IDS); $this->FCICLES->bind($PC, $request->getFiles('cicles')); if ($this->FCICLES->isValid()) { $this->FCICLES->save(); $this->getUser()->addLogAction($accio, 'gCicles', $this->FCICLES->getObject()); myUser::addLogTimeline('alta', 'cicles', $this->getUser()->getSessionPar('idU'), $this->IDS, $PC['CicleID']); } else { $this->MODE = 'EDITA'; } break; case 'DELETE': $PC = $request->getParameter('cicles'); $FC = CiclesPeer::initialize($PC['CicleID'], $this->IDS); $this->getUser()->addLogAction($accio, 'gCicles', $FC); myUser::addLogTimeline('baixa', 'cicles', $this->getUser()->getSessionPar('idU'), $this->IDS, $PC['CicleID']); $FC->getObject()->setActiu(false); $FC->getObject()->save(); break; case 'ACTIVACIO': $PC = $request->getParameter('IDC'); $OC = CiclesPeer::initialize($PC, $this->IDS)->getObject(); $OC->doActivaInactiva(); $OC->save(); break; } $this->CICLES = CiclesPeer::getList($this->PAGINA, $this->CERCA, $this->IDS); }
/** * Quan carrego una pàgina de categoria, carrego també la llista corresponent. * */ private function CarregaInfoCategories($CATEGORIA, $TITOL, $idCicle = null, $TIPUS = 2) { $RET = array(); $A_OA_PAGER = null; //Si el cicle és null o bé és igual a 1 ( no pertany a cap cicle ) if (is_null($idCicle)) { $A_OA_PAGER = ActivitatsPeer::getCategoriaActivitat($CATEGORIA, $this->IDS); } elseif ($idCicle == 1) { $A_OA_PAGER = ActivitatsPeer::getCategoriaActivitat(' ', $this->IDS); } else { $A_OA_PAGER = ActivitatsPeer::getActivitatsCicles($idCicle, 1, true); } $RET[1]['mode'] = $TIPUS; $RET[1]['titol'] = $TITOL; foreach ($A_OA_PAGER->getResults() as $OA) { //Busco el primer i l'últim dia de l'expo, i llavors ho mostro $A_OH = $OA->getHorariss(); $primer = null; $ultim = null; foreach ($A_OH as $OH) { if (is_null($primer)) { $primer = $OH; } $ultim = $OH; } if ($primer->getDia() == $ultim->getDia()) { $titol = $OA->getTMig() . ' | El ' . $primer->getDia('d/m') . ' a les ' . $primer->getHorainici('H:i'); } else { $titol = $OA->getTMig() . ' | Del ' . $primer->getDia('d/m') . ' al ' . $ultim->getDia('d/m'); } //Mirem si la imatge existeix $img = ""; if ($TIPUS == 1) { $img = $this->Image_exists('activitats', 'A-' . $OA->getActivitatid() . '-L') ? '/images/activitats/A-' . $OA->getActivitatid() . '-L.jpg' : 'color'; } elseif ($TIPUS == 2) { $img = $this->Image_exists('activitats', 'A-' . $OA->getActivitatid() . '-M') ? '/images/activitats/A-' . $OA->getActivitatid() . '-M.jpg' : 'color'; } elseif ($TIPUS == 3) { $img = ""; } $RET[1]['elements'][] = array('url' => '@web_menu_click_activitat?idCicle=' . $OA->getCiclesCicleid() . '&idActivitat=' . $OA->getActivitatid() . '&titol=' . $OA->getNomForUrl(), 'titol' => $titol, 'img' => $img); } return $RET; }
public function LoadWEB(sfWebRequest $request) { $this->redirect('w/NotFound'); //Carrego els banners i les fotos que mostraré //Si s'entra un menú, carrego el contingut que toca segons el menú //Si el menú és només tÃtol, mostro l'estructura de directoris //Si el menú té contingut, //Si el contingut és automà tic, mostro el contingut automà tic //Si el contingut és manual, mostro el contingut manual //Si s'entra una cerca, carrego les activitats que corresponen a la cerca i marco el calendari els dies //Si s'entra un dia del calendari, cerco les activitats d'aquell dia //Si no es cap, carrego les notÃcies de les últimes activitats... $this->setLayout('layout'); $this->IDS = 1; $this->FOTOS = $this->getFotos(); $this->BANNERS = $this->getBanners(); $this->MENU = NodesPeer::retornaMenu($this->IDS); $this->USUARI = $this->getUser()->getSessionPar('idU', 0); $this->SELECCIONAT = 0; $this->LLISTAT_ACTIVITATS = array(); $this->ACTIVITATS_CALENDARI = array(); $this->MISSATGE = array(); if ($this->getUser()->isAuthenticated()) { $this->TIPUS_MENU = 'ADMIN'; } else { $this->TIPUS_MENU = 'WEB'; } $this->DATACAL = $this->getUser()->ParReqSesForm($request, 'DATACAL', time()); $this->PAGINA = $this->getUser()->ParReqSesForm($request, 'p', 1); //Gestió de menús $idN = $request->getParameter('node', 0); $this->OBERT = $this->gestionaNodes($idN); $this->accio = $request->getParameter('accio'); if ($request->hasParameter('BCERCA_x') || $request->hasParameter('CERCA') || $this->accio == 'c') { $this->CERCA = $this->getUser()->ParReqSesForm($request, 'CERCA', ""); $this->accio = 'c'; } else { $this->CERCA = ""; } //Carreguem els dies en els que hi ha alguna activitat. $this->ACTIVITATS_CALENDARI = ActivitatsPeer::getDiesAmbActivitatsMes($this->DATACAL, $this->IDS); switch ($this->accio) { //Contingut manual case 'mc': $this->NODE = NodesPeer::selectPagina($idN); $this->ACCIO = 'web'; break; //Contingut automà tic de cicles //Contingut automà tic de cicles case 'ac': $this->NODE = NodesPeer::selectPagina($idN); if (!$this->NODE->isNew()) { $cat = $this->NODE->getCategories(); $this->LLISTAT_CICLES = ActivitatsPeer::getCiclesCategoria($this->IDS, $cat); $this->ACCIO = 'llistatCiclesCategoria'; $ACT = ActivitatsPeer::selectCategories($this->IDS, true); $this->TITOL = "Cicles i activitats a \"" . $ACT[$cat] . '"'; $this->CAT = $cat; } $this->NODE = $idN; break; //Contingut automà tic d'activitats d'un cicle //Contingut automà tic d'activitats d'un cicle case 'aca': $this->CAT = $request->getParameter('cat', ''); $this->IDC = $request->getParameter('idc', 1); $this->PAGINA = $request->getParameter('p', 1); $this->NODE = $request->getParameter('NODE', 0); $OC = CiclesPeer::retrieveByPK($this->IDC); $this->TITOL = 'Llistat d\'activitats del cicle ' . $OC->getNom(); $this->LLISTAT_ACTIVITATS = ActivitatsPeer::getActivitatsCicles($this->IDC, $this->IDS, true, $this->PAGINA); $this->ACCIO = 'llistatActivitatsCicleCategoria'; break; //Consulta un cicle //Consulta un cicle case 'cc': $this->CICLE = CiclesPeer::retrieveByPK($request->getParameter('idC')); $this->ACCIO = 'mostra_cicle'; $this->TITOL = $this->CICLE->getNom(); break; //Llistat activitats de cicle //Llistat activitats de cicle case 'ccact': $this->IDC = $request->getParameter('idC'); $this->CICLE = CiclesPeer::retrieveByPK($this->IDC); $this->LLISTAT_ACTIVITATS = CiclesPeer::getActivitatsCicleList($this->IDC, $this->IDS, true); $this->ACCIO = 'mostra_activitats_cicle'; $this->TITOL = "Activitats || " . $this->CICLE->getNom(); break; //Cerca //Cerca case 'c': if ($this->CERCA == 'mensual') { $this->CERCA = ''; $this->TITOL = 'ACTIVITATS DEL MES'; } else { $this->TITOL = 'ACTIVITATS TROBADES AMB LA CERCA "' . $this->CERCA . '"'; } $this->LLISTAT_ACTIVITATS = ActivitatsPeer::getActivitatsCerca($this->CERCA, $this->DATACAL, $this->PAGINA, $this->IDS); $this->ACCIO = 'llistat_activitats_cerca'; $this->MODE = 'CERCA'; break; //Cerca un dia //Cerca un dia case 'ca': $this->LLISTAT_ACTIVITATS = ActivitatsPeer::getActivitatsDia($this->IDS, date('Y-m-d', $this->DATACAL), $this->PAGINA); $this->ACCIO = 'llistat_activitats'; $this->TITOL = 'ACTIVITATS EL DIA ' . date('d/m/Y', $this->DATACAL); $this->MODE = 'DIA'; break; //Mostra una sola activitat //Mostra una sola activitat case 'caa': $this->LLISTAT_ACTIVITATS = array(ActivitatsPeer::retrieveByPK($request->getParameter('idA'))); $this->NODE = $request->getParameter('node', 0); $this->ACCIO = 'mostra_activitat'; $this->TITOL = 'Informació de l\'activitat'; $OA = $this->LLISTAT_ACTIVITATS[0]; $this->getResponse()->addMeta('facebook', myUser::getFacebookHeaders($OA->getTmig(), sfConfig::get('sf_webdomain') . $this->getController()->genUrl('@web_activitat?idA=' . $OA->getActivitatId() . '&titol=' . $OA->getNomForUrl()), OptionsPeer::getString('SF_WEBROOT', 1) . 'images/activitats/' . $OA->getActivitatId() . '.jpg', 'Casa de Cultura de Girona', '1763108168308')); break; //Canvi data del calendari //Canvi data del calendari case 'cdc': $this->redirect('web/index?accio=c&CERCA=mensual&DATACAL=' . $this->DATACAL); break; //Mostrem notÃcies //Mostrem notÃcies default: $this->IDN = $request->getParameter('idN', 0); $this->PAGINA = $request->getParameter('p', 1); if ($this->IDN > 0) { $this->NOTICIA = NoticiesPeer::getNoticia($this->IDN, $this->IDS); $this->getResponse()->addMeta('facebook', myUser::getFacebookHeaders($this->NOTICIA->getTitolnoticia(), sfConfig::get('sf_webdomain') . $this->getController()->genUrl('@web_noticia?idN=' . $this->NOTICIA->getIdnoticia() . '&p=' . $this->PAGINA . '&titol=' . $this->NOTICIA->getNomForUrl()), OptionsPeer::getString('SF_WEBROOT', 1) . 'images/noticies/' . $this->NOTICIA->getIdnoticia() . '.jpg', 'Casa de Cultura de Girona', '1763108168308')); $this->NOTICIES = null; } else { $this->NOTICIA = null; $this->NOTICIES = NoticiesPeer::getNoticies('%', $this->PAGINA, true, FALSE, $this->IDS); } $this->ACCIO = 'noticies'; $this->getUser()->setSessionPar('NODES', array()); break; break; } }