#!/bin/sh
#
if [ "$1" = "" -o "$2" = "" ]
then
	echo "usage: $0 notify oem_name"
	exit 1
fi
NOTIFY=`echo $1`
LOGGER="logger"
CALC="bc"
BC_PRECOMMANDS="scale=2"
ECHO="echo"
CUT="cut"
MAX_LCD_BRIGHTNESS=`sysctl -n hw.acpi.fujitsu.lcd_brightness_radix`
MAX_LCD_BRIGHTNESS=`expr ${MAX_LCD_BRIGHTNESS} - 1`
MAX_VOLUME=`sysctl -n hw.acpi.fujitsu.volume_radix`
MAX_VOLUME=`expr ${MAX_VOLUME} - 1`
OEM=$2
DISPLAY_PIPE=/tmp/acpi_${OEM}_display

case ${NOTIFY} in
	0x00)
		LEVEL=`sysctl -n hw.acpi.${OEM}.mute`
		if [ "$LEVEL" = "1" ]
		then
			MESSAGE="volume muted"
		else
			MESSAGE="volume unmuted"
		fi
		;;
	0x01)
		LEVEL=`sysctl -n hw.acpi.${OEM}.pointer_enable`
		if [ "$LEVEL" = "1" ]
		then
			MESSAGE="pointer enabled"
		else
			MESSAGE="pointer disabled"
		fi
		;;
	0x02)
		LEVEL=`sysctl -n hw.acpi.${OEM}.lcd_brightness`
		PERCENT=`${ECHO} "${BC_PRECOMMANDS} ; ${LEVEL} / ${MAX_LCD_BRIGHTNESS} * 100" | ${CALC} | ${CUT} -d . -f 1`
		MESSAGE="brightness level ${PERCENT}%"
		;;
	0x03)
		LEVEL=`sysctl -n hw.acpi.${OEM}.volume`
		PERCENT=`${ECHO} "${BC_PRECOMMANDS} ; ${LEVEL} / ${MAX_VOLUME} * 100" | ${CALC} | ${CUT} -d . -f 1`
		MESSAGE="volume level ${PERCENT}%"
		;;
	*)
		;;
	esac
	${LOGGER} ${MESSAGE}
	if [ -p ${DISPLAY_PIPE} ]
	then
		${ECHO} ${MESSAGE} >> ${DISPLAY_PIPE} &
	fi
exit 0


