#!/bin/bash

INPUT=/tmp/menu.sh.$$

. /srv/rdaa/service/.env
. /srv/rdaa/service/.uid

uptime=$(uptime --pretty)
os_version=$(cat /srv/rdaa/service/.os_version)
ip="$(ip -4 addr show eth0 | grep -oP '(?<=inet\s)\d+(\.\d+){3}')"
build_version=$(docker inspect -f '{{index .Config.Labels "build_version"}}' service_rdaa_1)
rdaa_version=$(docker inspect -f '{{index .Config.Labels "rdaa-version"}}' service_rdaa_1)

vol_speaker=$(amixer sget 'Master' | grep -o -E [[:digit:]]+%|head -1)
vol_mic=$(amixer sget 'Capture' | grep -o -E [[:digit:]]+%|head -1)

temp=$(/opt/vc/bin/vcgencmd measure_temp| grep -o '[0-9.]*')

if [ -z "$rdaa_version" ]
then
    version=$build_version
else
    version=$rdaa_version
fi

while true
do

### display main menu ###
dialog --clear  --backtitle "Tools for RDA" \
--title "[ RDA - M E N U ]" \
--no-cancel \
--menu "Environment: $ENVIRONMENT                     OS Version: $os_version\n\
RDA UID: $RDAA_UID                RDA IP: $ip \n\
RDAA Version: $version        RDA Temperature: $temp °C \n\
Volume Speaker: $vol_speaker            Volume Microphone: $vol_mic \n\
Uptime: $uptime \n\
Choose the TASK" 22 65 12 \
Enter "Enter in RDAA container" \
Environment "Change environment for RDAA" \
Mixer "Change audio volume" \
Logs "Show RDAA Update logs in realtime" \
RDDC-Update "Update RDDC Info for this RDA" \
Restart "Restart RDAA container" \
Stop "Stop RDAA container" \
Start "Start RDAA container" \
Reboot "Reboot RDA Host" \
Exit "Exit to the shell" 2>"${INPUT}"

menuitem=$(<"${INPUT}")

case $menuitem in
	Enter) rdaa-exec;;
	Environment) rdaa-menu-env;;
	Mixer) alsamixer;;
	Logs) rdaa-log;;
	RDDC-Update) rdaa-rddc_update;;
	Restart) rdaa-restart;;
	Stop) rdaa-stop;;
	Start) rdaa-start;;
	Reboot) sudo reboot;;
	Exit) echo "Bye"; break;;
esac

done

[ -f $INPUT ] && rm $INPUT