cards/818903050809--the-broken-hourglass/assets/raw.sh
#!/bin/bash
c=$'\033[';C="${c}1;36m";R="${c}0m";G="${c}32m";X="${c}31m"
m(){ clear;t="Broken Hourglass — Date & Time";echo -e "${C}${t}${R}";mapfile -t l< <(printf "%s\n" "Show Date/Time" "Set Date" "Set Time" "Sync NTP" "Set TZ" "HW Clock" "Toggle Sync" "Exit");n=${#l[@]};d=$(( (n+1)/2 ));w=0;for((i=0;i<d;i++));do s="$((i+1)). ${l[i]}";(( ${#s}>w ))&&w=${#s};done;echo;for((i=0;i<d;i++));do a="$((i+1)). ${l[i]}";j=$((i+d));if((j<n));then b="$((j+1)). ${l[j]}";printf "%-*s %s\n" $w "$a" "$b";else printf "%s\n" "$a";fi;done;echo;read -p "Choice: " x;case $x in 1)sd;;2)st d;;3)st t;;4)sn;;5)tz;;6)hw;;7)ts;;8)exit;;*)m;;esac;}
sd(){clear;echo -e "${C}Date: $(date)\nHW: $(sudo hwclock 2>/dev/null||echo n/a)\nSync: $(timedatectl show -p NTPSynchronized --value)${R}";read -n1 -s -r -p "";m;}
st(){clear;read -p "New $1 (YYYY-MM-DD or HH:MM:SS):