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;
         }
     }
 }
Ejemplo n.º 3
0
    $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;
 }