$file) { $config_file = dirname($file)."/config.json"; $config_string = file_get_contents($config_file); if ($config_string !== FALSE) { $config = json_decode($config_string, true); } else { error_log("Error opening config.json."); exit(1); } if (($handle = fopen($file, "r")) !== FALSE) { $headers = fgetcsv($handle); while (($data = fgetcsv($handle)) !== FALSE) { $candidate = []; $candidate['Pledge'] = 'n'; foreach ($headers as $key => $value) { $candidate[$value] = $data[$key]; } $candidate['Council'] = $config['councilName']; $candidate['Path'] = dirname($file); $candidate_data[$candidate['Candidate Name']] = $candidate; } fclose($handle); } else { error_log('Error opening candidates file'); exit(1); } $pledges_file = dirname($file)."/pledges.csv"; if (!file_exists($pledges_file)) continue; if (($handle = fopen($pledges_file, "r")) !== FALSE) { $headers = fgetcsv($handle); while (($data = fgetcsv($handle)) !== FALSE) { $candidate = []; foreach ($headers as $key => $value) { $candidate[$value] = $data[$key]; } $candidate_data[$candidate['Candidate Name']]['Pledge'] = $candidate['Pledge']; } fclose($handle); } else { error_log('Error opening pledges file'); exit(1); } } /* Select people who have taken the pledge */ $pledgeCandidates = array_filter($candidate_data, function ($candidate) { return $candidate['Pledge'] === 'y'; }); /* Select 9 random candidates */ $pledgeKeys = array_rand($pledgeCandidates, 9); shuffle($pledgeKeys); $i = 0; foreach ($pledgeKeys as $key) { $media_desc = $pledgeCandidates[$key]['Path']."/". $pledgeCandidates[$key]['Picture'].".json"; $media_string = file_get_contents($media_desc); if ($media_string !== FALSE) { $media = json_decode($media_string, true); } else { error_log("Error opening image descriptor."); exit(1); } $image_url = $media['url']; $image_id = $media['id']; echo "s|pledge_img_".$i."|".$image_url."|\n"; echo "s|pledge_id_".$i."|".$image_id."|\n"; echo "s|pledge_string_".$i."|"; echo $pledgeCandidates[$key]['Candidate Name']. " (". $pledgeCandidates[$key]['Council']. ") has taken the pledge!|\n"; $i++; } exit(0);