--- alx-src/trunk/alxconfig-ng/functions/config_sessions.sh 2005/04/21 08:46:44 271 +++ alx-src/trunk/alxconfig-ng/functions/config_sessions.sh 2005/04/28 22:45:05 272 @@ -1,4 +1,4 @@ -# $Header: /home/cvsd/alx-cvs/alx-src/alxconfig-ng/functions/config_sessions.sh,v 1.6 2005-04-21 08:46:44 niro Exp $ +# $Header: /home/cvsd/alx-cvs/alx-src/alxconfig-ng/functions/config_sessions.sh,v 1.7 2005-04-28 22:45:05 niro Exp $ # configures ica-sessions on the host via mysql db settings get_sessions_settings() @@ -11,7 +11,6 @@ #get settings from database all=$(mysql_command ${SQL_USER} ${SQL_PASS} ${SQL_HOST} ${SQL_DB} \ "select filename from cfg_sessions where serial='${ALX_SERIAL}'") - #"select session from cfg_sessions where serial='${ALX_SERIAL}'") #split'em up and put in an array (only if $all not zero) declare -i i=0 @@ -36,7 +35,7 @@ ALX_AUTOSTART=$(mysql_command ${SQL_USER} ${SQL_PASS} ${SQL_HOST} ${SQL_DB} \ "select session from cfg_autostart where serial='${ALX_SERIAL}'") - export ALX_SESSIONS + export ALX_AUTOSTART } generate_ica_session_files() @@ -44,7 +43,6 @@ local all_ids local i local x - local k local server local ses_session local ses_filename @@ -52,67 +50,75 @@ local ses_domain local ses_password local ses_browseradrs + local ses_colors #get settings from database all_ids=$(mysql_command ${SQL_USER} ${SQL_PASS} ${SQL_HOST} ${SQL_DB} \ "select id from cfg_sessions where serial='${ALX_SERIAL}'") - declare -i x=0 for i in ${all_ids} do # get settings - ses_session[${x}]=$(mysql_command ${SQL_USER} ${SQL_PASS} ${SQL_HOST} ${SQL_DB} \ + ses_session=$(mysql_command ${SQL_USER} ${SQL_PASS} ${SQL_HOST} ${SQL_DB} \ "select session from cfg_sessions where serial='${ALX_SERIAL}' and id='${i}'") - ses_filename[${x}]=$(mysql_command ${SQL_USER} ${SQL_PASS} ${SQL_HOST} ${SQL_DB} \ + ses_filename=$(mysql_command ${SQL_USER} ${SQL_PASS} ${SQL_HOST} ${SQL_DB} \ "select filename from cfg_sessions where serial='${ALX_SERIAL}' and id='${i}'") - ses_username[${x}]=$(mysql_command ${SQL_USER} ${SQL_PASS} ${SQL_HOST} ${SQL_DB} \ + ses_username=$(mysql_command ${SQL_USER} ${SQL_PASS} ${SQL_HOST} ${SQL_DB} \ "select username from cfg_sessions where serial='${ALX_SERIAL}' and id='${i}'") - ses_domain[${x}]=$(mysql_command ${SQL_USER} ${SQL_PASS} ${SQL_HOST} ${SQL_DB} \ + ses_domain=$(mysql_command ${SQL_USER} ${SQL_PASS} ${SQL_HOST} ${SQL_DB} \ "select domain from cfg_sessions where serial='${ALX_SERIAL}' and id='${i}'") - ses_password[${x}]=$(mysql_command ${SQL_USER} ${SQL_PASS} ${SQL_HOST} ${SQL_DB} \ + ses_password=$(mysql_command ${SQL_USER} ${SQL_PASS} ${SQL_HOST} ${SQL_DB} \ "select password from cfg_sessions where serial='${ALX_SERIAL}' and id='${i}'") - ses_browseradrs[${x}]=$(mysql_command ${SQL_USER} ${SQL_PASS} ${SQL_HOST} ${SQL_DB} \ + ses_browseradrs=$(mysql_command ${SQL_USER} ${SQL_PASS} ${SQL_HOST} ${SQL_DB} \ "select browseradrs from cfg_sessions where serial='${ALX_SERIAL}' and id='${i}'") + # get the right colors + ses_colors=$(mysql_command ${SQL_USER} ${SQL_PASS} ${SQL_HOST} ${SQL_DB} \ + "select depth from cfg_graphic where serial='${ALX_SERIAL}'") + case ${ses_colors} in + 24) ses_colors="8";; + 16) ses_colors="4";; + 8) ses_colors="2";; + *) ses_colors="2";; + esac + # write session files echo '[WFClient]' > ${ALX_ICA_SESSIONS}/${ses_filename} echo 'Version=2' >> ${ALX_ICA_SESSIONS}/${ses_filename} OLD_IFS="$IFS" IFS=";" - declare -i k=0 - for server in ${ses_browseradrs[${x}]} + declare -i x=0 + for server in ${ses_browseradrs} do - (( k++ )) - echo "TcpBrowserAddress${k}=${server}" >> ${ALX_ICA_SESSIONS}/${ses_filename} + (( x++ )) + echo "TcpBrowserAddress${x}=${server}" >> ${ALX_ICA_SESSIONS}/${ses_filename} done IFS="${OLD_IFS}" - unset k + unset x unset OLD_IFS echo 'ScreenPercent=0' >> ${ALX_ICA_SESSIONS}/${ses_filename} echo '[ApplicationServers]' >> ${ALX_ICA_SESSIONS}/${ses_filename} - echo "${ses_session[${x}]}=" >> ${ALX_ICA_SESSIONS}/${ses_filename} + echo "${ses_session}=" >> ${ALX_ICA_SESSIONS}/${ses_filename} - echo "[${ses_session[${x}]}]" >> ${ALX_ICA_SESSIONS}/${ses_filename} - echo "Address=${ses_session[${x}]}" >> ${ALX_ICA_SESSIONS}/${ses_filename} - echo "InitialProgram=#${ses_session[${x}]}" >> ${ALX_ICA_SESSIONS}/${ses_filename} - echo 'DesiredColor=8' >> ${ALX_ICA_SESSIONS}/${ses_filename} + echo "[${ses_session}]" >> ${ALX_ICA_SESSIONS}/${ses_filename} + echo "Address=${ses_session}" >> ${ALX_ICA_SESSIONS}/${ses_filename} + echo "InitialProgram=#${ses_session}" >> ${ALX_ICA_SESSIONS}/${ses_filename} + echo 'DesiredColor=${ses_colors}' >> ${ALX_ICA_SESSIONS}/${ses_filename} echo 'TransportDriver=TCP/IP' >> ${ALX_ICA_SESSIONS}/${ses_filename} echo 'WinStationDriver=ICA 3.0' >> ${ALX_ICA_SESSIONS}/${ses_filename} - echo "ClearPassword=${ses_password[${x}]}" >> ${ALX_ICA_SESSIONS}/${ses_filename} - echo "Username=${ses_username[${x}]}" >> ${ALX_ICA_SESSIONS}/${ses_filename} - echo "Domain=${ses_domain[${x}]}" >> ${ALX_ICA_SESSIONS}/${ses_filename} + echo "ClearPassword=${ses_password}" >> ${ALX_ICA_SESSIONS}/${ses_filename} + echo "Username=${ses_username}" >> ${ALX_ICA_SESSIONS}/${ses_filename} + echo "Domain=${ses_domain}" >> ${ALX_ICA_SESSIONS}/${ses_filename} echo 'UseFullScreen=Yes' >> ${ALX_ICA_SESSIONS}/${ses_filename} echo 'NoWindowManager=True' >> ${ALX_ICA_SESSIONS}/${ses_filename} done - - (( x++ )) } config_sessions() @@ -126,6 +132,7 @@ local count=${#ALX_SESSIONS[*]} local icon + local i # DEBUG # declare -i i=0