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);
    $carica->save();
    echo "{$charge->id}\n";
}
print "done.\n";