home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 35 Internet / 35-Internet.zip / ircii30.zip / script / whowas < prev    next >
Text File  |  1994-07-30  |  2KB  |  126 lines

  1. # Tame the WHOWAS history!
  2. # by Mycroft (mycroft@ai.mit.edu)
  3. # 311 312 313 314 316 317 318 319 353 401 changed for 2.2.2 (server == $0)
  4.  
  5.  
  6. ALIAS STRIPCHAN {
  7.   assign function_return $strip(#+-*/\\={}[]<>!@$$%^~`,?:|'\". $0-)
  8. }
  9.  
  10. ALIAS PURGE {
  11.   foreach $0 i
  12.   {
  13.     purge $0.$i
  14.   }
  15.   ^assign -i
  16.   ^assign -$0
  17. }
  18.  
  19. ALIAS WHOIS {
  20.   purge whowas.$stripchan($0)
  21.   //whois $0
  22. }
  23.  
  24. ALIAS WHOWAS {
  25.   purge whowas.$stripchan($0)
  26.   //whowas $0
  27. }
  28.  
  29. ON #^SEND_MSG 69 * {
  30.   purge whowas.$stripchan($0)
  31. }
  32.  
  33. ON #^SEND_NOTICE 69 * {
  34.   purge whowas.$stripchan($0)
  35. }
  36.  
  37. ON #^CONNECT 69 * {
  38.   purge whowas
  39. }
  40.  
  41. ON #^TIMER 69 * {
  42.   foreach whowas i
  43.   {
  44.     if (time() - whowas.$(i).time > 60)
  45.     {
  46.       purge whowas.$i
  47.     }
  48.   }
  49.   assign -i
  50. }
  51.  
  52. ON ^311 * {
  53.   _whowas_314 is $1-
  54.   assign -whowas.last
  55. }
  56.  
  57. ON ^319 * {
  58.   echo *** on channels: $1-
  59. }
  60.  
  61. ON ^301 * {
  62.   echo *** $0 is away: $1-
  63. }
  64.  
  65. ON ^313 * {
  66.   echo *** $1 is an IRC operator
  67. }
  68.  
  69. ON ^317 * {
  70.   if ([$2] == [1])
  71.   {
  72.     echo *** $1 has been idle 1 second
  73.   }
  74.   {
  75.     echo *** $1 has been idle $2 seconds
  76.   }
  77. }
  78.  
  79. ON ^314 * {
  80.   _whowas_start $stripchan($1) $1-
  81. }
  82.  
  83. ALIAS _WHOWAS_START {
  84.   assign whowas.$0.314 $1-
  85.   assign whowas.$0.time $time()
  86.   assign whowas.last $0 $stripchan($2).$stripchan($3)
  87. }
  88.  
  89. ON ^312 * {
  90.   if (whowas.last)
  91.   {
  92.     _whowas_do $whowas.last $stripchan($1) $1-
  93.   }
  94.   {
  95.     _whowas_312 $1-
  96.   }
  97. }
  98.  
  99. ALIAS _WHOWAS_DO {
  100.   if ([$(whowas.$0.past.$1.$2)])
  101.   {
  102.   }
  103.   {
  104.     assign whowas.$0.past.$1.$2 1
  105.     assign whowas.$0.312 $3-
  106.     _whowas_314 was $(whowas.$0.314)
  107.     _whowas_312 $3-
  108.   }
  109.   assign -whowas.last
  110. }
  111.  
  112. ALIAS _WHOWAS_314 {
  113.   if ([$5] == [*])
  114.   {
  115.     echo *** $2 $0 $3@$4 \($6-)
  116.   }
  117.   {
  118.     echo *** $2 $0 $3@$4 \($6-) on channel $5
  119.   }
  120. }
  121.  
  122. ALIAS _WHOWAS_312 {
  123.   echo *** on irc via server $1 \($2-)
  124. }
  125.  
  126.