#!/bin/bash

PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/bin/X11:/usr/games:/usr/local/bin:/root/bin


TITLE="Euro3G - Configurazione della situazione tavoli"

MYSQL="mysql -peuro3g -ueuro3g eurotest"

cd /opt/euro-beta
CURR_GUI=`systools/get_eurodb_config_val E3G_MainGuiVersion`

UBUNTU=`lsb_release -a 2>/dev/null | grep -qi "Ubuntu" && echo "1"`

source /opt/euro-beta/set3g_env
if ! which sysquery >/dev/null 2>&1 
then
  PATH=$PATH:/opt/euro-beta
fi
if [ -z "$DISPLAY" ]
then
  export DISPLAY=:0
fi

E3G_RERBOOT="N"

if [ $CURR_GUI -gt 0 ]
then
  sysquery "$TITLE" "<b>Volete adattare la configurazione dei tavoli utilizzando lo sfondo e icone della vecchia GUI ?</b>" "Si, procedere" "No, non fare niente"
  if [ $? == 0 ] 
  then
    cat /opt/euro-beta/systools/distr/migrate_to_old_gui.sql | /opt/euro-beta/systools/patch_sql | $MYSQL -f 2>/dev/null
    systools/set_eurodb_config_val E3G_MainGuiVersion int 0
    E3G_RERBOOT="Y"
  fi
else
  sysquery "$TITLE" "<b>Volete adattare la configurazione dei tavoli utilizzando lo sfondo e icone della nuova GUI ?</b>" "Si, procedere" "No, non fare niente"
  if [ $? == 0 ] 
  then
    cat /opt/euro-beta/systools/distr/migrate_to_new_gui.sql | /opt/euro-beta/systools/patch_sql | $MYSQL -f 2>/dev/null
    systools/set_eurodb_config_val E3G_MainGuiVersion int 100  
    E3G_RERBOOT="Y"
  fi
fi

XRANDR_XRES=`xrandr --query | egrep "[0-9 .]+\*" | awk '{print $1'} | cut -d'x' -f1`
XRANDR_YRES=`xrandr --query | egrep "[0-9 .]+\*" | awk '{print $1'} | cut -d'x' -f2`

NATIVE_WIDE=1
if [ "A"`( echo scale=2 ; echo $XRANDR_XRES/$XRANDR_YRES ) | bc` == "A"`( echo scale=2 ; echo 16/9 ) | bc` ]
then
  sysquery "$TITLE" "<b>Volete usare la versione specifica per lo schermo largo 16:9?<br>(Potrebbe essere neccessario adattare la disposizione dei tavoli)</b>" "Si, usa 16:9" "No, usa 4:3"
  if [ $? == 0 ] 
  then
    if [ ! -f /opt/euro-beta/e3g_wide_screen ]
    then
      touch /opt/euro-beta/e3g_wide_screen
      E3G_RERBOOT="Y"
    fi
  else
    NATIVE_WIDE=0
    if [ -f /opt/euro-beta/e3g_wide_screen ]
    then
      rm -f /opt/euro-beta/e3g_wide_screen
      E3G_RERBOOT="Y"
    fi
  fi
else
  rm -f /opt/euro-beta/e3g_wide_screen
fi

sysquery "$TITLE" "<b>Volete usare la risoluzione nativa dello schermo o adattare GUI (zoom) ?<br>Risoluzione nativa e' piu' nitida ma potrebbe non riempire l'intero schermo<br>Zoom sfrutta tutto lo schermo ma l'immagine potrebbe essere piu' <i>sfocata</i></b>" "Risoluzione nativa" " Zoom "
if [ $? == 0 ] 
then
  if [ -f /opt/euro-beta/xrandr_scale ]
  then
    rm -f /opt/euro-beta/xrandr_scale
    E3G_RERBOOT="Y"
  fi
else
  NATIVE_WIDE=0
  if [ ! -f /opt/euro-beta/xrandr_scale ]
  then
    touch /opt/euro-beta/xrandr_scale
    E3G_RERBOOT="Y"
  fi
fi

if [ $UBUNTU ] && [ $NATIVE_WIDE -eq 1 ] 
then
    cat /opt/euro-beta/systools/distr/migrate_to_new_wide_bg.sql | /opt/euro-beta/systools/patch_sql | $MYSQL -f 2>/dev/null
fi

if [ "$E3G_RERBOOT" == "Y" ] 
then
  sysquery "$TITLE" "<b>Volete riavviare Euro3G per rendere effetive le modifiche della GUI ?</b>" "Si, procedere" "No, riavviero' piu' tardi"
  if [ $? == 0 ] ;
  then
    ./e3g_restart
  fi
fi
exit 0
