public function executeIndex()
 {
     $this->getResponse()->setTitle('Monitora i tuoi rappresentanti - ' . sfConfig::get('app_main_title'));
     $this->getResponse()->addMeta('description', 'Cosa fanno i tuoi rappresentanti? Tutte le attività parlamentari aggiornate quotidianamente.', true);
     deppFiltersAndSortVariablesManager::resetVars($this->getUser(), 'module', 'module', array('acts_filter', 'sf_admin/opp_atto/sort', 'votes_filter', 'sf_admin/opp_votazione/sort', 'pol_camera_filter', 'pol_senato_filter', 'sf_admin/opp_carica/sort', 'argomento/atti_filter', 'argomento_leggi/sort', 'argomento_nonleg/sort', 'monitoring_filter'));
     // ultime attivita' della community
     $this->latest_activities = CommunityNewsPeer::getLatestActivities(4);
     // ultime news dal parlamento
     $c = oppNewsPeer::getHomeNewsCriteria();
     $c->addDescendingOrderByColumn(NewsPeer::DATE);
     $itemsperpage = 4;
     $pager = new deppNewsPager('News', $itemsperpage);
     $pager->setCriteria($c);
     $pager->setPage($this->getRequestParameter('page', 1));
     $pager->init();
     $this->pager = $pager;
     // atti in evidenza
     $this->lanci = array();
     $c = new Criteria();
     $c->add(sfLaunchingPeer::LAUNCH_NAMESPACE, 'home');
     $c->add(sfLaunchingPeer::OBJECT_MODEL, 'OppAtto');
     $c->setLimit(8);
     $c->addDescendingOrderByColumn(sfLaunchingPeer::PRIORITY);
     $evidences = sfLaunchingPeer::doSelect($c);
     foreach ($evidences as $evidence) {
         $atto = OppAttoPeer::retrieveByPk($evidence->getObjectId());
         $this->lanci[] = $atto->getId();
     }
     // post del blog
     $this->post_pager = sfSimpleBlogPostPeer::getTaggedPager('in evidenza', sfConfig::get('app_sfSimpleBlog_post_max_per_page', 10), $this->getRequestParameter('page', 1));
     // estrae le circoscrizioni, compreso il valore 0
     $this->senato_constituencies = OppCaricaPeer::getAllConstituencies('senato', false);
     $this->camera_constituencies = OppCaricaPeer::getAllConstituencies('camera', false);
 }
 public function executeList()
 {
     $this->session = $this->getUser();
     $ramo = $this->getRequestParameter('ramo', 'camera');
     // estrae i gruppi del ramo
     $this->all_groups = OppGruppoPeer::getAllGroups($ramo, 17, 'tutti');
     // estrae le circoscrizioni, compreso il valore 0
     $this->all_constituencies = OppCaricaPeer::getAllConstituencies($ramo, 'tutte');
     // reset dei filtri se richiesto esplicitamente
     if ($this->getRequestParameter('reset_filters', 'false') == 'true') {
         $this->getRequest()->getParameterHolder()->set('filter_group', '0');
         $this->getRequest()->getParameterHolder()->set('filter_const', '0');
     }
     //estrazione parlamentari
     $this->processFilters(array('group', 'const'), $ramo);
     // if all filters were reset, then restart
     if ($this->getRequestParameter('filter_group') == '0' && $this->getRequestParameter('filter_const') == '0') {
         $this->redirect('@parlamentari?ramo=' . $ramo);
     }
     $this->processSort();
     $c = new Criteria();
     $c->clearSelectColumns();
     $c->addSelectColumn(OppCaricaPeer::ID);
     $c->addSelectColumn(OppPoliticoPeer::ID);
     $c->addSelectColumn(OppPoliticoPeer::COGNOME);
     $c->addSelectColumn(OppPoliticoPeer::NOME);
     $c->addSelectColumn(OppCaricaPeer::CIRCOSCRIZIONE);
     $c->addSelectColumn(OppCaricaPeer::PRESENZE);
     $c->addSelectColumn(OppCaricaPeer::ASSENZE);
     $c->addSelectColumn(OppCaricaPeer::MISSIONI);
     $c->addSelectColumn(OppCaricaPeer::INDICE);
     $c->addSelectColumn(OppCaricaPeer::POSIZIONE);
     $c->addSelectColumn(OppCaricaPeer::MEDIA);
     $c->addSelectColumn(OppCaricaPeer::RIBELLE);
     $c->addSelectColumn(OppPoliticoPeer::N_MONITORING_USERS);
     $c->addSelectColumn(OppCaricaPeer::DATA_INIZIO);
     $c->addSelectColumn(OppCaricaPeer::DATA_FINE);
     $c->addJoin(OppCaricaPeer::POLITICO_ID, OppPoliticoPeer::ID, Criteria::INNER_JOIN);
     if ($ramo == 'camera') {
         $this->getResponse()->setTitle('elenco dei deputati - ' . sfConfig::get('app_main_title'));
         $this->response->addMeta('description', 'Elenco dei deputati della legislatura con assenze, indice di produttività e voti ribelli', true);
         $c->add(OppCaricaPeer::LEGISLATURA, '17', Criteria::EQUAL);
         $c->add(OppCaricaPeer::TIPO_CARICA_ID, '1', Criteria::EQUAL);
         //conteggio numero deputati
         $c1 = new Criteria();
         $c1->add(OppCaricaPeer::LEGISLATURA, '17', Criteria::EQUAL);
         $c1->add(OppCaricaPeer::TIPO_CARICA_ID, '1', Criteria::EQUAL);
         $c1->add(OppCaricaPeer::DATA_FINE, null, Criteria::EQUAL);
         $this->numero_parlamentari = OppCaricaPeer::doCount($c1);
     } else {
         $this->getResponse()->setTitle('elenco dei senatori - ' . sfConfig::get('app_main_title'));
         $this->response->addMeta('description', 'Elenco dei senatori della legislatura con assenze, indice di produttività e voti ribelli', true);
         $cton = $c->getNewCriterion(OppCaricaPeer::LEGISLATURA, '17', Criteria::EQUAL);
         //in questo modo considero i senatori a vita
         $cton1 = $c->getNewCriterion(OppCaricaPeer::LEGISLATURA, null, Criteria::EQUAL);
         $cton->addOr($cton1);
         $c->add($cton);
         $cton = $c->getNewCriterion(OppCaricaPeer::TIPO_CARICA_ID, '4', Criteria::EQUAL);
         $cton1 = $c->getNewCriterion(OppCaricaPeer::TIPO_CARICA_ID, '5', Criteria::EQUAL);
         $cton->addOr($cton1);
         $c->add($cton);
         //conteggio numero senatori
         $c1 = new Criteria();
         $c1->add(OppCaricaPeer::LEGISLATURA, '17', Criteria::EQUAL);
         $c1->add(OppCaricaPeer::TIPO_CARICA_ID, '4', Criteria::EQUAL);
         $c1->add(OppCaricaPeer::DATA_FINE, null, Criteria::EQUAL);
         $numero_senatori = OppCaricaPeer::doCount($c1);
         //conteggio numero senatori a vita
         $c2 = new Criteria();
         $c2->add(OppCaricaPeer::TIPO_CARICA_ID, '5', Criteria::EQUAL);
         $numero_senatori_a_vita = OppCaricaPeer::doCount($c2);
         $this->numero_parlamentari = $numero_senatori + $numero_senatori_a_vita;
     }
     $this->addSortCriteria($c);
     $this->addFiltersCriteria($c);
     $c->add(OppCaricaPeer::DATA_FINE, null, Criteria::EQUAL);
     $this->parlamentari = OppCaricaPeer::doSelectRS($c);
     $this->n_parlamentari = OppCaricaPeer::doCount($c);
     //estrazione parlamentari decaduti
     $c = new Criteria();
     $c->clearSelectColumns();
     $c->addSelectColumn(OppCaricaPeer::ID);
     $c->addSelectColumn(OppPoliticoPeer::ID);
     $c->addSelectColumn(OppPoliticoPeer::COGNOME);
     $c->addSelectColumn(OppPoliticoPeer::NOME);
     $c->addSelectColumn(OppCaricaPeer::CIRCOSCRIZIONE);
     $c->addSelectColumn(OppCaricaPeer::PRESENZE);
     $c->addSelectColumn(OppCaricaPeer::ASSENZE);
     $c->addSelectColumn(OppCaricaPeer::MISSIONI);
     $c->addSelectColumn(OppCaricaPeer::INDICE);
     $c->addSelectColumn(OppCaricaPeer::POSIZIONE);
     $c->addSelectColumn(OppCaricaPeer::MEDIA);
     $c->addSelectColumn(OppCaricaPeer::RIBELLE);
     $c->addSelectColumn(OppPoliticoPeer::N_MONITORING_USERS);
     $c->addSelectColumn(OppCaricaPeer::DATA_INIZIO);
     $c->addSelectColumn(OppCaricaPeer::DATA_FINE);
     $c->addJoin(OppCaricaPeer::POLITICO_ID, OppPoliticoPeer::ID, Criteria::INNER_JOIN);
     if ($ramo == 'camera') {
         $c->add(OppCaricaPeer::TIPO_CARICA_ID, '1', Criteria::EQUAL);
     } else {
         $c->add(OppCaricaPeer::TIPO_CARICA_ID, '4', Criteria::EQUAL);
     }
     $c->add(OppCaricaPeer::LEGISLATURA, '17', Criteria::EQUAL);
     $c->add(OppCaricaPeer::DATA_FINE, 'NULL', Criteria::NOT_EQUAL);
     $this->parlamentari_decaduti = OppCaricaPeer::doSelectRS($c);
 }