diff --git a/departure.sh b/departure.sh index 31695a3..1d03edb 100755 --- a/departure.sh +++ b/departure.sh @@ -5,7 +5,26 @@ STATIONS[0]="18" STATIONS[1]="202" +LOGO_L[ 0]="\\t\\t████████████████████████████████████████████████\\n" +LOGO_L[ 1]="\\t\\t██▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒██\\n" +LOGO_L[ 2]="\\t\\t██▒▒████████████████████████████████████████▒▒██\\n" +LOGO_L[ 3]="\\t\\t██▒▒██████████▒▒██▒▒████████████▒▒██▒▒██████▒▒██\\n" +LOGO_L[ 4]="\\t\\t██▒▒████▒▒▒▒▒▒████▒▒██████▒▒▒▒▒▒████▒▒██████▒▒██\\n" +LOGO_L[ 5]="\\t\\t██▒▒████▒▒████████████▒▒██▒▒████████████▒▒██▒▒██\\n" +LOGO_L[ 6]="\\t\\t██▒▒████▒▒████████▒▒██▒▒██▒▒████████▒▒██▒▒██▒▒██\\n" +LOGO_L[ 7]="\\t\\t██▒▒██████████▒▒██▒▒██▒▒████████▒▒██▒▒██▒▒██▒▒██\\n" +LOGO_L[ 8]="\\t\\t██▒▒██▒▒▒▒▒▒▒▒██▒▒██▒▒██▒▒▒▒▒▒▒▒██▒▒██▒▒████▒▒██\\n" +LOGO_L[ 9]="\\t\\t██▒▒████████████████████████████████████████▒▒██\\n" +LOGO_L[10]="\\t\\t██▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒██\\n" +LOGO_L[11]="\\t\\t████████████████████████████████████████████████\\n" +LOGO_L[12]="\\t\\t C H A O S C H E M N I T Z . D E \\n" +LOGO_S[0]="\\t\\t█▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀█ " +LOGO_S[1]="\\t\\t█ █████▀█▀██████▀█▀███ █ " +LOGO_S[2]="\\t\\t█ ██ ▄▄██▄█▀█ ▄▄██▄█▀█ █ " +LOGO_S[3]="\\t\\t█ ██▄██▀█ █ █▄██▀█ █ █ █ " +LOGO_S[4]="\\t\\t█ █▄▄▄▄█▄█▄█▄▄▄▄█▄█▄██ █ " +LOGO_S[5]="\\t\\t█▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄█ " ########################## @@ -21,28 +40,11 @@ do_exit() { exit 0 } -tput civis # hide cursor - -CHCHLOGO_L[ 0]="\\t\\t████████████████████████████████████████████████\\n" -CHCHLOGO_L[ 1]="\\t\\t██▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒██\\n" -CHCHLOGO_L[ 2]="\\t\\t██▒▒████████████████████████████████████████▒▒██\\n" -CHCHLOGO_L[ 3]="\\t\\t██▒▒██████████▒▒██▒▒████████████▒▒██▒▒██████▒▒██\\n" -CHCHLOGO_L[ 4]="\\t\\t██▒▒████▒▒▒▒▒▒████▒▒██████▒▒▒▒▒▒████▒▒██████▒▒██\\n" -CHCHLOGO_L[ 5]="\\t\\t██▒▒████▒▒████████████▒▒██▒▒████████████▒▒██▒▒██\\n" -CHCHLOGO_L[ 6]="\\t\\t██▒▒████▒▒████████▒▒██▒▒██▒▒████████▒▒██▒▒██▒▒██\\n" -CHCHLOGO_L[ 7]="\\t\\t██▒▒██████████▒▒██▒▒██▒▒████████▒▒██▒▒██▒▒██▒▒██\\n" -CHCHLOGO_L[ 8]="\\t\\t██▒▒██▒▒▒▒▒▒▒▒██▒▒██▒▒██▒▒▒▒▒▒▒▒██▒▒██▒▒████▒▒██\\n" -CHCHLOGO_L[ 9]="\\t\\t██▒▒████████████████████████████████████████▒▒██\\n" -CHCHLOGO_L[10]="\\t\\t██▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒██\\n" -CHCHLOGO_L[11]="\\t\\t████████████████████████████████████████████████\\n" -CHCHLOGO_L[12]="\\t\\t C H A O S C H E M N I T Z . D E \\n" - -CHCHLOGO_S[0]="\\t\\t█▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀█ " -CHCHLOGO_S[1]="\\t\\t█ █████▀█▀██████▀█▀███ █ " -CHCHLOGO_S[2]="\\t\\t█ ██ ▄▄██▄█▀█ ▄▄██▄█▀█ █ " -CHCHLOGO_S[3]="\\t\\t█ ██▄██▀█ █ █▄██▀█ █ █ █ " -CHCHLOGO_S[4]="\\t\\t█ █▄▄▄▄█▄█▄█▄▄▄▄█▄█▄██ █ " -CHCHLOGO_S[5]="\\t\\t█▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄█ " +# hide cursor +tput civis +# ohne dieses IFS trennt BASH an Space und erstellt damit zu viele Array-Felder +IFS=' +' append_five_line_symbol() { @@ -163,7 +165,7 @@ draw_logo_time() { local -n _MYOUTPUT=$1 local TIME=$2 - LOGO_TIME=("${CHCHLOGO_S[@]}") + LOGO_TIME=("${LOGO_S[@]}") for((k=1; k<6; k++)); do append_five_line_symbol LOGO_TIME $(echo "$(date --date="@$TIME" +"%H:%M")" | cut -b"$k") @@ -173,7 +175,6 @@ draw_logo_time() LOGO_LINES_POSITION=0 STANAME=() -NUMOFSTA=${#STATIONS[*]} while true; do if ! ping -q -c1 chch.it>/dev/null; then echo -e "\\n\\n\\n\\tNo internet connection!" @@ -183,8 +184,7 @@ while true; do [ ${#STANAME[@]} -eq 0 ] && get_cvag_station_name STANAME STATIONS MYOUTPUT="\\n " - LOGO_LINES_POSITION=$(((LOGO_LINES_POSITION + 1) % (NUMOFSTA + 1))) - for ((j=0; j<"$NUMOFSTA"; j++)); do + for ((j=0; j<"${#STATIONS[*]}"; j++)); do STATION_SCHEDULE="$(curl --connect-timeout 5 -s http://cvag.de/eza/mis/stops/station/CAG-${STATIONS[$j]})" STATION_STOPS=$(echo "$STATION_SCHEDULE" | jq -r ".stops | .[]") @@ -199,9 +199,6 @@ while true; do # Wenn Logo gezeichnet werden soll, baue Urzeit ran und zeichne [ "$j" -eq "$LOGO_LINES_POSITION" ] && draw_logo_time MYOUTPUT $REALSTATION_NOW - # ohne dieses IFS trennt BASH an Space und erstellt damit zu viele Array-Felder - IFS=' -' DESTINATIONS=($(echo -n "$STATION_STOPS" | jq -r '.destination')) LINES=($(echo -n "$STATION_STOPS" | jq -r '.line')) ACDEPS=($(echo -n "$STATION_STOPS" | jq -r '.actualDeparture')) @@ -235,7 +232,8 @@ while true; do done MYOUTPUT="$MYOUTPUT"'\t\t└────────────────────┴─────┴───────────────────────────────┘' done - [ "$LOGO_LINES_POSITION" -eq "$NUMOFSTA" ] && draw_logo_time MYOUTPUT $REALSTATION_NOW + [ "$LOGO_LINES_POSITION" -eq "${#STATIONS[*]}" ] && draw_logo_time MYOUTPUT $REALSTATION_NOW + LOGO_LINES_POSITION=$(((LOGO_LINES_POSITION + 1) % (${#STATIONS[*]} + 1))) clear #reset echo -e "$MYOUTPUT"