From 0f55a5d0c7ac0672097281a1e664a272bcdbed9c Mon Sep 17 00:00:00 2001 From: Florian Schlegel Date: Fri, 28 Aug 2020 23:58:45 +0200 Subject: [PATCH] rearrange and rename further variables --- departure.sh | 55 ++++++++++++++++++++++++++-------------------------- 1 file changed, 27 insertions(+), 28 deletions(-) diff --git a/departure.sh b/departure.sh index 2b83c0c..c129e82 100755 --- a/departure.sh +++ b/departure.sh @@ -2,8 +2,8 @@ ###### configuration ##### # stations to display -STATIONS[0]="18" -STATIONS[1]="202" +STATION_ID[0]="18" +STATION_ID[1]="202" LOGO_L[ 0]="\\t\\t████████████████████████████████████████████████\\n" LOGO_L[ 1]="\\t\\t██▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒██\\n" @@ -144,18 +144,18 @@ append_five_line_symbol() get_cvag_station_name() { - local -n _STANAME=$1 - local -n _STATIONS=$2 + local -n _STATION_NAME=$1 + local -n _STATION_ID=$2 COMPLETE_STATION_LIST="$(curl --connect-timeout 5 -s "http://www.cvag.de/eza/mis/stations?minLat=0&maxLat=100&minLon=0&maxLon=100")" - for ((i=0; i<${#_STATIONS[*]}; i++)); do - case ${_STATIONS[$i]} in + for ((i=0; i<${#_STATION_ID[*]}; i++)); do + case ${_STATION_ID[$i]} in ''|*[!0-9]*) - _STANAME[$i]=$(echo -n "$COMPLETE_STATION_LIST" | jq -r '.stations | .[] | select(.displayName | contains("'"${_STATIONS[$i]}"'")) | .number') + _STATION_NAME[$i]=$(echo -n "$COMPLETE_STATION_LIST" | jq -r '.stations | .[] | select(.displayName | contains("'"${_STATION_ID[$i]}"'")) | .number') ;; *) - _STANAME[$i]=$(echo -n "$COMPLETE_STATION_LIST" | jq -r '.stations | .[] | select(.number | contains('"${_STATIONS[$i]}"')) | .displayName') + _STATION_NAME[$i]=$(echo -n "$COMPLETE_STATION_LIST" | jq -r '.stations | .[] | select(.number | contains('"${_STATION_ID[$i]}"')) | .displayName') ;; esac done @@ -174,22 +174,24 @@ draw_logo_time() } LOGO_LINES_POSITION=0 -STANAME=() +STATION_NAME=() while true; do if ! ping -q -c1 chch.it>/dev/null; then echo -e "\\n\\n\\n\\tNo internet connection!" sleep 10 clear else - [ ${#STANAME[@]} -eq 0 ] && get_cvag_station_name STANAME STATIONS + [ ${#STATION_NAME[@]} -eq 0 ] && get_cvag_station_name STATION_NAME STATION_ID MYOUTPUT="\\n " - for ((j=0; j<"${#STATIONS[*]}"; j++)); do - STATION_SCHEDULE="$(curl --connect-timeout 5 -s http://cvag.de/eza/mis/stops/station/CAG-${STATIONS[$j]})" + for ((j=0; j<"${#STATION_ID[*]}"; j++)); do + STATION_SCHEDULE="$(curl --connect-timeout 5 -s http://cvag.de/eza/mis/stops/station/CAG-${STATION_ID[$j]})" STATION_STOPS=$(echo "$STATION_SCHEDULE" | jq -r ".stops | .[]") STATION_NOW=$(echo "$STATION_SCHEDULE" | jq -r ".now") - + STATION_DESTINATIONS=($(echo -n "$STATION_STOPS" | jq -r '.destination')) + STATION_LINES=($(echo -n "$STATION_STOPS" | jq -r '.line')) + STATION_ACTUAL_DEPARTURE=($(echo -n "$STATION_STOPS" | jq -r '.actualDeparture')) [ ${#STATION_NOW} -lt 1 ] && STATION_NOW="0" REALSTATION_NOWMS=$(( "$STATION_NOW" % 1000 )) [ ${#REALSTATION_NOWMS} -lt 3 ] && REALSTATION_NOWMS="0""$REALSTATION_NOWMS" @@ -199,22 +201,19 @@ while true; do # Wenn Logo gezeichnet werden soll, baue Urzeit ran und zeichne [ "$j" -eq "$LOGO_LINES_POSITION" ] && draw_logo_time MYOUTPUT $REALSTATION_NOW - DESTINATIONS=($(echo -n "$STATION_STOPS" | jq -r '.destination')) - LINES=($(echo -n "$STATION_STOPS" | jq -r '.line')) - ACDEPS=($(echo -n "$STATION_STOPS" | jq -r '.actualDeparture')) - LINECOUNT=${#LINES[*]} - for((i=${#STANAME[$j]}; i<31; i++)); do - STANAME[$j]="${STANAME[$j]}"" " + for((i=${#STATION_NAME[$j]}; i<31; i++)); do + STATION_NAME[$j]="${STATION_NAME[$j]}"" " done - MYOUTPUT="$MYOUTPUT"'\n\n\t\t┌────────────────────────────────┬─────────────────────────┐ \n\t\t│ '"${STANAME[$j]}"'│ '"$THISDATE"' │\n\t\t├────────────────────┬─────┬─────┴─────────────────────────┤\n' + MYOUTPUT="$MYOUTPUT"'\n\n\t\t┌────────────────────────────────┬─────────────────────────┐ \n\t\t│ '"${STATION_NAME[$j]}"'│ '"$THISDATE"' │\n\t\t├────────────────────┬─────┬─────┴─────────────────────────┤\n' + LINECOUNT=${#STATION_LINES[*]} for ((i=0; i<"$LINECOUNT"; i++)); do - for((k=${#LINES[$i]}; k<3 ; k++)); do - LINES[$i]=" ""${LINES[$i]}" + for((k=${#STATION_LINES[$i]}; k<3 ; k++)); do + STATION_LINES[$i]=" ""${STATION_LINES[$i]}" done - for((k=${#DESTINATIONS[$i]}; k<29 ; k++)); do - DESTINATIONS[$i]="${DESTINATIONS[$i]}"" " + for((k=${#STATION_DESTINATIONS[$i]}; k<29 ; k++)); do + STATION_DESTINATIONS[$i]="${STATION_DESTINATIONS[$i]}"" " done - MILLIS=$((${ACDEPS[$i]} - STATION_NOW)) + MILLIS=$((${STATION_ACTUAL_DEPARTURE[$i]} - STATION_NOW)) [ "$MILLIS" -lt 0 ] && MILLIS=0 SEKS=$((MILLIS / 1000)); MILLIS=$((MILLIS % 1000)); MINS=$((SEKS / 60)); SEKS=$((SEKS % 60)) MINSSPACE=""; SEKSSPACE=""; MILLISSPACE="" @@ -223,12 +222,12 @@ while true; do [ "$SEKS" -lt 10 ] && SEKSSPACE=" " [ "$MILLIS" -lt 100 ] && MILLISSPACE="0" [ "$MILLIS" -lt 10 ] && MILLISSPACE="00" - MYOUTPUT="$MYOUTPUT""\\t\\t│${MINSSPACE}${MINS} min ${SEKSSPACE}${SEKS},${MILLISSPACE}${MILLIS} s │ ${LINES[$i]} │ ${DESTINATIONS[$i]} │\\n" + MYOUTPUT="$MYOUTPUT""\\t\\t│${MINSSPACE}${MINS} min ${SEKSSPACE}${SEKS},${MILLISSPACE}${MILLIS} s │ ${STATION_LINES[$i]} │ ${STATION_DESTINATIONS[$i]} │\\n" done MYOUTPUT="$MYOUTPUT"'\t\t└────────────────────┴─────┴───────────────────────────────┘' done - [ "$LOGO_LINES_POSITION" -eq "${#STATIONS[*]}" ] && draw_logo_time MYOUTPUT $REALSTATION_NOW - LOGO_LINES_POSITION=$(((LOGO_LINES_POSITION + 1) % (${#STATIONS[*]} + 1))) + [ "$LOGO_LINES_POSITION" -eq "${#STATION_ID[*]}" ] && draw_logo_time MYOUTPUT $REALSTATION_NOW + LOGO_LINES_POSITION=$(((LOGO_LINES_POSITION + 1) % (${#STATION_ID[*]} + 1))) clear #reset echo -e "$MYOUTPUT"