| 1 | #/bin/sh |
|---|
| 2 | # |
|---|
| 3 | # written by conon <troll@logi.net.au> |
|---|
| 4 | # |
|---|
| 5 | # This script is intended to be run before starting licq |
|---|
| 6 | # It prepares the directory and users setups to that of a |
|---|
| 7 | # current kxicq setup |
|---|
| 8 | # just run the script and it will do it all |
|---|
| 9 | # |
|---|
| 10 | |
|---|
| 11 | test "${1}" && test "${1}" == "-t" -o "${1}" == "-T" && TESTING="-b .licq" |
|---|
| 12 | |
|---|
| 13 | if test "$TESTING" |
|---|
| 14 | then |
|---|
| 15 | LICQ_DIR=.licq |
|---|
| 16 | KDE_DIR=.kde/share |
|---|
| 17 | else |
|---|
| 18 | LICQ_DIR=~/.licq |
|---|
| 19 | KDE_DIR=~/.kde/share |
|---|
| 20 | fi |
|---|
| 21 | |
|---|
| 22 | LICQ_USER_DIR=${LICQ_DIR}/users |
|---|
| 23 | LICQ_HISTORY_DIR=${LICQ_DIR}/history |
|---|
| 24 | LICQ_CONF=${LICQ_DIR}/licq.conf |
|---|
| 25 | LICQ_OWNER=${LICQ_DIR}/owner.uin |
|---|
| 26 | LICQ_QT_GUI=${LICQ_DIR}/licq_qt-gui.conf |
|---|
| 27 | LICQ_USERS=${LICQ_DIR}/users.conf |
|---|
| 28 | OWNER_HISTORY=${LICQ_HISTORY_DIR}/owner.history |
|---|
| 29 | |
|---|
| 30 | KXICQ_RC=${KDE_DIR}/config/kxicq2rc |
|---|
| 31 | KXICQ_CONTACTS=${KDE_DIR}/apps/kxicq2/contacts.kxicq |
|---|
| 32 | KXICQ_MESSAGES=${KDE_DIR}/apps/kxicq2/messages.kxicq2 |
|---|
| 33 | |
|---|
| 34 | DEFAULT_T_F=0 |
|---|
| 35 | |
|---|
| 36 | L_SERVER="ICQServer" |
|---|
| 37 | K_SERVER="Server" |
|---|
| 38 | SERVER="" |
|---|
| 39 | L_SERVER_PORT="ICQServerPort" |
|---|
| 40 | K_SERVER_PORT="Port" |
|---|
| 41 | SERVER_PORT=0 |
|---|
| 42 | L_USE_PROXY="ProxyEnabled" |
|---|
| 43 | K_USE_PROXY="Use Proxy" |
|---|
| 44 | USE_PROXY="" |
|---|
| 45 | L_PROXY_SERVER="ProxyServer" |
|---|
| 46 | K_PROXY_SERVER="Proxy Server" |
|---|
| 47 | PROXY_SERVER="" |
|---|
| 48 | L_PROXY_PORT="ProxyServerPort" |
|---|
| 49 | K_PROXY_PORT="Proxy Port" |
|---|
| 50 | PROXY_PORT=0 |
|---|
| 51 | L_DOCKING="UseDock" |
|---|
| 52 | K_DOCKING="KDE Dock" |
|---|
| 53 | DOCKING=0 |
|---|
| 54 | |
|---|
| 55 | L_NICK="Alias" |
|---|
| 56 | K_NICK="Nick" |
|---|
| 57 | NICK="" |
|---|
| 58 | L_PASSWORD="Password" |
|---|
| 59 | K_PASSWORD="Password" |
|---|
| 60 | PASSWORD="" |
|---|
| 61 | L_UIN="Uin" |
|---|
| 62 | K_UIN="UIN" |
|---|
| 63 | UIN=0 |
|---|
| 64 | L_WEB_STATUS="WebPresence" |
|---|
| 65 | K_WEB_STATUS="Web Status" |
|---|
| 66 | WEB_STATUS=0 |
|---|
| 67 | L_HIDE_IP="HideIp" |
|---|
| 68 | K_HIDE_IP="Hide IP" |
|---|
| 69 | HIDE_IP=0 |
|---|
| 70 | |
|---|
| 71 | K_USE_AUTO_AWAY="Auto Away" |
|---|
| 72 | USE_AWAY_TIME=false |
|---|
| 73 | L_AWAY_TIME="AutoAway" |
|---|
| 74 | K_AWAY_TIME="Away Time" |
|---|
| 75 | AWAY_TIME=5 |
|---|
| 76 | L_N_A_TIME="AutoNA" |
|---|
| 77 | K_N_A_TIME="N/A Time" |
|---|
| 78 | N_A_TIME=10 |
|---|
| 79 | |
|---|
| 80 | function true_false () |
|---|
| 81 | { |
|---|
| 82 | case $1 |
|---|
| 83 | in |
|---|
| 84 | "true"|"TRUE"|"True"|"1") echo 1;; |
|---|
| 85 | "false"|"FALSE"|"False"|"0") echo 0;; |
|---|
| 86 | *) echo ${DEFAULT_T_F};; |
|---|
| 87 | esac |
|---|
| 88 | } |
|---|
| 89 | |
|---|
| 90 | function readkxicq2conf () |
|---|
| 91 | { |
|---|
| 92 | local INSTUFF |
|---|
| 93 | local INBASE |
|---|
| 94 | local INREST |
|---|
| 95 | while read INSTUFF |
|---|
| 96 | do |
|---|
| 97 | INBASE=${INSTUFF%%'='*} |
|---|
| 98 | INREST=${INSTUFF##*'='} |
|---|
| 99 | case ${INBASE} |
|---|
| 100 | in |
|---|
| 101 | ${K_SERVER}) SERVER="${INREST}";; |
|---|
| 102 | ${K_SERVER_PORT}) SERVER_PORT="${INREST}";; |
|---|
| 103 | ${K_USE_PROXY}) USE_PROXY=`true_false ${INREST}`;; |
|---|
| 104 | ${K_PROXY_SERVER}) PROXY_SERVER="${INREST}";; |
|---|
| 105 | ${K_PROXY_PORT}) PROXY_PORT="${INREST}";; |
|---|
| 106 | ${K_NICK}) NICK="${INREST}";; |
|---|
| 107 | ${K_PASSWORD}) PASSWORD="${INREST}";; |
|---|
| 108 | ${K_UIN}) UIN="${INREST}";; |
|---|
| 109 | ${K_WEB_STATUS}) WEB_STATUS=`true_false ${INREST}`;; |
|---|
| 110 | ${K_HIDE_IP}) HIDE_IP=`true_false ${INREST}`;; |
|---|
| 111 | ${K_DOCKING}) DOCKING=`true_false ${INREST}`;; |
|---|
| 112 | ${K_USE_AUTO_AWAY}) USE_AUTO_AWAY="${INREST}";; |
|---|
| 113 | ${K_AWAY_TIME}) AWAY_TIME="${INREST}";; |
|---|
| 114 | ${K_N_A_TIME}) N_A_TIME="${INREST}";; |
|---|
| 115 | esac |
|---|
| 116 | done |
|---|
| 117 | } |
|---|
| 118 | |
|---|
| 119 | function out_licq_conf () |
|---|
| 120 | { |
|---|
| 121 | local INSTUFF |
|---|
| 122 | local INBASE |
|---|
| 123 | local INREST |
|---|
| 124 | while read INSTUFF |
|---|
| 125 | do |
|---|
| 126 | INBASE=${INSTUFF%%'='*} |
|---|
| 127 | INBASE=${INSTUFF%%' '*} |
|---|
| 128 | INREST=${INSTUFF##*'='} |
|---|
| 129 | INREST=${INSTUFF##*' '} |
|---|
| 130 | case $INBASE |
|---|
| 131 | in |
|---|
| 132 | ${L_SERVER}) echo "${INBASE} = ${SERVER}";; |
|---|
| 133 | ${L_SERVER_PORT}) echo "${INBASE} = ${SERVER_PORT}";; |
|---|
| 134 | ${L_USE_PROXY}) echo "${INBASE} = ${USE_PROXY}";; |
|---|
| 135 | ${L_PROXY_SERVER}) echo "${INBASE} = ${PROXY_SERVER}";; |
|---|
| 136 | ${L_PROXY_PORT}) echo "${INBASE} = ${PROXY_PORT}";; |
|---|
| 137 | *) echo "${INSTUFF}";; |
|---|
| 138 | esac |
|---|
| 139 | done |
|---|
| 140 | } |
|---|
| 141 | |
|---|
| 142 | function out_owner_uin () |
|---|
| 143 | { |
|---|
| 144 | local INSTUFF |
|---|
| 145 | local INBASE |
|---|
| 146 | local INREST |
|---|
| 147 | while read INSTUFF |
|---|
| 148 | do |
|---|
| 149 | INBASE=${INSTUFF%%'='*} |
|---|
| 150 | INBASE=${INSTUFF%%' '*} |
|---|
| 151 | INREST=${INSTUFF##*'='} |
|---|
| 152 | INREST=${INSTUFF##*' '} |
|---|
| 153 | case $INBASE |
|---|
| 154 | in |
|---|
| 155 | "History") echo "${INBASE} = ${OWNER_HISTORY}";; |
|---|
| 156 | ${L_NICK}) echo "${INBASE} = ${NICK}";; |
|---|
| 157 | ${L_PASSWORD}) echo "${INBASE} = ${PASSWORD}";; |
|---|
| 158 | ${L_UIN}) echo "${INBASE} = ${UIN}";; |
|---|
| 159 | ${L_WEB_STATUS}) echo "${INBASE} = ${WEB_STATUS}";; |
|---|
| 160 | ${L_HIDE_IP}) echo "${INBASE} = ${HIDE_IP}";; |
|---|
| 161 | *) echo "${INSTUFF}";; |
|---|
| 162 | esac |
|---|
| 163 | done |
|---|
| 164 | } |
|---|
| 165 | |
|---|
| 166 | function out_qt_gui () |
|---|
| 167 | { |
|---|
| 168 | local INSTUFF |
|---|
| 169 | local INBASE |
|---|
| 170 | local INREST |
|---|
| 171 | while read INSTUFF |
|---|
| 172 | do |
|---|
| 173 | INBASE=${INSTUFF%%'='*} |
|---|
| 174 | INBASE=${INSTUFF%%' '*} |
|---|
| 175 | INREST=${INSTUFF##*'='} |
|---|
| 176 | INREST=${INSTUFF##*' '} |
|---|
| 177 | case ${INBASE} |
|---|
| 178 | in |
|---|
| 179 | ${L_DOCKING}) echo "${INBASE} = ${DOCKING}";; |
|---|
| 180 | *) if ${USE_AWAY_TIME} |
|---|
| 181 | then |
|---|
| 182 | case $INBASE |
|---|
| 183 | in |
|---|
| 184 | ${L_AWAY_TIME}) echo "${INBASE} = ${AWAY_TIME}";; |
|---|
| 185 | ${L_N_A_TIME}) echo "${INBASE} = ${N_A_TIME}";; |
|---|
| 186 | *) echo ${INSTUFF};; |
|---|
| 187 | esac |
|---|
| 188 | else |
|---|
| 189 | echo ${INSTUFF} |
|---|
| 190 | fi |
|---|
| 191 | esac |
|---|
| 192 | done |
|---|
| 193 | } |
|---|
| 194 | |
|---|
| 195 | function test_mv () |
|---|
| 196 | { |
|---|
| 197 | if test -e ${1}.new |
|---|
| 198 | then |
|---|
| 199 | test -e ${1} && mv ${1} ${1}.orig |
|---|
| 200 | mv ${1}.new ${1} |
|---|
| 201 | fi |
|---|
| 202 | } |
|---|
| 203 | |
|---|
| 204 | declare -a CONTACTS |
|---|
| 205 | CONTACT_COUNT=0 |
|---|
| 206 | NICKNAME="" |
|---|
| 207 | FNAME="" |
|---|
| 208 | LNAME="" |
|---|
| 209 | EMAIL="" |
|---|
| 210 | U_I_N="" |
|---|
| 211 | NOTIFY=0 |
|---|
| 212 | IGNORE=0 |
|---|
| 213 | VISIBLE=0 |
|---|
| 214 | INVISIBLE=0 |
|---|
| 215 | NEW_USERS=0 |
|---|
| 216 | NEW_USER="0" |
|---|
| 217 | |
|---|
| 218 | function cat_user_skel () |
|---|
| 219 | { |
|---|
| 220 | local SYSTEM_GROUPS=0 |
|---|
| 221 | let SYSTEM_GROUPS+=${NOTIFY} |
|---|
| 222 | let SYSTEM_GROUPS+=${IGNORE} |
|---|
| 223 | let SYSTEM_GROUPS+=${VISIBLE} |
|---|
| 224 | let SYSTEM_GROUPS+=${INVISIBLE} |
|---|
| 225 | let SYSTEM_GROUPS+=${NEW_USERS} |
|---|
| 226 | cat <<-EOF |
|---|
| 227 | [user] |
|---|
| 228 | History = ${LICQ_HISTORY_DIR}/${U_I_N}.history |
|---|
| 229 | Groups.System = ${SYSTEM_GROUPS} |
|---|
| 230 | Groups.User = |
|---|
| 231 | Ip = |
|---|
| 232 | Port = |
|---|
| 233 | NewUser = ${NEW_USER} |
|---|
| 234 | NewMessages = |
|---|
| 235 | LastOnline = |
|---|
| 236 | Alias = ${NICKNAME} |
|---|
| 237 | FirstName = ${FNAME} |
|---|
| 238 | LastName = ${LNAME}} |
|---|
| 239 | Email1 = ${EMAIL} |
|---|
| 240 | Email2 = |
|---|
| 241 | City = |
|---|
| 242 | State = |
|---|
| 243 | PhoneNumber = |
|---|
| 244 | FaxNumber = |
|---|
| 245 | Address = |
|---|
| 246 | CellularNumber = |
|---|
| 247 | Zipcode = |
|---|
| 248 | Country = |
|---|
| 249 | Timezone = |
|---|
| 250 | Authorization = |
|---|
| 251 | HideEmail = |
|---|
| 252 | Age = |
|---|
| 253 | Gender = |
|---|
| 254 | Homepage = |
|---|
| 255 | BirthYear = |
|---|
| 256 | BirthMonth = |
|---|
| 257 | BirthDay = |
|---|
| 258 | Language1 = |
|---|
| 259 | Language2 = |
|---|
| 260 | Language3 = |
|---|
| 261 | CompanyCity = |
|---|
| 262 | CompanyState = |
|---|
| 263 | CompanyPhoneNumber = |
|---|
| 264 | CompanyFaxNumber = |
|---|
| 265 | CompanyAddress = |
|---|
| 266 | CompanyName = |
|---|
| 267 | CompanyDepartment = |
|---|
| 268 | CompanyPosition = |
|---|
| 269 | CompanyHomepage = |
|---|
| 270 | EOF |
|---|
| 271 | } |
|---|
| 272 | |
|---|
| 273 | function parse_contacts () |
|---|
| 274 | { |
|---|
| 275 | local INSTUFF |
|---|
| 276 | local INBASE |
|---|
| 277 | local INREST |
|---|
| 278 | local INCONTACT="false" |
|---|
| 279 | |
|---|
| 280 | while read INSTUFF |
|---|
| 281 | do |
|---|
| 282 | INBASE=${INSTUFF%%'='*} |
|---|
| 283 | INREST=${INSTUFF##*'='} |
|---|
| 284 | if test "${INSTUFF:0:1}" == "[" |
|---|
| 285 | then |
|---|
| 286 | if ${INCONTACT} |
|---|
| 287 | then |
|---|
| 288 | echo -n > ${LICQ_HISTORY_DIR}/${U_I_N}.history |
|---|
| 289 | cat_user_skel > ${LICQ_USER_DIR}/${U_I_N}.uin |
|---|
| 290 | CONTACTS[${CONTACT_COUNT}]="${U_I_N}" |
|---|
| 291 | let CONTACT_COUNT+=1 |
|---|
| 292 | INCONTACT=false |
|---|
| 293 | NICKNAME="" |
|---|
| 294 | U_I_N="" |
|---|
| 295 | NOTIFY=0 |
|---|
| 296 | IGNORE=0 |
|---|
| 297 | VISIBLE=0 |
|---|
| 298 | INVISIBLE=0 |
|---|
| 299 | NEW_USERS=0 |
|---|
| 300 | FNAME="" |
|---|
| 301 | LNAME="" |
|---|
| 302 | EMAIL="" |
|---|
| 303 | NEW_USER="0" |
|---|
| 304 | fi |
|---|
| 305 | if test "${INSTUFF:0:8}" == "[Contact" |
|---|
| 306 | then |
|---|
| 307 | INCONTACT="true" |
|---|
| 308 | else |
|---|
| 309 | INCONTACT="false" |
|---|
| 310 | fi |
|---|
| 311 | fi |
|---|
| 312 | case ${INBASE} |
|---|
| 313 | in |
|---|
| 314 | "UIN") U_I_N="${INREST}";; |
|---|
| 315 | "Nick") NICKNAME="${INREST}";; |
|---|
| 316 | "Online Notify") test "${INREST}" == "1" -o "${INREST}" == "true" \ |
|---|
| 317 | && NOTIFY="1";; |
|---|
| 318 | "Visible") test "${INREST}" == "1" -o "${INREST}" == "true" \ |
|---|
| 319 | && VISIBLE="2";; |
|---|
| 320 | "Invisible") test "${INREST}" == "1" -o "${INREST}" == "true" \ |
|---|
| 321 | && INVISIBLE="4";; |
|---|
| 322 | "Ignore") test "${INREST}" == "1" -o "${INREST}" == "true" \ |
|---|
| 323 | && IGNORE="8";; |
|---|
| 324 | esac |
|---|
| 325 | done |
|---|
| 326 | } |
|---|
| 327 | |
|---|
| 328 | function out_users_conf () |
|---|
| 329 | { |
|---|
| 330 | local TMPCOUNT=0 |
|---|
| 331 | local TEMPCOUNT=1 |
|---|
| 332 | echo -e "[users]\nNumOfUsers = ${CONTACT_COUNT}" |
|---|
| 333 | while test ${TMPCOUNT} -lt ${CONTACT_COUNT} |
|---|
| 334 | do |
|---|
| 335 | echo "User${TEMPCOUNT} = ${CONTACTS[${TMPCOUNT}]}" |
|---|
| 336 | let TMPCOUNT+=1 |
|---|
| 337 | let TEMPCOUNT+=1 |
|---|
| 338 | done |
|---|
| 339 | } |
|---|
| 340 | |
|---|
| 341 | GLOBAL_MESSAGE="" |
|---|
| 342 | function parse_message () |
|---|
| 343 | { |
|---|
| 344 | local TMPIFS=${IFS} |
|---|
| 345 | IFS="" |
|---|
| 346 | local MESG="$@" |
|---|
| 347 | local STRLEN=${#MESG} |
|---|
| 348 | local TMPCNT=0 |
|---|
| 349 | GLOBAL_MESSAGE=":" |
|---|
| 350 | while test ${TMPCNT} -lt ${STRLEN} |
|---|
| 351 | do |
|---|
| 352 | case "${MESG:${TMPCNT}:2}" |
|---|
| 353 | in |
|---|
| 354 | "\\r") let TMPCNT+=1;; |
|---|
| 355 | "\\n") let TMPCNT+=1 |
|---|
| 356 | GLOBAL_MESSAGE="${GLOBAL_MESSAGE}\n:";; |
|---|
| 357 | *) case '${MESG:${TMPCNT}:1}' |
|---|
| 358 | in |
|---|
| 359 | '\n') GLOBAL_MESSAGE="${GLOBAL_MESSAGE}:\n";; |
|---|
| 360 | ,\r,) GLOBAL_MESSAGE="${GLOBAL_MESSAGE}";; |
|---|
| 361 | *) GLOBAL_MESSAGE="${GLOBAL_MESSAGE}${MESG:${TMPCNT}:1}";; |
|---|
| 362 | esac |
|---|
| 363 | esac |
|---|
| 364 | let TMPCNT+=1 |
|---|
| 365 | done |
|---|
| 366 | GLOBAL_MESSAGE="${GLOBAL_MESSAGE}\n" |
|---|
| 367 | IFS=${TMPIFS} |
|---|
| 368 | } |
|---|
| 369 | |
|---|
| 370 | function convert_history () |
|---|
| 371 | { |
|---|
| 372 | local INSTUFF |
|---|
| 373 | local INBASE |
|---|
| 374 | local INREST |
|---|
| 375 | local INMESSAGE="false" |
|---|
| 376 | local OPT_READ="" |
|---|
| 377 | local OPT_TYPE="" |
|---|
| 378 | local OPT_SENT="" |
|---|
| 379 | local DATE="" |
|---|
| 380 | local MESSAGE="" |
|---|
| 381 | local URL="" |
|---|
| 382 | local TEMP="" |
|---|
| 383 | |
|---|
| 384 | while read -r INSTUFF |
|---|
| 385 | do |
|---|
| 386 | INBASE=${INSTUFF%%'='*} |
|---|
| 387 | INREST=${INSTUFF##*'='} |
|---|
| 388 | if test "${INBASE:0:1}" == "[" |
|---|
| 389 | then |
|---|
| 390 | if $INMESSAGE |
|---|
| 391 | then |
|---|
| 392 | if ! test -e ${LICQ_USER_DIR}/${U_I_N}.uin |
|---|
| 393 | then |
|---|
| 394 | echo -n > ${LICQ_HISTORY_DIR}/${U_I_N}.history |
|---|
| 395 | NEW_USER="1" |
|---|
| 396 | NEW_USERS="16" |
|---|
| 397 | INVISIBLE="4" |
|---|
| 398 | cat_user_skel > ${LICQ_USER_DIR}/${U_I_N}.uin |
|---|
| 399 | CONTACTS[${CONTACT_COUNT}]="${U_I_N}" |
|---|
| 400 | let CONTACT_COUNT+=1 |
|---|
| 401 | NICKNAME="" |
|---|
| 402 | U_I_N="" |
|---|
| 403 | NOTIFY=0 |
|---|
| 404 | IGNORE=0 |
|---|
| 405 | VISIBLE=0 |
|---|
| 406 | INVISIBLE=0 |
|---|
| 407 | NEW_USERS=0 |
|---|
| 408 | FNAME="" |
|---|
| 409 | LNAME="" |
|---|
| 410 | EMAIL="" |
|---|
| 411 | NEW_USER="0" |
|---|
| 412 | fi |
|---|
| 413 | # echo "prep >> ${LICQ_HISTORY_DIR}/${U_I_N}.history" |
|---|
| 414 | # test "$MESSAGE" || { test "${OPT_TYPE}" == "0012" && MESSAGE=":You have been added to my list\n" ; } |
|---|
| 415 | # test "$MESSAGE" || MESSAGE=":\n" |
|---|
| 416 | echo -en "[ ${OPT_SENT} | ${OPT_TYPE} | 2046 | 0001 | ${DATE} ]"\ |
|---|
| 417 | "\n${MESSAGE}${URL}" \ |
|---|
| 418 | >> ${LICQ_HISTORY_DIR}/${U_I_N}.history |
|---|
| 419 | INMESSAGE="false" |
|---|
| 420 | OPT_READ="" |
|---|
| 421 | OPT_TYPE="" |
|---|
| 422 | OPT_SENT="" |
|---|
| 423 | DATE="" |
|---|
| 424 | U_I_N="" |
|---|
| 425 | MESSAGE="" |
|---|
| 426 | URL="" |
|---|
| 427 | NICKNAME="" |
|---|
| 428 | fi |
|---|
| 429 | if test "${INBASE:0:8}" == "[Message" |
|---|
| 430 | then |
|---|
| 431 | INMESSAGE="true" |
|---|
| 432 | fi |
|---|
| 433 | fi |
|---|
| 434 | case ${INBASE} |
|---|
| 435 | in |
|---|
| 436 | "DateTime") TEMP=$INREST |
|---|
| 437 | DATE="${TEMP%%'-'*}"; TEMP=${TEMP#*'-'} |
|---|
| 438 | DATE="${TEMP%%'-'*}/${DATE}" ; TEMP=${TEMP#*'-'} |
|---|
| 439 | DATE=`date +"%s" -d "${DATE}/${TEMP:2}"`;; |
|---|
| 440 | "Options") OPT_READ="${INREST%%' '*}" ; TEMP="${INREST#*' '}" |
|---|
| 441 | OPT_TYPE="${TEMP%%' '*}" ; TEMP="${TEMP#*' '}" |
|---|
| 442 | OPT_SENT="${TEMP%%' '*}" |
|---|
| 443 | if test "${OPT_SENT}" == "1" |
|---|
| 444 | then |
|---|
| 445 | OPT_SENT="S" |
|---|
| 446 | else |
|---|
| 447 | OPT_SENT="R" |
|---|
| 448 | fi |
|---|
| 449 | case $OPT_TYPE |
|---|
| 450 | in |
|---|
| 451 | "01") OPT_TYPE=0001;; |
|---|
| 452 | "02") OPT_TYPE=0004;; |
|---|
| 453 | "03") OPT_TYPE=0012;; |
|---|
| 454 | "04") OPT_TYPE=0006;; |
|---|
| 455 | "05") OPT_TYPE=0008;; |
|---|
| 456 | "06") OPT_TYPE=0013;; |
|---|
| 457 | "07") OPT_TYPE=0014;; |
|---|
| 458 | "08") OPT_TYPE=0007;; |
|---|
| 459 | "09") OPT_TYPE=0003;; |
|---|
| 460 | "10") OPT_TYPE=0002;; |
|---|
| 461 | "11") OPT_TYPE=0019;; |
|---|
| 462 | "12") OPT_TYPE=0026;; |
|---|
| 463 | esac;; |
|---|
| 464 | "Message") parse_message "${INREST}" |
|---|
| 465 | MESSAGE="${MESSAGE}${GLOBAL_MESSAGE}";; |
|---|
| 466 | "Url") parse_message "${INREST}" |
|---|
| 467 | URL="${URL}${GLOBAL_MESSAGE}";; |
|---|
| 468 | "Uin") U_I_N="${INREST}";; |
|---|
| 469 | "Nick") Nickname="${INREST}";; |
|---|
| 470 | "FirstName") FNAME="${INREST}";; |
|---|
| 471 | "LastName") LNAME="${INREST}";; |
|---|
| 472 | "Email") EMAIL="${INREST}";; |
|---|
| 473 | esac |
|---|
| 474 | done |
|---|
| 475 | } |
|---|
| 476 | |
|---|
| 477 | test -d ${LICQ_DIR} || licq ${TESTING} -I -h >/dev/null 2>&1 |
|---|
| 478 | #test -d ${LICQ_DIR} || mkdir ${LICQ_DIR} |
|---|
| 479 | #test -d ${LICQ_HISTORY_DIR} || mkdir ${LICQ_HISTORY_DIR} |
|---|
| 480 | #test -d ${LICQ_USER_DIR} || mkdir ${LICQ_USER_DIR} |
|---|
| 481 | |
|---|
| 482 | if test -e ${KXICQ_RC} -a ! -e ${LICQ_OWNER}.orig |
|---|
| 483 | then |
|---|
| 484 | readkxicq2conf < ${KXICQ_RC} |
|---|
| 485 | if test -e ${LICQ_CONF} |
|---|
| 486 | then |
|---|
| 487 | out_licq_conf < ${LICQ_CONF} >${LICQ_CONF}.new |
|---|
| 488 | else |
|---|
| 489 | out_licq_conf >${LICQ_CONF}.new <<-EOF |
|---|
| 490 | [licq] |
|---|
| 491 | Version = 1020 |
|---|
| 492 | |
|---|
| 493 | [plugins] |
|---|
| 494 | NumPlugins = 1 |
|---|
| 495 | Plugin1 = qt-gui |
|---|
| 496 | |
|---|
| 497 | [network] |
|---|
| 498 | AllowNewUsers = 1 |
|---|
| 499 | NumOfICQServers = 1 |
|---|
| 500 | ICQServer = login.icq.com |
|---|
| 501 | ICQServerPort = 5190 |
|---|
| 502 | TCPPortsLow = 0 |
|---|
| 503 | TCPPortsHigh = 0 |
|---|
| 504 | TCPEnabled = 1 |
|---|
| 505 | MaxUsersPerPacket = 100 |
|---|
| 506 | IgnoreTypes = 0 |
|---|
| 507 | ForegroundColor = 0 |
|---|
| 508 | BackgroundColor = 16777215 |
|---|
| 509 | Errors = log.errors |
|---|
| 510 | ErrorTypes = 6 |
|---|
| 511 | Rejects = log.rejects |
|---|
| 512 | Translation = none |
|---|
| 513 | UrlViewer = viewurl-netscape.sh |
|---|
| 514 | Terminal = xterm -T Licq -e |
|---|
| 515 | ProxyEnabled = 0 |
|---|
| 516 | ProxyServerType = 1 |
|---|
| 517 | ProxyServer = |
|---|
| 518 | ProxyServerPort = 0 |
|---|
| 519 | ProxyAuthEnabled = 0 |
|---|
| 520 | ProxyLogin = |
|---|
| 521 | ProxyPassword = |
|---|
| 522 | UseSS = 0 |
|---|
| 523 | |
|---|
| 524 | [onevent] |
|---|
| 525 | Enable = 1 |
|---|
| 526 | Command = play |
|---|
| 527 | Message = /usr/share/licq/sounds/icq/Message.wav |
|---|
| 528 | Chat = /usr/share/licq/sounds/icq/Chat.wav |
|---|
| 529 | File = /usr/share/licq/sounds/icq/File.wav |
|---|
| 530 | Url = /usr/share/licq/sounds/icq/URL.wav |
|---|
| 531 | OnlineNotify = /usr/share/licq/sounds/icq/Notify.wav |
|---|
| 532 | SysMsg = /usr/share/licq/sounds/icq/System.wav |
|---|
| 533 | |
|---|
| 534 | [groups] |
|---|
| 535 | NumOfGroups = 3 |
|---|
| 536 | DefaultGroup = 0 |
|---|
| 537 | NewUserGroup = 1 |
|---|
| 538 | Group1.name = New Users |
|---|
| 539 | Group2.name = Friends |
|---|
| 540 | Group3.name = Family |
|---|
| 541 | Group1.id = 0 |
|---|
| 542 | Group2.id = 0 |
|---|
| 543 | Group3.id = 0 |
|---|
| 544 | EOF |
|---|
| 545 | fi |
|---|
| 546 | echo -n > ${OWNER_HISTORY} |
|---|
| 547 | # if test -e ${LICQ_OWNER} |
|---|
| 548 | # then |
|---|
| 549 | # out_owner_uin < ${LICQ_OWNER} >${LICQ_OWNER}.new |
|---|
| 550 | # else |
|---|
| 551 | out_owner_uin >${LICQ_OWNER}.new <<-EOF |
|---|
| 552 | [user] |
|---|
| 553 | Alias = None |
|---|
| 554 | Password = |
|---|
| 555 | Uin = 0 |
|---|
| 556 | WebPresence = 0 |
|---|
| 557 | HideIP = 0 |
|---|
| 558 | History = ${OWNER_HISTORY} |
|---|
| 559 | Groups.System = 0 |
|---|
| 560 | Groups.User = 0 |
|---|
| 561 | Ip = 0.0.0.0 |
|---|
| 562 | IntIp = 0.0.0.0 |
|---|
| 563 | Port = 1800 |
|---|
| 564 | NewMessages = 0 |
|---|
| 565 | LastOnline = 0 |
|---|
| 566 | LastSent = 0 |
|---|
| 567 | LastRecv = 0 |
|---|
| 568 | LastCheckedAR = 0 |
|---|
| 569 | AutoAccept = 0 |
|---|
| 570 | StatusToUser = 65535 |
|---|
| 571 | CustomAutoRsp = |
|---|
| 572 | SendIntIp = 0 |
|---|
| 573 | UserEncoding = |
|---|
| 574 | SID = 0 |
|---|
| 575 | GSID = 0 |
|---|
| 576 | Authorization = 0 |
|---|
| 577 | RCG = 0 |
|---|
| 578 | SSTime = 0 |
|---|
| 579 | SSCount = 0 |
|---|
| 580 | AutoResponse = |
|---|
| 581 | EOF |
|---|
| 582 | # fi |
|---|
| 583 | if test -e ${LICQ_QT_GUI} |
|---|
| 584 | then |
|---|
| 585 | out_qt_gui < ${LICQ_QT_GUI} >${LICQ_QT_GUI}.new |
|---|
| 586 | else |
|---|
| 587 | out_qt_gui >${LICQ_QT_GUI}.new <<-EOF |
|---|
| 588 | [appearance] |
|---|
| 589 | Skin = basic |
|---|
| 590 | Icons = computer |
|---|
| 591 | Font = default |
|---|
| 592 | GridLines = 0 |
|---|
| 593 | ShowHeader = 1 |
|---|
| 594 | ShowOfflineUsers = 1 |
|---|
| 595 | ShowDividers = 1 |
|---|
| 596 | UseDock = 0 |
|---|
| 597 | FontStyles = 1 |
|---|
| 598 | NumColumns = 1 |
|---|
| 599 | Column1.Title = Alias |
|---|
| 600 | Column1.Format = %a |
|---|
| 601 | Column1.Width = 90 |
|---|
| 602 | Column1.Align = 0 |
|---|
| 603 | |
|---|
| 604 | [startup] |
|---|
| 605 | Logon = 0 |
|---|
| 606 | AutoAway = 5 |
|---|
| 607 | AutoNA = 10 |
|---|
| 608 | |
|---|
| 609 | [functions] |
|---|
| 610 | AutoClose = 1 |
|---|
| 611 | |
|---|
| 612 | |
|---|
| 613 | [floaties] |
|---|
| 614 | Num = 0 |
|---|
| 615 | [locale] |
|---|
| 616 | DefaultEncoding = |
|---|
| 617 | ShowAllEncodings = 0 |
|---|
| 618 | EOF |
|---|
| 619 | fi |
|---|
| 620 | test -e ${KXICQ_CONTACTS} && parse_contacts <${KXICQ_CONTACTS} |
|---|
| 621 | test -e ${KXICQ_MESSAGES} && convert_history <${KXICQ_MESSAGES} |
|---|
| 622 | test -e ${KXICQ_CONTACTS} && out_users_conf >${LICQ_USERS}.new |
|---|
| 623 | fi |
|---|
| 624 | |
|---|
| 625 | test_mv ${LICQ_CONF} |
|---|
| 626 | test_mv ${LICQ_OWNER} |
|---|
| 627 | test_mv ${LICQ_QT_GUI} |
|---|
| 628 | test_mv ${LICQ_USERS} |
|---|
| 629 | |
|---|
| 630 | chmod 700 ${LICQ_DIR} |
|---|
| 631 | chmod 600 ${LICQ_DIR}/* |
|---|
| 632 | chmod 700 ${LICQ_USER_DIR} |
|---|
| 633 | chmod 600 ${LICQ_USER_DIR}/* |
|---|
| 634 | chmod 700 ${LICQ_HISTORY_DIR} |
|---|
| 635 | chmod 600 ${LICQ_HISTORY_DIR}/* |
|---|