<?php define('SF_ROOT_DIR', realpath(dirname(__FILE__) . '/..')); define('SF_APP', 'fe'); define('SF_ENVIRONMENT', 'dev'); define('SF_DEBUG', true); 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"; $xml = simplexml_load_file('http://www.openpolis.it/api/senatori'); foreach ($xml->charges->charge as $charge) { $politico = OppPoliticoPeer::RetrieveByPk($charge->politicianid); if ($politico == null) { $xml = simplexml_load_file('http://www.openpolis.it/api/politician/id/' . $charge->politicianid); $nome = $xml->politician->firstname; $cognome = $xml->politician->lastname; echo "{$nome} {$cognome} \n"; $politico = new OppPolitico(); $politico->setId($charge->politicianid); $politico->setNome($nome); $politico->setCognome($cognome); $politico->save(); } $carica = new OppCarica(); $carica->setId($charge->id); $carica->setPoliticoId($charge->politicianid); $carica->setCarica($charge->chargetype); $carica->setDataInizio($charge->datestart); $carica->setGruppo($charge->group); $carica->setLegislatura(16); $carica->setCircoscrizione($charge->constituency);
<?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"; $c = new Criteria(); $c->add(OppCaricaPeer::DATA_FINE, NULL, Criteria::EQUAL); $c->add(OppCaricaPeer::LEGISLATURA, 16, Criteria::EQUAL); $cariche = OppCaricaPeer::doSelect($c); foreach ($cariche as $carica) { $parlamentare = OppPoliticoPeer::RetrieveByPk($carica->getPoliticoId()); $report = $carica->getReport(); $presenze = $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']; $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";
/** * verifica il parametro id e carica gli oggetti OppPolitico e OppCarica (quella attuale) * * @return void * @author Guglielmo Celata */ protected function _getAndCheckParlamentare() { $this->parlamentare = OppPoliticoPeer::RetrieveByPk($this->getRequestParameter('id')); $this->forward404Unless($this->parlamentare); $this->carica = $this->parlamentare->getCaricaDepSenCorrente(); }