/** * Carrego els cicles d'activitats amb l'ordre que a mi m'interessa. * */ private function CarregaInfoCicles() { $RET = array(); //Quinzena $avui = date('Y-m-d', time()); $avui_text = date('d/m', time()); $ultim_dia_text = date('d/m', mktime(0, 0, 0, date('m', time()), date('d', time()) + 15, date('Y', time()))); $ultim_dia = date('Y-m-d', mktime(0, 0, 0, date('m', time()), date('d', time()) + 15, date('Y', time()))); $RET[1]['mode'] = 1; $RET[1]['titol'] = "Cicles de la Casa de Cultura de Girona"; $RET[1]['elements'] = array(); $RET[2]['mode'] = 2; $RET[2]['titol'] = ""; $RET[2]['elements'] = array(); $RET[3]['mode'] = 3; $RET[3]['titol'] = ""; $RET[3]['elements'] = array(); $A_OA_PAGER = ActivitatsPeer::getActivitatsProperes($this->IDS, date('Y-m-d', time()), 1, "activitat", 50, true); $A_OC = CiclesPeer::getList(1, array('select' => 1), 1, false, true); //Mostro tots els cicles actius de la Casa que encara han de venir... foreach ($A_OC as $OC) { //Carreguem el primer horari de la primera activitat del cicle $primera_activitat = $OC->getPrimeraActivitat(); $primer_horari = ""; if ($primera_activitat instanceof Activitats) { $primer_horari = $primera_activitat->getPrimerHorari(); } //Carreguem l'últim horari de la última activitat del cicle. $ultima_activitat = $OC->getUltimaActivitat(); $ultim_horari = ""; if ($ultima_activitat instanceof Activitats) { $ultim_horari = $ultima_activitat->getUltimHorari(); } $titol = $OC->getTmig(); $desc = $OC->getDmig(); //Si el cicle té activitats, encara es pot veure, i disposa de descripció i títol, la mostrem. if ($ultim_horari != "" && $ultim_horari->getDia('Y-m-d') > $avui && !empty($titol) && !empty($desc) && $OC->getVisibleweb()) { //Mostro els cicles que hi ha $img = $this->Image_exists('cicles', 'C-' . $OC->getCicleid() . '-L') ? '/images/cicles/C-' . $OC->getCicleid() . '-L.jpg' : 'color'; $RET[1]['elements'][] = array('url' => '@web_menu_click_cicle?idCicle=' . $OC->getCicleid() . '&titol=' . $OC->getNomForUrl(), 'titol' => $titol . '<br />Del ' . $primer_horari->getDia('d/m') . ' fins al ' . $ultim_horari->getDia('d/m'), 'img' => $img); } } return $RET; }
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); }