45 lines
1.6 KiB
Bash
45 lines
1.6 KiB
Bash
#!/bin/bash
|
|
# Script to update the weather location in the SL Transport Departures Display
|
|
|
|
# Check if latitude and longitude were provided
|
|
if [ -z "$1" ] || [ -z "$2" ]; then
|
|
echo "Error: Latitude and longitude must be provided."
|
|
echo "Usage: ./update-weather-location.sh LATITUDE LONGITUDE [LOCATION_NAME]"
|
|
echo "Example: ./update-weather-location.sh 59.3293 18.0686 Stockholm"
|
|
exit 1
|
|
fi
|
|
|
|
# Validate that the latitude and longitude are numeric
|
|
if ! [[ "$1" =~ ^-?[0-9]+(\.[0-9]+)?$ ]] || ! [[ "$2" =~ ^-?[0-9]+(\.[0-9]+)?$ ]]; then
|
|
echo "Error: Latitude and longitude must be numbers."
|
|
echo "Usage: ./update-weather-location.sh LATITUDE LONGITUDE [LOCATION_NAME]"
|
|
echo "Example: ./update-weather-location.sh 59.3293 18.0686 Stockholm"
|
|
exit 1
|
|
fi
|
|
|
|
LATITUDE=$1
|
|
LONGITUDE=$2
|
|
LOCATION_NAME=${3:-""}
|
|
|
|
# Update index.html with new latitude and longitude
|
|
echo "Updating weather location in index.html..."
|
|
sed -i "s/latitude: [0-9.-]\+/latitude: $LATITUDE/g" index.html
|
|
sed -i "s/longitude: [0-9.-]\+/longitude: $LONGITUDE/g" index.html
|
|
|
|
# Update location name in the weather widget if provided
|
|
if [ ! -z "$LOCATION_NAME" ]; then
|
|
echo "Updating location name to: $LOCATION_NAME"
|
|
# This is a more complex replacement that might need manual verification
|
|
sed -i "s/<h3>[^<]*<\/h3>/<h3>$LOCATION_NAME<\/h3>/g" index.html
|
|
fi
|
|
|
|
echo "Weather location updated successfully!"
|
|
echo "Latitude: $LATITUDE"
|
|
echo "Longitude: $LONGITUDE"
|
|
if [ ! -z "$LOCATION_NAME" ]; then
|
|
echo "Location Name: $LOCATION_NAME"
|
|
fi
|
|
echo ""
|
|
echo "Restart the application to see the changes."
|
|
echo "You can find latitude and longitude for any location at: https://www.latlong.net/"
|