#!/bin/sh

HOOKS_DIR=/barix/run-order/application
FEATURES_FILE=/tmp/device_features

if [ -f $FEATURES_FILE ]; then
    HIDDEN_APPS=$(jq -re .hidden_features[] $FEATURES_FILE)
fi

start() {
    for HOOK in $(ls $HOOKS_DIR/S*); do
        # does not start applications on hidden list
        # get basename from path and remove "SXX" suffix
        echo $HIDDEN_APPS | grep -q -w $(basename $HOOK | cut -c 4-)
        if [ $? -ne 0 ]; then
            sh $HOOK start
        fi
    done
}

stop() {
    for HOOK in $(ls $HOOKS_DIR/K*); do
        echo $HIDDEN_APPS | grep -q -w $(basename $HOOK | cut -c 4-)
        if [ $? -ne 0 ]; then
            sh $HOOK stop
        fi
    done
}

restart() {

    for HOOK in $(ls $HOOKS_DIR/K*); do
        echo $HIDDEN_APPS | grep -q -w $(basename $HOOK | cut -c 4-)
        if [ $? -ne 0 ]; then
            sh $HOOK restart
        fi
    done
}


case "$1" in
	start)
		start
		;;
		
	stop)
		stop
		;;
		
	restart)
		restart
		;;
		
	  *)
    echo "Usage: /etc/init.d/run-app start|stop|restart"
    exit 1
    ;;
esac
