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";
public function executeGruppiParlamentari() { if ($this->ramo == 1) { $this->tipo_carica = array(1); } else { $this->tipo_carica = array(4, 5); } $array_diff = array(); $gruppo_in = array(); $gruppo_out = array(); $gruppo_now = array(); $parlamentari_change = array(); $c1 = new Criteria(); $gruppi = OppGruppoPeer::doSelect($c1); foreach ($gruppi as $gruppo) { if (!array_key_exists($gruppo->getId(), $gruppo_in)) { $gruppo_in[$gruppo->getId()] = 0; } if (!array_key_exists($gruppo->getId(), $gruppo_out)) { $gruppo_out[$gruppo->getId()] = 0; } if (!array_key_exists($gruppo->getId(), $gruppo_now)) { $gruppo_now[$gruppo->getId()] = 0; } $c = new Criteria(); $c->add(OppCaricaPeer::TIPO_CARICA_ID, $this->tipo_carica, Criteria::IN); $c->addJoin(OppCaricaPeer::ID, OppCaricaHasGruppoPeer::CARICA_ID); if (!in_array(5, $this->tipo_carica)) { $c->add(OppCaricaPeer::LEGISLATURA, $this->leg); } $c->add(OppCaricaPeer::DATA_FINE, NULL, Criteria::ISNULL); $c->add(OppCaricaHasGruppoPeer::GRUPPO_ID, $gruppo->getId()); $rs = OppCaricaHasGruppoPeer::doSelect($c); foreach ($rs as $r) { if ($r->getDataFine() == NULL) { $gruppo_now[$gruppo->getId()] = $gruppo_now[$gruppo->getId()] + 1; } else { if (!in_array($r->getCaricaId(), $parlamentari_change)) { $parlamentari_change[] = $r->getCaricaId(); } $gruppo_out[$gruppo->getId()] = $gruppo_out[$gruppo->getId()] + 1; $c2 = new Criteria(); $c2->add(OppCaricaHasGruppoPeer::CARICA_ID, $r->getCaricaId()); $c2->add(OppCaricaHasGruppoPeer::DATA_INIZIO, $r->getDataFine()); $diff = OppCaricaHasGruppoPeer::doSelectOne($c2); if ($diff) { if (array_key_exists($diff->getGruppoId(), $gruppo_in)) { $gruppo_in[$diff->getGruppoId()] = $gruppo_in[$diff->getGruppoId()] + 1; } else { $gruppo_in[$diff->getGruppoId()] = 1; } if (isset($array_diff[$diff->getGruppoId()][$gruppo->getId()])) { $array_diff[$diff->getGruppoId()][$gruppo->getId()] = $array_diff[$diff->getGruppoId()][$gruppo->getId()] + 1; } else { $array_diff[$diff->getGruppoId()][$gruppo->getId()] = 1; } if (isset($array_diff[$gruppo->getId()][$diff->getGruppoId()])) { $array_diff[$gruppo->getId()][$diff->getGruppoId()] = $array_diff[$gruppo->getId()][$diff->getGruppoId()] - 1; } else { $array_diff[$gruppo->getId()][$diff->getGruppoId()] = -1; } } } } } $this->gruppo_in = $gruppo_in; $this->gruppo_out = $gruppo_out; $this->gruppo_now = $gruppo_now; $this->array_diff = $array_diff; $this->parlamentari_change = $parlamentari_change; }