#!/bin/sh

BATFULL=`cat /proc/acpi/battery/BAT0/info | grep -i 'design capacity:' | cut -b 26- | cut -d\  -f 1`
BATSTAT=`cat /proc/acpi/battery/BAT0/state | grep -i 'remaining capacity' | cut -b 26- | cut -d\  -f 1`
BATRATE=`cat /proc/acpi/battery/BAT0/state | grep -i 'present rate' | cut -b 26- | cut -d\  -f 1`
TEMP1=`cat /proc/acpi/thermal_zone/THR1/temperature | grep -i 'temperature' | cut -b 26- | cut -d\  -f 1`
TEMP2=`cat /proc/acpi/thermal_zone/THR2/temperature | grep -i 'temperature' | cut -b 26- | cut -d\  -f 1`
UPTIME=`uptime | cut -d, -f 1 | cut -b 14-`

echo

# Energie-Status auslesen
echo -n "Batterie-Stand:    "
if [ $BATSTAT == $BATFULL ]; then
	echo "voll aufgeladen"
else
	echo "print ($BATSTAT / ($BATFULL / 100))" | bc
	echo " %"
fi

echo -n "Stromquelle:       "
if grep -i "on-line" /proc/acpi/ac_adapter/AC/state > /dev/null; then
	echo "Steckdose"
else
	echo "Akku"
fi
echo -n "Der aktuelle Akkustand reicht für vorraussichtlich "
echo -n `echo "scale = 0; $BATSTAT / $BATRATE" | bc` "Stunden und "
echo `echo "scale = 3; min = ($BATSTAT / $BATRATE * 60); scale = 0; min /= 1; min % 60" | bc` Minuten

echo

# uptime anzeigen
echo -n "der Rechner läuft seit "
if echo "$UPTIME" | grep -i "days" > /dev/null; then
	UPTIME=`echo $UPTIME | tr -d [:alpha:]\ `
	if [ $UPTIME != 1 ]; then
		echo "$UPTIME Tagen"
	else
		echo "$UPTIME Tag"
	fi
elif echo "$UPTIME" | grep -i "min" > /dev/null; then
	UPTIME=`echo $UPTIME | tr -d [:alpha:]\ `
	if [ $UPTIME -ne 1 ]; then
		echo "$UPTIME Minuten"
	else
		echo "$UPTIME Minute"
	fi
else
	HOURS=`echo $UPTIME | tr -d \ | cut -d: -f 1`
	MINUTES=`echo $UPTIME | tr -d \ | cut -d: -f 2`
	if [ $HOURS -ne 1 ]; then
		echo -n "$HOURS Stunden"
	else
		echo -n "$HOURS Stunde"
	fi
	if [ $MINUTES -eq 1 ]; then
		echo " und $MINUTES Minute"
	elif [ $MINUTES -gt 1 ]; then
		echo " und $MINUTES Minuten"
	else
		echo
	fi 
fi

echo

# Temperatur auslesen
echo -n "Temperatur in Zone 1:    "
echo "${TEMP1}° C"

echo -n "Temperatur in Zone 2:    "
echo "${TEMP2}° C"
