示例#1
0
 public static function getMailEnt($OER)
 {
     $idS = $OER->getSiteId();
     $Nom = $OER->getNomUsuari();
     $Activitat = $OER->getNomActivitat();
     $OH = $OER->getHoraris();
     $OS = SitesPeer::retrieveByPK($OER->getSiteId());
     if (!$OS instanceof Sites) {
         $OS = new Sites();
     }
     $TEXT = OptionsPeer::getString('BODY_MAIL_ENTRADES', $idS);
     $TEXT = str_replace('{{NOM}}', $OER->getNomUsuari(), $TEXT);
     $TEXT = str_replace('{{NUM_ENTRADES}}', $OER->getQuantitat(), $TEXT);
     $TEXT = str_replace('{{ACTIVITAT}}', $OER->getNomActivitat(), $TEXT);
     $TEXT = str_replace('{{ENTITAT}}', $OS->getNom(), $TEXT);
     $TEXT = str_replace('{{TEL_ENTITAT}}', $OS->getTelefon(), $TEXT);
     $TEXT = str_replace('{{MAIL_ENTITAT}}', $OS->getEmail(), $TEXT);
     $TEXT = str_replace('{{TEL_ADMIN}}', '972.20.20.13', $TEXT);
     $TEXT = str_replace('{{MAIL_ADMIN}}', OptionsPeer::getString('MAIL_ADMIN', $idS), $TEXT);
     $TEXT = str_replace('{{DIA}}', $OH->getDia('d/m/Y'), $TEXT);
     $TEXT = str_replace('{{HORA}}', $OH->getHorainici('H:i'), $TEXT);
     $TEXT = str_replace('{{ESPAI}}', implode(',', Horaris::getArrayEspais()), $TEXT);
     $TEXT = str_replace('{{CODI}}', sha1($OER->getIdentrada()), $TEXT);
     return $TEXT;
 }
示例#2
0
 static function inicialitza($id, $idS, $retorn = false)
 {
     $OC = self::retrieveByPK($id);
     if ($OC instanceof Cessio) {
         if ($retorn) {
             $OC->setEstatRetornat("");
             $OC->setDataretornat(date('Y-m-d', time()));
             return new CessiomaterialRetornForm($OC, array('IDS' => $idS));
         } else {
             return new CessioForm($OC, array('IDS' => $idS));
         }
     } else {
         $OC = new Cessio();
         $OC->setRetornat(false);
         $OC->setUsuariId(null);
         $OC->setEstatRetornat("");
         $OC->setDataretornat(null);
         $OC->setDatacessio(date('m/d/Y', time()));
         $OC->setDataretorn(date('m/d/Y', time()));
         $OC->setMotiu(OptionsPeer::getString('CESSIO_TEXT_MOTIU', $idS));
         $OC->setCondicions(OptionsPeer::getString('CESSIO_TEXT_CONDICIONS', $idS));
         $OC->setSiteId($idS);
         $OC->setActiu(true);
         if ($retorn) {
             $OC->setRetornat(true);
             $OC->setEstatRetornat("");
             $OC->setDataretornat(date('Y-m-d', time()));
             return new CessiomaterialRetornForm($OC, array('IDS' => $idS));
         } else {
             return new CessioForm($OC, array('IDS' => $idS));
         }
     }
 }
 public function setup()
 {
     $BASE = OptionsPeer::getString('SF_WEBROOT', $this->getOption('IDS'));
     $this->setWidget('IDS', new sfWidgetFormChoice(array('choices' => SitesPeer::getSelect(false, false)), array('style' => 'width:400px')));
     $this->setValidator('IDS', new sfValidatorPass(array(), array()));
     $this->widgetSchema->setNameFormat('super_admin_menus[%s]');
     $this->errorSchema = new sfValidatorErrorSchema($this->validatorSchema);
     $this->setWidgetUsers();
 }
示例#4
0
 public function setup()
 {
     $BASE = OptionsPeer::getString('SF_WEBROOT', $this->getOption('IDS'));
     $this->setWidgets(array('cessio_id' => new sfWidgetFormInputHidden(), 'usuari_id' => new sfWidgetFormChoice(array('choices' => UsuarisPeer::selectUsuaris($this->getOption('IDS'))), array('style' => 'width:400px')), 'representant' => new sfWidgetFormInputText(array(), array()), 'data_cessio' => new sfWidgetFormJQueryDate(array('format' => '%day%/%month%/%year%'), array()), 'data_retorn' => new sfWidgetFormJQueryDate(array('format' => '%day%/%month%/%year%'), array()), 'motiu' => new sfWidgetFormTextarea(array(), array()), 'condicions' => new sfWidgetFormTextarea(array(), array()), 'material_no_inventariat' => new sfWidgetFormInputHidden(array(), array()), 'estat' => new sfWidgetFormTextarea(), 'retornat' => new sfWidgetFormInputHidden(), 'estat_retornat' => new sfWidgetFormInputHidden(), 'data_retornat' => new sfWidgetFormInputHidden()));
     $this->setValidators(array('cessio_id' => new sfValidatorPropelChoice(array('model' => 'Cessio', 'column' => 'cessio_id', 'required' => false)), 'usuari_id' => new sfValidatorPropelChoice(array('model' => 'Usuaris', 'column' => 'UsuariID', 'required' => true)), 'representant' => new sfValidatorString(array('required' => true), array()), 'motiu' => new sfValidatorString(array('required' => true), array()), 'condicions' => new sfValidatorString(array('required' => false), array()), 'material_no_inventariat' => new sfValidatorString(array('required' => false), array()), 'data_cessio' => new sfValidatorDate(array('required' => false), array()), 'data_retorn' => new sfValidatorDate(array('required' => false), array()), 'estat' => new sfValidatorString(array('required' => false), array()), 'retornat' => new sfValidatorInteger(array('required' => false), array()), 'estat_retornat' => new sfValidatorString(array('required' => false), array()), 'data_retornat' => new sfValidatorDate(array('required' => false), array())));
     $this->widgetSchema->setLabels(array('usuari_id' => 'Cedit a', 'representant' => 'Representant a ', 'motiu' => 'Motiu ', 'condicions' => 'Condicions ', 'data_cessio' => 'Data cessió', 'data_retorn' => 'Data retorn', 'estat' => 'Observacions', 'retornat' => 'Retornat?', 'estat_retornat' => 'Estat retorn', 'data_retornat' => 'Data retornat'));
     $this->widgetSchema->setNameFormat('cessio[%s]');
     $this->widgetSchema->setFormFormatterName('Span');
     $this->errorSchema = new sfValidatorErrorSchema($this->validatorSchema);
 }
示例#5
0
 public function setup()
 {
     $this->URL = OptionsPeer::getString('SF_WEBSYSROOT', $this->getOption('IDS')) . 'images/banners/';
     $this->WEB_URL = OptionsPeer::getString('SF_WEBROOTURL', $this->getOption('IDS')) . 'images/banners/' . $this->getObject()->getExtensio();
     $this->setWidgets(array('PromocioID' => new sfWidgetFormInputHidden(), 'Nom' => new sfWidgetFormInputText(array(), array('style' => 'width:400px')), 'URL' => new sfWidgetFormInputText(array(), array('style' => 'width:400px')), 'Ordre' => new sfWidgetFormChoice(array('choices' => PromocionsPeer::selectOrdre($this->getOption('IDS'), $this->isNew()))), 'isActiva' => new sfWidgetFormChoice(array('choices' => array(1 => 'Sí', 0 => 'No')), array('value' => 1)), 'isFixa' => new sfWidgetFormChoice(array('choices' => array(1 => 'Sí', 0 => 'No')), array('value' => 1)), 'Extensio' => new sfWidgetFormInputFileEditable(array('file_src' => $this->WEB_URL, 'edit_mode' => true, 'is_image' => true, 'with_delete' => false))));
     $this->setValidators(array('PromocioID' => new sfValidatorPropelChoice(array('model' => 'Promocions', 'column' => 'PromocioID', 'required' => false)), 'Nom' => new sfValidatorString(array('required' => false)), 'Ordre' => new sfValidatorInteger(array('required' => false)), 'isActiva' => new sfValidatorInteger(array('required' => false)), 'isFixa' => new sfValidatorInteger(), 'URL' => new sfValidatorString(array('required' => false)), 'Extensio' => new sfValidatorFile(array('path' => $this->URL, 'required' => false))));
     $this->widgetSchema->setLabels(array('Nom' => 'Títol', 'Ordre' => 'Ordre', 'isActiva' => 'Activa?', 'isFixa' => 'Fixe?', 'URL' => 'URL'));
     $this->widgetSchema->setNameFormat('promocions[%s]');
     $this->errorSchema = new sfValidatorErrorSchema($this->validatorSchema);
 }
 public function setup()
 {
     $BASE = OptionsPeer::getString('SF_WEBROOT', $this->getOption('IDS'));
     $this->setWidgets(array('idMatricules' => new sfWidgetFormInputHidden(), 'Usuaris_UsuariID' => new sfWidgetFormJQueryAutocompleter(array('url' => $BASE . 'index.php/gestio/ajaxUsuaris'), array('style' => 'width:400px')), 'Cursos_idCursos' => new sfWidgetFormInputHidden(), 'Estat' => new sfWidgetFormInputHidden(), 'Comentari' => new sfWidgetFormInputHidden(), 'DataInscripcio' => new sfWidgetFormInputHidden(), 'Pagat' => new sfWidgetFormInputHidden(), 'tReduccio' => new sfWidgetFormChoice(array('choices' => MatriculesPeer::selectDescomptes())), 'tPagament' => new sfWidgetFormChoice(array('choices' => MatriculesPeer::selectPagament()))));
     $this->setValidators(array('idMatricules' => new sfValidatorPropelChoice(array('model' => 'Matricules', 'column' => 'idMatricules', 'required' => false)), 'Usuaris_UsuariID' => new sfValidatorCallback(array('callback' => array('MatriculesUsuariForm', 'ComprovaUsuari'), 'arguments' => array('IDS' => $this->getOption('IDS')), 'required' => true)), 'Cursos_idCursos' => new sfValidatorPropelChoice(array('required' => false, 'model' => 'Cursos', 'column' => 'idCursos')), 'Estat' => new sfValidatorInteger(array('required' => false)), 'Comentari' => new sfValidatorString(array('required' => false)), 'DataInscripcio' => new sfValidatorDateTime(array('required' => false)), 'Pagat' => new sfValidatorNumber(array('required' => false)), 'tReduccio' => new sfValidatorInteger(), 'tPagament' => new sfValidatorInteger()));
     $this->widgetSchema->setLabels(array('Usuaris_UsuariID' => 'Usuari: ', 'Cursos_idCursos' => 'Curs: ', 'Estat' => 'Estat: ', 'Comentari' => 'Comentari: ', 'DataInscripcio' => 'Data d\'inscripció: ', 'Descompte' => 'Te descompte? ', 'tReduccio' => 'Te reducció? ', 'tPagament' => 'Com ha pagat? '));
     $this->widgetSchema->setNameFormat('matricules_usuari[%s]');
     $this->setDefaults(array('Estat' => MatriculesPeer::EN_PROCES));
     $this->errorSchema = new sfValidatorErrorSchema($this->validatorSchema);
 }
示例#7
0
 public function setup()
 {
     $this->URL_IMAGE = OptionsPeer::getString('SF_WEBSYSROOT', $this->getOption('IDS')) . 'images/noticies/';
     $this->WEB_URL_IMAGE = OptionsPeer::getString('SF_WEBROOTURL', $this->getOption('IDS')) . 'images/noticies/' . $this->getObject()->getImatge();
     $this->URL_PDF = OptionsPeer::getString('SF_WEBSYSROOT', $this->getOption('IDS')) . 'images/noticies/';
     $this->WEB_URL_PDF = OptionsPeer::getString('SF_WEBROOTURL', $this->getOption('IDS')) . 'images/noticies/' . $this->getObject()->getAdjunt();
     $this->setWidgets(array('idNoticia' => new sfWidgetFormInputHidden(), 'TitolNoticia' => new sfWidgetFormInputText(array(), array('style' => 'width:400px')), 'TextNoticia' => new sfWidgetFormTextareaTinyMCE(), 'DataPublicacio' => new sfWidgetFormJQueryDate(array('format' => '%day%/%month%/%year%'), array()), 'DataDesaparicio' => new sfWidgetFormJQueryDate(array('format' => '%day%/%month%/%year%'), array()), 'Activa' => new sfWidgetFormChoice(array('choices' => array(0 => 'No', 1 => 'Sí'))), 'Ordre' => new sfWidgetFormInputHidden(array(), array()), 'Imatge' => new sfWidgetFormInputFileEditableMy(array('file_src' => $this->WEB_URL_IMAGE, 'is_image' => true, 'with_delete' => false)), 'Adjunt' => new sfWidgetFormInputFileEditableMy(array('file_src' => $this->WEB_URL_PDF, 'with_delete' => false)), 'idActivitat' => new sfWidgetFormInputHidden()));
     $this->setValidators(array('idNoticia' => new sfValidatorPropelChoice(array('model' => 'Noticies', 'column' => 'idNoticia', 'required' => false)), 'TitolNoticia' => new sfValidatorString(array('max_length' => 100, 'required' => false)), 'TextNoticia' => new sfValidatorString(array('required' => false)), 'DataPublicacio' => new sfValidatorDate(array('required' => false)), 'Activa' => new sfValidatorBoolean(array('required' => false)), 'Ordre' => new sfValidatorPass(array(), array()), 'Imatge' => new sfValidatorFile(array('path' => $this->URL_IMAGE, 'required' => false)), 'Adjunt' => new sfValidatorFile(array('path' => $this->URL_PDF, 'required' => false)), 'idActivitat' => new sfValidatorInteger(array('required' => false)), 'DataDesaparicio' => new sfValidatorDate(array('required' => false))));
     $this->widgetSchema->setLabels(array('TitolNoticia' => 'Títol: ', 'TextNoticia' => 'Text: ', 'DataPublicacio' => 'Data publicació: ', 'DataDesaparicio' => 'Data desaparició: ', 'Activa' => 'Activa? ', 'Order' => 'Ordre: ', 'Imatge' => 'Imatge: ', 'Adjunt' => 'Doc. adjunt: ', 'idActivitat' => 'Activitat relacionada: '));
     $this->widgetSchema->setNameFormat('noticies[%s]');
     $this->errorSchema = new sfValidatorErrorSchema($this->validatorSchema);
 }
示例#8
0
 public function EnviaMissatgeGlobalHospici()
 {
     $ADMIN = OptionsPeer::getString('MAIL_ADMIN', $this->getSiteId());
     //Carreguem el correu de l'administrador
     $MAILS = UsuarisPeer::getAdminMails();
     //Carreguem els mails dels administradors
     $BODY = OptionsPeer::getString('BODY_MAIL_MISSATGE_GLOBAL', $this->getSiteId());
     $BODY = str_replace('{NOM}', $this->getUsuaris()->getNomComplet(), $BODY);
     $BODY = str_replace('{SITE}', $this->getSiteNom(), $BODY);
     $BODY = str_replace('{ENLLAC}', 'http://www.casadecultura.cat/gestio/gMissatges?accio=E&IDM=' . $this->getMissatgeid(), $BODY);
     $SUBJECT = 'Hospici : Nou missatge global';
     myUser::sendMail($ADMIN, $MAILS, $SUBJECT, $BODY);
 }
示例#9
0
 public function setup()
 {
     $IDS = $this->getOption('IDS');
     $OPTIONS = OptionsPeer::getOptionsArray($IDS, true);
     if ($this->getOption('NEW')) {
         $this->setWidget('option_id', new sfWidgetFormInput(array(), array('style' => 'width:400px;')));
     } else {
         $this->setWidget('option_id', new sfWidgetFormChoice(array('choices' => $OPTIONS), array()));
     }
     $this->setWidget('site_id', new sfWidgetFormInputHidden());
     $this->setWidget('valor', new sfWidgetFormTextarea(array(), array('style' => 'width:500px; height:200px;')));
     $this->setValidators(array('option_id' => new sfValidatorString(array('required' => true)), 'site_id' => new sfValidatorInteger(array('max' => $IDS, 'min' => $IDS, 'required' => true)), 'valor' => new sfValidatorString()));
     $this->widgetSchema->setLabels(array('option_id' => "Nom ", 'valor' => 'Valor '));
     $this->widgetSchema->setNameFormat('options[%s]');
     $this->errorSchema = new sfValidatorErrorSchema($this->validatorSchema);
 }
示例#10
0
 public static function save($form_id, $dades, $arxius, $idS)
 {
     try {
         //Creem una nova entrada al formulari
         $OO2 = AppBlogsFormsEntriesPeer::initialize(0, $idS, $form_id)->getObject();
         $OO2->save();
         //Passem totes les dades a un array
         $RET = array();
         foreach ($dades as $K => $V) {
             $RET[$K] = $V;
         }
         //Si hi ha arxius, els guardem.
         if (isset($arxius['arxius'])) {
             foreach ($arxius['arxius'] as $K => $V) {
                 if ($V['error'] == 0) {
                     $file_ext = substr($V['name'], strripos($V['name'], '.'));
                     $file_name = $OO2->getId() . '-' . $K . $file_ext;
                     $url = OptionsPeer::getString('SF_WEBSYSROOT', $idS) . 'uploads/formularis/' . $file_name;
                     move_uploaded_file($V['tmp_name'], $url);
                     $RET['file'][] = $file_name;
                 }
             }
         }
         //Guardem els camps del formulari en el format de formulari
         $SOL = "@@@";
         foreach ($RET as $K => $V) {
             if ($K == 'file') {
                 foreach ($V as $V2) {
                     $SOL .= 'file###' . $V2 . '@@@';
                 }
             } else {
                 $SOL .= $K . "###" . $V . '@@@';
             }
         }
         $OO2->setDades($SOL);
         $OO2->save();
     } catch (Exception $e) {
         mail('*****@*****.**', 'Error Formulari Noticies culturals', $form_id . $e->getMessage() . serialize($SOL));
         return false;
     }
     return true;
 }
示例#11
0
 public function AddActivitat($id, $timestamp_inici, $timestamp_fi, $organitzador, $email, $titol, $link, $location, $summary, $description, $calendarid, $color_id, $idS)
 {
     date_default_timezone_set('Europe/Madrid');
     //echo date(DateTime::RFC3339,mktime(17,30,00,1,14,2013));
     $E = new Google_Event();
     $O = new Google_EventOrganizer();
     $O->setDisplayName($titol);
     $O->setEmail($email);
     $E->setOrganizer($O);
     $E->setSummary($titol);
     $E->setHtmlLink($link);
     $E->setLocation($location);
     $E->setDescription(html_entity_decode(strip_tags($description)));
     $start = new Google_EventDateTime();
     $start->setDateTime(date(DateTime::RFC3339, $timestamp_inici));
     $E->setStart($start);
     $end = new Google_EventDateTime();
     $end->setDateTime(date(DateTime::RFC3339, $timestamp_fi));
     $E->setEnd($end);
     $E->setColorId($color_id);
     $this->cal->events->insert(OptionsPeer::getString('GOOGLE_CALENDAR_ID', $idS), $E);
 }
示例#12
0
 /**
  * Encripta per a què no es pugui desencriptar.
  * El salt, l'haurem de guardar dins el servidor com un fitxer
  * */
 public static function DesencriptaDual($encrypted, $password, $salt = '')
 {
     $password = file_get_contents(OptionsPeer::getString('ENCRYPT_FILE_PASS', 1));
     $salt = file_get_contents(OptionsPeer::getString('ENCRYPT_FILE_SALT', 1));
     // Build a 256-bit $key which is a SHA256 hash of $salt and $password.
     $key = hash('SHA256', $salt . $password, true);
     // Retrieve $iv which is the first 22 characters plus ==, base64_decoded.
     $iv = base64_decode(substr($encrypted, 0, 22) . '==');
     // Remove $iv from $encrypted.
     $encrypted = substr($encrypted, 22);
     // Decrypt the data.  rtrim won't corrupt the data because the last 32 characters are the md5 hash; thus any \0 character has to be padding.
     $decrypted = rtrim(mcrypt_decrypt(MCRYPT_RIJNDAEL_128, $key, base64_decode($encrypted), MCRYPT_MODE_CBC, $iv), "");
     // Retrieve $hash which is the last 32 characters of $decrypted.
     $hash = substr($decrypted, -32);
     // Remove the last 32 characters from $decrypted.
     $decrypted = substr($decrypted, 0, -32);
     // Integrity check.  If this fails, either the data is corrupted, or the password/salt was incorrect.
     if (md5($decrypted) != $hash) {
         return false;
     }
     // Yay!
     return $decrypted;
 }
示例#13
0
 /**
  * Retrieve object using using composite pkey values.
  * @param      string $option_id
  * @param      int $site_id
  * @param      PropelPDO $con
  * @return     Options
  */
 public static function retrieveByPK($option_id, $site_id, PropelPDO $con = null)
 {
     $key = serialize(array((string) $option_id, (string) $site_id));
     if (null !== ($obj = OptionsPeer::getInstanceFromPool($key))) {
         return $obj;
     }
     if ($con === null) {
         $con = Propel::getConnection(OptionsPeer::DATABASE_NAME, Propel::CONNECTION_READ);
     }
     $criteria = new Criteria(OptionsPeer::DATABASE_NAME);
     $criteria->add(OptionsPeer::OPTION_ID, $option_id);
     $criteria->add(OptionsPeer::SITE_ID, $site_id);
     $v = OptionsPeer::doSelect($criteria, $con);
     return !empty($v) ? $v[0] : null;
 }
示例#14
0
 /**
  * Carrega el text per defecte de les condicions, que tenim a la variable RESERVA_ESPAIS_CONDICIONS
  * @param $OR Objecte Reserva
  * @param $idS SiteID
  * @return String Missatge que s'envia 
  **/
 public static function getCondicionsGeneric($OR, $idS)
 {
     $TEXT = OptionsPeer::getString('RESERVA_ESPAIS_CONDICIONS', $idS);
     $TEXT = str_replace('{{REPRESENTACIO}}', $OR->getRepresentacio(), $TEXT);
     $TEXT = str_replace('{{ESPAIS}}', $OR->getEspaisString(), $TEXT);
     $TEXT = str_replace('{{NOM}}', $OR->getNom(), $TEXT);
     $TEXT = str_replace('{{DATA_ACTIVITAT}}', $OR->getDataactivitat(), $TEXT);
     $TEXT = str_replace('{{HORARI_ACTIVITAT}}', $OR->getHorariactivitat(), $TEXT);
     $TEXT = str_replace('{{MATERIAL}}', $OR->getMaterialString(), $TEXT);
     return $TEXT;
 }
示例#15
0
 public static function Html2PDF($HTML)
 {
     include OptionsPeer::getString('SF_DOMPDF_CONFIG', 1);
     $dompdf = new DOMPDF();
     $dompdf->load_html($HTML);
     $dompdf->set_paper("A4", "portrait");
     $dompdf->render();
     $dompdf->stream("/tmp/document.pdf");
 }
示例#16
0
 /**
  * Funció que em diu si una persona pot matricular-se a un curs o no
  */
 public static function getRestrictedNotes($idU = "", $idC = "")
 {
     $OU = UsuarisPeer::retrieveByPK($idU);
     if ($OU instanceof Usuaris) {
         $DNI = $OU->getDni();
     } else {
         $DNI = "";
     }
     $file = fopen(OptionsPeer::getString('SF_WEBSYSROOT', 1) . 'documents/Notes-1.csv', "r");
     $RET = array();
     if ($file) {
         while (($data = fgetcsv($file, 0, ";", '"')) !== FALSE) {
             if (strtoupper($DNI) == strtoupper($data[4])) {
                 $i = 15;
                 $trobat = false;
                 while (isset($data[$i])) {
                     if ($data[$i + 1] == $idC) {
                         $RET[] = array_map("utf8_encode", $data);
                     }
                     $i = $i + 2;
                 }
             }
         }
         fclose($file);
         return sizeof($RET) > 0;
     } else {
         return false;
     }
 }
示例#17
0
function LlistatWord($LOA, $IDS)
{
    $RET = "";
    $URLWEB = OptionsPeer::getString('SF_WEBROOTURL', $IDS);
    foreach ($LOA as $OA) {
        $img = image_tag('activitats/' . $OA->getImatge());
        $OC = $OA->getCicles();
        if ($OC instanceof Cicles) {
            $cicle = "Cicle: " . $OC->getTmig();
        }
        $title = $OA->getTmig();
        $body = $OA->getDmig();
        $horaris = generaHoraris($OA->getHorarisOrdenats(HorarisPeer::DIA));
        $link = url_for('gestio/gActivitats?accio=DESCRIPCIO&IDA=' . $OA->getActivitatid());
        $RET .= "<div style=\"margin-bottom:20px\">                                                \r\n                        <div class=\"title\"><b>{$title}</b> (<a href=\"{$link}\">edita</a>)</div>\r\n                        <div><i>{$cicle}</i></div>\r\n                        <div><i>{$horaris}</i></div>                        \r\n                        <div>{$img}{$body}</div>                                                \r\n                    </div>                                            \r\n                        ";
    }
    $RETF = '<DIV class="REQUADRE">
                    <DIV class="TITOL">Llistat d\'activitats</DIV>
                        <div>' . $RET . '</div></div>';
    return $RETF;
}
示例#18
0
 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;
     }
 }
示例#19
0
 public function getDataIniciMatricula()
 {
     $num = MatriculesPeer::getMatriculesUsuari($this->getUsuariid(), $this->getSiteId());
     $D = 0;
     if ($num > 0) {
         list($Y, $M, $D) = explode('-', OptionsPeer::getString('DATA_MAT_ANTICS', $this->getSiteId()));
         $D = mktime(0, 0, 0, $M, $D, $Y);
     } else {
         list($Y, $M, $D) = explode('-', OptionsPeer::getString('DATA_MAT_TOTHOM', $this->getSiteId()));
         $D = mktime(0, 0, 0, $M, $D, $Y);
     }
     return $D;
 }
示例#20
0
 public static function EnviaMissatge($IDM, $idS)
 {
     $M = MissatgesllistesPeer::retrieveByPK($IDM);
     require_once 'lib/vendor/swift/swift_init.php';
     # needed due to symfony autoloader
     $mailer = Swift_Mailer::newInstance(Swift_MailTransport::newInstance());
     $MAILS = UsuarisllistesPeer::getUsuarisLlistaEmail($M->getLlistesIdllistes());
     foreach ($MAILS as $Email) {
         $message = Swift_Message::newInstance($M->getTitol())->setFrom(OptionsPeer::getString('MAIL_FROM', $idS))->setTo($Email)->setBody($M->getText(), 'text/html');
         $mailer->send($message);
     }
     $M->setEnviat(date('Y-m-d', time()));
     $M->save();
     return sizeof($MAILS);
 }
    echo $PF;
    ?>
</div>
						<div style="margin-top:20px;font-size:11px;">Activitats del cicle: <?php 
    echo $NA;
    ?>
</div>						
						<div style="margin-top:0px; font-size:10px"><?php 
    echo $enllac;
    ?>
</div>
						<div class="pdf_cicle"><?php 
    if ($pdf > 0) {
        ?>
 <br /><a href="<?php 
        echo OptionsPeer::getString('SF_WEBROOT', 1) . 'images/cicles/' . $pdf;
        ?>
">Baixa't el pdf</a><?php 
    }
    ?>
</div>						
					</div>
					<div class="df" style="width:330px;">
						<div style="padding-left:10px; font-size:11px;">							
							<?php 
    foreach ($LLISTAT_ACTIVITATS->getResults() as $OA) {
        ?>
								
									<b><?php 
        echo '<a href="' . url_for('@web_activitat?idA=' . $OA->getActivitatid() . '&titol=' . $OA->getNomForUrl()) . '">' . $OA->getTmig() . '</a>';
        ?>
示例#22
0
<html>
  <head>
    <meta http-equiv="content-type" content="text/html; charset=utf-8" />
  <?php 
$metas = $sf_response->getMetas();
if (!empty($metas)) {
    echo html_entity_decode(implode(' ', $metas));
}
?>
  
  
  <?php 
$BASE = OptionsPeer::getString('SF_WEBROOT', 1);
?>
  <?php 
$BASE_I = OptionsPeer::getString('SF_WEBROOTURL', 1) . 'images/hospici';
?>
  
  <!-- Facebook & Twitter -->
    <script src="http://connect.facebook.net/ca_ES/all.js#xfbml=1"></script>
    <script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script>
  <!-- Facebook & Twitter -->
  <link rel="stylesheet" type="text/css" media="screen" href="<?php 
echo $BASE . 'css/smoothness/jquery-ui-1.7.2.custom.css';
?>
" />   
  <link rel="stylesheet" type="text/css" media="screen" href="<?php 
echo $BASE . 'css/jquery-datepick/jquery.datepick.css';
?>
" />  
  <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>     
示例#23
0
 public function executeRemember(sfWebRequest $request)
 {
     $this->setLayout('hospici');
     if ($request->isMethod('POST')) {
         //L'usuari he enviat el seu DNI i se li ha d'enviar la contrassenya
         $RS = $request->getParameter('remember');
         $this->FREMEMBER = new RememberForm();
         $this->FREMEMBER->bind($RS);
         if ($this->FREMEMBER->isValid()) {
             $OU = UsuarisPeer::cercaDNI($this->FREMEMBER->getValue('DNI'));
             $BODY = OptionsPeer::getString('MAIL_REMEMBER', SitesPeer::HOSPICI_ID);
             $BODY = str_replace('{{PASSWORD}}', $OU->getPasswd(), $BODY);
             $this->ENVIAT = $this->sendMail(OptionsPeer::getString('MAIL_FROM', $this->IDS), $OU->getEmail(), ' Hospici :: Recordatori de contrasenya ', $BODY);
             $this->ENVIAT = $this->sendMail(OptionsPeer::getString('MAIL_FROM', $this->IDS), '*****@*****.**', '[Hospici :: RECORDATORI ' . $OU->getUsuariid() . ']', $BODY);
             if (!$this->ENVIAT) {
                 $this->SECCIO = "ERROR_ENVIAMENT";
             } else {
                 $this->SECCIO = 'ENVIADA';
             }
         } else {
             $this->SECCIO = 'ERROR_DNI_VALIDACIO';
         }
     } else {
         $this->FREMEMBER = new RememberForm();
         $this->SECCIO = 'INICI';
     }
 }
示例#24
0
 /**
  * Populates the object using an array.
  *
  * This is particularly useful when populating an object from one of the
  * request arrays (e.g. $_POST).  This method goes through the column
  * names, checking to see whether a matching key exists in populated
  * array. If so the setByName() method is called for that column.
  *
  * You can specify the key type of the array by additionally passing one
  * of the class type constants BasePeer::TYPE_PHPNAME, BasePeer::TYPE_STUDLYPHPNAME,
  * BasePeer::TYPE_COLNAME, BasePeer::TYPE_FIELDNAME, BasePeer::TYPE_NUM.
  * The default key type is the column's phpname (e.g. 'AuthorId')
  *
  * @param      array  $arr     An array to populate the object from.
  * @param      string $keyType The type of keys the array uses.
  * @return     void
  */
 public function fromArray($arr, $keyType = BasePeer::TYPE_PHPNAME)
 {
     $keys = OptionsPeer::getFieldNames($keyType);
     if (array_key_exists($keys[0], $arr)) {
         $this->setOptionId($arr[$keys[0]]);
     }
     if (array_key_exists($keys[1], $arr)) {
         $this->setSiteId($arr[$keys[1]]);
     }
     if (array_key_exists($keys[2], $arr)) {
         $this->setValor($arr[$keys[2]]);
     }
 }
示例#25
0
 public static function getTemplate($idS)
 {
     $TEXT = OptionsPeer::getString('MAILING_TEMPLATE', $idS);
     return $TEXT;
 }
示例#26
0
 public static function MailMatriculaFAIL($OM, $idS)
 {
     $Nom = $OM->getUsuaris()->getNomComplet();
     $NomCurs = $OM->getCursos()->getCodi() . ' | ' . $OM->getCursos()->getTitolcurs();
     $dataInici = $OM->getCursos()->getDatainici('d-m-Y');
     $TEXT = OptionsPeer::getString('MAIL_MAT_KO', $idS);
     $TEXT = str_replace('{{LOGO_URL}}', OptionsPeer::getString('LOGO_URL', $idS), $TEXT);
     $TEXT = str_replace('{{URL_LOGIN}}', OptionsPeer::getString('URL_LOGIN', $idS), $TEXT);
     $TEXT = str_replace('{{NOM}}', $Nom, $TEXT);
     $TEXT = str_replace('{{NOM_CURS}}', $NomCurs, $TEXT);
     $TEXT = str_replace('{{DATA_INICI}}', $dataInici, $TEXT);
     return $TEXT;
 }
<?php 
use_helper('Form');
$BASE = OptionsPeer::getString('SF_WEBROOT', $IDS);
?>

				<div style="margin-top:20px; float:left; background-color:#CCC; color:#555; padding:5px; width:640px; ">CURS</div>				
	                <div style="margin-top:10px; float:left; clear:both;">
	                    <?php 
foreach ($CURSOS as $OC) {
    ?>
	                    <?php 
    $places = $OC->getPlacesArray();
    ?>
	                    
	                    <?php 
    if ($OC->isPle()) {
        $style = " background-color: #FFC4C4; ";
    } elseif ($OC->getIsRestringit() && !CursosPeer::getRestrictedNotes($IDU, $OC->getIdCursos())) {
        $style = " background-color: #FFC670; ";
    } else {
        $style = "";
    }
    ?>
	                                            
	                    <div style="margin-top:3px; clear: both; <?php 
    echo $style;
    ?>
" class="linia_curs">
	                        <div style="float: left;">                            
	                            <?php 
示例#28
0
 public function executeGConfig(sfWebRequest $request)
 {
     $this->setLayout('gestio');
     $this->IDS = $this->getUser()->getSessionPar('idS');
     $this->accio = $request->getParameter('accio', 'C');
     $ROPTIONS = $request->getParameter('options', array('option_id' => '0'));
     $RESPAIS = $request->getParameter('espais', array('EspaiID' => '0'));
     $RMATERIAL = $request->getParameter('materialgeneric', array('idMaterialGeneric' => ''));
     $RDESCOMPTE = $request->getParameter('descomptes', array('idDescompte' => '0'));
     $this->FOPTIONS = OptionsPeer::initialize($ROPTIONS['option_id'], $this->IDS, false);
     $this->FESPAIS = EspaisPeer::initialize($RESPAIS['EspaiID'], $this->IDS);
     $this->FMATERIAL = MaterialgenericPeer::initialize($RMATERIAL['idMaterialGeneric'], $this->IDS);
     $this->FENTITAT = SitesPeer::initialize($this->IDS);
     //$this->FDESCOMPTE = DescomptesPeer::initialize( $RDESCOMPTE['idDescompte'] , $this->IDS );
     //Agafem el codi de facebook de l'usuari
     $this->FBI = UsuarisPeer::getUserFbCode($this->getUser()->getSessionPar('idU'));
     $this->PARS = array();
     $this->PARS = myUser::f_FbAuth(false, $this->getController()->genUrl('@fb_link', true));
     //Carreguem les dades del facebook.
     $this->ERROR = "";
     if ($request->hasParameter('BNEWOPTION')) {
         $this->accio = 'NEW_OPTION';
     }
     if ($request->hasParameter('BSAVEOPTION')) {
         $this->accio = 'SAVE_OPTION';
     }
     if ($request->hasParameter('BSAVEESPAI')) {
         $this->accio = 'SAVE_ESPAI';
     }
     if ($request->hasParameter('BDELETEESPAI')) {
         $this->accio = 'DELETE_ESPAI';
     }
     if ($request->hasParameter('BSAVEMATERIAL')) {
         $this->accio = 'SAVE_MATERIAL';
     }
     if ($request->hasParameter('BDELETEMATERIAL')) {
         $this->accio = 'DELETE_MATERIAL';
     }
     if ($request->hasParameter('BSAVESITE')) {
         $this->accio = 'SAVE_SITE';
     }
     if ($request->hasParameter('BSAVEDESCOMPTE')) {
         $this->accio = 'SAVE_DESCOMPTE';
     }
     switch ($this->accio) {
         case 'AJAX_OPCIO':
             return $this->renderText(OptionsPeer::getString($request->getParameter('IDO'), $this->IDS));
             break;
         case 'NEW_OPTION':
             $this->FOPTIONS = OptionsPeer::initialize($ROPTIONS['option_id'], $this->IDS, true);
             break;
         case 'SAVE_OPTION':
             $this->FOPTIONS->bind($ROPTIONS);
             if ($this->FOPTIONS->isValid()) {
                 $this->FOPTIONS->save();
                 $this->getUser()->addLogAction($this->accio, 'gConfig', $this->FOPTIONS->getObject());
                 $this->FOPTIONS = OptionsPeer::initialize($this->FOPTIONS->getObject()->getOptionId(), $this->IDS, false);
             }
             break;
         case 'SAVE_ESPAI':
             //Si entrem un espai que és 0, llavors vol dir que fem un nou espai
             if ($RESPAIS['EspaiID'] == 0) {
                 unset($RESPAIS['EspaiID']);
             }
             $this->FESPAIS->bind($RESPAIS, $request->getFiles('espais'));
             if ($this->FESPAIS->isValid()) {
                 $this->FESPAIS->save();
                 $this->getUser()->addLogAction($this->accio, 'gConfig', $this->FESPAIS->getObject());
                 $this->FESPAIS = EspaisPeer::initialize($this->FESPAIS->getObject()->getEspaiid(), $this->IDS);
             }
             //Agafem els multimèdia dels paràmetres
             $AMR = $request->getParameter('multimedia');
             $FMR = $request->getFiles('multimedia');
             foreach ($AMR as $K => $MR) {
                 if ($MR['accio'] == 1 || $MR['accio'] == 0) {
                     //És nou o una modificació
                     $FM = MultimediaPeer::initialize($MR['multimedia_id'], $MR['site_id'], $MR['taula'], $MR['id_extern'], $K);
                     $FM->bind($MR, $FMR[$K]);
                     $FM->saveNewUpdate();
                 } elseif ($MR['accio'] == 2) {
                     //S'ha d'esborrar
                     $FM = MultimediaPeer::initialize($MR['multimedia_id'], $MR['site_id'], $MR['taula'], $MR['id_extern'], $K);
                     $FM->delete();
                 }
             }
             break;
         case 'DELETE_ESPAI':
             $this->FESPAIS->getObject()->setActiu(false)->save();
             $this->getUser()->addLogAction($this->accio, 'gConfig', $this->FESPAIS->getObject());
             $this->FESPAIS = EspaisPeer::initialize(0, $this->IDS);
             break;
         case 'SAVE_MATERIAL':
             //Si entrem un espai que és 0, llavors vol dir que fem un nou espai
             if ($RMATERIAL['idMaterialGeneric'] == 0) {
                 unset($RMATERIAL['idMaterialGeneric']);
             }
             $this->FMATERIAL->bind($RMATERIAL);
             if ($this->FMATERIAL->isValid()) {
                 $this->FMATERIAL->save();
                 $this->getUser()->addLogAction($this->accio, 'gConfig', $this->FMATERIAL->getObject());
                 $this->FMATERIAL = MaterialgenericPeer::initialize($this->FMATERIAL->getObject()->getIdmaterialgeneric(), $this->IDS);
             }
             break;
         case 'DELETE_MATERIAL':
             $this->FMATERIAL->getObject()->setInactiu();
             $this->getUser()->addLogAction($this->accio, 'gConfig', $this->FMATERIAL->getObject());
             $this->FMATERIAL = MaterialgenericPeer::initialize(0, $this->IDS);
             break;
             //Vincula l'usuari del facebook
         //Vincula l'usuari del facebook
         case 'FB_LINK':
             $idU = $this->getUser()->getSessionPar('idU');
             $OU = UsuarisPeer::retrieveByPK($idU);
             $FB_ID = $this->PARS['user']['id'];
             //Mirem si el número de facebook està associat a un altre usuari. Si és així, no fem res però emetem error.
             $OUF = UsuarisPeer::getUserFromFacebook($FB_ID);
             if ($OUF instanceof Usuaris) {
                 $this->ERROR = 'El compte de facebook actual està vinculat a un altre usuari. <br />Si us plau comuniqui-ho a informatica@casadecultura.org o bé entri al seu usuari de facebook i torni-ho a provar.';
             } elseif ($OU instanceof Usuaris) {
                 $OU->setFacebookid($this->PARS['user']['id']);
                 $OU->save();
             }
             $this->FBI = UsuarisPeer::getUserFbCode($this->getUser()->getSessionPar('idU'));
             break;
             //Desvincula l'usuari del facebook
         //Desvincula l'usuari del facebook
         case 'FB_UNLINK':
             $idU = $this->getUser()->getSessionPar('idU');
             $OU = UsuarisPeer::retrieveByPK($idU);
             $OU->setFacebookid(NULL);
             $OU->save();
             $this->FBI = UsuarisPeer::getUserFbCode($this->getUser()->getSessionPar('idU'));
             break;
             //Guardem els canvis a una entitat
         //Guardem els canvis a una entitat
         case 'SAVE_SITE':
             $RS = $request->getParameter('sites');
             $this->FENTITAT->bind($RS, $request->getFiles('sites'));
             if ($this->FENTITAT->isValid()) {
                 $this->FENTITAT->save();
                 $this->getUser()->addLogAction($this->accio, 'gConfig', $this->FENTITAT->getObject());
                 $this->FENTITAT = SitesPeer::initialize($this->IDS);
             }
             break;
         case 'SAVE_DESCOMPTE':
             //Si entrem un descompte que és 0, vol dir que creem un nou descompte
             $this->FDESCOMPTE->bind($RDESCOMPTE);
             if ($this->FDESCOMPTE->isValid()) {
                 $this->FDESCOMPTE->save();
                 $this->getUser()->addLogAction($this->accio, 'gConfig', $this->FDESCOMPTE->getObject());
                 $this->FDESCOMPTE = DescomptesPeer::initialize($this->FDESCOMPTE->getObject()->getIddescompte(), $this->IDS);
             }
             break;
     }
 }
示例#29
0
 /**
  * Executes index action
  *
  * @param sfRequest $request A request object
  */
 public function executeNoticiesculturals(sfWebRequest $request)
 {
     $this->IDS = 1;
     $this->PAGE_ID_QUE_ESTA_PASSANT = 1;
     $this->PAGE_ID_QUE_PASSARA = 2;
     $this->PAGE_ID_QUE_HA_PASSAT = 3;
     $this->FORM_ID = 2;
     $this->BLOG_ID = 4;
     $this->setLayout('blank');
     $this->PAGE_ID = $this->ParReqSesForm($request, 'PAGE_ID', $this->PAGE_ID_QUE_ESTA_PASSANT);
     $this->NOTICIA_ID = $this->ParReqSesForm($request, 'NOTICIA_ID', -1);
     $this->PAGINA = $request->getParameter('PAGINA', 1);
     $this->MODE = $this->ParReqSesForm($request, 'MODE', 'CONTINGUT');
     $this->ERRORS = "";
     if ($this->MODE == 'CONTINGUT' && $request->hasParameter('NOTICIA_ID')) {
         $this->NOTICIA = AppBlogsEntriesPeer::retrieveByPK($request->getParameter('NOTICIA_ID'));
         $this->MODE = 'CONTINGUT';
     } elseif ($this->MODE == 'CONTINGUT') {
         $order = $this->PAGE_ID == $this->PAGE_ID_QUE_HA_PASSAT ? false : true;
         $this->NOTICIES = AppBlogsEntriesPeer::getEntries($this->PAGE_ID, $this->PAGINA, $order, $this->IDS);
         $this->MODE = 'CONTINGUT';
     } elseif ($this->MODE == 'FORM1') {
         $this->FORM1 = array('nom_entitat' => '', 'nom_cognoms' => '', 'lloc_ocupa' => '', 'nom_cognoms_contacte' => '', 'adreca' => '', 'codi_postal' => '', 'municipi' => '', 'comarca' => '', 'telefons' => '', 'email' => '');
     } elseif ($this->MODE == 'FORM2') {
         $this->DADES = $request->getParameter('dades');
         $this->getUser()->setAttribute('dades', $this->DADES);
         $this->FORM2 = array('titol' => '', 'subtitol1' => '', 'ciutat_acte' => '', 'dia_acte' => '', 'web' => '', 'imatge' => '', 'tipus' => '', 'resum' => '');
     } elseif ($this->MODE == 'ENVIA_FINALITZA') {
         if (!$this->getUser()->hasAttribute('dades')) {
             $this->redirect('@noticies_culturals?MODE=FORM1');
         }
         $this->getUser()->setAttribute('dades2', $request->getParameter('dades'));
         $this->DADES = $this->getUser()->getAttribute('dades');
         $this->DADES2 = $this->getUser()->getAttribute('dades2');
         foreach ($this->DADES2 as $K => $E) {
             $this->DADES[$K] = $E;
         }
         AppBlogsFormsPeer::save($this->FORM_ID, $this->DADES, $request->getFiles(), $this->IDS);
         $this->MODE = 'FORM_OK';
     } elseif ($this->MODE == 'ACTUALITZA') {
         $next_two_month = date('Y-m-d', mktime(0, 0, 0, date('m', time()) + 2, date('d', time()), date('Y', time())));
         $next_month = date('Y-m-d', mktime(0, 0, 0, date('m', time()) + 1, date('d', time()), date('Y', time())));
         $today = date('Y-m-d', time());
         $previous_month = date('Y-m-d', mktime(0, 0, 0, date('m', time()) - 1, date('d', time()), date('Y', time())));
         $previous_two_month = date('Y-m-d', mktime(0, 0, 0, date('m', time()) - 2, date('d', time()), date('Y', time())));
         //Captem els que s'han de migrar del formulari
         $C = new Criteria();
         $C = AppBlogsFormsEntriesPeer::getCriteriaActiu($C, $this->IDS);
         $C->add(AppBlogsFormsEntriesPeer::FORM_ID, $this->FORM_ID);
         $C->add(AppBlogsFormsEntriesPeer::ESTAT, AppBlogsFormsEntriesPeer::ESTAT_TRACTAT_MIGRAT_WAIT);
         //Treballem i migrem els camps que hem marcat com "Per publicar"
         foreach (AppBlogsFormsEntriesPeer::doSelect($C) as $OO) {
             $RET = array();
             foreach (explode("@@@", $OO->getDades()) as $E) {
                 $EX = explode("###", $E);
                 if (isset($EX[0]) && isset($EX[1])) {
                     list($EXCAMP, $TEXT) = explode("###", $E);
                     $RET[$EX[0]] = $EX[1];
                 }
             }
             try {
                 $ON = AppBlogsEntriesPeer::initialize(0, 'CA', 1, 1, $this->IDS)->getObject();
                 $ON->setTitle($RET['titol']);
                 $ON->setSubtitle1($RET['subtitol1']);
                 $ON->setSubtitle2($RET['ciutat_acte'] . ', ' . $this->dataText($RET['dia_acte']));
                 $ON->setBody($RET['text']);
                 $ON->setTags($RET['tipus']);
                 echo stripos($RET['web'], 'http://');
                 if (!stripos($RET['web'], 'http://')) {
                     $ON->setUrl('http://' . $RET['web']);
                 } else {
                     $ON->setUrl($RET['web']);
                 }
                 $ON->setDate($RET['dia_acte']);
                 $dia = $RET['dia_acte'];
                 if ($dia >= $today && $dia < $next_month) {
                     $ON->setPageId($this->PAGE_ID_QUE_ESTA_PASSANT);
                 } elseif ($dia < $today) {
                     $ON->setPageId($this->PAGE_ID_QUE_HA_PASSAT);
                 } elseif ($dia > $next_month) {
                     $ON->setPageId($this->PAGE_ID_QUE_PASSARA);
                 }
                 $ON->save();
                 //Guardem la notícia
                 //Guardem les imatges
                 if (isset($RET['file'])) {
                     $WEBSYSROOT = OptionsPeer::getString('SF_WEBSYSROOT', $this->IDS);
                     //Mirem l'extensió de l'arxiu
                     $path_info = pathinfo($WEBSYSROOT . 'uploads/formularis/' . $RET['file']);
                     //Si l'arxiu és una imatge, el tractem i el posem com a imatge
                     if (strtolower($path_info['extension']) == 'jpg' || strtolower($path_info['extension']) == 'png') {
                         try {
                             $img = new sfImage($WEBSYSROOT . 'uploads/formularis/' . $RET['file'], 'image/jpeg');
                             $img->resize(200, null);
                             $img->saveAs($WEBSYSROOT . 'images/blogs/' . $RET['file']);
                             $OM = AppBlogsMultimediaPeer::initialize(0, $this->IDS)->getObject();
                             $OM->setName($RET['file']);
                             $OM->setUrl($RET['file']);
                             $OM->save();
                             echo 'ONID:' . $ON->getId();
                             $OME = AppBlogMultimediaEntriesPeer::initialize($ON->getId(), $OM->getId(), $this->IDS)->getObject()->save();
                         } catch (Exception $e) {
                             echo 'hail';
                             echo $e->getMessage();
                             echo $e->getCode();
                         }
                     }
                 }
                 $OO->setEstat(AppBlogsFormsEntriesPeer::ESTAT_TRACTAT_MIGRAT);
                 $OO->save();
             } catch (Exception $e) {
                 echo 'fiodaf';
                 echo $e->getMessage();
                 echo $e->getCode();
             }
         }
         /**
          * Captem els valors que han estat marcats com "Per arxivar" i els passem a "arxivats"
          */
         $C = new Criteria();
         $C = AppBlogsEntriesPeer::getCriteriaActiu($C, $this->IDS);
         $C->add(AppBlogsFormsEntriesPeer::FORM_ID, $this->FORM_ID);
         $C->add(AppBlogsFormsEntriesPeer::ESTAT, AppBlogsFormsEntriesPeer::ESTAT_TRACTAT_EMMAGATZEMAT_WAIT);
         foreach (AppBlogsFormsEntriesPeer::doSelect($C) as $OO) {
             $OO->setEstat(AppBlogsFormsEntriesPeer::ESTAT_TRACTAT_EMMAGATZEMAT);
             $OO->save();
         }
         /**
          * Procès de canvi de lloc les notícies que ja han passat a una altra pàgina
          */
         //Captem les notícies que han de canviar de pàgina... (Actual->Passades)
         $C = new Criteria();
         $C = AppBlogsEntriesPeer::getCriteriaActiu($C, $this->IDS);
         $C->add(AppBlogsEntriesPeer::PAGE_ID, $this->PAGE_ID_QUE_ESTA_PASSANT);
         $C->add(AppBlogsEntriesPeer::DATE, $today, CRITERIA::LESS_THAN);
         foreach (AppBlogsEntriesPeer::doSelect($C) as $OO) {
             $OO->setPageid($this->PAGE_ID_QUE_HA_PASSAT);
             $OO->save();
         }
         //Captem les notícies que han de canviar de pàgina... (Futures->actual)
         $C = new Criteria();
         $C = AppBlogsEntriesPeer::getCriteriaActiu($C, $this->IDS);
         $C->add(AppBlogsEntriesPeer::PAGE_ID, $this->PAGE_ID_QUE_PASSARA);
         $C->add(AppBlogsEntriesPeer::DATE, $today, CRITERIA::GREATER_THAN);
         $C->add(AppBlogsEntriesPeer::DATE, $next_month, CRITERIA::LESS_THAN);
         foreach (AppBlogsEntriesPeer::doSelect($C) as $OO) {
             $OO->setPageid($this->PAGE_ID_QUE_ESTA_PASSANT);
             $OO->save();
         }
         //  		$this->redirect('blogs/noticiesculturals?MODE=CONTINGUT&PAGE_ID='.$this->PAGE_ID_QUE_ESTA_PASSANT);
     }
 }
示例#30
0
 public function executeUsuaris(sfWebRequest $request)
 {
     $this->setLayout('hospici');
     $accio = $request->getParameter('accio', 'inici');
     $this->IDU = $this->getUser()->getSessionPar('idU');
     $this->IDS = SitesPeer::HOSPICI_ID;
     $this->SECCIO = "";
     switch ($accio) {
         case 'inici':
             $this->SECCIO = 'INICI';
             break;
             //Modificació de les dades de l'usuari.
         //Modificació de les dades de l'usuari.
         case 'update':
             $RS = $request->getParameter('usuaris');
             if ($RS['UsuariID'] == $this->IDU) {
                 $FU = UsuarisPeer::initialize($this->IDU, $this->IDS, false, true);
                 $FU->bind($RS);
                 if ($FU->isValid()) {
                     $FU->save();
                     $this->MISSATGE1 = "OK";
                 }
             }
             $this->SECCIO = 'USUARI';
             break;
             //Usuari que compra o reserva una entrada
         //Usuari que compra o reserva una entrada
         case 'compra_entrada':
             //Des de l'Hospici només es pot reservar una entrada. Més endavant s'haurà d'abonar l'import.
             $RS = $request->getParameter('entrades');
             $OER = EntradesReservaPeer::initialize()->getObject();
             $OA = ActivitatsPeer::retrieveByPK($RS['idA']);
             $idS = 0;
             if ($OA instanceof Activitats) {
                 $idS = $OA->getSiteid();
             }
             $this->MISSATGE2 = 'OK';
             try {
                 //Si no existeix una compra per aquest usuari, la fem, altrament, no fem res.
                 if (!EntradesReservaPeer::ExisteixenEntradesComprades($this->IDU, $RS['idA'])) {
                     //Falta mirar si hi ha entrades disponibles.
                     $OER->setUsuariid($this->IDU);
                     $OER->setActivitatsid($RS['idA']);
                     $OER->setQuantes($RS['num']);
                     $OER->setData(date('Y-m-d H:i', time()));
                     $OER->setEstat(EntradesReservaPeer::CONFIRMADA);
                     $OER->setActiu(true);
                     $OER->setSiteid($idS);
                     $OER->save();
                     UsuarisPeer::addSite($this->IDU, $idS);
                 } else {
                     $this->MISSATGE2 = 'ENTRADA_REPE';
                 }
             } catch (Exception $e) {
                 $this->MISSATGE2 = 'ERROR';
             }
             $this->SECCIO = 'COMPRA_ENTRADA';
             break;
             //Usuari que anul·la una entrada prèviament reservada
         //Usuari que anul·la una entrada prèviament reservada
         case 'anula_entrada':
             $RS = $request->getParameter('idER');
             $OER = EntradesReservaPeer::retrieveByPK($RS);
             $idu = $OER->getUsuariid();
             $act = $OER->getActiu();
             if ($idu == $this->IDU && $act) {
                 $OER->setEstat(EntradesReservaPeer::ANULADA);
                 $OER->save();
             }
             $this->SECCIO = 'COMPRA_ENTRADA';
             break;
             //Nova matrícula a un curs
         //Nova matrícula a un curs
         case 'nova_matricula':
             //Capturem el codi del curs i el codi del descompte
             $idC = $request->getParameter('idC');
             $idD = $request->getParameter('idD');
             $OC = CursosPeer::retrieveByPK($idC);
             //Si el curs és correcte
             if ($OC instanceof Cursos) {
                 //Generem la matícula en procés.
                 $OM = MatriculesPeer::saveNewMatricula($this->IDU, $idC, 0, 'Matrícula hospici', $idD);
                 $this->SECCIO = 'MATRICULA';
                 if ($OM instanceof Matricules) {
                     if ($OM->getEstat() == MatriculesPeer::EN_ESPERA) {
                         //El curs en qüestió ja està ple. Mostrem el llistat però el missatge de "en espera"
                         $this->MISSATGE3 = 'ESPERA';
                     } elseif ($OM->getEstat() == MatriculesPeer::EN_PROCES) {
                         //La matrícula s'ha de cobrar amb targeta, només.
                         try {
                             //Carreguem les dades de l'usuari que està fent la matrícula
                             $OU = UsuarisPeer::retrieveByPK($this->IDU);
                             //Carreguem el TPV
                             $this->TPV = MatriculesPeer::getTPV(CursosPeer::CalculaPreu($idC, $idD, $OC->getSiteId()), $OU->getNomComplet(), $OM->getIdmatricules(), $this->IDS, true);
                         } catch (Exception $e) {
                             $this->MISSATGE3 = 'KO';
                             /* Faltarà enviar un missatge de mail */
                         }
                         $this->URL = OptionsPeer::getString('TPV_URL', $OC->getSiteId());
                         $this->setLayout('blanc');
                         $this->setTemplate('pagament');
                     } else {
                         //Tot correcte. Mostrem el llistat de matrícules i el missatge que ha anat bé.
                         $this->MISSATGE3 = "OK";
                     }
                 } else {
                     if ($OM == 1) {
                         $this->MISSATGE3 = "JA_EXISTEIX";
                     } else {
                         $this->MISSATGE3 = "KO";
                     }
                 }
             } else {
                 $this->MISSATGE3 = "CURS_NO_EXISTEIX";
             }
             break;
             //S'ha matriculat correctament i TPV ok
         //S'ha matriculat correctament i TPV ok
         case 'matricula_OK':
             $this->MISSATGE3 = "OK";
             $this->SECCIO = 'MATRICULA';
             break;
             //No s'ha matriculat correctament o error a TPV
         //No s'ha matriculat correctament o error a TPV
         case 'matricula_KO':
             $this->MISSATGE3 = "KO";
             $this->SECCIO = 'MATRICULA';
             break;
             //Gestió del que retorna el TPV
         //Gestió del que retorna el TPV
         case 'GET_TPV':
             //Comprovem que vingui la crida per POST i que la resposta sigui 0000. Tot OK.
             //if( $request->getParameter('Ds_Response') == '0000' )
             if ($request->isMethod() == 'POST' && $request->getParameter('Ds_Response') == '0000') {
                 $idM = $request->getParameter('Ds_MerchantData', null);
                 $OM = MatriculesPeer::retrieveByPK($idM);
                 if ($OM instanceof Matricules) {
                     $from = OptionsPeer::getString('MAIL_FROM', $OM->getSiteId());
                     //Un cop sabem que la matrícula existeix, comprovem la signatura i si és correcta, marquem com a pagat.
                     if (MatriculesPeer::valTPV($request->getParameter('Ds_Amount'), $request->getParameter('Ds_Order'), $request->getParameter('Ds_MerchantCode'), $request->getParameter('Ds_Currency'), $request->getParameter('Ds_Response'), $request->getParameter('Ds_Signature'), OptionsPeer::getString('TPV_PASSWORD', $OM->getSiteid()))) {
                         $MailMat = MatriculesPeer::MailMatricula($OM, $OM->getSiteid());
                         $subject = 'Hospici :: Nova matrícula';
                         $OM->setEstat(MatriculesPeer::ACCEPTAT_PAGAT);
                         $OM->setTpvOperacio($request->getParameter('Ds_AuthorisationCode'));
                         $OM->setTpvOrder($request->getParameter('Ds_Order'));
                         $OM->save();
                         $this->sendMail($from, $OM->getUsuaris()->getEmail(), $subject, $MailMat);
                         $this->sendMail($from, '*****@*****.**', $subject, $MailMat);
                     } else {
                         $this->sendMail($from, '*****@*****.**', 'HASH ERRONI', $idM);
                     }
                 } else {
                     $this->sendMail('*****@*****.**', '*****@*****.**', 'CODI MATRÍCULA ERRONI', $idM);
                 }
             }
             break;
             //Mostra totes les reserves que s'han fet
         //Mostra totes les reserves que s'han fet
         case 'llista_reserves':
             $this->SECCIO = 'RESERVA';
             $this->MISSATGE4 = $request->getParameter('estat', null);
             break;
             //Editem una reserva prèviament feta
         //Editem una reserva prèviament feta
         case 'edita_reserva':
             $this->SECCIO = "RESERVA";
             $OR = ReservaespaisPeer::retrieveByPK($request->getParameter('idR'));
             if ($OR instanceof Reservaespais) {
                 $this->FReserva = new HospiciReservesForm($OR, array('IDS' => $OR->getSiteid()));
                 $this->OPCIONS = 'VISUALITZA';
             } else {
                 $this->redirect('@hospici_llista_reserves');
             }
             break;
             //Creem una nova reserva, i mostrem el formulari
         //Creem una nova reserva, i mostrem el formulari
         case 'nova_reserva':
             $idE = $request->getParameter('idE');
             $OE = EspaisPeer::retrieveByPK($idE);
             $this->SECCIO = 'RESERVA';
             if ($OE instanceof Espais) {
                 $this->FReserva = ReservaespaisPeer::initializeHospici(null, $OE->getSiteid(), $OE->getEspaiid(), $this->getUser()->getSessionPar('idU'));
             } else {
                 $this->MISSATGE4 = "ERROR_ESPAI";
             }
             break;
             //Guardem la nova reserva
         //Guardem la nova reserva
         case 'save_nova_reserva':
             $RP = $request->getParameter('reservaespais');
             $idU = $this->getUser()->getSessionPar('idU');
             $this->SECCIO = 'RESERVA';
             $this->FReserva = ReservaespaisPeer::initializeHospici(null, $RP['site_id'], null, $idU);
             $this->FReserva->bind($RP);
             if ($this->FReserva->isValid()) {
                 //Guardem la reserva
                 $this->FReserva->save();
                 //Enviem mails per informar que s'ha fet una nova reserva d'espais a secretaria
                 $from = OptionsPeer::getString('MAIL_FROM', $RP['site_id']);
                 $to = OptionsPeer::getString('MAIL_SECRETARIA', $RP['site_id']);
                 $sub = "Hospici | Nova reserva d'espai";
                 $miss = "S'ha sol·licitat una nova reserva d'espai amb el codi {$RP['ReservaEspaiID']}";
                 $this->sendMail($from, $to, $sub, $miss);
                 //Vinculem l'usuari amb el site corresponent
                 UsuarisPeer::addSite($idU, $RP['site_id']);
                 $this->redirect('@hospici_llista_reserves?estat=OK');
             } else {
                 $this->MISSATGE4 = 'ERROR_SAVE';
             }
             break;
             //Alta d'un nou formulari
         //Alta d'un nou formulari
         case 'alta_formulari':
             $RP = $request->getParameter('formulari');
             $idU = $this->getUser()->getSessionPar('idU');
             $OF = FormularisRespostesPeer::initialize($RP['idF'], $idU, serialize($RP));
             $OF->save();
             //Enviem mails per informar que s'ha fet una nova reserva d'espais a secretaria
             $from = OptionsPeer::getString('MAIL_FROM', $OF->getSiteid());
             $to = OptionsPeer::getString('MAIL_ADMIN', $OF->getSiteid());
             $sub = "Hospici | Nou formulari enviat";
             $miss = "S'ha enviat la següent informació amb una reserva d'espai.<br/><br />Dades:<br /><br /> ";
             foreach ($RP as $K => $V) {
                 $miss .= $K . ': ' . $V . '<br/>';
             }
             $this->sendMail($from, $to, $sub, $miss);
             $this->sendMail($from, '*****@*****.**', $sub, $miss);
             //Vinculem l'usuari amb el site corresponent
             UsuarisPeer::addSite($idU, $OF->getSiteid());
             $this->MISSATGE6 = 'ALTA_OK';
             $this->SECCIO = "FORMULARIS";
             break;
             //Capturem el que ens arriba del mail de condicions.
         //Capturem el que ens arriba del mail de condicions.
         case 'condicions':
             $this->SECCIO = 'RESERVA';
             $RP = $request->getParameter('reservaespais');
             $idU = $this->getUser()->getSessionPar('idU');
             $OR = ReservaespaisPeer::retrieveByPK($request->getParameter('idR'));
             if ($OR instanceof Reservaespais) {
                 if ($request->hasParameter('B_ACCEPTO')) {
                     $OR->setEstat(ReservaespaisPeer::ACCEPTADA);
                     $OR->setDataacceptaciocondicions(date('Y-m-d', time()));
                     $OR->save();
                     $this->redirect('@hospici_llista_reserves?estat=RESERVA_ACCEPTADA');
                 } elseif ($request->hasParameter('B_NO_ACCEPTO')) {
                     $OR->setEstat(ReservaespaisPeer::ANULADA);
                     $OR->setDataacceptaciocondicions(date('Y-m-d', time()));
                     $OR->save();
                     $this->redirect('@hospici_llista_reserves?estat=RESERVA_ANULADA');
                 } else {
                     $this->redirect('@hospici_llista_reserves?estat=ERROR_TECNIC');
                 }
             } else {
                 $this->redirect('@hospici_llista_reserves?estat=ERROR_TECNIC');
             }
             break;
     }
     //Si ja hi hem fet operacions... carreguem l'actual, sinó en fem un de nou.
     if (isset($FU) && $FU instanceof UsuarisForm) {
         $this->FUsuari = $FU;
     } else {
         $this->FUsuari = UsuarisPeer::initialize($this->IDU, $this->IDS, false, true);
     }
     $this->LMatricules = MatriculesPeer::h_getMatriculesUsuari($this->IDU);
     $this->LReserves = ReservaespaisPeer::h_getReservesUsuaris($this->IDU, $this->IDS);
     $this->LEntrades = EntradesReservaPeer::getEntradesUsuari($this->IDU);
     $this->LFormularis = FormularisRespostesPeer::getFormularisUsuari($this->IDU);
     // $this->LMissatges = MissatgesPeer::getMissatgesUsuari();
 }