rearrange and rename further variables
This commit is contained in:
parent
54fe2c2865
commit
0f55a5d0c7
55
departure.sh
55
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"
|
||||
|
|
Loading…
Reference in New Issue