26 |
mecho "get citrix.session" |
mecho "get citrix.session" |
27 |
mecho " Shows all configured ICA sessions" |
mecho " Shows all configured ICA sessions" |
28 |
mecho |
mecho |
29 |
mecho "set citrix.session [action] [session] [mode] [user] [domain] [password]" |
mecho "set citrix.session [action] [name] [session] [mode] [user] [domain] [password]" |
30 |
mecho " Adds or delets a ICA session." |
mecho " Adds or delets a ICA session." |
31 |
mecho " Available actions:" |
mecho " Available actions:" |
32 |
mecho " add - adds a new ica session" |
mecho " add - adds a new ica session" |
49 |
set_citrix_session() |
set_citrix_session() |
50 |
{ |
{ |
51 |
local action="$1" |
local action="$1" |
52 |
local session="$2" |
local name="$2" |
53 |
local mode="$3" |
local session="$3" |
54 |
local user="$4" |
local mode="$4" |
55 |
local domain="$5" |
local user="$5" |
56 |
local password="$6" |
local domain="$6" |
57 |
|
local password="$7" |
58 |
local serverlist |
local serverlist |
59 |
local server |
local server |
60 |
local server_num |
local server_num |
61 |
|
local icafile |
62 |
local CONFIG |
local CONFIG |
63 |
local i |
local i |
64 |
|
|
65 |
[[ -z ${action} ]] && help_citrix_session && return 1 |
[[ -z ${action} ]] && help_citrix_session && return 1 |
66 |
[[ -z ${session} ]] && help_citrix_session && return 1 |
[[ -z ${name} ]] && help_citrix_session && return 1 |
67 |
|
|
68 |
case "${action}" in |
case "${action}" in |
69 |
add) |
add) |
70 |
# action 'add' need mode too |
# action 'add' need mode too |
71 |
[[ -z ${mode} ]] && help_citrix_session && return 1 |
[[ -z ${mode} ]] && help_citrix_session && return 1 |
72 |
|
# and session |
73 |
|
[[ -z ${session} ]] && help_citrix_session && return 1 |
74 |
|
|
75 |
# other sanity checks |
# other sanity checks |
76 |
case "${mode}" in |
case "${mode}" in |
80 |
*) help_citrix_session && return 1 |
*) help_citrix_session && return 1 |
81 |
esac |
esac |
82 |
|
|
83 |
CONFIG="${MCORE_CONFIG_PATH}/citrix/ica/${session}.ica" |
icafile="${MCORE_CONFIG_PATH}/citrix/ica/${name}.ica" |
84 |
|
CONFIG="${MROOT}/${icafile}" |
85 |
clearconfig |
clearconfig |
86 |
|
|
87 |
addconfig '[WFClient]' |
addconfig '[WFClient]' |
139 |
esac |
esac |
140 |
|
|
141 |
# generate fluxbox menu entry |
# generate fluxbox menu entry |
142 |
set_fluxbox_menuitem add "${session}" "wfica ${CONFIG}" |
set_fluxbox_menuitem add "${name}" "wfica ${icafile}" |
143 |
;; |
;; |
144 |
|
|
145 |
del) |
del) |
146 |
if [[ -f ${MCORE_CONFIG_PATH}/citrix/ica/${session}.ica ]] |
if [ -f ${MROOT}/${MCORE_CONFIG_PATH}/citrix/ica/"${name}".ica ] |
147 |
then |
then |
148 |
rm ${MCORE_CONFIG_PATH}/citrix/ica/"${session}".ica |
rm ${MROOT}/${MCORE_CONFIG_PATH}/citrix/ica/"${name}".ica |
149 |
set_fluxbox_menuitem del "${session}" |
set_fluxbox_menuitem del "${name}" |
150 |
|
|
151 |
elif [[ -z ${file} ]] |
elif [[ -z ${file} ]] |
152 |
then |
then |
153 |
# delete all items, needed to loop through every session |
# delete all items, needed to loop through every session |
154 |
# or we delete *all* fluxbox menuitem too |
# or we delete *all* fluxbox menuitem too |
155 |
for i in ${MCORE_CONFIG_PATH}/citrix/ica/* |
for i in $(find ${MROOT}/${MCORE_CONFIG_PATH}/citrix/ica -type f) |
156 |
do |
do |
157 |
rm ${i} |
rm ${i} |
158 |
set_fluxbox_menuitem del "$(basename ${i} .ica)" |
set_fluxbox_menuitem del "$(basename ${i} .ica)" |
166 |
|
|
167 |
get_citrix_session() |
get_citrix_session() |
168 |
{ |
{ |
169 |
local i |
list_files_in_directory ${MROOT}/${MCORE_CONFIG_PATH}/citrix/ica |
|
local item |
|
|
|
|
|
for i in $(find ${MCORE_CONFIG_PATH}/citrix/ica -type f) |
|
|
do |
|
|
item="${item} $(basename ${i} .ica)" |
|
|
done |
|
|
|
|
|
rvecho "${item}" |
|
170 |
} |
} |
171 |
|
|
172 |
set_citrix_serverlist() |
set_citrix_serverlist() |
180 |
case "${action}" in |
case "${action}" in |
181 |
add) |
add) |
182 |
[[ -z ${server} ]] && help_citrix_serverlist && return 1 |
[[ -z ${server} ]] && help_citrix_serverlist && return 1 |
183 |
CONFIG="${MCORE_CONFIG_PATH}/citrix/serverlist/${server}" |
CONFIG="${MROOT}/${MCORE_CONFIG_PATH}/citrix/serverlist/${server}" |
184 |
clearconfig |
clearconfig |
185 |
addconfig "${server}" |
addconfig "${server}" |
186 |
;; |
;; |
187 |
|
|
188 |
del) |
del) |
189 |
if [[ -f ${MCORE_CONFIG_PATH}/citrix/serverlist/${server} ]] |
if [[ -f ${MROOT}/${MCORE_CONFIG_PATH}/citrix/serverlist/${server} ]] |
190 |
then |
then |
191 |
rm ${MCORE_CONFIG_PATH}/citrix/serverlist/"${server}" |
rm ${MROOT}/${MCORE_CONFIG_PATH}/citrix/serverlist/"${server}" |
192 |
elif [[ -z ${server} ]] |
elif [[ -z ${server} ]] |
193 |
then |
then |
194 |
# delete all items |
# delete all items |
195 |
rm ${MCORE_CONFIG_PATH}/citrix/serverlist/* |
find ${MROOT}/${MCORE_CONFIG_PATH}/citrix/serverlist -type f | xargs --no-run-if-empty rm |
196 |
fi |
fi |
197 |
;; |
;; |
198 |
|
|
202 |
|
|
203 |
get_citrix_serverlist() |
get_citrix_serverlist() |
204 |
{ |
{ |
205 |
local i |
list_files_in_directory ${MROOT}/${MCORE_CONFIG_PATH}/citrix/serverlist |
|
local item |
|
|
|
|
|
for i in $(find ${MCORE_CONFIG_PATH}/citrix/serverlist -type f) |
|
|
do |
|
|
item="${item} $(basename ${i})" |
|
|
done |
|
|
|
|
|
rvecho "${item}" |
|
206 |
} |
} |