id = $id; $rep->bioguide_id = $response->bioguide_id; $rep->party = $response->party; $rep->state = $response->state; $rep->district = $response->district; $rep->gender = $response->gender; $rep->title = $response->title; if ($rep->title == 'Sen') { $rep->district = 0; } $rep->firstname = $response->firstname; $rep->middlename = $response->middlename; $rep->lastname = $response->lastname; $rep->name_suffix = $response->name_suffix; $rep->nickname = $response->nickname; $rep->phone = $response->phone; $rep->fax = $response->fax; $rep->website = $response->website; $rep->webform = $response->webform; $rep->email = $response->email; $rep->congress_office = $response->congress_office; $rep->twitter_id = $response->twitter_id; $rep->youtube_url = $response->youtube_url; $rep->save(); echo "{$rep->id} {$rep->lastname} {$rep->party} {$rep->state}\n"; } function parseRepFromGovtrack($person) { $rep = new Rep(); $rep->id = (int) $person['id']; echo "Processing {$rep->id}: "; $rep->bioguide_id = $person['bioguideid']; $rep->gender = $person['gender']; $rep->firstname = $person['firstname']; $rep->middlename = $person['middlename']; $rep->lastname = $person['lastname']; $rep->name_suffix = $person['namemod']; $rep->nickname = $person['nickname']; $rep->phone = ''; $rep->fax = ''; $rep->website = ''; $rep->webform = ''; $rep->email = ''; $rep->congress_office = ''; $rep->twitter_id = ''; $rep->youtube_url = ''; foreach ($person->role as $role) { $rep->party = substr((string) $role['party'], 0, 1); $rep->state = (string) $role['state']; $rep->title = ucfirst((string) $role['type']); if ($rep->title == 'Rep') { $rep->district = (int) $role['district']; } else { $rep->district = 0; } } $rep->save(); echo "{$rep->id} {$rep->lastname} {$rep->party} {$rep->state}\n"; } function updateReps() { //// process the database require_once dirname(__FILE__) ."/../db.inc.php"; $params = array( array('vote_rep', 'rep_id'), array('bill', 'sponsor_rep_id'), array('bill_sponsor', 'rep_id'), array('amendment', 'sponsor_rep_id'), array('record', 'speaker_rep_id') ); //// get missing reps and fetch from sunlight foreach ($params as $param) { $query =<<person as $person) { if (isset($ids[(int) $person['id']])) { parseRepFromGovtrack($person); } } } if (isset($_SERVER['argv'])) { if ($_SERVER['argv'][0] != 'rep.php') { return; } if (count($_SERVER['argv']) > 1) { //// parse arguments parseRepFromSunlight($_SERVER['argv'][1]); } else { updateReps(); } } ?>