#!/bin/bash

my_dir="$(dirname "$0")"
source "$my_dir/.build.config"

LOG_PREFIX="$APPLICATION_BUILDNAME-CRONEXEC"

if [ -z "$1" ];
then
	echo "$LOG_PREFIX ERROR!!! Missing time specifier" >> "$APPLICATION_LOG_PATH/task.log"
	exit 1
fi

if [ "$1" == "5minutes" ] || [ "$1" == "minute" ] || [ "$1" == "daily" ] || [ "$1" == "hourly" ] || [ "$1" == "monthly" ] || [ "$1" == "weekly" ];
then
	echo "$LOG_PREFIX Executing '$1' tasks"  >> "$APPLICATION_LOG_PATH/task.log"
	
	BASEDIR=`pwd`
	cd "$APPLICATION_CRON_PATH"
	
	for i in `ls | grep -P "\.$1\."`
	do
		echo "$LOG_PREFIX Executing '$i' task" >> "$APPLICATION_LOG_PATH/task.log"
		RESULT=`./$i`
		if [[ "$RESULT" = "" ]]; then
			echo "$LOG_PREFIX Execution of task '$i' completed" >> "$APPLICATION_LOG_PATH/task.log"
		else
			echo "$LOG_PREFIX Task '$i' returned message '$RESULT'" >> "$APPLICATION_LOG_PATH/task.log"
		fi
	done
	cd "$BASEDIR"
else
	echo "$LOG_PREFIX ERROR!!! Invalid time specifier" >> "$APPLICATION_LOG_PATH/task.log"
	exit 1
fi
