#!/bin/bash ################################################## # BamBotoo setup script # Author: pedromorgan@gmail.com ################################################## shopt -s -o nounset declare BOT_SCRIPT="./bambotoo.php" declare BOT_INI_DEFAULT="./configs/bambotoo.ini.default" declare BOT_INI="./configs/bambotoo.ini" declare MOD_INI_DEFAULT="./configs/modules.ini.default" declare MOD_INI="./configs/modules.ini" declare APP_NAME="BamBotoo" declare prompt declare retval declare menuoption declare TEMP_FILE="/tmp/bambotoo_tmp.$$" declare WIDTH="80" declare BACK_TITLE BACK_TITLE="BamBotoo setup script" ################################################## # Check script is executable ################################################## echo "Checking $BOT_SCRIPT is executable" if test -x $BOT_SCRIPT; then echo "OK" else prompt="The '$BOT_SCRIPT' script is not executable.\n\nMake is executable?" dialog --backtitle "$BACK_TITLE" --title "Permissions" --yesno "$prompt" 10 $WIDTH ; retval=$? if [ $retval = "0" ]; then echo "Making script executable" chmod +x $BOT_SCRIPT else echo "Cannot continue as $BOT_SCRIPT is not executable" exit 0 fi fi ################################################## # Check bambotoo.ini config ################################################## echo "Checking for $BOT_INI file" if test -e $BOT_INI; then echo "OK" else prompt="The required config file '$BOT_INI' does not exist.\n\nCopy the '$BOT_INI_DEFAULT' ? " dialog --backtitle "$BACK_TITLE" --title "bot configuration file" --yesno "$prompt" 10 $WIDTH; retval=$? if [ $retval = "0" ]; then echo "Copying default ini .file" cp $BOT_INI_DEFAULT $BOT_INI else echo "Cannot continue as $BOT_INI does not exist" fi fi ################################################### # Check moculdes.ini config (may be redundant soon) ################################################### echo "Checking for $MOD_INI file" if test -e $MOD_INI; then echo "OK" else prompt="The required config file '$MOD_INI' does not exist.\n\nCopy the '$MOD_INI_DEFAULT' ? " dialog --backtitle "$BACK_TITLE" --title "bot configuration file" --yesno "$prompt" 10 $WIDTH; retval=$? if [ $retval = "0" ]; then echo "Copying default modules.ini file" cp $MOD_INI_DEFAULT $MOD_INI else echo "Cannot continue as $MOD_INI does not exist" fi fi ################################################## # Main Menu ################################################## until [ "$menuoption" = "0" ] # loop until 0 ie Exit option do ## Main loop dialog --backtitle "$BACK_TITLE" --title "Main menu"\ --no-cancel --ok-label "Select option" \ --menu "Please select an option" 10 $WIDTH 5 \ "1" "Start Bot" \ "2" "Edit bot config file '$BOT_INI'" \ "3" "Edit module config file '$MOD_INI'" \ "0" "Exit" \ 2> $TEMP_FILE menuoption=`cat $TEMP_FILE` rm -f $TEMP_FILE #echo $retvalx #exit ## start bot # Run bot if [ "$menuoption" = "1" ]; then clear dialog --backtitle "$BACK_TITLE" --title "Start the bot (WIP - both in foreground at the moment)" \ --ok-label "Foreground" --extra-button --extra-label "Background"\ --yesno "\nSelect mode to start $APP_NAME\n" 8 $WIDTH \ ; retval=$? if [ "$retval" == "1" ]; then # cancel echo "cancel" else clear ./bambotoo.php fi fi ## edit babmotoo.ini if [ "$menuoption" = "2" ]; then ${EDITOR:-pico} $BOT_INI fi ## edit modules.ini if [ "$menuoption" = "3" ]; then ${EDITOR:-pico} $MOD_INI fi ## end loop done exit 0