$value) { $candidate[$value] = $data[$key]; } $candidate['Council'] = $config['councilName']; $name_slug = trim_sluggify($candidate['Candidate Name']); $candidate_data[$name_slug] = $candidate; } } } print_r($candidate_data); /* Get list of elected candidates */ //$lga_list = []; /* Generate dictionary of LGAs and Wards */ //foreach ($config_files as $config_file) { // $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); // } // $config['config-file'] = $config_file; // $lga_list[] = $config; //} /* Match user typed LGA/Ward to our database */ //match_lga($candidate_data, $lga_list); $header = ["Ward", "Candidate Name", "Rating", "Pledge", "Picture"]; /* Generate candidates-generic.csv */ //foreach ($lga_list as $lga) { // $lga_candidates = array_filter($candidate_data, function ($candidate) use ($lga) { // return $candidate['match_lga'] === $lga['slug']; // }); // // if (count($lga_candidates) === 0) continue; // // remove_duplicates($lga_candidates); // // $dir = dirname($lga['config-file']); // $dir_files = scandir($dir); // $output_file = $dir."/candidates-generic.csv"; // $override_file = $dir."/candidates-override.csv"; // // if (($handle = fopen($output_file, "w")) === FALSE) { // error_log('Error opening output file'); // exit(1); // } // // if (fputcsv($handle, $header) === FALSE) { // error_log('Error writing headers to output file'); // exit(3); // } // // $lines = []; // foreach ($lga_candidates as $candidate) { // /* Add extension to photo hash */ // if (strlen($candidate['Photo'])) { // foreach ($dir_files as $file) { // if (preg_match("/\.json$/", $file)) continue; // if (strstr($file, $candidate['Photo'])) { // $candidate['Photo'] = $file; // } // } // } // // $lines[] = [ // $candidate['match_ward'], // $candidate['Name'], // $candidate['Score'], // $candidate['Pledge'], // $candidate['Photo'], // ]; // } // // /* Apply overrides if they exist */ // $overrides = []; // if (file_exists($override_file)) { // if (($ovr_handle = fopen($override_file, "r")) !== FALSE) { // $headers = fgetcsv($ovr_handle); // while (($data = fgetcsv($ovr_handle)) !== FALSE) { // $override = []; // foreach ($headers as $key => $value) { // $override[$value] = $data[$key]; // } // $overrides[] = $override; // } // fclose($ovr_handle); // } else { // error_log('Error opening overrides file'); // exit(3); // } // } // // foreach ($overrides as $override) { // foreach ($lines as $line_key => $line) { // $match_index = array_search($override['Match Field'], $header); // $replace_index = array_search($override['Replace Field'], $header); // if ($line[$match_index] === $override['Match Value']) { // if ($replace_index !== false) // $lines[$line_key][$replace_index] = $override['Replace Value']; // else /* If 'Replace Field' is not matched - delete this entry */ // $lines[$line_key]['Delete'] = 'y'; // } // } // } // // foreach ($lines as $line) { // if (isset($line['Delete'])) continue; // if (fputcsv($handle, $line) === FALSE) { // error_log('Error writing candidate to output file'); // exit(3); // } // } // fclose($handle); //} exit(0);