68 lines
1.8 KiB
Bash
Executable File
68 lines
1.8 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
#rclone sync --progress bikewest:spl_generic_survey_2024 $DATA_LOC/google-data
|
|
|
|
GENERIC_SURVEY=../generic-survey/responses.csv
|
|
IMAGES=../generic-survey/images
|
|
|
|
DATA_PATH="../spl-data/federal_2025"
|
|
|
|
echo "Fetching latest responses to generic survey."
|
|
rm -f $GENERIC_SURVEY # Force re-fetch
|
|
rclone -v copyto --drive-export-formats csv 'bikewest:spl_generic_survey_federal_2025/Streets People Love Federal Election candidate pledge (Responses).csv' $GENERIC_SURVEY
|
|
|
|
config_files=()
|
|
for folder in "$DATA_PATH"/*; do
|
|
if test -f "$folder"/config.json; then
|
|
config_files+=("$folder"/config.json)
|
|
fi
|
|
done
|
|
|
|
image_map=$(php csv-generic/gen-image-map.php --generic-csv $GENERIC_SURVEY --config-files "${config_files[*]}")
|
|
|
|
img_list=()
|
|
for key in $(jq -r 'keys[]' <<< $image_map) ; do
|
|
if [ -f $IMAGES/$key ] ; then
|
|
continue
|
|
fi
|
|
img_list+=($key)
|
|
img_list+=($IMAGES/$key)
|
|
done
|
|
|
|
if [ ${#img_list[*]} -gt 0 ] ; then
|
|
echo "Downloading $((${#img_list[*]}/2)) image(s)..."
|
|
rclone -v backend copyid bikewest: ${img_list[*]}
|
|
fi
|
|
|
|
for key in $(jq -r 'keys[]' <<< $image_map) ; do
|
|
format=$(identify $IMAGES/$key | awk '{print $2}')
|
|
|
|
case $format in
|
|
PNG ) suffix=.png ;;
|
|
JPEG ) suffix=.jpg ;;
|
|
HEIC ) suffix=.jpg ;;
|
|
WEBP ) suffix=.png ;;
|
|
*)
|
|
echo "Error: Unknown image format: $IMAGES/$key"
|
|
;;
|
|
esac
|
|
|
|
lga=$(jq -r ".[\"$key\"][\"match_division\"]" <<< $image_map)
|
|
|
|
if [ ! -d $"$DATA_PATH/$lga" ] ; then
|
|
continue
|
|
fi
|
|
|
|
dst="$DATA_PATH/$lga/$key$suffix"
|
|
|
|
if [ -f $dst ] ; then
|
|
continue
|
|
fi
|
|
|
|
echo "Resizing $dst"
|
|
magick $IMAGES/$key -resize 400x400 $dst
|
|
done
|
|
|
|
echo "Generating candidates-generic.csv files."
|
|
php csv-generic/gen-generic.php --generic-csv $GENERIC_SURVEY --config-files "${config_files[*]}"
|