Beispiel #1
0
 public function getCharteSigned()
 {
     $charte = CharteInfoTable::getInstance()->getByAssoAndSemestre($this->getId())->fetchOne();
     return $charte ? $charte->getConfirmation() : 0;
 }
Beispiel #2
0
 /**
  * 
  * 
  * @param sfRequest $request A request object
  */
 public function executeShow(sfWebRequest $request)
 {
     $this->asso = $this->getRoute()->getObject();
     $this->redirectUnless($this->asso, 'assos_list');
     if ($this->asso->isPole()) {
         $pole = PoleTable::getInstance()->findOneBy('asso_id', $this->asso->getId());
         $this->assos = AssoTable::getInstance()->getAssosList($pole->getId())->execute();
     }
     /*
      * Si par le passé l'utilisateur a été membre de l'association,
      * mais que ce n'est plus le cas actuellement,
      * il faut afficher une alerte l'invitant à se réinscrire.
      */
     if ($this->asso->getJoignable() && $this->getUser()->isAuthenticated() && !$this->getUser()->getGuardUser()->isMember($this->asso->getLogin())) {
         $r = AssoMemberTable::getInstance()->getAssoMember($this->asso->getId(), $this->getUser()->getGuardUser()->getId())->execute();
         if ($r->count() > 0) {
             $this->flashwarn = 'Vous avez été membre de cette association par le passé.<br /> Pour la rejoindre à nouveau <a href="' . $this->generateUrl('asso_join', $this->asso) . '">cliquez ici</a>.';
         }
     }
     /*
      * Si l'utilisateur est l'ancien président et que l'association n'a pas de président  
      *
      */
     $pres = AssoMemberTable::getInstance()->getPresident($this->asso)->fetchOne();
     if ($this->getUser()->isAuthenticated() && !$pres && ($asso_member = AssoMemberTable::getInstance()->wasPresident($this->asso->getId(), $this->getUser()->getGuardUser()->getId()) || $this->getUser()->getGuardUser()->hasPermission('chartes_valider')) && ($c = CharteInfoTable::getInstance()->getByAssoAndSemestre($this->asso->getId())->andWhere('q.confirmation = ?', false)->execute())) {
         if ($c->count() > 0) {
             $msg = 'En tant qu\'ancien président de cette association, vous devez valider les demandes de passation.<br />
       Les demandes suivantes ont été effectuées :<br /><ul>';
             foreach ($c as $charte) {
                 $msg .= '<li><b>' . $charte->getResponsable()->getName() . '</b> le <em>' . $charte->getDate() . '</em> - <a href="' . $this->generateUrl('asso_charte_confirm', $charte) . '">Confirmer</a> / <a href="' . $this->generateUrl('asso_charte_refuse', $charte) . '">Refuser</a></li>';
             }
             $msg .= '</ul>';
             $this->flashinfo = $msg;
         }
     }
     /*
      * Demande de validation de charte locaux à l'actuel président
      *
      */
     if ($this->getUser()->isAuthenticated() && ($hasdroit = AssoMemberTable::getInstance()->isPresident($this->asso->getId(), $this->getUser()->getGuardUser()->getId()) && ($cl = CharteLocauxTable::getInstance()->getByAssoAndSemestre($this->asso->getId())->andWhere('q.statut = ?', 1)->execute()))) {
         if ($cl->count() > 0) {
             $msg = 'En tant qu\'actuel président de cette association vous devez valider les demandes d\'accès étendu aux locaux.<br />
          Les demandes suivantes ont été effectuées :<br /><br /><ul>';
             foreach ($cl as $locaux) {
                 $msg .= '<li><b>' . $locaux->getResponsable()->getName() . '</b> le <em>' . $locaux->getDate() . '</em><br />Accès demandé:<ul>';
                 if ($locaux->getPorteMde()) {
                     $msg .= '<li>Porte de la MDE</li>';
                 }
                 if ($locaux->getBatA()) {
                     $msg .= '<li>Batiment A</li>';
                 }
                 if ($locaux->getLocauxPic()) {
                     $msg .= '<li>Locaux du Pic</li>';
                 }
                 if ($locaux->getMdeComplete()) {
                     $msg .= '<li>MDE complète</li>';
                 }
                 if ($locaux->getBureauPolar()) {
                     $msg .= '<li>Bureau du Polar</li>';
                 }
                 if ($locaux->getPermPolar()) {
                     $msg .= '<li>Permanence du Polar</li>';
                 }
                 if ($locaux->getSallesMusique()) {
                     $msg .= '<li>Salles de musique</li>';
                 }
                 $msg .= '</ul><br />';
                 $msg .= 'Motif: <br />' . $locaux->getMotif() . '<br />';
                 $msg .= '<a href="' . $this->generateUrl('locaux_accept', $locaux) . '">Accepter</a> / <a href="' . $this->generateUrl('locaux_refuse', $locaux) . '">Refuser</a></li>';
             }
             $msg .= '</ul><br />';
             $this->flashinfo = $msg;
         }
     }
 }