#!/usr/bin/env bash
# script-change-runner
script-change-runner()
{
  HEADER="$(basename ${0}): ${FUNCNAME[0]}"
    
  SOURCE "script-check-variables-loaded-or-not"
  script-check-variables-loaded-or-not
  dbug "I: $(basename ${0}): Launched ${FUNCNAME[0]}"
  SOURCE "script-list-available-runners"
  script-list-available-runners || return 1 # get SELECTED_RUNNER, if it returns 1, go back
 
  PREFIX_INFOFILE="${PREFIXDIR}/Info.yml"
  # If Settings.yml is writable
  if [ -w "${INFOFILE}" ]; then
       #IF Runner: is not found add it
       grep "Runner:" "${INFOFILE}" || echo "Runner:${RUNNER}" >> "${INFOFILE}"
       sed "s|Runner:.*|Runner:${SELECTED_RUNNER}|g" -i "${INFOFILE}"

       grep "Runner:" "${PREFIX_INFOFILE}" || echo "Runner:${RUNNER}" >> "${PREFIX_INFOFILE}"
       sed "s|Runner:.*|Runner:${SELECTED_RUNNER}|g" -i "${PREFIX_INFOFILE}"
       sed "s|Runner:.*|Runner:${SELECTED_RUNNER}|g" -i $(find "${PREFIXDIR}" -maxdepth 1 -type f -iname "*.yml")
       # Update WINEVER on change of runner inside script    

       sed "s|Wine:.*|Wine:${WINEVER}|g" -i "${INFOFILE}"
       sed "s|Wine:.*|Wine:${WINEVER}|g" -i "${PREFIX_INFOFILE}"
       sed "s|Wine:.*|Wine:${WINEVER}|g" -i $(find "${PREFIXDIR}" -maxdepth 1 -type f -iname "*.yml")
       
       export RUNNER="${SELECTED_RUNNER}"
       export RUNNER_NAME="${SELECTED_RUNNERNAME}"
       echo "change runner debug - - - - - - - - - - - - - - - - - - - - -"
       echo "RUNNER=$RUNNER"
       echo "SELECTED_RUNNER=$SELECTED_RUNNER"
       echo "RUNNER_NAME=${SELECTED_RUNNERNAME}"
       echo "INFOFILE=$INFOFILE"
       echo "WINEVER=$WINEVER"
       echo "change runner debug - - - - - - - - - - - - - - - - - - - - -"
       #export RUNNER_NAME=$(basename $(dirname $(dirname ${RUNNER})))
  fi 

  dbug "I: ${HEADER}: Runner: ${SELECTED_RUNNER}"
  #List available runner should set this
  dbug "I: ${HEADER}: Selected Runner is ${RUNNER_NAME}"

  # Kill wineserver, so that winetricks with new runner can work
  wineserver -k && dbug "I: ${HEADER}: killed wineserver"
  
  TEXT="Changed runner to ${SELECTED_RUNNERDIR_NAME}!\n${SELECTED_RUNNER}"
            ${ZENITY_CMD} --info --text="${TEXT}" \
            --title "${APP_WITH_VER} - Change Runner"
  unset TEXT


  # restart Scriptfile after runner change
 # ${SCRIPTFILE} & exit 0
}
