public static function getIndexChartsTopPoliticiansRealTime($ramo, $data, $limit, $group_id = null, $constituency = null, $con = null) { $items = array(); $c = new Criteria(); $c->addJoin(OppPoliticoPeer::ID, OppCaricaPeer::POLITICO_ID); //esclude i presidenti di camera e senato $c->add(OppPoliticoPeer::ID, array(686427, 687024), Criteria::NOT_IN); // prende solo i parlamentari in carica $c->add(OppCaricaPeer::DATA_FINE, NULL, Criteria::ISNULL); $c->addJoin(OppCaricaHasGruppoPeer::CARICA_ID, OppCaricaPeer::ID); $c->addJoin(OppCaricaHasGruppoPeer::GRUPPO_ID, OppGruppoPeer::ID); // prende il gruppo corrente $c->add(OppCaricaHasGruppoPeer::DATA_FINE, NULL, Criteria::ISNULL); if (!is_null($group_id)) { $c->add(OppGruppoPeer::ID, $group_id); } if ($constituency != '') { $c->add(OppCaricaPeer::CIRCOSCRIZIONE, $constituency); } if ($ramo == 'C') { $c->add(OppCaricaPeer::TIPO_CARICA_ID, 1); } elseif ($ramo == 'S') { $c->add(OppCaricaPeer::TIPO_CARICA_ID, array(4, 5), Criteria::IN); } $c->setLimit($limit); $results = OppCaricaPeer::doSelect($c); foreach ($results as $k => $r) { //$gruppi=$r->getOppCaricaHasGruppos(); $gruppo = OppCaricaHasGruppoPeer::getGruppoCorrentePerCarica($r->getId()); $items[$k]['id'] = $r->getId(); $items[$k]['politico_id'] = $r->getPoliticoId(); $items[$k]['nome'] = $r->getOppPolitico()->getNome(); $items[$k]['cognome'] = $r->getOppPolitico()->getCognome(); $items[$k]['sesso'] = $r->getOppPolitico()->getSesso(); $items[$k]['acronimo'] = $gruppo->getAcronimo(); $items[$k]['nome_gruppo'] = $gruppo->getNome(); $items[$k]['circoscrizione'] = $r->getCircoscrizione(); $items[$k]['perc_assenze'] = $r->getAssenze() * 100 / ($r->getAssenze() + $r->getPresenze() + $r->getMissioni()); $items[$k]['assenze'] = $r->getAssenze(); $items[$k]['perc_presenze'] = $r->getPresenze() * 100 / ($r->getAssenze() + $r->getPresenze() + $r->getMissioni()); $items[$k]['presenze'] = $r->getPresenze(); $items[$k]['perc_missioni'] = $r->getMissioni() * 100 / ($r->getAssenze() + $r->getPresenze() + $r->getMissioni()); $items[$k]['missioni'] = $r->getMissioni(); $items[$k]['votazioni'] = $r->getAssenze() + $r->getPresenze() + $r->getMissioni(); $items[$k]['indice'] = $r->getIndice(); $items[$k]['ribelle'] = $r->getRibelle(); $items[$k]['perc_ribelle'] = $r->getRibelle() * 100 / $r->getPresenze(); } return $items; }
function link_to_politicoNomeTipoFromCaricaId($carica_id, $relevance) { $carica = OppCaricaPeer::retrieveByPK($carica_id); if ($carica) { $politico = $carica->getOppPolitico(); $str = $politico->__toString(); } else { return "impossibile trovare carica per {$carica_id}"; } $c = new Criteria(); $c->add(OppCaricaHasGruppoPeer::CARICA_ID, $carica_id); $c->add(OppCaricaHasGruppoPeer::DATA_FINE, NULL); $gruppo_attuale = OppCaricaHasGruppoPeer::doSelectOne($c); $str = $str . " (" . $gruppo_attuale->getOppGruppo()->getAcronimo() . ")"; // Visualizzazione dell'indice di rilevanza $punteggio = $relevance['punteggio']; return link_to($str, '@parlamentare?' . $politico->getUrlParams(), array('class' => 'folk2', 'title' => "punteggio: " . $punteggio)); }
public static function getIncaricoGruppoCorrente($carica_id, $gruppo_id) { $c = new Criteria(); $c->add(OppCaricaHasGruppoPeer::CARICA_ID, $carica_id); $c->add(OppCaricaHasGruppoPeer::GRUPPO_ID, $gruppo_id); $c->add(OppCaricaHasGruppoPeer::DATA_FINE, NULL, Criteria::ISNULL); $g = OppCaricaHasGruppoPeer::doSelectOne($c); if ($g) { $c1 = new Criteria(); $c1->add(self::CHG_ID, $g->getId()); $c1->add(self::DATA_FINE, NULL, Criteria::ISNULL); $incarico = self::doSelectOne($c1); if ($incarico) { return $incarico->getIncarico(); } else { return NULL; } } }
$numero_votazioni = $report['Astenuto'] + $report['Contrario'] + $report['Favorevole'] + $report['Partecipante votazione non valida'] + $report['Presidente di turno'] + $report['Richiedente la votazione e non votante'] + $report['Voto segreto'] + $report['Assente'] + $report['In missione']; $gruppi = OppCaricaHasGruppoPeer::doSelectGruppiPerCarica($carica->getId()); foreach ($gruppi as $nome => $gruppo) { $data_inizio = split("/", $gruppo['data_inizio']); $di = "20" . $data_inizio[2] . "-" . $data_inizio[0] . "-" . $data_inizio[1]; if ($data_fine != '') { $data_fine = split("/", $gruppo['data_fine']); $df = "20" . $data_fine[2] . "-" . $data_fine[0] . "-" . $data_fine[1]; } else { $df = ''; } $ribelle_count = $parlamentare->getRibelleReport($carica->getId(), $report['carica'] == 'Deputato' ? 'C' : 'S', $nome, $di, $df); } print "id carica:" . $carica->getId() . " presenze:" . $presenze . " assenze:" . $report['Assente'] . " missioni:" . $report['In missione'] . "\n"; $carica->setPresenze($presenze); $carica->setAssenze($report['Assente']); $carica->setMissioni($report['In missione']); $carica->save(); if ($presenze != 0) { printf("ribelle %d volte su %d voti\n", $ribelle_count, $presenze); } else { print "ribelle 0 volte su 0 voti (0%)\n"; } $c = new Criteria(); $c->add(OppCaricaHasGruppoPeer::CARICA_ID, $carica->getId(), Criteria::EQUAL); $c->add(OppCaricaHasGruppoPeer::GRUPPO_ID, $gruppo['gruppo_id'], Criteria::EQUAL); $carica_gruppo = OppCaricaHasGruppoPeer::doSelectOne($c); $carica_gruppo->setRibelle($ribelle_count); $carica_gruppo->save(); } print "done.\n";
<?php define('SF_ROOT_DIR', realpath(dirname(__FILE__) . '/..')); define('SF_APP', 'fe'); define('SF_ENVIRONMENT', 'dev'); define('SF_DEBUG', false); require_once SF_ROOT_DIR . DIRECTORY_SEPARATOR . 'apps' . DIRECTORY_SEPARATOR . SF_APP . DIRECTORY_SEPARATOR . 'config' . DIRECTORY_SEPARATOR . 'config.php'; sfContext::getInstance(); print "Fetching data... \n\n"; $c = new Criteria(); $c->add(OppCaricaPeer::ID, $argv[1], Criteria::EQUAL); $carica = OppCaricaPeer::doSelectOne($c); if ($carica) { $parlamentare = OppPoliticoPeer::RetrieveByPk($carica->getPoliticoId()); $gruppi = OppCaricaHasGruppoPeer::doSelectGruppiPerCarica($carica->getId()); foreach ($gruppi as $nome => $gruppo) { $data_inizio = split("/", $gruppo['data_inizio']); $di = "20" . $data_inizio[2] . "-" . $data_inizio[0] . "-" . $data_inizio[1]; if ($gruppo['data_fine'] != '') { $data_fine = split("/", $gruppo['data_fine']); $df = "20" . $data_fine[2] . "-" . $data_fine[0] . "-" . $data_fine[1]; } else { $df = ''; } //$ribelle_count = $parlamentare->getRibelleReport($carica->getId(), ($report['carica']=='Deputato' ? 'C' : 'S'), $nome, $di, $df); //CALCOLO VOTO GRUPPO $c = new Criteria(); $c->clearSelectColumns(); $c->addSelectColumn(OppVotazioneHasGruppoPeer::VOTAZIONE_ID); $c->addSelectColumn(OppVotazioneHasGruppoPeer::VOTO); $c->addJoin(OppVotazioneHasGruppoPeer::VOTAZIONE_ID, OppVotazionePeer::ID, Criteria::LEFT_JOIN);
define('SF_ENVIRONMENT', 'prod'); define('SF_DEBUG', false); require_once SF_ROOT_DIR . DIRECTORY_SEPARATOR . 'apps' . DIRECTORY_SEPARATOR . SF_APP . DIRECTORY_SEPARATOR . 'config' . DIRECTORY_SEPARATOR . 'config.php'; sfContext::getInstance(); $leg = 16; print "Fetching data... \n"; // DEPUTATI E SENATORI $c = new Criteria(); $crit0 = $c->getNewCriterion(OppCaricaPeer::LEGISLATURA, $leg); $crit1 = $c->getNewCriterion(OppCaricaPeer::TIPO_CARICA_ID, 1); $crit2 = $c->getNewCriterion(OppCaricaPeer::TIPO_CARICA_ID, 4); $crit3 = $c->getNewCriterion(OppCaricaPeer::TIPO_CARICA_ID, 5); $crit1->addOr($crit2); $crit1->addOr($crit3); $crit0->addAnd($crit1); $c->add($crit0); $cariche = OppCaricaPeer::doSelect($c); foreach ($cariche as $carica) { $c = new Criteria(); $c->add(OppCaricaHasGruppoPeer::CARICA_ID, $carica->getId()); $gruppi = OppCaricaHasGruppoPeer::doSelect($c); $n_ribellioni = 0; foreach ($gruppi as $gruppo) { if ($gruppo->getRibelle() != NULL) { $n_ribellioni = $n_ribellioni + $gruppo->getRibelle(); } } //$carica->setRibelle($n_ribellioni); //$carica->save(); echo $carica->getOppPolitico()->getCognome() . ": " . $n_ribellioni . "\n"; }
public function _get_most_something($crit, $tipo_carica, $field, $limit = null) { sfLoader::loadHelpers(array('Url', 'Tag', 'Slugger')); // if limit was not passed, then get it from config file if (is_null($limit)) { $limit = sfConfig::get('app_api_classifiche_limit', 5); } $c = clone $crit; $c->add(OppCaricaPeer::TIPO_CARICA_ID, $tipo_carica); $c->addDescendingOrderByColumn($field); $c->setLimit($limit); $rs = OppCaricaPeer::doSelectRS($c); $results = array(); while ($rs->next()) { $record = array(); $record['img_src'] = OppPoliticoPeer::getThumbUrl($rs->getInt(2)); $record['nome'] = $rs->getString(3) . ' ' . $rs->getString(4); $record['nome_link'] = url_for('@parlamentare?id=' . $rs->getInt(2) . '&slug=' . slugify($record['nome'])); $record['gruppi'] = ''; $gruppi = OppCaricaHasGruppoPeer::doSelectGruppiPerCarica($rs->getInt(1)); foreach ($gruppi as $nome => $gruppo) { if (!$gruppo['data_fine']) { $record['gruppi'] = " ({$nome})"; } } switch ($field) { case OppCaricaPeer::PRESENZE: $num_votazioni = $rs->getInt(6) + $rs->getInt(7) + $rs->getInt(8); $record['descr'] = "%s% - %d su %d"; $record['values'] = array(number_format($rs->getInt(6) * 100 / $num_votazioni, 2), $rs->getInt(6), $num_votazioni); break; case OppCaricaPeer::ASSENZE: $num_votazioni = $rs->getInt(6) + $rs->getInt(7) + $rs->getInt(8); $record['descr'] = "%s% - %d su %d"; $record['values'] = array(number_format($rs->getInt(7) * 100 / $num_votazioni, 2), $rs->getInt(7), $num_votazioni); break; case OppCaricaPeer::INDICE: $record['descr'] = "indice di attività: %5.2f"; $record['values'] = array($rs->getFloat(9)); break; case OppPoliticoPeer::N_MONITORING_USERS: $record['descr'] = "è monitorato da %d utenti"; $record['values'] = array($rs->getInt(13)); break; case OppCaricaPeer::RIBELLE: $record['descr'] = "voti diversi dal suo gruppo: %d su %d"; $record['values'] = array($rs->getInt(12), $rs->getInt(6)); break; } $results[] = $record; } return $results; }
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; }
<?php $tr_class = $tr_class == 'even' ? 'odd' : 'even'; ?> <th scope="row"> <p class="politician-id"> <?php echo image_tag('/images/ico-type-politico-portrait.png', array('width' => '40', 'height' => '53', 'highsrc' => OppPoliticoPeer::getThumbUrl($parlamentari->getInt(2)))); ?> <?php use_helper('Slugger'); $slugParlamentare = slugify($parlamentari->getString(3) . ' ' . $parlamentari->getString(4)); echo link_to($parlamentari->getString(3) . ' ' . $parlamentari->getString(4), '@parlamentare?id=' . $parlamentari->getInt(2) . '&slug=' . $slugParlamentare); ?> <?php $gruppi = OppCaricaHasGruppoPeer::doSelectGruppiPerCarica($parlamentari->getInt(1)); ?> <?php foreach ($gruppi as $nome => $gruppo) { ?> <?php if (!$gruppo['data_fine']) { ?> <?php print " (" . $nome . ")"; ?> <?php } ?>
?> ( <?php if (OppCaricaHasGruppoPeer::getGruppoCorrentePerCarica($parlamentari->getInt(1))) { ?> <?php echo OppCaricaHasGruppoPeer::getGruppoCorrentePerCarica($parlamentari->getInt(1))->getAcronimo(); ?> <?php } ?> <?php $gruppi = OppCaricaHasGruppoPeer::doSelectTuttiGruppiPerCarica($parlamentari->getInt(1)); ?> <?php if (count($gruppi) > 1 || !OppCaricaHasGruppoPeer::getGruppoCorrentePerCarica($parlamentari->getInt(1))) { ?> <span style="font-size:10px"> <?php if ($parlamentari->getString(9) != NULL) { ?> <?php echo "<span style='background-color:yellow;'>in carica fino al " . format_date($parlamentari->getString(9), 'dd/MM/yyyy') . "</span>"; ?> <?php } ?> <?php foreach ($gruppi as $g) { ?> <?php
public static function maggioranzaSalva($leg = 17, $votazione_id = 0) { $maggioranza_salva = array(); $c = new Criteria(); $c->addJoin(OppVotazionePeer::SEDUTA_ID, OppSedutaPeer::ID); $c->add(OppVotazionePeer::IS_MAGGIORANZA_SOTTO_SALVA, 1, Criteria::NOT_EQUAL); $crit0 = $c->getNewCriterion(OppVotazionePeer::ESITO, 'Appr.'); $crit1 = $c->getNewCriterion(OppVotazionePeer::ESITO, 'Resp.'); $crit0->addOr($crit1); $c->add($crit0); $c->add(OppSedutaPeer::LEGISLATURA, $leg, Criteria::EQUAL); $c->add(OppVotazionePeer::TITOLO, '%annullata%', Criteria::NOT_LIKE); // Prendi solo votazioni durante il Governo Renzi $c->add(OppSedutaPeer::DATA, '2014-02-22', Criteria::GREATER_EQUAL); $c->addDescendingOrderByColumn(OppSedutaPeer::DATA); if ($votazione_id > 0) { $c->add(OppVotazionePeer::ID, $votazione_id); } $votazioni_magg_su = OppVotazionePeer::doSelect($c); foreach ($votazioni_magg_su as $votazione) { //echo $votazione->getId(); if ($votazione->getOppSeduta()->getRamo() == 'C') { $ramo = 'camera'; } else { $ramo = 'senato'; } $arr_opposizione = array(); $c = new Criteria(); $c->addJoin(OppGruppoPeer::ID, OppGruppoRamoPeer::GRUPPO_ID); $c->add(OppGruppoRamoPeer::DATA_INIZIO, $votazione->getOppSeduta()->getData(), Criteria::LESS_EQUAL); $crit0 = $c->getNewCriterion(OppGruppoRamoPeer::DATA_FINE, NULL, Criteria::ISNULL); $crit1 = $c->getNewCriterion(OppGruppoRamoPeer::DATA_FINE, $votazione->getOppSeduta()->getData(), Criteria::GREATER_EQUAL); $crit0->addOr($crit1); $c->add($crit0); $c->add(OppGruppoRamoPeer::RAMO, $votazione->getOppSeduta()->getRamo()); $gruppi = OppGruppoPeer::doSelect($c); foreach ($gruppi as $g) { if (!OppGruppoIsMaggioranzaPeer::isGruppoMaggioranza($g->getId(), $votazione->getOppSeduta()->getData()) && $g->getNome() != 'Gruppo Misto') { $voto_gruppo = OppVotazioneHasGruppoPeer::getVotoGruppoVotazione($g->getId(), $votazione->getId()); if ($votazione->getEsito() == 'APPROVATA' && $voto_gruppo == 'Contrario' && $ramo == 'camera' || $votazione->getEsito() == 'RESPINTA' && $voto_gruppo == 'Favorevole' && $ramo == 'camera' || $votazione->getEsito() == 'APPROVATA' && ($voto_gruppo == 'Contrario' || $voto_gruppo == 'Astenuto') && $ramo == 'senato' || $votazione->getEsito() == 'RESPINTA' && $voto_gruppo == 'Favorevole' && $ramo == 'senato') { //echo "\n".$votazione->getEsito()."-".$voto_gruppo."- $ramo\n"; //echo "\n".$g->getId()."\n\n"; $c = new Criteria(); $c->add(OppCaricaHasGruppoPeer::GRUPPO_ID, $g->getId()); $c->add(OppCaricaHasGruppoPeer::DATA_INIZIO, $votazione->getOppSeduta()->getData(), Criteria::LESS_EQUAL); $crit0 = $c->getNewCriterion(OppCaricaHasGruppoPeer::DATA_FINE, NULL, Criteria::ISNULL); $crit1 = $c->getNewCriterion(OppCaricaHasGruppoPeer::DATA_FINE, $votazione->getOppSeduta()->getData(), Criteria::GREATER_EQUAL); $crit0->addOr($crit1); $c->add($crit0); $parlamentari = OppCaricaHasGruppoPeer::doSelect($c); //$parlamentari = OppCaricaHasGruppoPeer::getParlamentariGruppoData($g->getId(),$votazione->getOppSeduta()->getData()); foreach ($parlamentari as $p) { $arr_opposizione[] = $p->getCaricaId(); } } } } $c = new Criteria(); $c->add(OppVotazioneHasCaricaPeer::VOTAZIONE_ID, $votazione->getId()); $c->add(OppVotazioneHasCaricaPeer::CARICA_ID, $arr_opposizione, Criteria::IN); if ($votazione->getEsito() == 'APPROVATA' && $votazione->getOppSeduta()->getRamo() == 'C') { $crit0 = $c->getNewCriterion(OppVotazioneHasCaricaPeer::VOTO, 'Assente'); $crit1 = $c->getNewCriterion(OppVotazioneHasCaricaPeer::VOTO, 'Favorevole'); $crit2 = $c->getNewCriterion(OppVotazioneHasCaricaPeer::VOTO, 'Astenuto'); $crit0->addOr($crit1); $crit0->addOr($crit2); $c->add($crit0); } elseif ($votazione->getEsito() == 'RESPINTA') { $crit0 = $c->getNewCriterion(OppVotazioneHasCaricaPeer::VOTO, 'Assente'); $crit1 = $c->getNewCriterion(OppVotazioneHasCaricaPeer::VOTO, 'Contrario'); $crit2 = $c->getNewCriterion(OppVotazioneHasCaricaPeer::VOTO, 'Astenuto'); $crit0->addOr($crit1); $crit0->addOr($crit2); $c->add($crit0); } elseif ($votazione->getEsito() == 'APPROVATA' && $votazione->getOppSeduta()->getRamo() == 'S') { $crit0 = $c->getNewCriterion(OppVotazioneHasCaricaPeer::VOTO, 'Assente'); $crit1 = $c->getNewCriterion(OppVotazioneHasCaricaPeer::VOTO, 'Favorevole'); $crit0->addOr($crit1); $c->add($crit0); } $cn = OppVotazioneHasCaricaPeer::doCount($c); if ($cn >= $votazione->getMargine()) { //echo "!!!!!!!$cn ".$votazione->getId()."\n"; $maggioranza_salva[] = $votazione; } } return $maggioranza_salva; }
} ?> </th> <th scope="row" style="border-bottom:0px;"> <?php foreach ($lontani as $pos => $lontano) { ?> <p class="politician-id"> <?php echo image_tag(OppPoliticoPeer::getThumbUrl($lontano[1]->getOppPolitico()->getId()), 'icona parlamentare'); ?> <?php echo link_to($lontano[1]->getOppPolitico()->getNome() . " " . $lontano[1]->getOppPolitico()->getCognome(), '@parlamentare?' . $lontano[1]->getOppPolitico()->getUrlParams()); ?> <?php $gruppi = OppCaricaHasGruppoPeer::doSelectGruppiPerCarica($lontano[1]->getId()); ?> <?php foreach ($gruppi as $nome => $gruppo) { ?> <?php if (!$gruppo['data_fine']) { ?> <?php print " (" . $nome . ")"; ?> <?php } ?> <?php
public function executeCommissioniPermanenti() { $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->add(OppCaricaPeer::LEGISLATURA, $this->leg); $c->add(OppCaricaInternaPeer::SEDE_ID, $this->sede_id); $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; }
$crit0->addOr($crit1); $c->add($crit0); $c->add(OppGruppoRamoPeer::RAMO, $votazione->getOppSeduta()->getRamo()); $gruppi = OppGruppoPeer::doSelect($c); foreach ($gruppi as $g) { if (!OppGruppoIsMaggioranzaPeer::isGruppoMaggioranza($g->getId(), $votazione->getOppSeduta()->getData()) and $g->getNome() != 'Gruppo Misto') { $voto_gruppo = OppVotazioneHasGruppoPeer::getVotoGruppoVotazione($g->getId(), $votazione->getId()); if ($votazione->getEsito() == 'APPROVATA' && $voto_gruppo == 'Contrario' && $ramo == 'camera' || $votazione->getEsito() == 'RESPINTA' && $voto_gruppo == 'Favorevole' && $ramo == 'camera' || $votazione->getEsito() == 'APPROVATA' && ($voto_gruppo == 'Contrario' || $voto_gruppo == 'Astenuto') && $ramo == 'senato' || $votazione->getEsito() == 'RESPINTA' && $voto_gruppo == 'Favorevole' && $ramo == 'senato') { $c = new Criteria(); $c->add(OppCaricaHasGruppoPeer::GRUPPO_ID, $g->getId()); $c->add(OppCaricaHasGruppoPeer::DATA_INIZIO, $votazione->getOppSeduta()->getData(), Criteria::LESS_EQUAL); $crit0 = $c->getNewCriterion(OppCaricaHasGruppoPeer::DATA_FINE, NULL, Criteria::ISNULL); $crit1 = $c->getNewCriterion(OppCaricaHasGruppoPeer::DATA_FINE, $votazione->getOppSeduta()->getData(), Criteria::GREATER_EQUAL); $crit0->addOr($crit1); $c->add($crit0); $parlamentari = OppCaricaHasGruppoPeer::doSelect($c); //$parlamentari = OppCaricaHasGruppoPeer::getParlamentariGruppoData($g->getId(),$votazione->getOppSeduta()->getData()); foreach ($parlamentari as $p) { $arr_opposizione[] = $p->getCaricaId(); } } } } $c = new Criteria(); $c->add(OppVotazioneHasCaricaPeer::VOTAZIONE_ID, $votazione->getId()); $c->add(OppVotazioneHasCaricaPeer::CARICA_ID, $arr_opposizione, Criteria::IN); if ($votazione->getEsito() == 'APPROVATA' && $votazione->getOppSeduta()->getRamo() == 'C') { $crit0 = $c->getNewCriterion(OppVotazioneHasCaricaPeer::VOTO, 'Assente'); $crit1 = $c->getNewCriterion(OppVotazioneHasCaricaPeer::VOTO, 'Favorevole'); $crit2 = $c->getNewCriterion(OppVotazioneHasCaricaPeer::VOTO, 'Astenuto'); $crit0->addOr($crit1);
public function executeDdl2legge() { if ($this->gruppo != NULL) { $c = new Criteria(); $c->add(OppGruppoPeer::ACRONIMO, $this->gruppo); $gruppo = OppGruppoPeer::doSelectOne($c); $cariche = OppCaricaHasGruppoPeer::getCarichePerGruppo($gruppo->getId(), 1); foreach ($cariche as $carica) { $componenti_gruppo[] = $carica->getCaricaId(); } } if ($this->gruppo != NULL) { $c = new Criteria(); $c->add(OppGruppoPeer::ACRONIMO, $this->gruppo); $gruppo = OppGruppoPeer::doSelectOne($c); $cariche = OppCaricaHasGruppoPeer::getCaricheGovernoPerGruppo($gruppo->getId(), 1); foreach ($cariche as $carica) { $componenti_gruppo[] = $carica; } } $arrs = array(); $arr_alls = array(); foreach (array(1, 2, 4) as $i) { $c = new Criteria(); if ($this->gruppo != NULL) { $c->addJoin(OppAttoPeer::ID, OppCaricaHasAttoPeer::ATTO_ID); $c->add(OppCaricaHasAttoPeer::CARICA_ID, $componenti_gruppo, Criteria::IN); $c->add(OppCaricaHasAttoPeer::TIPO, 'P'); } $c->add(OppAttoPeer::TIPO_ATTO_ID, 1); $c->add(OppAttoPeer::LEGISLATURA, $this->leg); $c->add(OppAttoPeer::INIZIATIVA, $i); $c->setDistinct(OppAttoPeer::ID); $atti = OppAttoPeer::doSelect($c); $c = new Criteria(); if ($this->gruppo != NULL) { $c->addJoin(OppAttoPeer::ID, OppCaricaHasAttoPeer::ATTO_ID); $c->add(OppCaricaHasAttoPeer::CARICA_ID, $componenti_gruppo, Criteria::IN); $c->add(OppCaricaHasAttoPeer::TIPO, 'P'); } $c->addJoin(OppAttoPeer::ID, OppAttoHasIterPeer::ATTO_ID); $c->add(OppAttoPeer::TIPO_ATTO_ID, 1); $c->add(OppAttoPeer::LEGISLATURA, $this->leg); $c->add(OppAttoPeer::INIZIATIVA, $i); $c->add(OppAttoHasIterPeer::ITER_ID, 16); $c->setDistinct(OppAttoPeer::ID); $leggi = OppAttoHasIterPeer::doSelect($c); $tempo_medio = 0; foreach ($leggi as $legge) { $ddl = $legge->getOppAtto(); while ($ddl->getPred() != NULL) { $ddl = OppAttoPeer::retrieveByPk($ddl->getPred()); } //$this->data_pres=$ddl->getDataPres(); //$this->data_appr=$legge->getData(); $data_pres = strtotime($ddl->getDataPres()); $data_appr = strtotime($legge->getData()); $tempo_medio = $tempo_medio + ($data_appr - $data_pres) / 86400; $arr_alls[] = array($legge->getOppAtto(), ($data_appr - $data_pres) / 86400); } if (count($leggi) > 0) { $tempo_medio = intval($tempo_medio / count($leggi)); } else { $tempo_medio = $tempo_medio; } $arrs[] = array(count($atti), count($leggi), $tempo_medio); } $this->arrs = $arrs; function cmp($a, $b) { if ($a[1] == $b[1]) { return 0; } return $a[1] < $b[1] ? -1 : 1; } usort($arr_alls, "cmp"); $this->arr_alls = $arr_alls; }
<?php } else { ?> in carica <?php } ?> </td> <td><?php echo $carica['carica']; ?> </td> <td> <?php $gruppi = OppCaricaHasGruppoPeer::doSelectGruppiPerCarica($id); ?> <?php foreach ($gruppi as $nome => $gruppo) { ?> <?php if ($gruppo['data_fine']) { ?> <?php printf('dal %s al %s : %s', format_date($gruppo['data_inizio'], 'dd/MM/yyyy'), format_date($gruppo['data_fine'], 'dd/MM/yyyy'), $nome); ?> <br /> <?php } else { ?>
<?php $tr_class = $tr_class == 'even' ? 'odd' : 'even'; ?> <th scope="row"> <p class="politician-id"> <?php echo image_tag(OppPoliticoPeer::getThumbUrl($k), array('width' => '40', 'height' => '53')); ?> <?php $politico = OppPoliticoPeer::retrieveByPk($k); ?> <?php echo (OppCaricaPeer::retrieveByPk($c[1])->getTipoCaricaId() == 1 ? 'On. ' : 'Sen. ') . link_to($politico->getCognome() . " " . $politico->getNome(), "@parlamentare?" . $politico->getUrlParams()); ?> (<?php echo OppCaricaHasGruppoPeer::getGruppoCorrentePerCarica($c[1])->getAcronimo(); ?> ) </p> </th> <td><?php echo $c[0]; ?> </td> </tr> <?php } ?> </tbody> </table>
/** * restituisce tutti i componenti di un gruppo, se data_fine è zero (default, restituisce i componenti attuali, se 1 quelli di tutta la legislatura) * * @param integer $carica_id * @return void * @author Ettore Di Cesare */ public static function getCarichePerGruppo($gruppo_id, $data_fine = 0, $leg = 16) { $c = new Criteria(); $c->addJoin(OppCaricaHasGruppoPeer::GRUPPO_ID, OppGruppoPeer::ID); $c->addJoin(OppCaricaHasGruppoPeer::CARICA_ID, OppCaricaPeer::ID); $c->add(OppCaricaPeer::LEGISLATURA, $leg, Criteria::EQUAL); $c->add(OppCaricaHasGruppoPeer::GRUPPO_ID, $gruppo_id, Criteria::EQUAL); if ($data_fine == 0) { $c->add(OppCaricaHasGruppoPeer::DATA_FINE, NULL, Criteria::ISNULL); } $rs = OppCaricaHasGruppoPeer::doSelect($c); if ($rs) { return $rs; } else { return NULL; } }
use_helper('Slugger'); $slugParlamentare = slugify($parlamentari->getString(2) . ' ' . $parlamentari->getString(3)); echo ($parlamentari->getInt(6) == 1 ? 'On. ' : 'Sen. ') . link_to($parlamentari->getString(2) . ' ' . $parlamentari->getString(3), '@parlamentare?id=' . $parlamentari->getInt(1) . '&slug=' . $slugParlamentare); ?> </p> </th> <td> <span class="small">il <?php echo date('d/m/Y', strtotime($parlamentari->getString(5))); ?> ha aderito al gruppo</span><br/><strong><?php echo $parlamentari->getString(4); ?> </strong> <?php $gruppo = OppCaricaHasGruppoPeer::getGruppoPerParlamentareAllaData($parlamentari->getInt(8), date('Y-m-d', strtotime($parlamentari->getString(5)) - 1)); ?> <?php if (count($gruppo) == 1) { ?> <br/><span class="small"> abbandonando il gruppo</span><br/><?php echo OppGruppoPeer::retrieveByPk($gruppo['gruppo_id'])->getNome(); ?> <?php } ?> </td> </tr> <?php } ?>