public function executeGNoticies(sfWebRequest $request) { $this->setLayout('gestio'); $this->IDS = $this->getUser()->getSessionPar('idS'); //Inicialitzem el formulari de cerca $this->CERCA = $this->getUser()->ParReqSesForm($request, 'cerca', array('text' => '', 'select' => 0)); if (!isset($this->CERCA['select'])) { $this->CERCA = array('text' => '', 'select' => 0); $this->getUser()->setSessionPar('cerca', $this->CERCA); } $this->FCerca = new CercaTextChoiceForm(); $this->FCerca->setChoice(array(0 => 'Actuals', 1 => 'Totes')); $this->FCerca->bind($this->CERCA); $this->PAGINA = $request->getParameter('p', 1); $this->IDN = $request->getParameter('idn'); $this->accio = $request->getParameter('accio'); $this->MODE = 'CERCA'; if ($request->isMethod('POST')) { if ($request->hasParameter('BNOU')) { $this->accio = 'N'; } if ($request->hasParameter('BSAVE')) { $this->accio = 'S'; } elseif ($request->hasParameter('BDELETE')) { $this->accio = 'D'; } elseif ($request->hasParameter('BEDIT')) { $this->accio = 'E'; } } switch ($this->accio) { case 'CC': $this->getUser()->addLogAction('inside', 'gNoticies'); $this->CERCA = $this->getUser()->ParReqSesForm($request, 'cerca', array('text' => '', 'select' => 0)); break; case 'N': $this->FORMULARI = NoticiesPeer::initialize(0, $this->IDS); $this->MODE = 'FORMULARI'; break; case 'E': $this->FORMULARI = NoticiesPeer::initialize($this->IDN, $this->IDS); $this->MODE = 'FORMULARI'; break; case 'S': $RS = $request->getParameter('noticies'); $this->IDN = $RS['idNoticia']; $this->FORMULARI = NoticiesPeer::initialize($this->IDN, $this->IDS); $this->FORMULARI->bind($RS, $request->getFiles('noticies')); if ($this->FORMULARI->isValid()) { $this->FORMULARI->save(); $this->getUser()->addLogAction($this->accio, 'gNoticies', $this->FORMULARI->getObject()); $this->redirect('gestio/gNoticies?accio=CC'); } $this->MODE = 'FORMULARI'; break; case 'D': $RS = $request->getParameter('noticies'); $this->IDN = $RS['idNoticia']; $this->FORMULARI = NoticiesPeer::initialize($this->IDN, $this->IDS); $this->FORMULARI->getObject()->setActiu(false)->save(); $this->getUser()->addLogAction($this->accio, 'gNoticies', $this->FORMULARI->getObject()); break; //Order Down. Movem la fila un lloc avall. //Order Down. Movem la fila un lloc avall. case 'O': $IDN = $request->getParameter('idN'); $UP = $request->getParameter('UP', 0); NoticiesPeer::setNewOrder($IDN, $UP, $this->IDS); break; } $this->NOTICIES = NoticiesPeer::getNoticies($this->CERCA['text'], $this->PAGINA, false, $this->CERCA['select'], $this->IDS); }
/** * Quan carrego una pàgina de categoria, carrego també la llista corresponent. * */ private function CarregaInfoNoticies() { $RET = array(); $A_ON_PAGER = NoticiesPeer::getNoticies("", 1, true, false, $this->IDS); $RET[1]['mode'] = 2; $RET[1]['titol'] = "Actualitat a la Casa de Cultura"; foreach ($A_ON_PAGER->getResults() as $ON) { //Mirem si la imatge existeix $img = $this->Image_exists('noticies', 'N-' . $ON->getIdnoticia() . '-M') ? '/images/noticies/N-' . $ON->getIdNoticia() . '-M.jpg' : 'color'; $RET[1]['elements'][] = array('url' => '@web_menu_click_noticies?idNoticia=' . $ON->getIdnoticia() . '&titol=' . $ON->getNomForUrl(), 'titol' => $ON->getTitolnoticia(), '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; } }