diff options
Diffstat (limited to 'commands/booktime')
-rwxr-xr-x | commands/booktime | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/commands/booktime b/commands/booktime new file mode 100755 index 0000000..9133210 --- /dev/null +++ b/commands/booktime @@ -0,0 +1,21 @@ +#!/usr/bin/env bash + +# inspired by and using data from https://literature-clock.jenevoldsen.com/ + +# $2 = noa!noa@localhost +NICK="${2%!*}" +[ -z "$NICK" ] && NICK="$(whoami)" + +# the following timezone logic is taken from /town/our/timefor <3 +ip=$(finger $NICK 2>/dev/null | egrep -o -m 1 '([0-9]{1,3}\.){3}[0-9]{1,3}') +[[ -z $ip ]] && ip=$(finger $1 2>/dev/null | egrep -o -i -m 1 '([0-9a-f]){1,4}(:([0-9a-f]){1,4}){1,7}') +[[ -n $ip ]] && TIMEZONE=$(curl -s "https://ipapi.co/$ip/timezone") + +TIME=$(TZ=$TIMEZONE date "+%H:%M") +SENTS="/town/our/data/booktime.psv" + +awk -F '|' -v time="$TIME" \ + '{ if ($1 == time) { print $3 " --" $5 ", " $4 } else {next }}' "$SENTS" \ + | shuf \ + | tail -n1 + |