Example #1
0
 public function setup()
 {
     $this->setWidgets(array('idNodes' => new sfWidgetFormInputHidden(), 'TitolMenu' => new sfWidgetFormInputText(array(), array('style' => 'width:400px')), 'Nivell' => new sfWidgetFormChoice(array('choices' => array(0 => 'Fora de menú', 1 => 'Principal', 2 => 'Secundari', 3 => 'Terciari'))), 'Ordre' => new sfWidgetFormChoice(array('choices' => NodesPeer::selectOrdre($this->getOption('IDS'), $this->isNew()))), 'isCategoria' => new sfWidgetFormChoice(array('choices' => array(1 => 'Sí', 0 => 'No')), array()), 'isPhp' => new sfWidgetFormInputHidden(), 'isActiva' => new sfWidgetFormChoice(array('choices' => array(1 => 'Sí', 0 => 'No')), array()), 'HTML' => new sfWidgetFormInputHidden(), 'Url' => new sfWidgetFormInputText(array(), array('style' => 'width:400px')), 'Categories' => new sfWidgetFormChoice(array('choices' => ActivitatsPeer::selectCategories($this->getOption('IDS'), true)), array())));
     $this->setValidators(array('idNodes' => new sfValidatorPropelChoice(array('model' => 'Nodes', 'column' => 'idNodes', 'required' => false)), 'TitolMenu' => new sfValidatorString(array('required' => false)), 'HTML' => new sfValidatorString(array('required' => false)), 'isCategoria' => new sfValidatorBoolean(), 'isPhp' => new sfValidatorPass(), 'isActiva' => new sfValidatorBoolean(), 'Ordre' => new sfValidatorInteger(array('required' => false)), 'Nivell' => new sfValidatorInteger(), 'Url' => new sfValidatorString(array('required' => false)), 'Categories' => new sfValidatorString(array('required' => false))));
     $this->widgetSchema->setDefaults(array('TitolMenu' => 'Entreu el títol...', 'Nivell' => '1', 'Ordre' => '1', 'isCategoria' => false, 'isActiva' => true, 'Url' => "", 'Categories' => "Tipus"));
     $this->widgetSchema->setLabels(array('TitolMenu' => 'Títol', 'Nivell' => 'Nivell', 'Ordre' => 'Ordre', 'isCategoria' => 'És només títol?', 'isActiva' => 'Visible?', 'URL' => 'Adreça?'));
     $this->widgetSchema->setNameFormat('nodes[%s]');
     $this->errorSchema = new sfValidatorErrorSchema($this->validatorSchema);
     parent::setup();
 }
 public function setup()
 {
     $this->WEB_IMATGE = 'images/activitats/';
     $this->WEB_PDF = 'images/activitats/';
     $this->setWidgets(array('ActivitatID' => new sfWidgetFormInputHidden(), 'Cicles_CicleID' => new sfWidgetFormInputHidden(), 'TipusActivitat_idTipusActivitat' => new sfWidgetFormInputHidden(), 'Nom' => new sfWidgetFormInputHidden(), 'Preu' => new sfWidgetFormInputHidden(), 'PreuReduit' => new sfWidgetFormInputHidden(), 'Publicable' => new sfWidgetFormInputHidden(), 'Estat' => new sfWidgetFormInputHidden(), 'Descripcio' => new sfWidgetFormInputHidden(), 'PublicaWEB' => new sfWidgetFormChoice(array('choices' => array(2 => 'No', 1 => 'Sí'))), 'tipusEnviament' => new sfWidgetFormChoice(array('choices' => ActivitatsPeer::getTipusEnviamentsSelect())), 'Imatge' => new sfWidgetFormInputFileEditableMy(array('file_src' => sfConfig::get('sf_webroot') . $this->WEB_IMATGE . $this->getObject()->getImatge(), 'is_image' => true, 'with_delete' => false), array('style' => 'width:100px')), 'PDF' => new sfWidgetFormInputFileEditableMy(array('file_src' => sfConfig::get('sf_webroot') . $this->WEB_PDF . $this->getObject()->getPdf(), 'is_image' => false, 'with_delete' => false)), 'tCurt' => new sfWidgetFormInputText(array(), array('style' => 'width:300px')), 'dCurt' => new sfWidgetFormTextareaTinyMCE(), 'tMig' => new sfWidgetFormInputText(array(), array('style' => 'width:300px')), 'dMig' => new sfWidgetFormTextareaTinyMCE(), 'tComplet' => new sfWidgetFormInputText(array(), array('style' => 'width:300px')), 'dComplet' => new sfWidgetFormTextareaTinyMCE(), 'InfoPractica' => new sfWidgetFormTextareaTinyMCE(), 'Categories' => new sfWidgetFormChoice(array('renderer_class' => 'sfWidgetFormSelectManyMy', 'choices' => ActivitatsPeer::selectCategories($this->getOption('IDS')), 'multiple' => true, 'expanded' => true), array('class' => 'ul_cat'))));
     $this->setValidators(array('ActivitatID' => new sfValidatorPropelChoice(array('model' => 'Activitats', 'column' => 'ActivitatID', 'required' => false)), 'Cicles_CicleID' => new sfValidatorPropelChoice(array('model' => 'Cicles', 'column' => 'CicleID', 'required' => false)), 'TipusActivitat_idTipusActivitat' => new sfValidatorPropelChoice(array('model' => 'Tipusactivitat', 'column' => 'idTipusActivitat', 'required' => false)), 'Nom' => new sfValidatorString(array('required' => false)), 'Preu' => new sfValidatorNumber(array('required' => false)), 'PreuReduit' => new sfValidatorNumber(array('required' => false)), 'Publicable' => new sfValidatorInteger(array('required' => false)), 'Estat' => new sfValidatorString(array('max_length' => 1, 'required' => false)), 'Descripcio' => new sfValidatorString(array('required' => false)), 'Imatge' => new sfValidatorFile(array('path' => $this->WEB_IMATGE, 'required' => false)), 'PDF' => new sfValidatorFile(array('path' => $this->WEB_PDF, 'required' => false)), 'PublicaWEB' => new sfValidatorInteger(array('required' => false)), 'tCurt' => new sfValidatorString(array('required' => false)), 'dCurt' => new sfValidatorString(array('required' => false)), 'tMig' => new sfValidatorString(array('required' => false)), 'dMig' => new sfValidatorString(array('required' => false)), 'tComplet' => new sfValidatorString(array('required' => false)), 'dComplet' => new sfValidatorString(array('required' => false)), 'tipusEnviament' => new sfValidatorChoice(array('choices' => ActivitatsPeer::getTipusEnviamentsSelectValidator())), 'Categories' => new sfValidatorString(array('required' => false)), 'InfoPractica' => new sfValidatorString(array('required' => false))));
     $this->widgetSchema->setLabels(array('Descripcio' => 'Descripció: ', 'Imatge' => 'Imatge: ', 'PDF' => 'PDF: ', 'PublicaWEB' => 'Publicar externament? ', 'tCurt' => 'Títol curt: ', 'dCurt' => 'Text curt:<div class="textExplicacio">Twitter, Llistat activitats, Programa mensual</div>', 'tMig' => 'Títol mig:', 'dMig' => 'Text mig: <div class="textExplicacio">Consulta activitat, Notícies, Facebook, Mitjans</div> ', 'tComplet' => 'Títol complet: ', 'dComplet' => 'Text complet: <div class="textExplicacio">Cursos, ús intern</div>', 'tipusEnviament' => 'Període publicació: <div class="textExplicacio">Quan es publica el text als mitjans?</div>', 'Categories' => 'Categories: ', 'InfoPractica' => 'Informació pràctica (web)'));
     $this->widgetSchema->setNameFormat('activitats[%s]');
     $this->errorSchema = new sfValidatorErrorSchema($this->validatorSchema);
     $this->widgetSchema->setFormFormatterName('Span');
 }
 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;
     }
 }