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); }
public function executeGMissatges(sfWebRequest $request) { $this->setLayout('gestio'); $this->IDS = $this->getUser()->getSessionPar('idS'); $this->IDU = $this->getUser()->getSessionPar('idU'); //Netegem cerca if ($request->getParameter('accio') == 'I') { $this->CERCA = $this->getUser()->setSessionPar('cerca', array('text' => '')); $this->PAGINA = $this->getUser()->setSessionPar('p', 1); $this->accio = $this->getUser()->setSessionPar('accio', ""); } //Actualitzem el requadre de cerca $this->FCerca = new CercaForm(); $this->FCerca->bind($request->getParameter('cerca')); $this->CERCA = $this->getUser()->ParReqSesForm($request, 'cerca', array('text' => "")); $this->PAGINA = $this->getUser()->ParReqSesForm($request, 'p', 1); $this->accio = $this->getUser()->ParReqSesForm($request, 'accio', ""); $this->MODE = array(); if ($request->isMethod('POST') || $request->isMethod('GET')) { $accio = $request->getParameter('accio'); if ($request->hasParameter('BCERCA')) { $this->accio = 'C'; } if ($request->hasParameter('BNOU')) { $this->accio = 'N'; } if ($request->hasParameter('BSAVE')) { $this->accio = 'S'; } if ($request->hasParameter('BDELETE')) { $this->accio = 'D'; } } $this->getUser()->setSessionPar('accio', $this->accio); switch ($this->accio) { //Entrem per primer cop a aquest apartat case 'I': $this->MISSATGES = MissatgesPeer::doSearch($this->CERCA['text'], $this->PAGINA, false, $this->IDS); $this->getUser()->addLogAction('inside', 'gMissatges'); break; case 'N': $this->MODE['NOU'] = true; $this->FMissatge = MissatgesPeer::inicialitza(0, $this->IDU, $this->IDS); $this->getUser()->setSessionPar('IDM', 0); $this->IDU = $this->getUser()->getSessionPar('idU'); break; case 'E': $this->MODE['EDICIO'] = true; $IDM = $request->getParameter('IDM'); $this->getUser()->setSessionPar('IDM', $IDM); $this->FMissatge = MissatgesPeer::inicialitza($IDM, $this->IDU, $this->IDS); $this->IDU = $this->getUser()->getSessionPar('idU'); break; case 'S': $IDM = $this->getUser()->getSessionPar('IDM'); $this->FMissatge = MissatgesPeer::inicialitza($IDM, $this->IDU, $this->IDS); $this->FMissatge->bind($request->getParameter('missatges')); if ($this->FMissatge->isValid()) { $this->FMissatge->save(); $this->getUser()->addLogAction($accio, 'gMisatges', $this->FMissatge->getObject()); //Si el missatge és global, enviarem un mail a tothom. if ($this->FMissatge->getObject()->getIsglobal()) { $ADMIN = OptionsPeer::getString('MAIL_ADMIN', $this->IDS); //Carreguem el correu de l'administrador $OM = $this->FMissatge->getObject(); //Carreguem el missatge que hem entrat $MAILS = UsuarisPeer::getAdminMails(); //Carreguem els mails dels administradors $BODY = OptionsPeer::getString('BODY_MAIL_MISSATGE_GLOBAL', $this->IDS); $BODY = str_replace('{NOM}', $OM->getUsuaris()->getNomComplet(), $BODY); $BODY = str_replace('{SITE}', $OM->getSiteNom(), $BODY); $BODY = str_replace('{ENLLAC}', $this->getController()->genUrl('gestio/gMissatges?accio=E&IDM=' . $OM->getMissatgeid(), true), $BODY); $SUBJECT = 'Hospici : Nou missatge global'; self::sendMail($ADMIN, $MAILS, $SUBJECT, $BODY); //Enviem el missatge. } $this->redirect('gestio/gMissatges?accio=I'); } $this->MODE['EDICIO'] = true; break; case 'D': $this->IDM = $this->getUser()->getSessionPar('IDM'); $M = MissatgesPeer::retrieveByPK($this->IDM); if ($M instanceof Missatges) { $M->setActiu(false); $M->save(); $this->getUser()->addLogAction($accio, 'gMisatges', $M); } $this->redirect('gestio/gMissatges?accio=I'); break; case 'SF': $this->MISSATGES = MissatgesPeer::doSearch($this->CERCA['text'], $this->PAGINA, true, $this->IDS); break; default: $this->MISSATGE = new Missatges(); $this->getUser()->setSessionPar('IDM', 0); $this->MISSATGES = MissatgesPeer::doSearch($this->CERCA['text'], $this->PAGINA, false, $this->IDS); break; } }