Magellan Linux

Diff of /alx-src/trunk/alxconfig-ng/functions/config_sessions.sh

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 245 by niro, Tue Apr 12 20:54:19 2005 UTC revision 246 by niro, Wed Apr 13 16:09:53 2005 UTC
# Line 1  Line 1 
1  # $Header: /home/cvsd/alx-cvs/alx-src/alxconfig-ng/functions/config_sessions.sh,v 1.4 2005-04-12 20:54:16 niro Exp $  # $Header: /home/cvsd/alx-cvs/alx-src/alxconfig-ng/functions/config_sessions.sh,v 1.5 2005-04-13 16:09:53 niro Exp $
2  # configures ica-sessions on the host via mysql db settings  # configures ica-sessions on the host via mysql db settings
3    
4  get_sessions_settings()  get_sessions_settings()
# Line 10  get_sessions_settings() Line 10  get_sessions_settings()
10    
11   #get settings from database   #get settings from database
12   all=$(mysql_command ${SQL_USER} ${SQL_PASS} ${SQL_HOST} ${SQL_DB} \   all=$(mysql_command ${SQL_USER} ${SQL_PASS} ${SQL_HOST} ${SQL_DB} \
13   "select session from cfg_sessions where serial='${ALX_SERIAL}'")   "select filename from cfg_sessions where serial='${ALX_SERIAL}'")
14     #"select session from cfg_sessions where serial='${ALX_SERIAL}'")
15    
16   #split'em up and put in an array (only if $all not zero)   #split'em up and put in an array (only if $all not zero)
17   declare -i i=0   declare -i i=0
# Line 29  get_sessions_settings() Line 30  get_sessions_settings()
30   export ALX_SESSIONS   export ALX_SESSIONS
31  }  }
32    
33    get_autostart_settings()
34    {
35     #get settings from database
36     ALX_AUTOSTART=$(mysql_command ${SQL_USER} ${SQL_PASS} ${SQL_HOST} ${SQL_DB} \
37     "select session from cfg_autostart where serial='${ALX_SERIAL}'")
38    
39     export ALX_SESSIONS
40    }
41    
42    generate_ica_session_files()
43    {
44     local all_ids
45     local i
46     local x
47     local k
48     local server
49     local ses_session
50     local ses_filename
51     local ses_username
52     local ses_domain
53     local ses_password
54     local ses_browseradrs
55    
56     #get settings from database
57     all_ids=$(mysql_command ${SQL_USER} ${SQL_PASS} ${SQL_HOST} ${SQL_DB} \
58     "select id from cfg_sessions where serial='${ALX_SERIAL}'")
59    
60     declare -i x=0
61     for i in ${all_ids}
62     do
63     # get settings
64     ses_session[${x}]=$(mysql_command ${SQL_USER} ${SQL_PASS} ${SQL_HOST} ${SQL_DB} \
65     "select session from cfg_sessions where serial='${ALX_SERIAL}' and id='${i}'")
66    
67     ses_filename[${x}]=$(mysql_command ${SQL_USER} ${SQL_PASS} ${SQL_HOST} ${SQL_DB} \
68     "select filename from cfg_sessions where serial='${ALX_SERIAL}' and id='${i}'")
69    
70     ses_username[${x}]=$(mysql_command ${SQL_USER} ${SQL_PASS} ${SQL_HOST} ${SQL_DB} \
71     "select username from cfg_sessions where serial='${ALX_SERIAL}' and id='${i}'")
72    
73     ses_domain[${x}]=$(mysql_command ${SQL_USER} ${SQL_PASS} ${SQL_HOST} ${SQL_DB} \
74     "select domain from cfg_sessions where serial='${ALX_SERIAL}' and id='${i}'")
75    
76     ses_password[${x}]=$(mysql_command ${SQL_USER} ${SQL_PASS} ${SQL_HOST} ${SQL_DB} \
77     "select password from cfg_sessions where serial='${ALX_SERIAL}' and id='${i}'")
78    
79     ses_browseradrs[${x}]=$(mysql_command ${SQL_USER} ${SQL_PASS} ${SQL_HOST} ${SQL_DB} \
80     "select browseradrs from cfg_sessions where serial='${ALX_SERIAL}' and id='${i}'")
81    
82     # write session files
83     echo '[WFClient]' > ${ALX_ICA_SESSIONS}/${ses_filename}
84     echo 'Version=2' >> ${ALX_ICA_SESSIONS}/${ses_filename}
85     OLD_IFS="$IFS"
86     IFS=";"
87     declare -i k=0
88     for server in ${ses_browseradrs[${x}]}
89     do
90     (( k++ ))
91     echo "TcpBrowserAddress${k}=${server}" >> ${ALX_ICA_SESSIONS}/${ses_filename}
92     done
93     IFS="${OLD_IFS}"
94     unset k
95     unset OLD_IFS
96    
97     echo 'ScreenPercent=0' >> ${ALX_ICA_SESSIONS}/${ses_filename}
98    
99     echo '[ApplicationServers]' >> ${ALX_ICA_SESSIONS}/${ses_filename}
100     echo "${ses_session[${x}]}=" >> ${ALX_ICA_SESSIONS}/${ses_filename}
101    
102     echo "[${ses_session[${x}]}]" >> ${ALX_ICA_SESSIONS}/${ses_filename}
103     echo "Address=${ses_session[${x}]}" >> ${ALX_ICA_SESSIONS}/${ses_filename}
104     echo "InitialProgram=#${ses_session[${x}]}" >> ${ALX_ICA_SESSIONS}/${ses_filename}
105     echo 'DesiredColor=3' >> ${ALX_ICA_SESSIONS}/${ses_filename}
106     echo 'TransportDriver=TCP/IP' >> ${ALX_ICA_SESSIONS}/${ses_filename}
107     echo 'WinStationDriver=ICA 3.0' >> ${ALX_ICA_SESSIONS}/${ses_filename}
108     echo "ClearPassword=${ses_password[${x}]}" >> ${ALX_ICA_SESSIONS}/${ses_filename}
109     echo "Username=${ses_username[${x}]}" >> ${ALX_ICA_SESSIONS}/${ses_filename}
110     echo "Domain=${ses_domain[${x}]}" >> ${ALX_ICA_SESSIONS}/${ses_filename}
111     echo 'UseFullScreen=Yes' >> ${ALX_ICA_SESSIONS}/${ses_filename}
112     echo 'NoWindowManager=True' >> ${ALX_ICA_SESSIONS}/${ses_filename}
113     done
114    
115     (( x++ ))
116    }
117    
118  config_sessions()  config_sessions()
119  {  {
120     # generate ica session files
121     generate_ica_session_files
122    
123   #first of all get the vars   #first of all get the vars
124   get_sessions_settings   get_sessions_settings
125     get_autostart_settings
126    
127   local count=${#ALX_SESSIONS[*]}   local count=${#ALX_SESSIONS[*]}
128   local icon   local icon
# Line 62  config_sessions() Line 152  config_sessions()
152   cat ${ALX_SKELETONS}/fluxbox/apps \   cat ${ALX_SKELETONS}/fluxbox/apps \
153   > ${ALX_UNPRIV_HOME}/.fluxbox/apps   > ${ALX_UNPRIV_HOME}/.fluxbox/apps
154    
155     # add autostart session
156     if [[ ${ALX_AUTOSTART} != "" ]]
157     then
158     echo "[startup] {wfica ${ALX_ICA_SESSIONS}/${ALX_AUTOSTART}}" \
159     >> ${ALX_UNPRIV_HOME}/.fluxbox/apps
160     fi
161    
162   # fluxbox hotkeys   # fluxbox hotkeys
163   cat ${ALX_SKELETONS}/fluxbox/apps \   cat ${ALX_SKELETONS}/fluxbox/apps \
164   > ${ALX_UNPRIV_HOME}/.fluxbox/keys   > ${ALX_UNPRIV_HOME}/.fluxbox/keys

Legend:
Removed from v.245  
changed lines
  Added in v.246