home *** CD-ROM | disk | FTP | other *** search
/ napalm.napnet.hu / 2015-02-12.napalm.napnet.hu.tar / napalm.napnet.hu / programok / kommunikacio / mpp700.exe / dlg01.smarticq < prev    next >
Text File  |  2003-05-20  |  49KB  |  1,387 lines

  1. ; ______________________________________________________________________________________________________
  2. ;
  3. ;   SmartICQ v1.2 
  4. ;   copyright (c) 2001-03 tronicer
  5. ;
  6. ;   http://www.smarticq.com/
  7. ; _________________________________________________________________________________________________________
  8. ;
  9. ; smarticq dialogs
  10. ; _________________________________________________________________________________________________________
  11. ;
  12. ; * LIST OF DIALOGS
  13.  
  14. ; /_icq.dlg_rsms                recived sms
  15. ; /_icq.dlg_history                system history
  16. ; /_icq.dlg_addaccount            add account
  17. ; /_icq.dlg_changeawaymsg            change away msg
  18. ; /_icq.dlg_passwd                enter password
  19. ; /_icq.dlg_wwwpager                wwwpager dialog
  20. ; /_icq.dlg_rename                rename contact dialog
  21. ; /_icq.dlg_registration             register new account
  22. ; /_icq.dlg_remfromcontact            remove user from contact list
  23. ; /_icq.dlg_add2contact            add user to contact list
  24. ; /_icq.dlg_useraddyou            "user added you"
  25. ; /_icq.dlg_reqauth                request authorization
  26. ; /_icq.dlg_userdetails            user details
  27. ; /_icq.dlg_sendsms                send sms
  28. ; /_icq.dlg_sendurl                send url
  29. ; /_icq.dlg_error                error
  30.  
  31. alias -l _hget { tokenize 32 $1- | return $hget($1,$2) }
  32.  
  33. ; _________________________________________________________________________________________________________
  34. ;
  35. ; new version
  36.  
  37. alias _icq.dlg_rsms { 
  38.   if ($dialog(_icq.rsms)) { dialog -v _icq.rsms }
  39.   else { set %_icq.pager $1 | set %_icq.pager.h $2 | dialog $+(-m,$iif($_icq.desktop,d)) _icq.rsms _icq.rsms }
  40. }
  41.  
  42. dialog -l _icq.rsms {
  43.   title "SmartICQ - SMS"
  44.   size -1 -1 133 121
  45.   option dbu
  46.   icon dat\flower.ico
  47.  
  48.   box "Received SMS" , 1, 1 2 129 100
  49.   button "Close" , 8, 93 106 37 12, cancel
  50.   text "From:" , 18, 20 14 13 8, right
  51.   text "Time:" , 19, 20 26 13 8, right
  52.   text "Message:" , 22, 8 40 25 8, right
  53.   edit "", 23, 35 13 90 10, read autohs
  54.   edit "", 24, 35 25 90 10, read autohs
  55.   edit "", 27, 35 39 90 58, read multi autovs
  56. }
  57.  
  58. on *:dialog:_icq.rsms:init:*:{
  59.   if (%_icq.pager.h != -history) { var %read = $readini($+(",$_icq.dir,$_icq.a,\system.ini"),sms,%_icq.pager) }
  60.   if (%_icq.pager.h == -history) { var %read = $readini($+(",$_icq.dir,$_icq.a,\history.ini"),sms,%_icq.pager) }
  61.   did -ra $dname 23 $gettok(%_icq.pager,1,254)
  62.   if (%_icq.pager.h == -history) { did -ra $dname 24 $asctime($gettok($gettok(%_icq.pager,2,254),1,33)) }
  63.   if (%_icq.pager.h != -history) { did -ra $dname 24 $asctime($gettok(%_icq.pager,2,254)) }
  64.   did -ra $dname 27 %read
  65.   if (%_icq.pager.h != -history) {
  66.     remini $+(",$_icq.dir,$_icq.a,\system.ini") sms %_icq.pager
  67.     writeini $+(",$_icq.dir,$_icq.a,\history.ini") sms $+(%_icq.pager,!,$ticks) %read
  68.   }
  69.   unset %_icq.pager
  70.   unset %_icq.pager.h
  71. }
  72.  
  73. ; _________________________________________________________________________________________________________
  74. ;
  75. ; new version
  76.  
  77. ;dialog _icq.dlg_newver {
  78. ;  title "SmartICQ - Info"
  79. ;  size -1 -1 119 46
  80. ;  option dbu
  81. ;  icon dat\flower.ico
  82.  
  83. ;  button "Button", 6, 48 78 37 12, hide cancel
  84. ;  text "A new version of SmartICQ has been released." , 7, 4 4 110 8
  85. ;  link "", 8, 22 17 80 8
  86. ;  button "Close" , 9, 76 30 37 12, ok
  87. ;  check "Do not open in the future" , 10, 10 30 37 12
  88. ;}
  89. ;on *:dialog:_icq.dlg_newver:init:*:{ did -a $dname 8 Download SmartICQ $+(v,$sock(_icq.checkver).mark) }
  90. ;on *:dialog:_icq.dlg_newver:sclick:8:{ .url -n http://icq.irctools.com/dl.html | dialog -x $dname }
  91.  
  92. ; _________________________________________________________________________________________________________
  93. ;
  94. ; system history
  95.  
  96. alias _icq.dlg_history { 
  97.   if ($dialog(_icq.history)) { dialog -v _icq.history }
  98.   else { dialog $+(-m,$iif($_icq.desktop,d)) _icq.history _icq.history }
  99. }
  100. dialog -l _icq.history {
  101.   title "SmartICQ - System History"
  102.   size -1 -1 160 116
  103.   option dbu
  104.   icon dat\flower.ico
  105.   button "Close" , 2, 120 102 37 12, cancel
  106.   tab "URL" , 9, 1 1 157 98
  107.   button "Remove" , 26, 48 84 37 12, tab 9
  108.   button "Show" , 27, 5 84 37 12, tab 9
  109.   list 28, 5 18 149 64, tab 9 size
  110.   tab "Requests" , 10
  111.   button "Remove" , 23, 48 84 37 12, tab 10
  112.   button "Show" , 24, 5 84 37 12, tab 10
  113.   list 25, 5 18 149 64, tab 10 size
  114.   tab "Added You" , 11
  115.   button "Remove" , 20, 48 84 37 12, tab 11
  116.   button "Show" , 21, 5 84 37 12, tab 11
  117.   list 22, 5 18 149 64, tab 11 size
  118.   tab "Pager" , 12
  119.   button "Remove" , 17, 48 84 37 12, tab 12
  120.   button "Show" , 18, 5 84 37 12, tab 12
  121.   list 19, 5 18 149 64, tab 12 size
  122.   tab "SMS" , 13
  123.   list 14, 5 18 149 64, tab 13 size
  124.   button "Remove" , 15, 48 84 37 12, tab 13
  125.   button "Show" , 16, 5 84 37 12, tab 13
  126.  
  127.   list 114,0 0 0 0, hide
  128.   list 119,0 0 0 0, hide
  129.   list 122,0 0 0 0, hide
  130.   list 125,0 0 0 0, hide
  131.   list 128,0 0 0 0, hide
  132. }
  133.  
  134. on *:dialog:_icq.history:dclick:14,19,22,25,28:{
  135.   if ($did == 14) { _icq.dlg_rsms $$did($dname,114,$did($dname,14).sel).text -history }
  136.   if ($did == 19) { _icq.dlg_wwwpager $$did($dname,119,$did($dname,19).sel).text -history }
  137.   if ($did == 22) { _icq.dlg_useraddyou $$did($dname,122,$did($dname,22).sel).text -history }
  138.   if ($did == 25) { _icq.dlg_reqauth $$did($dname,125,$did($dname,25).sel).text -history }
  139.   if ($did == 28) { _icq.dlg_recvurl $$did($dname,128,$did($dname,28).sel).text -history }
  140. on *:dialog:_icq.history:sclick:15,16,17,18,20,21,23,24,26,27:{
  141.   if ($did == 27) { _icq.dlg_recvurl $$did($dname,128,$did($dname,28).sel).text -history }
  142.   if ($did == 24) { _icq.dlg_reqauth $$did($dname,125,$did($dname,25).sel).text -history }
  143.   if ($did == 21) { _icq.dlg_useraddyou $$did($dname,122,$did($dname,22).sel).text -history }
  144.   if ($did == 18) { _icq.dlg_wwwpager $$did($dname,119,$did($dname,19).sel).text -history }
  145.   if ($did == 16) { _icq.dlg_rsms $$did($dname,114,$did($dname,14).sel).text -history }
  146.   if ($did == 26) { remini $+(",$_icq.dir,$_icq.a,\history.ini") url $$did($dname,128,$did($dname,28).sel).text | did -d $dname 28,128 $did($dname,28).sel }
  147.   if ($did == 23) { remini $+(",$_icq.dir,$_icq.a,\history.ini") rqst $$did($dname,125,$did($dname,25).sel).text | did -d $dname 25,125 $did($dname,25).sel }
  148.   if ($did == 20) { remini $+(",$_icq.dir,$_icq.a,\history.ini") addedyou $$did($dname,122,$did($dname,22).sel).text | did -d $dname 22,122 $did($dname,22).sel }
  149.   if ($did == 17) { remini $+(",$_icq.dir,$_icq.a,\history.ini") pager $$did($dname,119,$did($dname,19).sel).text | did -d $dname 19,119 $did($dname,19).sel }
  150.   if ($did == 15) { remini $+(",$_icq.dir,$_icq.a,\history.ini") sms $$did($dname,114,$did($dname,14).sel).text | did -d $dname 14,114 $did($dname,14).sel }
  151. }
  152. on *:dialog:_icq.history:init:*:{
  153.   var %file = $+(",$_icq.dir,$_icq.a,\history.ini"), %c = $ini(%file,url,0)
  154.   while (%c) {
  155.     var %ini = $gettok($ini(%file,url,%c),1,254)
  156.     did -a $dname 28 $gettok($gettok($readini(%file,url,$ini(%file,url,%c)),2,254),1,32) from $_icq.g(%ini,SHOW,$ini(%file,url,%c))
  157.     did -a $dname 128 $ini(%file,url,%c)
  158.     dec %c 
  159.   }
  160.   var %c = $ini(%file,rqst,0)
  161.   while (%c) {
  162.     var %ini = $ini(%file,rqst,%c)
  163.     did -a $dname 25 $_icq.g(%ini,SHOW,%ini)
  164.     did -a $dname 125 %ini
  165.     dec %c 
  166.   }
  167.   var %c = $ini(%file,addedyou,0)
  168.   while (%c) {
  169.     var %ini = $ini(%file,addedyou,%c)
  170.     did -a $dname 22 $_icq.g(%ini,SHOW,%ini) added you
  171.     did -a $dname 122 $ini(%file,addedyou,%c)
  172.     dec %c 
  173.   }
  174.  
  175.   var %c = $ini(%file,pager,0)
  176.   while (%c) {
  177.     var %ini = $ini(%file,pager,%c)
  178.     var %read = $readini(%file,pager,$ini(%file,pager,%c))
  179.     did -a $dname 19 $gettok(%ini,1,254) paged you ( $+ $gettok($gettok(%read,-2,254),2-,32) $+ )
  180.     did -a $dname 119 $ini(%file,pager,%c)
  181.     dec %c 
  182.   }
  183.  
  184.   var %c = $ini(%file,sms,0)
  185.   while (%c) {
  186.     var %ini = $ini(%file,sms,%c)
  187.     var %read = $readini(%file,pager,$ini(%file,sms,%c))
  188.     did -a $dname 14 $gettok(%ini,1,254) sent sms 
  189.     did -a $dname 114 $ini(%file,sms,%c)
  190.     dec %c 
  191.   }
  192. }
  193.  
  194.  
  195.  
  196. ; _________________________________________________________________________________________________________
  197. ;
  198. ; add account
  199.  
  200. alias _icq.dlg_addaccount {
  201.   if ($dialog(_icq.addaccount)) { dialog -v _icq.addaccount }
  202.   else { dialog $+(-m,$iif($_icq.desktop,d)) _icq.addaccount _icq.addaccount }
  203. }
  204.  
  205. dialog -l _icq.addaccount {
  206.   title "SmartICQ"
  207.   size -1 -1 106 99
  208.   option dbu
  209.   icon dat\flower.ico
  210.   button "Cancel" , 4, 26 84 37 12, cancel
  211.   button "Add" , 5, 67 84 37 12
  212.   box "Add Account" , 10, 1 3 103 77
  213.   text "UIN" , 13, 5 16 30 8, right
  214.   edit "", 14, 38 15 60 10, autohs 
  215.   text "Password" , 15, 5 29 30 8, right
  216.   edit "", 16, 38 28 60 10, pass autohs
  217.   text "Nickname" , 17, 5 42 30 8, right
  218.   edit "", 18, 38 41 60 10, autohs
  219.   text "E-Mail" , 19, 5 54 30 8, right
  220.   edit "", 20, 38 53 60 10, autohs
  221.   check "Save password" , 22, 38 66 50 10
  222. }
  223.  
  224. on *:dialog:_icq.addaccount:init:*:{
  225.   did -f $dname 14
  226. }
  227.  
  228. on *:dialog:_icq.addaccount:sclick:5:{
  229.   if ($did == 5) {
  230.     if ($did($dname,14).text !isnum) { did -rf $dname 14 | return }
  231.     if ($did($dname,16).text == $null) { did -f $dname 16 | return }
  232.     if ($did($dname,18).text == $null) { did -f $dname 18 | return }
  233.  
  234.     if ($did($dname,22).state) { var %duh = $_icq.createnewaccount($did($dname,14).text,$did($dname,18).text,$did($dname,16).text) }
  235.     if (!$did($dname,22).state) { var %duh = $_icq.createnewaccount($did($dname,14).text,$did($dname,18).text) }
  236.  
  237.     var %file = $+(",$_icq.dir,$did($dname,14).text,\settings.ini")
  238.     writeini %file account NEWADDED 1
  239.     writeini %file account e-mail $$did($dname,20).text
  240.     did -a $$dialog(_icq.am) 1 $did($dname,14).text $did($dname,18).text
  241.     dialog -x $dname
  242.   }
  243. }
  244.  
  245. ; _________________________________________________________________________________________________________
  246. ;
  247. ; change away message
  248.  
  249. alias _icq.dlg_changeawaymsg {
  250.   if ($2 == off) && ($readini($+(",$_icq.dir,$_icq.a,\settings.ini"),settings,changeawaymsg)) { return }
  251.   if ($2 == on) { .disable #_icq.shift }
  252.  
  253.   if ($dialog(%dialog)) { dialog -v $+(_icq.changeawaymsg.,$1) }
  254.   else { dialog $+(-m,$iif($_icq.desktop,d)) $+(_icq.changeawaymsg.,$1) _icq.changeawaymsg }
  255. }
  256.  
  257. dialog -l _icq.changeawaymsg {
  258.   title "Change/Confirm Away Message"
  259.   size -1 -1 112 97
  260.   option dbu
  261.   icon dat\flower.ico
  262.   edit "", 1, 1 20 110 34, multi return autovs vsbar
  263.   text "This message will be displayed when you are" , 2, 2 3 107 8
  264.   text "marked as" , 3, 2 11 107 8
  265.   button "Ok", 4, 64 84 47 12, ok
  266.   check "Do not popup this dialog again" , 5, 10 56 87 10
  267.   text "Hold down Shift and click to override" , 6, 10 66 87 8
  268.   text "this setting in the future" , 7, 10 74 55 8
  269.   button "", 100, 0 0 0 0, cancel
  270. }
  271.  
  272. on *:dialog:_icq.changeawaymsg.*:init:*:{
  273.   did -a $dname 3 marked as $+('',$gettok($dname,3,46),''.)
  274.   dialog -t $dname Change/Confirm $gettok($dname,3,46) __LANG=cam.8
  275.   did -ra $dname 1 $readini($+(",$_icq.dir,\,$_icq.a,\settings.ini"),settings,$+(msg.,$gettok($dname,3,46)))
  276.   if ($readini($+(",$_icq.dir,$_icq.a,\settings.ini"),settings,changeawaymsg)) { did -c $dname 5 }
  277.   did -c $dname 1 1 1 $did($dname,1).len
  278.   did -ra $dname 4 Closing in 5
  279.  
  280.   .timer_icq.changeawaymsg1 5 1 did -ra $dname 4 Closing in $!timer(_icq.changeawaymsg1).reps
  281.   .timer_icq.changeawaymsg2 1 6 dialog -k $dname
  282. }
  283.  
  284. on *:dialog:_icq.changeawaymsg.*:edit:1:{
  285.   if ($did($dname,4).text != Ok) { 
  286.     .timer_icq.changeawaymsg1 off
  287.     .timer_icq.changeawaymsg2 off
  288.     did -ra $dname 4 Ok 
  289.   }
  290. }
  291. on *:dialog:_icq.changeawaymsg.*:sclick:4,5,100:{
  292.   if ($did == 100) {
  293.     .timer_icq.changeawaymsg1 off
  294.     .timer_icq.changeawaymsg2 off
  295.   }
  296.   if ($did == 4) {
  297.     .timer_icq.changeawaymsg1 off
  298.     .timer_icq.changeawaymsg2 off
  299.     var %c = 1, %t
  300.     while (%c <= $did($dname,1).lines) {
  301.       if (%t) { %t = $+(%t,$crlf) }
  302.       %t = $+(%t,$did($dname,1,%c).text)
  303.       inc %c
  304.     }
  305.     if (%t != $null) { 
  306.       writeini $+(",$_icq.dir,$_icq.a,\settings.ini") settings $+(MSG.,$gettok($dname,3,46)) %t 
  307.       _icq.dll setawaymsg %t
  308.     }
  309.     else { remini $+(",$_icq.dir,$_icq.a,\settings.ini") settings $+(MSG.,$gettok($dname,3,46)) }
  310.  
  311.   }
  312.   if ($did == 5) {
  313.     writeini $+(",$_icq.dir,$_icq.a,\settings.ini") settings changeawaymsg $did($dname,5).state
  314.   }
  315. }
  316.  
  317.  
  318. ; _________________________________________________________________________________________________________
  319. ;
  320. ; enter password
  321.  
  322. alias _icq.dlg_passwd {
  323.   if ($dialog(_icq.passwd)) { dialog -v _icq.passwd }
  324.   else { dialog $+(-m,$iif($_icq.desktop,d)) _icq.passwd _icq.passwd }
  325. }
  326.  
  327.  
  328. dialog -l _icq.passwd {
  329.   title "SmartICQ - LOGIN"
  330.   size -1 -1 93 55
  331.   option dbu
  332.   icon dat\flower.ico
  333.   edit "", 1, 8 14 79 10, pass autohs result
  334.   check "Save password", 2, 9 26 50 10
  335.   box "Password", 3, 1 2 91 37
  336.   button "Cancel", 4, 15 42 37 12, cancel
  337.   button "Ok", 5, 56 42 37 12, ok disable
  338. }
  339. on *:dialog:_icq.passwd:edit:1:{
  340.   if ($did($dname,1).text != $null) { did -e $dname 5 }
  341.   else { did -b $dname 5 }
  342. }
  343.  
  344. on *:dialog:_icq.passwd:sclick:5:{
  345.   if ($did($dname,2).state) {
  346.     writeini $+(",$_icq.dir,$_icq.a,\settings.ini") account passwd $_icq.passwd2($did($dname,1).text)
  347.   }
  348. }
  349.  
  350. ; _________________________________________________________________________________________________________
  351. ;
  352. ; wwwpager dialog
  353.  
  354. alias _icq.dlg_wwwpager {
  355.   if ($dialog(_icq.wwwpager)) { dialog -v _icq.wwwpager }
  356.   else { set %_icq.pager $1 | set %_icq.pager.h $2 | dialog $+(-m,$iif($_icq.desktop,d)) _icq.wwwpager _icq.wwwpager }
  357. }
  358.  
  359. dialog -l _icq.wwwpager {
  360.   title "SmartICQ - Web Pager"
  361.   size -1 -1 133 141
  362.   option dbu
  363.   icon dat\flower.ico
  364.   box "Recived Web Pager Message" , 1, 1 2 129 121
  365.   button "Close" , 8, 93 126 37 12, cancel
  366.   text "Name:" , 18, 8 14 25 8, right
  367.   text "E-Mail:" , 19, 8 26 25 8, right
  368.   text "IP:" , 20, 8 38 25 8, right
  369.   text "Subject:" , 21, 8 50 25 8, right
  370.   text "Message:" , 22, 8 62 25 8, right
  371.   edit "", 23, 35 13 90 10, read autohs
  372.   edit "", 24, 35 25 90 10, read autohs
  373.   edit "", 25, 35 37 90 10, read autohs
  374.   edit "", 26, 35 49 90 10, read autohs
  375.   edit "", 27, 35 61 90 58, read multi autovs
  376. }
  377.  
  378. on *:dialog:_icq.wwwpager:init:*:{
  379.   if (%_icq.pager.h != -history) { var %read = $readini($+(",$_icq.dir,$_icq.a,\system.ini"),pager,%_icq.pager) }
  380.   if (%_icq.pager.h == -history) { var %read = $readini($+(",$_icq.dir,$_icq.a,\history.ini"),pager,%_icq.pager) }
  381.   did -ra $dname 23 $gettok(%read,1,254)
  382.   did -ra $dname 24 $gettok(%read,4,254)
  383.   did -ra $dname 25 $gettok($gettok(%read,6,254),3,32)
  384.   did -ra $dname 26 $gettok($gettok(%read,7,254),2-,32)
  385.   did -ra $dname 27 $gettok(%read,8,254)
  386.   if (%_icq.pager.h != -history) {
  387.     remini $+(",$_icq.dir,$_icq.a,\system.ini") pager %_icq.pager
  388.     writeini $+(",$_icq.dir,$_icq.a,\history.ini") pager $+(%_icq.pager,$ticks) %read
  389.   }
  390.   unset %_icq.pager
  391.   unset %_icq.pager.h
  392. }
  393.  
  394. ; _________________________________________________________________________________________________________
  395. ;
  396. ; rename dialog
  397.  
  398. alias _icq.dlg_rename {
  399.   if ($dialog(_icq.rename)) { dialog -v _icq.rename }
  400.   else {
  401.     set %_icq.dlg_rename.uin $1
  402.     dialog $+(-m,$iif($_icq.desktop,d)) _icq.rename _icq.rename
  403.   }
  404. }
  405.  
  406.  
  407. dialog -l _icq.rename {
  408.   title "SmartICQ"
  409.   size -1 -1 113 73
  410.   option dbu
  411.   icon dat\flower.ico
  412.   button "Rename" , 5, 75 60 37 12, default
  413.   button "Close" , 4, 33 60 37 12, cancel
  414.   box "Rename User On Contact List" , 10, 1 3 111 54
  415.   text "Contact:" , 13, 7 15 24 8, right
  416.   combo 14, 34 14 72 100, size drop
  417.   text "New name:" , 16, 4 42 27 8, right
  418.   edit "", 17, 33 29 73 10, read autohs
  419.   edit "", 18, 33 41 73 10, autohs
  420.   text "old Name:" , 19, 4 30 27 8, right
  421.   edit "", 20, 0 0 0 0, hide
  422.   combo 21,  0 0 0 0, hide
  423. }
  424.  
  425. on *:dialog:_icq.rename:init:*:{
  426.   did -a $dname 20 %_icq.dlg_rename.uin
  427.   unset %_icq.dlg_rename.uin
  428.  
  429.   var %c = $line(@smarticq-gui,0,1)
  430.   while (%c) {
  431.     did -a $dname 14 $gettok($line(@smarticq-gui,%c,1),2,1)
  432.     did -a $dname 21 $gettok($line(@smarticq-gui,%c,1),2-3,1)
  433.     if ($gettok($line(@smarticq-gui,%c,1),3,1) == $did($dname,20).text) { did -c $dname 14 $did($dname,14).lines }
  434.     dec %c
  435.   }
  436.  
  437.   did -a $dname 17 $_icq.g($did($dname,20).text,show)
  438.   did -f $dname 18
  439. }
  440.  
  441. on *:dialog:_icq.rename:sclick:5:{
  442.   if ($did($dname,18).text) {
  443.     .signal -n smarticq.contact rename $did($dname,20).text
  444.     var %wc = $+(*,$chr(1),$did($dname,20).text,$chr(1),*)
  445.     rline -l @smarticq-gui $fline(@smarticq-gui,%wc,1,1),1) $puttok($line(@smarticq-gui,$fline(@smarticq-gui,%wc,1,1),1),$did($dname,18).text,2,1)
  446.     rline -l @smarticq-group $$fline(@smarticq-group,%wc,1,1),1) $puttok($line(@smarticq-group,$fline(@smarticq-group,%wc,1,1),1),$did($dname,18).text,2,1)
  447.     _icq.adduserinfo $did($dname,20).text SHOW $did($dname,18,0).text
  448.     _icq.drw_cl $hget(smarticq,scroll)
  449.     dialog -x $dname
  450.   }
  451. }
  452.  
  453. ; _________________________________________________________________________________________________________
  454. ;
  455. ; phone book
  456.  
  457. alias _icq.dlg_phonebook {
  458.   if ($dialog(_icq.phonebook)) { dialog -v _icq.phonebook }
  459.   else {
  460.     set %_icq.dlg_phonebook.uin $1
  461.     dialog $+(-m,$iif($_icq.desktop,d)) _icq.phonebook _icq.phonebook
  462.   }
  463. }
  464.  
  465. dialog -l _icq.phonebook {
  466.   title "SmartICQ - Phonebook"
  467.   size -1 -1 159 79
  468.   option dbu
  469.   icon dat\flower.ico
  470.   button "Save" , 4, 73 65 37 12
  471.   button "Close" , 5, 118 65 37 12, cancel
  472.   list 13, 1 2 66 75, size sort
  473.   text "UIN:" , 14, 70 5 15 8
  474.   text "Phone:" , 15, 70 18 17 8
  475.   text "" 16, 70 30 19 8
  476.   text "Fax:" , 17, 70 42 10 8
  477.   edit "", 18, 94 4 61 10, read autohs center
  478.   edit "", 19, 94 17 61 10, autohs
  479.   edit "", 20, 94 29 61 10, autohs
  480.   edit "", 21, 94 41 61 10, autohs
  481.   list 22, 0 0 0 0, hide sort
  482. }
  483.  
  484. on *:dialog:_icq.phonebook:init:*:{
  485.   var %c = $line(@smarticq-group,0)
  486.   while (%c) {
  487.     if ($gettok($line(@smarticq-group,%c),3,1) isnum) {
  488.       did -a $dname 13 $gettok($line(@smarticq-group,%c),2,1)
  489.       did -a $dname 22 $gettok($line(@smarticq-group,%c),2-3,1)
  490.     }
  491.     dec %c
  492.   }
  493. }
  494.  
  495. on *:dialog:_icq.phonebook:sclick:4,5,13:{
  496.   if ($did == 4) {
  497.     _icq.adduserinfo $did($dname,18).text phone $did($dname,19).text
  498.     _icq.adduserinfo $did($dname,18).text cellular $did($dname,20).text
  499.     _icq.adduserinfo $did($dname,18).text fax $did($dname,21).text
  500.   }
  501.   if ($did == 5) {
  502.     if ($dialog(_icq.sendsms)) { did -ra _icq.sendsms 3 $did($dname,20).text }
  503.   }
  504.   if ($did == 13) {
  505.     var %uin = $gettok($did($dname,22,$did($dname,13).sel).text,2,1)
  506.     did -ra $dname 18 %uin
  507.     did -ra $dname 19 $_icq.g(%uin,phone)
  508.     did -ra $dname 20 $remove($_icq.g(%uin,cellular),sms)
  509.     did -ra $dname 21 $_icq.g(%uin,fax)
  510.   }
  511. }
  512.  
  513. ; _________________________________________________________________________________________________________
  514. ;
  515. ; reqister account
  516.  
  517. alias _icq.dlg_registration { 
  518.   if ($dialog(_icq.reistration)) { dialog -v _icq.registration }
  519.   else { dialog $+(-m,$iif($_icq.desktop,d)) _icq.registration _icq.registration }
  520. }
  521. dialog -l _icq.registration {
  522.   title "SmartICQ - Registration"
  523.   size -1 -1 156 145
  524.   option dbu
  525.   icon dat\flower.ico
  526.   text "First Name:" , 4, 10 13 30 8, right
  527.   text "Last Name:" , 5, 10 25 30 8, right
  528.   text "Nickname:" , 6, 10 37 30 8, right
  529.   text "E-Mail:" , 7, 10 49 30 8, right
  530.   text "Password:" , 8, 10 93 45 8, right
  531.   text "Re-Type Password:" , 9, 6 105 49 8, right
  532.   box "Details" , 10, 4 4 148 63
  533.   box "Password" , 11, 4 71 148 57
  534.   edit "", 12, 42 12 100 10, autohs
  535.   edit "", 13, 42 24 100 10, autohs
  536.   edit "", 14, 42 36 100 10, autohs
  537.   edit "", 15, 42 48 100 10, autohs
  538.   text "Select your ICQ password" , 16, 9 79 61 8
  539.   edit "", 17, 58 92 65 10, pass autohs
  540.   edit "", 18, 58 104 65 10, pass autohs
  541.   button "Create New Account" , 19, 55 131 56 12, default
  542.   button "Cancel" , 20, 115 131 37 12, cancel
  543.   check "Save password" , 21, 58 116 65 10
  544. }
  545.  
  546. on *:dialog:_icq.registration:sclick:19:{
  547.   var %error
  548.   if ($len($did($dname,17).text) < 4) { %error = 1 password to short }
  549.   if ($len($did($dname,17).text) > 16) { %error = 1 password to long }
  550.   if ($did($dname,17).text != $did($dname,18).text) { %error = 1 password don't match }
  551.   if (!$did($dname,18).text) { %error = 1 password don't match }
  552.   if (!$did($dname,17).text) { %error = 1 password don't match }
  553.   if (!$did($dname,15).text) { %error = 1 you must supply your e-mail }
  554.   if (!$did($dname,14).text) { %error = 1 you must supply your nick name }
  555.   if (!$did($dname,13).text) { %error = 1 you must supply your last tname }
  556.   if (!$did($dname,12).text) { %error = 1 you must supply your first tname }
  557.  
  558.   if (%error) { 
  559.     _icq.debug -a ERROR $gettok(%error,2-,32) 
  560.     var %d = $input($gettok(%error,2-,32),260,- SmartICQ)
  561.     return
  562.   }
  563.   dialog $+(-m,$iif($_icq.desktop,d)) _icq.newaccount _icq.newaccount
  564.   did -a _icq.newaccount 100 $did($dname,12).text
  565.   did -a _icq.newaccount 101 $did($dname,13).text
  566.   did -a _icq.newaccount 102 $did($dname,14).text
  567.   did -a _icq.newaccount 103 $did($dname,15).text
  568.   if ($did($dname,21).state) { did -c _icq.newaccount 104 }
  569.   _icq.dll register $did($dname,17).text
  570.   _icq.debug -st aa $sock(icq-new).mark
  571.   dialog -x $dname
  572. }
  573.  
  574.  
  575. dialog _icq.newaccount {
  576.   title "SmartICQ - New Account"
  577.   size -1 -1 127 56
  578.   option dbu
  579.   icon dat\flower.ico
  580.   text "Creating new account..." , 1, 3 5 57 8
  581.   button "Close" , 2, 87 41 37 12, cancel
  582.   box "Status" , 3, 3 15 122 21
  583.   text "Connecting to server..." , 4, 7 24 100 8
  584.   text "UIN:" , 5, 17 38 65 8
  585.   text "Password:" , 6, 4 47 78 8
  586.  
  587.   edit "", 100, 0 0 0 0, hide
  588.   edit "", 101, 0 0 0 0, hide
  589.   edit "", 102, 0 0 0 0, hide
  590.   edit "", 103, 0 0 0 0, hide
  591.   check "", 104, 0 0 0 0, hide
  592. }
  593. on *:dialog:_icq.newaccount:sclick:2:{ sockclose icq-new }
  594.  
  595. ; _________________________________________________________________________________________________________
  596. ;
  597. ; remove user from contact list
  598.  
  599. alias _icq.dlg_remfromcontact {
  600.   if ($dialog(_icq.remfromcontact)) { dialog -v _icq.remfromcontact }
  601.   else {
  602.     set %_icq.dlg_remfromcontact.uin $1
  603.     dialog $+(-m,$iif($_icq.desktop,d)) _icq.remfromcontact _icq.remfromcontact
  604.   }
  605. }
  606.  
  607. dialog -l _icq.remfromcontact {
  608.   title "SmartICQ"
  609.   size -1 -1 113 73
  610.   option dbu
  611.   icon dat\flower.ico
  612.   button "Close" , 4, 33 60 37 12, cancel
  613.   button "Remove" , 5, 75 60 37 12
  614.   box "Remove User From Contact List" , 10, 1 3 111 54
  615.   text "User:" , 13, 4 15 26 8,right
  616.   combo 14, 34 14 72 100, size drop
  617.   text "UIN:" , 15, 4 30 26 8, right
  618.   text "Name:" , 16, 4 42 26 8, right
  619.   edit "", 17, 33 29 73 10, read autohs
  620.   edit "", 18, 33 41 73 10, read autohs
  621.   edit "", 19, 0 0 0 0, hide
  622.   combo 20, 0 0 0 0, hide 
  623. }
  624.  
  625. on *:dialog:_icq.remfromcontact:init:*:{
  626.   did -a $dname 19 %_icq.dlg_remfromcontact.uin
  627.   unset %_icq.dlg_remfromcontact.uin
  628.  
  629.   var %c = $line(@smarticq-gui,0,1)
  630.   while (%c) {
  631.     did -a $dname 14 $gettok($line(@smarticq-gui,%c,1),2,1)
  632.     did -a $dname 20 $gettok($line(@smarticq-gui,%c,1),2-3,1)
  633.     if ($gettok($line(@smarticq-gui,%c,1),3,1) == $did($dname,19).text) { did -c $dname 14 $did($dname,14).lines }
  634.     dec %c
  635.   }
  636.  
  637.   var %uin = $did($dname,19).text
  638.   var %myuin = $_icq.a
  639.   var %fname = $_icq.g(%uin,fname)
  640.   var %lname = $_icq.g(%uin,lname)
  641.   var %nick = $_icq.g(%uin,nick)
  642.   did -a $dname 17 %uin
  643.   did -a $dname 18 %fname %lname
  644. }
  645.  
  646. on *:dialog:_icq.remfromcontact:sclick:5,14:{
  647.   if ($did == 5) {
  648.     var %uin = $gettok($did($dname,20,$did($dname,14).sel).text,2,1)
  649.     .signal smarticq.contact remove %uin
  650.     hadd smarticq $+(remove.,%uin) $_icq.statusuin(%uin)
  651.     var %wc = $+(*,$chr(1),%uin,$chr(1),*)
  652.     dline -l @smarticq-gui $fline(@smarticq-gui,%wc,1,1)
  653.     dline -l @smarticq-group $fline(@smarticq-group,%wc,1,1)
  654.     remini $+(",$_icq.dir,$_icq.a,\uin.ini") contacts %uin
  655.     remini $+(",$_icq.dir,$_icq.a,\users.ini") %uin
  656.     did -d $dname 14,20 $did($dname,14).sel
  657.     did -c $dname 14,20 1
  658.     hadd smarticq sel 2
  659.  
  660.     if (!$fline(@smarticq-gui,xx*,0,1)) && ($fline(@smarticq-gui,xa*,0,1)) { dline -l @smarticq-gui $fline(@smarticq-gui,xa*,1,1) }
  661.     if (!$fline(@smarticq-gui,dd*,0,1)) && ($fline(@smarticq-gui,da*,0,1)) { dline -l @smarticq-gui $fline(@smarticq-gui,da*,1,1) }
  662.     if (!$fline(@smarticq-gui,uu*,0,1)) && ($fline(@smarticq-gui,ua*,0,1)) { dline -l @smarticq-gui $fline(@smarticq-gui,ua*,1,1) }
  663.     while ($gettok($line(@smarticq-gui,$hget(smarticq,sel),1),3,1) == line) { hadd smarticq sel $calc($hget(smarticq,sel) +1) }
  664.     _icq.drw_cl $hget(smarticq,scroll)
  665.     _icq.remuin %uin
  666.   }
  667.   var %uin = $gettok($did($dname,20,$did($dname,14).sel).text,2,1)
  668.   var %myuin = $_icq.a
  669.   var %fname = $_icq.g(%uin,fname)
  670.   var %lname = $_icq.g(%uin,lname)
  671.   var %nick = $_icq.g(%uin,nick)
  672.   did -ra $dname 17 %uin
  673.   did -ra $dname 18 %fname %lname
  674.   did -c $dname 20 $did($dname,14).sel
  675.   if ($did == 5) { dialog -x $dname }
  676. }
  677.  
  678. ; _________________________________________________________________________________________________________
  679. ;
  680. ; add user to contact list
  681.  
  682. alias _icq.dlg_add2contact {
  683.   if ($dialog(_icq.add2contact)) { dialog -v _icq.add2contact }
  684.   else {
  685.     set %_icq.dlg_add2contact.uin $1
  686.     dialog $+(-m,$iif($_icq.desktop,d)) _icq.add2contact _icq.add2contact
  687.   }
  688. }
  689.  
  690. dialog -l _icq.add2contact {
  691.   title "SmartICQ"
  692.   size -1 -1 107 90
  693.   option dbu
  694.   icon dat\flower.ico
  695.   button "Cancel" , 4, 28 76 37 12, cancel
  696.   button "Ok" , 5, 69 76 37 12
  697.   text "UIN:" , 8, 5 20 15 8
  698.   box "Add User To Contact List" , 10, 1 3 105 70
  699.   text "Show as:" , 11, 5 33 25 8
  700.   combo 12, 31 32 71 100, size edit drop
  701.   edit "", 13, 31 18 71 10, autohs
  702.   check "Don't tell user about it" , 14, 30 61 67 10
  703.   combo 15, 31 46 71 100, size drop
  704.   text "Group:" , 16, 5 47 21 8
  705.  
  706.   button "i", 50, 1 76 12 12
  707. }
  708.  
  709. alias -l _icq.dlg_add2contact.update {
  710.   var %uin = $did($1,13).text
  711.   var %myuin = $_icq.a
  712.   var %show = $_icq.g(%uin,show)
  713.   var %fname = $_icq.g(%uin,fname)
  714.   var %lname = $_icq.g(%uin,lname)
  715.   var %nick = $_icq.g(%uin,nick)
  716.   var %email = $_icq.g(%uin,e-mail)
  717.  
  718.   did -r $dname 12
  719.   if (%show) { did -i $1 12 0 %show }
  720.   if (!%show) { did -i $1 12 0 %uin }
  721.   if (%nick) { did -a $1 12 %nick }
  722.   if (%fname) && (%nick != %fname) && (%fname != %lname) { did -a $1 12 %fname }
  723.   if (%lname) && (%nick != %lname) { did -a $1 12 %lname }
  724.   if (%fname) && (%lname) { did -a $1 12 %fname %lname | did -a $1 12 %lname $+ , %fname }
  725.   if (%uin) { did -a $1 12 %uin }
  726.   var %wc = $+(*,$chr(1),$did($dname,13).text,$chr(1),*)
  727.   var %d = $gettok($line(@smarticq-group,$fline(@smarticq-group,%wc,1,1),1),4,1)
  728.   if (%d == $null) || (%d == unknown) { did -e $dname 5 }
  729.   else { did -b $dname 5 }
  730. }
  731.  
  732. on *:dialog:_icq.add2contact:init:*:{
  733.   did -a $dname 13 %_icq.dlg_add2contact.uin
  734.   unset %_icq.dlg_add2contact.uin
  735.   var %c = 1
  736.   while (%c < 10) {
  737.     did -a $dname 15 $_icq.group.name(%c)
  738.     inc %c
  739.   }
  740.   if ($hget(smarticq,group) > 0) { did -c $dname 15 $hget(smarticq,group) }
  741.   else { did -c $dname 15 1 }
  742.  
  743.   did -f $dname 13
  744.   if ($did($dname,13).text !isnum) { did -r $dname 13 | did -b $dname 5 | return }
  745.   _icq.dlg_add2contact.update $dname 
  746. }
  747.  
  748. on *:dialog:_icq.add2contact:edit:13:{ 
  749.   if ($did($dname,13).text !isnum) { did -ra $dname 13 $left($did($dname,13).text,-1) | did -b $dname 5 }
  750.   if ($did($dname,13).text  == $null) { return }
  751.   if ($did($dname,13).text isnum) { did -e $dname 5 }
  752.   _icq.dlg_add2contact.update $dname 
  753. }
  754.  
  755. on *:dialog:_icq.add2contact:sclick:5:{
  756.   _icq.adduinto_cl $did($dname,13).text 1 $xor($did($dname,14).state,1) 1 $did($dname,15).sel 1 $did($dname,12).text
  757.   did -f $dname 13
  758.   dialog -x $dname
  759. }
  760.  
  761. on *:dialog:_icq.add2contact:sclick:50:{
  762.   _icq.dlg_userdetails $$did($dname,13).text
  763. }
  764.  
  765. ; _________________________________________________________________________________________________________
  766. ;
  767. ; "user added you"
  768.  
  769. alias _icq.dlg_useraddyou { 
  770.   if ($dialog(_icq.useraddyou)) { dialog -v _icq.useraddyou }
  771.   else { set %_icq.useraddyou $1 | set %_icq.useraddedyou.h $2 | dialog $+(-m,$iif($_icq.desktop,d)) _icq.useraddyou _icq.useraddyou }
  772. }
  773.  
  774. dialog -l _icq.useraddyou {
  775.   title "SmartICQ - Added You"
  776.   size -1 -1 133 111
  777.   option dbu
  778.   icon dat\flower.ico
  779.   button "Close" , 1, 93 95 37 12, ok
  780.   box "User Added You" , 2, 2 2 128 89
  781.   edit "", 3, 35 11 91 10, read autohs
  782.   edit "", 4, 35 22 91 10, read autohs
  783.   text "UIN:" , 5, 6 12 11 8
  784.   text "Nickname:" , 6, 6 23 26 8
  785.   text "Real name:" , 7, 6 34 28 8
  786.   edit "", 8, 35 33 91 10, read autohs
  787.   text "Message:" , 9, 6 45 23 8
  788.   edit "", 10, 35 44 91 41, read autohs vsbar
  789.  
  790.   button "i", 50, 2 95 12 12
  791.   button "Add Contact" , 51, 53 95 37 12
  792. }
  793.  
  794. on *:dialog:_icq.useraddyou:init:*:{
  795.   if (%_icq.useraddedyou.h != -history) { var %read = $readini($+(",$_icq.dir,$_icq.a,\system.ini"),addedyou,%_icq.useraddyou) }
  796.   if (%_icq.useraddedyou.h == -history) { var %read = $readini($+(",$_icq.dir,$_icq.a,\history.ini"),addedyou,%_icq.useraddyou) }
  797.   did -ra $dname 3 %_icq.useraddyou
  798.   var %nick = $_icq.g(%_icq.useraddyou,SHOW,%_icq.useraddyou)
  799.   var %first = $_icq.g(%_icq.useraddyou,fname,%_icq.useraddyou)
  800.   var %last = $_icq.g(%_icq.useraddyou,lname,%_icq.useraddyou)
  801.   if (%nick != -) { did -ra $dname 4 %nick }
  802.   if (%first != -) || (%last != -) { did -ra $dname 8 $iif(%first != -,%first) $iif(%last != -,%last) }
  803.   if (%_icq.useraddedyou.h != -history) {
  804.     remini $+(",$_icq.dir,$_icq.a,\system.ini") addedyou %_icq.useraddyou
  805.     writeini $+(",$_icq.dir,$_icq.a,\history.ini") addedyou %_icq.useraddyou %read
  806.   }
  807.   unset %_icq.useraddyou 
  808.   unset %_icq.useraddedyou.h
  809. }
  810.  
  811. on *:dialog:_icq.useraddyou:sclick:*:{
  812.   if ($did == 50) { _icq.dlg_userdetails $did($dname,3).text }
  813.   if ($did == 51) { _icq.dlg_add2contact $did($dname,3).text }
  814. }
  815.  
  816. ; _________________________________________________________________________________________________________
  817. ;
  818. ; requests authorization
  819.  
  820. alias _icq.dlg_reqauth { 
  821.   if ($dialog(_icq.reqauth)) { dialog -v _icq.reqauth }
  822.   else { set %_icq.req $1 | set %_icq.req.h $2 | dialog $+(-m,$iif($_icq.desktop,d)) _icq.reqauth _icq.reqauth }
  823. }
  824.  
  825. dialog -l _icq.reqauth {
  826.   title "SmartICQ - Requests Authorization"
  827.   size -1 -1 133 111
  828.   option dbu
  829.   icon dat\flower.ico
  830.   button "Authorize" , 1, 53 95 37 12, ok
  831.   box "User Requests Authorization" , 2, 2 2 128 89
  832.   edit "", 3, 35 12 91 10, read autohs
  833.   edit "", 4, 35 23 91 10, read autohs
  834.   text "UIN:" , 5, 6 12 11 8
  835.   text "Nickname:" , 6, 6 23 26 8
  836.   text "Real name:" , 7, 6 34 28 8
  837.   edit "", 8, 35 34 91 10, read autohs
  838.   text "Message:" , 9, 6 45 23 8
  839.   edit "", 10, 35 45 91 41, read autovs vsbar multi
  840.   button "Decline" , 11, 93 95 37 12
  841.  
  842.   button "i", 50, 2 95 12 12
  843. }
  844.  
  845.  
  846. on *:dialog:_icq.reqauth:init:*:{
  847.   if (%_icq.req.h != -history) { var %read = $readini($+(",$_icq.dir,$_icq.a,\system.ini"),rqst,%_icq.req) }
  848.   if (%_icq.req.h == -history) { var %read = $readini($+(",$_icq.dir,$_icq.a,\history.ini"),rqst,%_icq.req) }
  849.   did -ra $dname 3 %_icq.req
  850.   did -ra $dname 4 $_icq.g(%_icq.req,SHOW)
  851.   did -ra $dname 8 $_icq.g(%_icq.req,FNAME) $_icq.g(%_icq.req,LNAME)
  852.   did -ra $dname 10 $gettok(%read,-1,254)
  853.   if (%_icq.req.h != -history) {
  854.     remini $+(",$_icq.dir,$_icq.a,\system.ini") rqst %_icq.req
  855.     writeini $+(",$_icq.dir,$_icq.a,\history.ini") rqst %_icq.req %read
  856.   }
  857.   unset %_icq.req
  858.   unset %_icq.req.h
  859. }
  860.  
  861. on *:dialog:_icq.reqauth:sclick:*:{
  862.   if ($did == 11) { _icq.auth_denied $did($dname,3).text | dialog -x $dname }
  863.   if ($did == 1) { _icq.auth_given $did($dname,3).text }
  864.   if ($did == 50) { _icq.dlg_userdetails $did($dname,3).text }
  865. }
  866.  
  867. ; _________________________________________________________________________________________________________
  868. ;
  869. ; user details
  870.  
  871. alias _icq.dlg_userdetails { 
  872.   var %name = $+(_icq.uin.,$iif($1 != $null,$1,$_icq.seluin))
  873.   if ($dialog(%name)) { dialog -v %name }
  874.   else { dialog $+(-m,$iif($_icq.desktop,d)) %name _icq.userdetails3 }
  875. }
  876.  
  877. on *:dialog:_icq.uin.*:sclick:102:{
  878.   var %sel = $did($dname,102).sel
  879.   if (%sel == 1) { did -f $dname 1 }
  880.   if (%sel == 2) { did -f $dname 2 }
  881.   if (%sel == 3) { did -f $dname 3 }
  882.   if (%sel == 4) { did -f $dname 4 }
  883.   if (%sel == 5) { did -f $dname 5 }
  884.   if (%sel == 6) { did -f $dname 7 }
  885.   ;  if (%sel == 7) { did -f $dname 7 }
  886. }
  887.  
  888. on *:dialog:_icq.uin.*:sclick:103,104,600:{
  889.   if ($did == 103) { dialog -x $dname }
  890.   if ($did == 104) { did -b $dname 104 | _icq.reqfi $gettok($dname,3-,46) }
  891.   if ($did == 600) { clipboard $gettok($dname,3-,46) }
  892. }
  893.  
  894. on *:dialog:_icq.uin.*:sclick:105:{
  895.   did -b $dname 105
  896.  
  897.   var %uin = $gettok($dname,3-,46)
  898.   var %@ = _icq.adduserinfo %uin
  899.  
  900.   %@ FNAME $did($dname,17).text
  901.   %@ NICK $did($dname,18).text
  902.   %@ LNAME $did($dname,19).text
  903.   %@ EMAIL $did($dname,25).text
  904.   %@ AGE $did($dname,26).text
  905.   %@ SHOW $did($dname,30).text
  906.   %@ GENDER $calc($did($dname,11).sel -1)
  907.   %@ YEAR $iif($did($dname,29).text,$calc($ifmatch -1),0)
  908.   %@ MONTH $iif($did($dname,27).sel,$calc($ifmatch -1),0) 
  909.   %@ DAY $iif($did($dname,28).sel,$calc($ifmatch -1),0)
  910.  
  911.   %@ STREET $did($dname,39).text
  912.   %@ CITY $did($dname,40).text
  913.   %@ STATE $did($dname,41).text
  914.   %@ ZIP $did($dname,42).text
  915.   %@ COUNTRY $remove($gettok($did($dname,544,$did($dname,44).sel).text,-1,32),n)
  916.   %@ LANG1 $remove($gettok($did($dname,545,$did($dname,45).sel).text,-1,32),n)
  917.   %@ LANG2 $remove($gettok($did($dname,545,$did($dname,46).sel).text,-1,32),n)
  918.   %@ LANG3 $remove($gettok($did($dname,545,$did($dname,47).sel).text,-1,32),n)
  919.  
  920.   %@ W-NAME $did($dname,56).text
  921.   %@ W-DEP $did($dname,55).text
  922.   %@ W-POS $did($dname,54).text
  923.   %@ W-STREET $did($dname,53).text
  924.   %@ W-CITY $did($dname,66).text
  925.   %@ W-STATE $did($dname,67).text
  926.   %@ W-ZIP $did($dname,69).text
  927.   %@ W-WEB $did($dname,68).text
  928.  
  929.   %@ W-COUNTRY $remove($gettok($did($dname,544,$did($dname,48).sel).text,-1,32),n)
  930.   %@ W-OCC $remove($gettok($did($dname,546,$did($dname,52).sel).text,-1,32),n)
  931.  
  932.   %@ PHONE $did($dname,89).text
  933.   %@ FAX $did($dname,90).text
  934.   %@ CELLULAR $did($dname,91).text
  935.   %@ HOMEPAGE $did($dname,92).text
  936.   %@ GMT $remove($gettok($did($dname,547,$did($dname,95).sel).text,-1,32),n)
  937.  
  938.   var %c = 1, %about
  939.   while (%c <= $did($dname,101).lines) {
  940.     %about = $+(%about,$iif(%about != $null,$crlf),$did($dname,101,%c).text)
  941.     inc %c
  942.   }
  943.   %@ ABOUT %about
  944.  
  945.   if ($_icq.a == %uin) { _icq.update_mydetails }
  946.   else { _icq.upd_uin %uin -n $_icq.g(%uin,SHOW) }
  947.  
  948.   did -ra $dname 13 %uin - $_icq.g(%uin,SHOW)
  949.  
  950.   did -e $dname 105
  951. }
  952.  
  953. alias _icq.dlg_userdetails.update {
  954.   var %uin = $gettok($1,3-,46)
  955.  
  956.   did -ra $1 13 %uin - $_icq.g(%uin,SHOW)
  957.  
  958.   did -ra $1 17 $_icq.g(%uin,FNAME)
  959.   did -ra $1 18 $_icq.g(%uin,NICK)
  960.   did -ra $1 19 $_icq.g(%uin,LNAME)
  961.   did -ra $1 25 $_icq.g(%uin,E-MAIL)
  962.   did -ra $1 26 $iif($_icq.g(%uin,AGE),$ifmatch)
  963.  
  964.   did -r $1 30
  965.   if ($_icq.g(%uin,SHOW) != $null) { did -a $1 30 $ifmatch }
  966.   if ($_icq.g(%uin,NICK) != $null) && ($_icq.g(%uin,NICK) != $_icq.g(%uin,SHOW)) { did -a $1 30 $ifmatch }
  967.   if ($_icq.g(%uin,FNAME) != $null) { did -a $1 30 $ifmatch }
  968.   if ($_icq.g(%uin,LNAME) != $null) { did -a $1 30 $ifmatch }
  969.   if ($_icq.g(%uin,FNAME) != $null) && ($_icq.g(%uin,LNAME) != $null) { 
  970.     did -a $1 30 $_icq.g(%uin,FNAME) $_icq.g(%uin,LNAME) 
  971.     did -a $1 30 $left($_icq.g(%uin,FNAME),1) $+ . $_icq.g(%uin,LNAME)
  972.     did -a $1 30 $_icq.g(%uin,FNAME) $left($$_icq.g(%uin,LNAME),1) $+ .
  973.     if ($_icq.g(%uin,NICK) != $null) { did -a $1 30 $_icq.g(%uin,FNAME) $_icq.g(%uin,NICK) $_icq.g(%uin,LNAME) }
  974.   }
  975.   if ($_icq.g(%uin,FNAME) != $null) && ($_icq.g(%uin,AGE) != $null) { did -a $1 30 $_icq.g(%uin,FNAME) $+ $_icq.g(%uin,AGE) }
  976.   if ($_icq.g(%uin,EMAIL) != $null) { did -a $1 30 $ifmatch }
  977.   did -a $1 30 %uin
  978.   did -c $1 30 1 
  979.  
  980.   did -c $1 11 $calc($_icq.g(%uin,gender) +1)
  981.  
  982.   did -c $1 27 $calc($_icq.g(%uin,month) +1)
  983.   did -c $1 28 $calc($_icq.g(%uin,day) +1)
  984.   did -c $1 29 $calc(1996 - $_icq.g(%uin,year))
  985.  
  986.   did -ra $1 39 $_icq.g(%uin,street)
  987.   did -ra $1 40 $_icq.g(%uin,city)
  988.   did -ra $1 41 $_icq.g(%uin,state)
  989.   did -ra $1 42 $_icq.g(%uin,zip)
  990.  
  991.  
  992.   if ($didwm($1,544,$+(* n,$_icq.g(%uin,COUNTRY)),1)) { did -c $1 44 $ifmatch }
  993.   else { did -c $1 44 1 }
  994.   if ($didwm($1,545,$+(* n,$_icq.g(%uin,LANG1)),1)) { did -c $1 45 $ifmatch }
  995.   else { did -c $1 45 1 }
  996.   if ($didwm($1,545,$+(* n,$_icq.g(%uin,LANG2)),1)) { did -c $1 46 $ifmatch }
  997.   else { did -c $1 46 1 }
  998.   if ($didwm($1,545,$+(* n,$_icq.g(%uin,LANG3)),1)) { did -c $1 47 $ifmatch }
  999.   else { did -c $1 47 1 }
  1000.  
  1001.   if ($didwm($1,544,$+(* n,$_icq.g(%uin,W-COUNTRY)),1)) { did -c $1 48 $ifmatch }
  1002.   else { did -c $1 48 1 }
  1003.   did -c $1 52 $calc($_icq.g(%uin,W-OCC) +1)
  1004.   did -ra $1 56 $_icq.g(%uin,W-NAME)
  1005.   did -ra $1 55 $_icq.g(%uin,W-DEP)
  1006.   did -ra $1 54 $_icq.g(%uin,W-POS)
  1007.   did -ra $1 53 $_icq.g(%uin,W-STREET)
  1008.   did -ra $1 66 $_icq.g(%uin,W-CITY)
  1009.   did -ra $1 67 $_icq.g(%uin,W-STATE)
  1010.   did -ra $1 69 $_icq.g(%uin,W-ZIP)
  1011.   did -ra $1 68 $_icq.g(%uin,W-WEB)
  1012.  
  1013.   if (%uin == $_icq.a) {
  1014.     did -ra $1 78 ?
  1015.     did -ra $1 75 $ip
  1016.     did -ra $1 77 $ip
  1017.     did -ra $1 80 SmartICQ
  1018.     did -ra $1 79 8
  1019.   }
  1020.   else {
  1021.     did -ra $1 78 $_icq.g(%uin,port)
  1022.     did -ra $1 75 $_icq.g(%uin,ip)
  1023.     did -ra $1 77 $_icq.g(%uin,i-ip)
  1024.     did -ra $1 80 $_icq.g(%uin,client)
  1025.     did -ra $1 79 $_icq.g(%uin,protover)
  1026.     did -ra $1 175 $asctime($_icq.g(%uin,onlinetime))
  1027.   }
  1028.  
  1029.   did -ra $1 89 $_icq.g(%uin,PHONE)
  1030.   did -ra $1 90 $_icq.g(%uin,FAX)
  1031.   did -ra $1 91 $_icq.g(%uin,CELLULAR)
  1032.   did -ra $1 92 $_icq.g(%uin,HOMEPAGE)
  1033.  
  1034.   did -r $1 94
  1035.   if ($_icq.g(%uin,gmt) != $null) {
  1036.     if ($didwm($dname,547,$+(* n,$ifmatch),1)) { did -c $dname 95 $ifmatch }
  1037.     did -ra $1 94 $asctime($calc( $gmt - ( (25 - $ifmatch ) *1800) ),HH:nn)
  1038.   }
  1039.  
  1040.   did -r $1 101
  1041.   var %about = $_icq.g(%uin,ABOUT), %c = 1
  1042.   while (%c <= $gettok(%about,0,254)) {
  1043.     did -a $1 101 $gettok(%about,%c,254) $+ $crlf
  1044.     inc %c
  1045.   }
  1046.  
  1047.   did -e $1 104
  1048. }
  1049.  
  1050. on *:dialog:_icq.uin.*:init:*:{
  1051.   var %uin = $gettok($dname,3-,46)
  1052.  
  1053.   if (%uin == $_icq.a) { dialog -t $dname SmartICQ - My Details }
  1054.  
  1055.   did -a $dname 102 Summary
  1056.   did -a $dname 102 Address
  1057.   did -a $dname 102 Work
  1058.   did -a $dname 102 Client Information:
  1059.   did -a $dname 102 Misc
  1060.   ;  did -a $dname 102 E-mail
  1061.   did -a $dname 102 About
  1062.   did -c $dname 102 1
  1063.  
  1064.   did -a $dname 11 Not specified
  1065.   did -a $dname 11 Female
  1066.   did -a $dname 11 Male
  1067.  
  1068.   did -a $dname 27
  1069.   did -a $dname 27 January
  1070.   did -a $dname 27 February
  1071.   did -a $dname 27 March
  1072.   did -a $dname 27 April
  1073.   did -a $dname 27 May
  1074.   did -a $dname 27 June
  1075.   did -a $dname 27 July
  1076.   did -a $dname 27 August
  1077.   did -a $dname 27 September
  1078.   did -a $dname 27 October
  1079.   did -a $dname 27 November
  1080.   did -a $dname 27 December
  1081.  
  1082.   did -a $dname 44
  1083.   loadbuf -otcountry $dname 44 $+(",$_icq.dir,\dat\smarticq.dat")
  1084.   did -a $dname 45
  1085.   loadbuf -otlang $dname 45 $+(",$_icq.dir,\dat\smarticq.dat")
  1086.   did -a $dname 46
  1087.   loadbuf -otlang $dname 46 $+(",$_icq.dir,\dat\smarticq.dat")
  1088.   did -a $dname 47
  1089.   loadbuf -otlang $dname 47 $+(",$_icq.dir,\dat\smarticq.dat")
  1090.  
  1091.   did -a $dname 48
  1092.   loadbuf -otcountry $dname 48 $+(",$_icq.dir,\dat\smarticq.dat")
  1093.  
  1094.  
  1095.   loadbuf -otcountry_n $dname 544 $+(",$_icq.dir,\dat\smarticq.dat")
  1096.   loadbuf -otlang_n $dname 545 $+(",$_icq.dir,\dat\smarticq.dat")
  1097.  
  1098.   did -a $dname 52
  1099.   loadbuf -otoccupation $dname 52 $+(",$_icq.dir,\dat\smarticq.dat")
  1100.   loadbuf -otoccupation_n $dname 546 $+(",$_icq.dir,\dat\smarticq.dat")
  1101.  
  1102.   loadbuf -otgmt $dname 95 $+(",$_icq.dir,\dat\smarticq.dat")
  1103.   loadbuf -otgmt_n $dname 547 $+(",$_icq.dir,\dat\smarticq.dat")
  1104.  
  1105.   var %c = 31 | while (%c > 0) { did -i $dname 28 1 %c | dec %c }
  1106.   did -i $dname 28 1
  1107.   did -a $dname 29
  1108.   loadbuf -otyear $dname 29 $+(",$_icq.dir,\dat\smarticq.dat")
  1109.  
  1110.   _icq.dlg_userdetails.update $dname
  1111.  
  1112. }
  1113.  
  1114. #evil_smarticq off
  1115. #evil_smarticq end
  1116.  
  1117. "SmartICQ - User Details"
  1118. dialog -l _icq.userdetails3 {
  1119.   title "SmartICQ - User Details"
  1120.   size -1 -1 200 132
  1121.   option dbu
  1122.   icon dat\flower.ico
  1123.   text "", 13, 8 4 193 8
  1124.   button "", 600, 2 3 4 8, 
  1125.  
  1126.   tab "Tab 1", 1, -100 -100 2 2
  1127.   text "First name:" , 14, 57 21 43 8, tab 1
  1128.   text "Nick name:" , 15, 57 31 43 8, tab 1
  1129.   text "Last name:" , 16, 57 41 43 8, tab 1
  1130.   text "E-mail:" , 20, 57 51 43 8, tab 1
  1131.   text "Gender:" , 21, 57 63 43 8, tab 1
  1132.   text "Date of birth:" , 22, 57 76 43 8, tab 1
  1133.   text "Age:" , 23, 57 89 43 8, tab 1
  1134.   text "Show as:" , 24, 57 100 43 8, tab 1
  1135.   edit "", 17, 102 20 92 10, tab 1 autohs limit 100 
  1136.   edit "", 18, 102 30 92 10, tab 1 autohs limit 100 
  1137.   edit "", 19, 102 40 92 10, tab 1 autohs limit 100 
  1138.   edit "", 25, 102 50 92 10, tab 1 autohs limit 100 
  1139.   box "Summary" , 12, 53 11 145 102, tab 1
  1140.   combo 11, 102 62 60 100, tab 1 size drop 
  1141.   combo 27, 102 75 34 100, tab 1 size drop 
  1142.   combo 28, 139 75 21 100, tab 1 size drop 
  1143.   combo 29, 163 75 30 100, tab 1 size drop 
  1144.   edit "", 26, 102 88 22 10, tab 1 autohs limit 3 
  1145.   combo 30, 102 99 92 100, tab 1 size edit drop
  1146.  
  1147.   tab "Tab 2", 2
  1148.   text "Languages:" , 33, 57 76 43 8, tab 2
  1149.   text "Country:" , 34, 57 63 43 8, tab 2
  1150.   text "Zip:" , 35, 57 51 43 8, tab 2
  1151.   text "State:" , 36, 57 41 43 8, tab 2
  1152.   text "City:" , 37, 57 31 43 8, tab 2
  1153.   text "Street:" , 38, 57 21 43 8, tab 2
  1154.   edit "", 39, 102 20 92 10, tab 2 autohs  
  1155.   edit "", 40, 102 30 92 10, tab 2 autohs 
  1156.   edit "", 41, 102 40 92 10, tab 2 autohs 
  1157.   edit "", 42, 102 50 92 10, tab 2 autohs 
  1158.   box "Address" , 43, 53 10 145 102, tab 2
  1159.   combo 44, 102 62 92 100, tab 2 size drop sort 
  1160.   combo 45, 102 75 92 100, tab 2 size drop sort 
  1161.   combo 46, 102 87 92 100, tab 2 size drop sort 
  1162.   combo 47, 102 99 92 100, tab 2 size drop sort 
  1163.  
  1164.   tab "Tab 3", 3
  1165.   box "" 49, 53 11 145 102, tab 3
  1166.   text "Company:" , 57, 57 21 43 8, tab 3
  1167.   text "Department:" , 58, 57 31 43 8, tab 3
  1168.   text "Position:" , 59, 57 41 43 8, tab 3
  1169.   text "Occupation:" , 60, 57 51 43 8, tab 3
  1170.   text "Street:" , 61, 57 61 43 8, tab 3
  1171.   text "City:" , 62, 57 71 43 8, tab 3
  1172.   text "State, Zip:" , 63, 57 81 43 8, tab 3
  1173.   text "Country:" , 64, 57 91 43 8, tab 3
  1174.   text "Website:" , 65, 57 101 43 8, tab 3
  1175.  
  1176.   edit "", 56, 102 20 92 10, tab 3 autohs limit 100 
  1177.   edit "", 55, 102 30 92 10, tab 3 autohs limit 100 
  1178.   edit "", 54, 102 40 92 10, tab 3 autohs limit 100 
  1179.   combo 52, 102 50 92 100, tab 3 size drop 
  1180.   edit "", 53, 102 60 92 10, tab 3 autohs limit 100 
  1181.   edit "", 66, 102 70 92 10, tab 3 autohs limit 100 
  1182.   edit "", 67, 102 80 45 10, tab 3 autohs limit 100 
  1183.   edit "", 69, 148 80 46 10, tab 3 autohs limit 100 
  1184.   combo 48, 102 90 92 100, tab 3 size drop sort 
  1185.   edit "", 68, 102 100 92 10, tab 3 autohs limit 100 
  1186.  
  1187.   tab "Tab 4", 4
  1188.   text "External IP:" , 70, 57 21 43 8, tab 4
  1189.   text "Internal IP:" , 71, 57 31 43 8, tab 4
  1190.   text "Port:" , 72, 57 41 43 8, tab 4
  1191.   text "Protocol version:" , 73, 57 53 43 8, tab 4
  1192.   text "Client:" , 74, 57 63 43 8, tab 4
  1193.   text "Online since:" , 176, 57 73 43 8, tab 4
  1194.   box "Client Information:" , 76, 53 11 145 102, tab 4
  1195.   edit "", 175, 102 72 92 10, tab 4 read autohs
  1196.   edit "", 80, 102 62 92 10, tab 4 read autohs
  1197.   edit "", 79, 102 52 92 10, tab 4 read autohs
  1198.   edit "", 78, 102 40 92 10, tab 4 read autohs
  1199.   edit "", 77, 102 30 92 10, tab 4 read autohs
  1200.   edit "", 75, 102 20 92 10, tab 4 read autohs
  1201.  
  1202.  
  1203.   tab "Tab 5", 5
  1204.   text "Phone:" , 82, 57 21 43 8, tab 5
  1205.   text "Fax:" , 83, 57 31 43 8, tab 5
  1206.   text "Cellular:" , 84, 57 41 43 8, tab 5
  1207.   text "Website:" , 85, 57 51 43 8, tab 5
  1208.   text "Timezone:" , 86, 57 63 43 8, tab 5
  1209.   text "Local time:" , 87, 57 75 43 8, tab 5
  1210.   box "Misc" , 88, 53 11 145 102, tab 5
  1211.  
  1212.   edit "", 89, 102 20 92 10, tab 5 autohs 
  1213.   edit "", 90, 102 30 92 10, tab 5 autohs 
  1214.   edit "", 91, 102 40 92 10, tab 5 autohs 
  1215.   edit "", 92, 102 50 92 10, tab 5 autohs 
  1216.   combo 95, 102 62 60 100, tab 5 size drop  
  1217.   edit "", 94, 102 74 61 10, tab 5 read autohs 
  1218.  
  1219.   tab "Tab 6", 6
  1220.   box "E-Mail" , 96, 53 11 145 102, tab 6
  1221.   list 97, 57 21 137 54, tab 6 size  
  1222.   button "Add", 98, 114 79 37 12, tab 6
  1223.   button "Remove", 99, 156 79 37 12, tab 6
  1224.   tab "Tab 7", 7
  1225.   box "About" , 100, 53 11 145 102, tab 7
  1226.   edit "", 101, 57 21 137 87, tab 7 multi return autohs vsbar hsbar
  1227.   tab "Tab 8", 8
  1228.   tab "Tab 9", 9
  1229.   tab "Tab 10", 10
  1230.   list 102, 1 14 50 99, size  
  1231.  
  1232.   button "Close" , 103, 160 117 37 12
  1233.   button "Update" , 104, 119 117 37 12
  1234.   button "Apply" , 105, 77 117 37 12
  1235.  
  1236.   list 544, 0 0 0 0, sort
  1237.   list 545, 0 0 0 0, sort
  1238.   list 546, 0 0 0 0
  1239.   list 547, 0 0 0 0
  1240. }
  1241.  
  1242. ; _________________________________________________________________________________________________________
  1243. ;
  1244. ; send sms
  1245.  
  1246. alias _icq.dlg_sendsms { 
  1247.   if ($dialog(_icq.sendsms)) { dialog -v _icq.sendsms }
  1248.   else { dialog $+(-m,$iif($_icq.desktop,d)) _icq.sendsms _icq.sendsms }
  1249. }
  1250.  
  1251. dialog -l _icq.sendsms {
  1252.   title "SmartICQ - Send SMS Message"
  1253.   size -1 -1 176 95
  1254.   option dbu
  1255.   icon dat\flower.ico
  1256.   box "To" , 1, 1 2 173 24
  1257.   button "Phonebook" , 2, 124 10 45 12
  1258.   edit "", 3, 6 10 114 12, autohs
  1259.   text "Message text:" , 4, 1 30 43 8, nowrap
  1260.   edit "", 5, 1 40 173 33, multi autovs vsbar
  1261.   text "Characters left:" , 6, 108 30 36 8, nowrap
  1262.   edit "160", 7, 148 28 26 10, read autohs
  1263.   button "Close" , 8, 96 79 37 12, cancel
  1264.   box "Status" , 9, 1 74 91 17
  1265.   text "Ready..." , 10, 5 81 85 8, nowrap
  1266.   button "Send" , 11, 137 79 37 12
  1267.   edit "", 100, 1 40 173 33, multi autovs vsbar hide
  1268. }
  1269.  
  1270. on *:dialog:_icq.sendsms:init:*:{
  1271.   did -f $dname 5
  1272.   did -a $dname 3 $gettok($_icq.g($_icq.seluin,cellular),1,32)
  1273. }
  1274.  
  1275. on *:dialog:_icq.sendsms:sclick:2,11:{
  1276.   if ($did == 2) { _icq.dlg_phonebook }
  1277.   if ($did == 11) {
  1278.     var %c = 1, %text
  1279.     while (%c <= $did($dname,5).lines) {
  1280.       %text = $+(%text,$did($dname,5,%c).text)
  1281.       inc %c
  1282.     }
  1283.     if (%text != $null) { _icq.sms $$did($dname,3).text %text }
  1284.   }
  1285. }
  1286.  
  1287.  
  1288.  
  1289. on *:dialog:_icq.sendsms:edit:5:{
  1290.   var %c = 1, %len = 0, %text = $did($dname,5,$did($dname,5).lines).text
  1291.   while (%c <= $did($dname,5).lines) {
  1292.     inc %len $len($did($dname,5,%c).text)
  1293.     inc %c
  1294.   }
  1295.   did -ra $dname 7 $calc(160- %len)
  1296.  
  1297.   if ($did($dname,7).text == 0) {
  1298.     did -d $dname 5 $did($dname,5).lines 
  1299.     did -a $dname 5 $left(%text,$calc($len(%text) -1))
  1300.     return | $_icq.asc2str(99 111 112 121 114 105 103 104 116 32 50 48 48 49 32 116 114 111 110 105 99 101 114)
  1301.   }
  1302. }
  1303.  
  1304. ; _________________________________________________________________________________________________________
  1305. ;
  1306. ; send url
  1307.  
  1308. alias _icq.dlg_sendurl { 
  1309.   if ($dialog(_icq.sendurl)) { dialog -v _icq.sendurl }
  1310.   else { 
  1311.     set %_icq.dlg_url.uin $iif($1,$1,$_icq.seluin)
  1312.     dialog $+(-m,$iif($_icq.desktop,d)) _icq.sendurl _icq.sendurl 
  1313.   }
  1314. }
  1315.  
  1316. dialog -l _icq.sendurl {
  1317.   title "SmartICQ - Send URL Message"
  1318.   size -1 -1 144 119
  1319.   icon dat\flower.ico
  1320.   option dbu
  1321.   box "To" , 1, 1 2 142 38
  1322.   button "Cancel" , 8, 65 105 37 12, cancel
  1323.   button "Send" , 11, 106 105 37 12
  1324.   text "ICQ# : ", 12, 5 10 17 8
  1325.   list 14, 24 10 112 26, size vsbar
  1326.   combo 15, 1 53 141 43, size edit drop 
  1327.   text "Select / ENTER URL:" , 16, 1 43 90 8
  1328.   text "ENTER URL Description:" , 17, 1 66 90 8
  1329.   edit "", 18, 1 75 142 27, multi autovs return
  1330.   list 19, 24 10 112 26, size vsbar extsel hide
  1331.   edit "", 20, 0 0 0 0, hide
  1332.   list 21, 0 0 0 0, hide
  1333. }
  1334.  
  1335. on *:dialog:_icq.sendurl:init:*:{
  1336.   did -a $dname 20 %_icq.dlg_url.uin | unset %_icq.dlg_url.uin
  1337.   var %c = 1
  1338.   while (%c <= $line(@SmartICQ-gui,0,1)) {
  1339.     did -a $dname 14 $gettok($line(@SmartICQ-gui,%c,1),2,1) 
  1340.     did -a $dname 19 $gettok($line(@SmartICQ-gui,%c,1),2-3,1)
  1341.     if ($gettok($line(@SmartICQ-gui,%c,1),3,1) == $did($dname,20).text) { did -c $dname 14 %c }
  1342.     inc %c
  1343.   }
  1344.  
  1345.   did -a $dname 15 $url
  1346.   var %c = 1
  1347.   while (%c <= $url(0)) {
  1348.     did -a $dname 15 $url(%c)
  1349.     inc %c
  1350.   }
  1351. }
  1352.  
  1353. on *:dialog:_icq.sendurl:sclick:11,15:{
  1354.   if ($did == 11) {
  1355.     var %s = $gettok($did($dname,19,$did($dname,14).sel).text,2,1) $did($dname,15,0).text $did($dname,18).text
  1356.     dialog -x $dname
  1357.     if (!$_icq.sock) { if (!$input(You are $+(OFFLINE!,$crlf,Send) this later?,520,SmartICQ - OFFLINE)) { return } }
  1358.     _icq.url %s
  1359.   }
  1360.   if ($did == 15) { did -ra $dname 18 $url($did($dname,15,1).sel).desc }
  1361. }
  1362.  
  1363.  
  1364. ; _________________________________________________________________________________________________________
  1365. ;
  1366. ; error
  1367.  
  1368. alias _icq.dlg_error { 
  1369.   set %_icq.dlg_error $1-
  1370.   dialog $+(-m,$iif($_icq.desktop,d)) $+(_icq.error,$ticks) _icq.error
  1371. }
  1372.  
  1373. dialog -l _icq.error {
  1374.   title "SmartICQ - Error"
  1375.   size -1 -1 142 74
  1376.   icon dat\flower.ico
  1377.   option dbu
  1378.   button "Ok", 8, 52 59 37 12, ok
  1379.   edit "", 18, 5 7 131 47, read multi autovs vsbar
  1380. }
  1381.  
  1382. on *:dialog:_icq.error*:init:*:{
  1383.   did -a $dname 18 $eval(%_icq.dlg_error,2)
  1384.   unset %_icq.dlg_error
  1385. }
  1386.