コード例 #1
0
 public function executeOrgani()
 {
     $c = new Criteria();
     if ($this->getRequestParameter('ramo') == 'camera') {
         $this->getResponse()->setTitle('Componenti e statistiche di commissioni e giunte della Camera - ' . sfConfig::get('app_main_title'));
         $this->response->addMeta('description', 'Il potere dei gruppi parlamentari in tutti gli organi della Camera dei Deputati', true);
         $c->add(OppSedePeer::RAMO, 'C');
     } else {
         $this->getResponse()->setTitle('Componenti e statistiche di commissioni e giunte del Senato - ' . sfConfig::get('app_main_title'));
         $this->response->addMeta('description', 'Il potere dei gruppi parlamentari in tutti gli organi del Senato', true);
         $c->add(OppSedePeer::RAMO, 'S');
     }
     $c->add(OppSedePeer::TIPOLOGIA, 'Presidenza');
     $this->comm = OppSedePeer::doSelectOne($c);
     $this->ramo = $this->getRequestParameter('ramo');
     $gruppi_all = array();
     $gruppi_p = array();
     $gruppi_q = array();
     $gruppi_vp = array();
     $gruppi_s = array();
     $gruppi_c = array();
     $membri_regione = array(21 => 0, 23 => 0, 25 => 0, 32 => 0, 34 => 0, 36 => 0, 42 => 0, 45 => 0, 52 => 0, 55 => 0, 57 => 0, 62 => 0, 65 => 0, 67 => 0, 72 => 0, 75 => 0, 77 => 0, 78 => 0, 82 => 0, 88 => 0);
     $c = new Criteria();
     $c->addJoin(OppCaricaInternaPeer::CARICA_ID, OppCaricaPeer::ID);
     $c->addJoin(OppCaricaInternaPeer::SEDE_ID, OppSedePeer::ID);
     if ($this->getRequestParameter('ramo') == 'camera') {
         $c->add(OppSedePeer::RAMO, array('C', 'CS'), Criteria::IN);
         $c->add(OppCaricaPeer::TIPO_CARICA_ID, 1);
     } else {
         $c->add(OppSedePeer::RAMO, array('S', 'CS'), Criteria::IN);
         $c->add(OppCaricaPeer::TIPO_CARICA_ID, 4);
     }
     $c->add(OppCaricaInternaPeer::DATA_FINE, NULL, Criteria::ISNULL);
     $membri = OppCaricaInternaPeer::doSelect($c);
     foreach ($membri as $membro) {
         $regione = strtolower(str_replace(array(" ", "'", "-"), "_", $membro->getOppCarica()->getCircoscrizione()));
         $codice_regione = sfConfig::get('app_circoscrizioni_' . $regione);
         if (array_key_exists($codice_regione, $membri_regione)) {
             $membri_regione[$codice_regione] = $membri_regione[$codice_regione] + 1;
         }
         $gruppo_id = OppCaricaHasGruppoPeer::getGruppoCorrentePerCarica($membro->getCaricaId())->getId();
         $tipo_carica = OppTipoCaricaPeer::retrieveByPk($membro->getTipoCaricaId())->getNome();
         if (array_key_exists($gruppo_id, $gruppi_all)) {
             $gruppi_all[$gruppo_id] = $gruppi_all[$gruppo_id] + 1;
         } else {
             $gruppi_all[$gruppo_id] = 1;
         }
         if ($tipo_carica == 'Presidente') {
             if (array_key_exists($gruppo_id, $gruppi_p)) {
                 $gruppi_p[$gruppo_id] = $gruppi_p[$gruppo_id] + 1;
             } else {
                 $gruppi_p[$gruppo_id] = 1;
             }
         }
         if ($tipo_carica == 'Questore') {
             if (array_key_exists($gruppo_id, $gruppi_q)) {
                 $gruppi_q[$gruppo_id] = $gruppi_q[$gruppo_id] + 1;
             } else {
                 $gruppi_q[$gruppo_id] = 1;
             }
         }
         if ($tipo_carica == 'Vicepresidente') {
             if (array_key_exists($gruppo_id, $gruppi_vp)) {
                 $gruppi_vp[$gruppo_id] = $gruppi_vp[$gruppo_id] + 1;
             } else {
                 $gruppi_vp[$gruppo_id] = 1;
             }
         }
         if ($tipo_carica == 'Segretario') {
             if (array_key_exists($gruppo_id, $gruppi_s)) {
                 $gruppi_s[$gruppo_id] = $gruppi_s[$gruppo_id] + 1;
             } else {
                 $gruppi_s[$gruppo_id] = 1;
             }
         }
         if ($tipo_carica == 'Componente') {
             if (array_key_exists($gruppo_id, $gruppi_c)) {
                 $gruppi_c[$gruppo_id] = $gruppi_c[$gruppo_id] + 1;
             } else {
                 $gruppi_c[$gruppo_id] = 1;
             }
         }
     }
     $this->gruppi_all = $gruppi_all;
     $this->gruppi_p = $gruppi_p;
     $this->gruppi_q = $gruppi_q;
     $this->gruppi_vp = $gruppi_vp;
     $this->gruppi_s = $gruppi_s;
     $this->gruppi_c = $gruppi_c;
     $this->membri_regione = $membri_regione;
 }