#!/bin/sh
# Copy a default KNX download file to /opt/userdata/knxdevice if no download is present.
# This is necessary to enable the SdaApp without an ETS download in GPA only mode.

# set ApplicationProgram2 loadstate to 1, fix for ETS PDB Version 5 or 6.x

KNX_DOWNLOADFILE_PATH="/opt/userdata/knxdevice/"
KNX_GENERIC_TEMPLATE_FILE="/opt/gira/etc/knxstack/default_knxdownload.xml"

start() {
	if [ ! -d ${KNX_DOWNLOADFILE_PATH} ]; then
		mkdir -p ${KNX_DOWNLOADFILE_PATH}
	fi

	downloadfile="${KNX_DOWNLOADFILE_PATH}/device$(cat /opt/extparam/knx_serialnumber_0).xml"
	if [ -f "${KNX_GENERIC_TEMPLATE_FILE}" ] && [ ! -f "${downloadfile}" ]; then
		cp "${KNX_GENERIC_TEMPLATE_FILE}" "${downloadfile}"
	fi

	if [ -f "${downloadfile}" ] && grep 'ApplicationProgram2 loadState="0"' "${downloadfile}" -q; then
		echo "enabling ApplicationProgram2"
		sed -i 's/ApplicationProgram2 loadState="0"/ApplicationProgram2 loadState="1"/' "${downloadfile}"
		killall knxstack
	fi
}

stop() {
	echo "Bye"
}

case "$1" in
	start)
		start
		;;
	stop)
		stop
		;;
	*)
		;;
esac

exit $?
