Esempio n. 1
0
 /**
  * Executem el login del modul administrador
  **/
 public function executeULogin(sfWebRequest $request)
 {
     $this->setLayout('gestio');
     $this->accio = $request->getParameter('accio', '');
     $this->IDS = $this->getUser()->ParReqSesForm($request, 'idS', 1);
     //Per defecte entro al IDS = 1 que és la Casa de Cultura de Girona.
     $this->FLogin = new LoginForm(array('site' => $this->IDS, 'nick' => "", 'password' => ''));
     $this->ERROR = "";
     $this->FB = myUser::f_FbAuth(false, $this->getController()->genUrl('@fb_login', true));
     //Retorna l'usuari que s'ha autentificat amb facebook
     if ($request->hasParameter('BLOGIN')) {
         $this->accio = "LOGIN";
     }
     if ($request->hasParameter('BNEWUSER')) {
         $this->accio = "NEW_USER";
     }
     if ($request->hasParameter('BSAVENEWUSER')) {
         $this->accio = "SAVE_NEW_USER";
     }
     if ($request->hasParameter('BREMEMBER')) {
         $this->accio = "REMEMBER";
     }
     switch ($this->accio) {
         case 'LOGOUT':
             $this->getUser()->setSessionPar('idU', 0);
             $this->getUser()->setSessionPar('idS', 0);
             $this->getUser()->setSessionPar('idN', NivellsPeer::CAP);
             $this->getUser()->setAuthenticated(false);
             $this->getUser()->clearCredentials();
             $this->redirect('gestio/uLogin');
             break;
             //Fem un login via facebook
         //Fem un login via facebook
         case 'FB_LOGIN':
             $FB = myUser::f_FbAuth(false);
             $USUARI = UsuarisPeer::getUserFromFacebook($FB['user']['id']);
             if ($USUARI instanceof Usuaris) {
                 $this->getUser()->setSessionPar('idS', $this->IDS);
                 $this->makeLogin($USUARI, $this->IDS);
             } else {
                 $this->getUser()->addLogAction('error', 'fb_login', $FB);
                 $this->ERROR = "No s'ha trobat cap usuari vinculat amb el seu compte de facebook.<br />Per vincular-lo ha d'accedir i fer-ho des del seu administrador o bé crear un compte nou.";
             }
             break;
             //Fem un LOGIN
         //Fem un LOGIN
         case 'LOGIN':
             $L = $request->getParameter('login');
             $this->FLogin->bind($L);
             if ($this->FLogin->isValid()) {
                 //Consultem l'usuari. Només miraré els permisos si és un "administrador"
                 $USUARI = UsuarisPeer::getUserLogin($L['nick'], $L['password'], null);
                 if ($USUARI instanceof Usuaris) {
                     $this->IDS = $L['site'];
                     if (is_numeric($this->IDS)) {
                         $_SESSION[$USUARI->getNomComplet()] = $USUARI->getNomComplet();
                         $this->getUser()->setSessionPar('idS', $this->IDS);
                         $this->makeLogin($USUARI, $this->IDS);
                     } else {
                         $this->getUser()->addLogAction('error', 'login', $L);
                         $this->ERROR = "Hi ha hagut algun problema amb el SITE.<br />Contacti amb la Casa de Cultura si us plau.";
                     }
                 } else {
                     $this->getUser()->addLogAction('error', 'login', $L);
                     $this->ERROR = "L'usuari o la contrasenya són incorrectes";
                 }
             } else {
                 $this->getUser()->addLogAction('error', 'login', $L);
                 $this->ERROR = "El DNI o la contrasenya són incorrectes";
             }
             break;
             //Creem un nou usuari
         //Creem un nou usuari
         case 'NEW_USER':
             $this->FUSUARI = UsuarisPeer::initialize(0, $this->IDS, false, true);
             break;
         case 'SAVE_NEW_USER':
             $PR = $request->getParameter('usuaris');
             $this->FUSUARI = UsuarisPeer::initialize(0, $this->IDS, false, true);
             $this->FUSUARI->bind($PR);
             if ($this->FUSUARI->isValid()) {
                 $this->FUSUARI->save();
                 $OU = $this->FUSUARI->getObject();
                 UsuarisPeer::addSite($OU->getUsuariId(), $this->IDS);
                 $this->makeLogin($OU, $this->IDS);
             } else {
                 $this->MISSATGE = array('Hi ha hagut algun problema enviant la sol·licitud.');
             }
             break;
             //Si fem um remember de contrassenya
         //Si fem um remember de contrassenya
         case 'REMEMBER':
             $this->redirect('gestio/uRemember');
             break;
         default:
             if ($this->getUser()->isAuthenticated() && $this->getUser()->getSessionPar('idU') > 0) {
                 $USUARI = UsuarisPeer::retrieveByPK($this->getUser()->getSessionPar('idU'));
                 $this->makeLogin($USUARI, $this->IDS);
             }
     }
 }
Esempio n. 2
0
 /**
  * Gestió de formularis a través de mail     
  * */
 public function executeFormularis(sfWebRequest $request)
 {
     $this->setLayout('gestio');
     $this->DEFAULT = false;
     $this->IDU = $this->getUser()->getSessionPar('idU');
     $this->IDS = $this->getUser()->getSessionPar('idS');
     //Entren crides i es mostra una reposta en web si ha anat bé o no.
     $PARAMETRES = Encript::Desencripta($request->getParameter('PAR'));
     $PAR = unserialize($PARAMETRES);
     switch ($PAR['formulari']) {
         //Paràmetres [id = IDReservaEspais]
         //Només es podrà si l'estat actual és ESPERA_ACCEPTACIÓ_CONDICIONS
         case 'Reserva_Espais_Mail_Accepta_Condicions':
             $OR = ReservaespaisPeer::retrieveByPK($PAR['id']);
             //Fem un login i després acceptem les condicions
             $OU = UsuarisPeer::retrieveByPK($OR->getUsuarisUsuariid());
             $this->makeLogin($OU->getDNI(), $OU->getPasswd());
             if ($OR instanceof Reservaespais && $OR->setAcceptada()) {
                 $this->redirect('@hospici_llista_reserves?estat=RESERVA_ACCEPTADA');
             } else {
                 $this->redirect('@hospici_llista_reserves?estat=ERROR_TECNIC');
             }
             UsuarisPeer::addSite($OR->getUsuarisUsuariid(), $OR->getSiteid());
             break;
             //Des del mail la persona no accepta i rebutja les condicions.
         //Des del mail la persona no accepta i rebutja les condicions.
         case 'Reserva_Espais_Mail_Rebutja_Condicions':
             $OR = ReservaespaisPeer::retrieveByPK($PAR['id']);
             //Fem un login i després acceptem les condicions
             $OU = UsuarisPeer::retrieveByPK($OR->getUsuarisUsuariid());
             $this->makeLogin($OU->getDNI(), $OU->getPasswd());
             if ($OR instanceof Reservaespais && $OR->setRebutjada()) {
                 $this->redirect('@hospici_llista_reserves?estat=RESERVA_ANULADA');
             } else {
                 $this->redirect('@hospici_llista_reserves?estat=ERROR_TECNIC');
             }
             UsuarisPeer::addSite($OR->getUsuarisUsuariid(), $OR->getSiteid());
             break;
         default:
             break;
     }
 }
Esempio n. 3
0
 /**
  * Funció que guarda una matrícula després d'enviar-ho des del gestor o bé des de l'hospici. 
  * @param $idU Identificador d'usuari
  * @param $idC Identificador de curs
  * @param $idM Identificador de matrícula si volem reutilitzar-la
  * @param $comment Comentari a guardar
  * @return new Matricules() o $error ( Codi d'error ) 
  * */
 public static function saveNewMatricula($idU, $idC, $comment = "", $idD, $Mode_pagament, $idDadesBancaries = null)
 {
     //Parametre que retornarem
     $RET = array('AVISOS' => array(), 'OM' => new Matricules());
     $OC = CursosPeer::retrieveByPK($idC);
     //Comprovem que l'usuari existeixi.
     if (is_null(UsuarisPeer::retrieveByPK($idU))) {
         $RET['AVISOS']["ERR_USUARI"] = "ERR_USUARI";
         return $RET;
     }
     //Comprovem que el curs existeixi.
     if (is_null(CursosPeer::retrieveByPK($idC))) {
         $RET['AVISOS']["ERR_CURS"] = "ERR_CURS";
         return $RET;
     }
     //Comprovem que aquest usuari no tingui ja una matrícula a aquest curs. Si ja ha estat matriculat, retornem -1.
     $OM = self::getMatriculaUsuari($idU, $idC, $OC->getSiteid());
     if (!is_null($OM)) {
         $RET['AVISOS']["ERR_JA_TE_UNA_MATRICULA"] = "ERR_JA_TE_UNA_MATRICULA";
         return $RET;
     }
     //Ara comprovem les diferents possibilitats. Calculem el preu amb reducció i deixem a 0 si no hi ha places.
     $PREU = CursosPeer::getPreuAmbDescompte($idC, $idD);
     //Entrem les dades que tenim i la deixem en procès per modificar-la després segons el que hagi passat
     $OM = new Matricules();
     $OM->setUsuarisUsuariid($idU);
     $OM->setCursosIdcursos($idC);
     $OM->setEstat(MatriculesPeer::EN_PROCES);
     $OM->setComentari($comment);
     $OM->setDatainscripcio(date('Y-m-d H:i', time()));
     $OM->setPagat($PREU);
     $OM->setTreduccio($idD);
     $OM->setTpagament($Mode_pagament);
     $OM->setSiteId($OC->getSiteid());
     $OM->setActiu(true);
     $OM->setTpvOperacio(0);
     $OM->setTpvOrder(0);
     if ($idDadesBancaries > 0) {
         $OM->setIddadesbancaries($idDadesBancaries);
     } else {
         $OM->setIddadesbancaries(null);
     }
     $OM->save();
     //Guardem l'identificador de la matrícula
     $RET['OM'] = $OM;
     //Si el curs és ple, guardem que està en espera i mostrem que el curs està ple i resta en llista d'espera
     if ($OC->isPle()) {
         if ($Mode_pagament == TipusPeer::PAGAMENT_LLISTA_ESPERA) {
             $OM->setPagat(0);
             $OM->setEstat(MatriculesPeer::EN_ESPERA);
             $OM->save();
             $RET['AVISOS']['CURS_PLE_LLISTA_ESPERA'] = "CURS_PLE_LLISTA_ESPERA";
         } else {
             $RET['AVISOS']['CURS_PLE'] = "CURS_PLE";
         }
         //Si queden places al curs
     } else {
         //Si el tipus de pagament és "reserva" ho guardem com a reservat.
         if ($Mode_pagament == TipusPeer::PAGAMENT_RESERVA) {
             $OM->setPagat(0);
             $OM->setEstat(MatriculesPeer::RESERVAT);
             $OM->setDatapagament(date('Y-m-d', time()));
             $OM->save();
             $RET['AVISOS']['RESERVA_OK'] = "RESERVA_OK";
             self::SendMailMatricula($OM, $OM->getSiteid());
             //Enviem el correu electrònic per a la reserva
         } elseif ($Mode_pagament == TipusPeer::PAGAMENT_TARGETA) {
             $OM->setEstat(MatriculesPeer::EN_PROCES);
             $OM->setDatapagament(date('Y-m-d', time()));
             $OM->save();
             $RET['AVISOS']['PAGAMENT_TPV'] = "PAGAMENT_TPV";
         } elseif ($Mode_pagament == TipusPeer::PAGAMENT_METALIC) {
             //Guardem la matrícula tal qual està.
             $OM->setEstat(MatriculesPeer::ACCEPTAT_PAGAT);
             $OM->setPagat($PREU);
             $OM->setDatapagament(date('Y-m-d', time()));
             $OM->save();
             $RET['AVISOS']['MATRICULA_METALIC_OK'] = "MATRICULA_METALIC_OK";
             self::SendMailMatricula($OM, $OM->getSiteid());
         } elseif ($Mode_pagament == TipusPeer::PAGAMENT_CODI_BARRES) {
             //Guardem la matrícula tal qual i marquem com a no pagada fins que vagi al banc a pagar-la.
             $OM->setEstat(MatriculesPeer::ACCEPTAT_NO_PAGAT);
             $OM->setPagat($PREU);
             $OM->setDatapagament(null);
             $OM->save();
             $RET['AVISOS']['MATRICULA_CODI_BARRES'] = "MATRICULA_CODI_BARRES";
             self::SendMailMatricula($OM, $OM->getSiteid());
         } elseif ($Mode_pagament == TipusPeer::PAGAMENT_DOMICILIACIO) {
             $OM->setPagat($PREU);
             $OM->setEstat(MatriculesPeer::ACCEPTAT_NO_PAGAT);
             $OM->setTpagament(MatriculesPeer::PAGAMENT_DOMICILIACIO);
             $OM->setDatapagament(null);
             $OM->save();
             $RET['AVISOS']['MATRICULA_DOMICILIACIO_OK'] = "MATRICULA_DOMICILIACIO_OK";
             self::SendMailMatricula($OM, $OM->getSiteid());
         }
         UsuarisPeer::addSite($OM->getUsuarisUsuariid(), $OM->getSiteId());
     }
     return $RET;
 }
Esempio n. 4
0
 /**
  * Funció que carrega les dades i guarda una matrícula. També li posa un estat i un preu segons el que s'ha escollit.
  * @param $idU Identificador d'usuari
  * @param $idC Identificador de curs
  * @param $idM Identificador de matrícula si volem reutilitzar-la
  * @param $comment Comentari a guardar
  * @return new Matricules() o $error ( Codi d'error ) 
  * */
 public static function saveNewMatricula($idU, $idC, $idM = 0, $comment = "", $Descompte = self::REDUCCIO_CAP)
 {
     //Carreguem les dades de l'usuari
     $OU = UsuarisPeer::retrieveByPK($idU);
     $OC = CursosPeer::retrieveByPK($idC);
     //Si tenim un codi de matrícula, la carreguem.
     $OM = self::retrieveByPK($idM);
     if (!$OM instanceof Matricules) {
         $OM = new Matricules();
     }
     //Si ho hem carregat tot correctament, seguim
     if ($OU instanceof Usuaris && $OC instanceof Cursos && $OM instanceof Matricules) {
         //Comprovem si la matrícula ja s'ha fet.
         if (self::hasMatriculaUsuari($idU, $idC, $OC->getSiteid()) > 0) {
             $OM = 1;
             //Retorna aquest error quan ja hi ha una matrícula del mateix curs per aquesta persona
         } else {
             //Mirem si hi ha places i marquem l'estat
             $PLACES = $OC->getPlacesArray();
             if ($PLACES['OCUPADES'] < $PLACES['TOTAL']) {
                 //Si el pagament és amb targeta marquem l'estat EN_PROCES
                 if ($OC->getIsEntrada() == CursosPeer::HOSPICI_RESERVA_TARGETA) {
                     $OM->setPagat(0);
                     $OM->setEstat(self::EN_PROCES);
                 } else {
                     $OM->setPagat(0);
                     $OM->setEstat(self::ACCEPTAT_NO_PAGAT);
                 }
             } else {
                 $OM->setPagat(0);
                 $OM->setEstat(self::EN_ESPERA);
             }
             $OM->setUsuarisUsuariid($OU->getUsuariid());
             $OM->setCursosIdcursos($OC->getIdCursos());
             $OM->setComentari($comment);
             $OM->setDatainscripcio(date('Y-m-d h:i', time()));
             $OM->setTreduccio($Descompte);
             //Si el pagament és havent marcat Hospici només reserva... posem pagament POSTERIOR.
             if ($OC->getIsEntrada() == CursosPeer::HOSPICI_RESERVA) {
                 $OM->setTpagament(self::PAGAMENT_METALIC);
             } else {
                 $OM->setTpagament(self::PAGAMENT_TARGETA);
             }
             $OM->setSiteId($OC->getSiteid());
             $OM->setActiu(true);
             $OM->save();
             //Un cop feta la matrícula, hem de donar visibilitat a l'usuari
             UsuarisPeer::addSite($OU->getUsuariid(), $OC->getSiteid());
         }
     } else {
         $OM = 0;
         //Retorna aquest error quan hi ha alguna dada inicial malament o objecte que no existeix
     }
     return $OM;
 }
Esempio n. 5
0
 /**
  * Gestió de formularis a través de mail     
  * */
 public function executeFormularis(sfWebRequest $request)
 {
     $this->setLayout('gestio');
     $this->DEFAULT = false;
     $this->IDU = $this->getUser()->getSessionPar('idU');
     $this->IDS = $this->getUser()->getSessionPar('idS');
     //Entren crides i es mostra una reposta en web si ha anat bé o no.
     $PARAMETRES = Encript::Desencripta($request->getParameter('PAR'));
     $PAR = unserialize($PARAMETRES);
     switch ($PAR['formulari']) {
         //Paràmetres [id = IDReservaEspais]
         //Només es podrà si l'estat actual és ESPERA_ACCEPTACIÓ_CONDICIONS
         case 'Reserva_Espais_Mail_Accepta_Condicions':
             $OR = ReservaespaisPeer::retrieveByPK($PAR['id']);
             //Fem un login i després acceptem les condicions
             $OU = UsuarisPeer::retrieveByPK($OR->getUsuarisUsuariid());
             $this->makeLogin($OU->getDNI(), $OU->getPasswd());
             if ($OR instanceof Reservaespais) {
                 if ($OR->setAcceptada()) {
                     myUser::addLogTimeline('acceptada', 'Reserva (Hospici)', $this->IDU, $OR->getSiteId(), $OR->getReservaespaiid());
                     //Enviem un mail a secretaria informant de l'acceptació de les condicions
                     $this->sendMail(OptionsPeer::getString('MAIL_FROM', $OR->getSiteid()), OptionsPeer::getString('MAIL_SECRETARIA', $OR->getSiteid()), "RESERVA " . $OR->getCodi() . " ACCEPTADA", "Les condicions per a la reserva amb codi " . $OR->getCodi() . " organitzada per " . $OR->getOrganitzadors() . " han estat <b>ACCEPTADES</b>. <br /> Per poder accedir-hi podeu clicar el següent <a href=\"http://www.casadecultura.cat/gestio/gReserves/accio/E/IDR/" . $OR->getReservaespaiid() . "\">enllaç</a> havent entrat prèviament a la intranet.");
                     $this->redirect('@hospici_llista_reserves?estat=RESERVA_ACCEPTADA');
                 } else {
                     $this->redirect('@hospici_llista_reserves?estat=ERROR_JA_CONTESTAT');
                 }
             } else {
                 $this->redirect('@hospici_llista_reserves?estat=ERROR_TECNIC');
             }
             UsuarisPeer::addSite($OR->getUsuarisUsuariid(), $OR->getSiteid());
             break;
             //Des del mail la persona no accepta i rebutja les condicions.
         //Des del mail la persona no accepta i rebutja les condicions.
         case 'Reserva_Espais_Mail_Rebutja_Condicions':
             $OR = ReservaespaisPeer::retrieveByPK($PAR['id']);
             //Fem un login i després acceptem les condicions
             $OU = UsuarisPeer::retrieveByPK($OR->getUsuarisUsuariid());
             $this->makeLogin($OU->getDNI(), $OU->getPasswd());
             if ($OR instanceof Reservaespais) {
                 if ($OR->setRebutjada()) {
                     myUser::addLogTimeline('no_acceptada', 'Reserva (Hospici)', $this->IDU, $OR->getSiteId(), $OR->getReservaespaiid());
                     //Enviem un mail a secretaria informant del rebuig de les condicions
                     $this->sendMail(OptionsPeer::getString('MAIL_FROM', $OR->getSiteid()), OptionsPeer::getString('MAIL_SECRETARIA', $OR->getSiteid()), "RESERVA " . $OR->getCodi() . " REBUTJADA", "Les condicions per a la reserva amb codi " . $OR->getCodi() . " organitzada per " . $OR->getOrganitzadors() . " han estat <b>REBUTJADES</b>. <br /> Per poder accedir-hi podeu clicar el següent <a href=\"http://www.casadecultura.cat/gestio/gReserves/accio/E/IDR/" . $OR->getReservaespaiid() . "\">enllaç</a> havent entrat prèviament a la intranet.");
                     $this->redirect('@hospici_llista_reserves?estat=RESERVA_ANULADA');
                 } else {
                     $this->redirect('@hospici_llista_reserves?estat=ERROR_JA_CONTESTAT');
                 }
             } else {
                 $this->redirect('@hospici_llista_reserves?estat=ERROR_TECNIC');
             }
             UsuarisPeer::addSite($OR->getUsuarisUsuariid(), $OR->getSiteid());
             break;
         default:
             break;
     }
 }
 /**
  * @return array( status , OER )
  * @return -1 (OH incorrecte)
  * @return -2 (OA incorrecte)
  * @return -3 (OEP incorrecte)
  * @return -4 (Repe)
  * @return -5 (Exhaurides)
  * @return -6 (Error TPV)
  * @return -7 (Es volen comprar 0 entrades)
  * @return 1 (Compra metàl·lic o codi de barres OK)
  * @return 2 (Reserva d'entrada OK)
  * @return 3 (Pagament amb TPV)
  * @return 4 (En llista d'espera)
  * @return 5 (Pagament amb domiciliació) || Aquest encara s'ha d'aplicar correctament.
  * */
 public static function setCompraEntrada($OER)
 {
     $IDH = $OER->getEntradesPreusHorariId();
     $IDU = $OER->getUsuariId();
     $NEntrades = $OER->getQuantitat();
     $Descompte = $OER->getDescompte();
     $TPagament = $OER->getTipusPagament();
     //Paràmetres que retornaré després de la compra d'una entrada.
     $RET = array('status' => 0, 'OER' => null);
     $OH = HorarisPeer::retrieveByPK($IDH);
     //Comprovem que existeixi l'horari
     if (!$OH instanceof Horaris) {
         $RET = array('status' => -1, 'OER' => null);
         //Horari OK.
     } else {
         $IDA = $OH->getActivitatsActivitatid();
         $OA = ActivitatsPeer::retrieveByPK($IDA);
         //Comprovem que existeixi l'activitat
         if (!$OA instanceof Activitats) {
             $RET = array('status' => -2, 'OER' => null);
             //Activitat OK.
         } else {
             //Carrego l'entrada i el preu
             $OEP = EntradesPreusPeer::retrieveByPK($IDH);
             //No s'ha trobat el preu per aquesta activitat i horari.
             if (!$OEP instanceof EntradesPreus) {
                 $RET = array('status' => -3, 'OER' => null);
                 //HORARI_INEXISTENT
             } else {
                 //Comprovem que el nombre d'entrades no sigui 0 o un valor extrany
                 if (!($NEntrades >= 0)) {
                     $RET = array('status' => -7, 'OER' => null);
                     //Número d'entrades incorrecte
                 } else {
                     //Tenim un horari carregat i una activitat.
                     $idS = $OH->getSiteid();
                     //Aquest no el farem servir perquè acceptem que les entrades siguin repetides pels usuaris.
                     $HaComprat = 0;
                     //EntradesReservaPeer::ExisteixenEntradesComprades($IDU, $IDH);
                     $PlacesLliures = EntradesReservaPeer::countEntradesActivitatConf($IDH);
                     //Comprovem si l'entrada està repetida
                     if ($HaComprat) {
                         $RET = array('status' => -4, 'OER' => null);
                         //ENTRADA_REPE
                         //No té cap entrada comprada
                     } else {
                         //Mirem si queden places tenint en cmopte que no hi ha llista d'espera.
                         if ($PlacesLliures - $NEntrades < 0 && $TPagament != TipusPeer::PAGAMENT_LLISTA_ESPERA) {
                             return array('status' => -5, 'OER' => null);
                             //NO_QUEDEN_PROU_ENTRADES i no hi ha llista d'espera
                             //Tot OK. Passem al tipus de pagament.
                         } else {
                             //Generem la nova compra o reserva
                             //$OER = EntradesReservaPeer::initialize( $idS , '' , 0 , $IDH , $IDU , $NEntrades , $Descompte , $TPagament )->getObject();
                             //Marquem el preu
                             $OER->setPagat(DescomptesPeer::getPreuAmbDescompte($OEP->getPreu(), $Descompte));
                             $OER->setData(date('Y-m-d H:i', time()));
                             //Mirem el tipus de pagament i deixem l'estat oportú.
                             if ($TPagament == TipusPeer::PAGAMENT_METALIC || $TPagament == TipusPeer::PAGAMENT_CODI_BARRES) {
                                 $OER->setEstat(EntradesReservaPeer::ESTAT_ENTRADA_RESERVADA);
                                 $OER->save();
                                 return array('status' => 1, 'OER' => $OER);
                             } elseif ($TPagament == TipusPeer::PAGAMENT_RESERVA) {
                                 $OER->setPagat(0);
                                 $OER->setEstat(EntradesReservaPeer::ESTAT_ENTRADA_RESERVADA);
                                 $OER->save();
                                 return array('status' => 2, 'OER' => $OER);
                             } elseif ($TPagament == TipusPeer::PAGAMENT_TARGETA) {
                                 $OER->setEstat(EntradesReservaPeer::ESTAT_ENTRADA_EN_PROCES);
                                 $OER->save();
                                 return array('status' => 3, 'OER' => $OER);
                             } elseif ($TPagament == TipusPeer::PAGAMENT_LLISTA_ESPERA) {
                                 $OER->setPagat(0);
                                 $OER->setEstat(EntradesReservaPeer::ESTAT_ENTRADA_EN_ESPERA);
                                 $OER->save();
                                 return array('status' => 4, 'OER' => $OER);
                             } elseif ($TPagament == TipusPeer::PAGAMENT_DOMICILIACIO) {
                                 $OER->setEstat(EntradesReservaPeer::ESTAT_ENTRADA_RESERVADA);
                                 $OER->save();
                                 return array('status' => 5, 'OER' => $OER);
                             }
                             UsuarisPeer::addSite($IDU, $idS);
                         }
                     }
                 }
             }
         }
     }
     return $RET;
 }