rendered paste bodyon *:dialog:Query.*:init:*:{
var %nick $gettok($dname,2-,$asc(.))
did -ar $dname 3 %nick
did -ar $dname 12 $date(mm\dd\yy)
did -ar $dname 16 $hget(queries,$gettok($address(%nick,2),2-,$asc(@)))
var %i = 1
while ($comchan(%nick,%i) != $null) {
var %chans = $iif(%chans,$v1 - $comchan(%nick,%i),$comchan(%nick,%i))
inc %i
}
did -ar $dname 18 $iif(%chans,$v1,None)
}
dialog Query {
title "Query"
size -1 -1 166 145
option dbu
box "Query System", 1, 0 1 165 99
text "Nick:", 2, 3 106 12 8
text "blah", 3, 15 106 148 8
edit "", 4, 1 19 161 79, read multi return autovs
button "Accept", 5, 118 6 22 12
button "Deny", 6, 142 6 18 12
button "Ignore", 7, 96 6 19 12
button "Always accept", 8, 53 6 40 12
text "Address:", 9, 3 115 22 8
text "addr", 10, 24 115 139 8
text "Date:", 11, 6 8 14 9
text "/d/d/d", 12, 21 8 25 9
button "", 13, 0 0 0 0, ok
box "User information", 14, 1 100 164 44
text "Times queried:", 15, 3 123 36 8
text "#timesqueried", 16, 39 123 124 8
text "Com chans:", 17, 3 131 30 8
text "channels", 18, 34 131 129 8
}
on *:TEXT:*:?:{ if ($dialog(Query. $+ $nick)) { did -a $+(Query.,$nick) 4 ( $+ $time(hh:mm:ss) $+ ) $nick $+ : $strip($1-) $+ $crlf } }
on *:dialog:Query.*:*:*:{
var %nick $gettok($hget(query,$dname),1,32)
var %addr = $gettok($hget(query,$dname),2,32)
if ($devent == SCLICK) {
if ($did == 5) { msg %nick Your message was accepted, you have been waiting for $duration($calc($ctime - $hget(ctimes,%nick))) $+ . | window -wa %nick | dialog -c $dname query | hdel ctimes %nick }
if ($did == 6) { msg %nick Your message wasn't accepted. | .timer 1 1 window -c %nick | dialog -c $dname query }
if ($did == 7) { msg %nick Your message was found to be stupid, you will be ignored from PMs for now on. | .auser ignore %addr | window -c %nick | dialog -c $dname query | hdel ctimes %nick }
if ($did == 8) { window -wa %nick | .auser query %addr | msg %nick Your message and all messages from you has been accepted. (You waited for: $duration($calc($ctime - $hget(ctimes,%nick))) $+ ) | dialog -c $dname query | hdel ctimes %nick }
}
}
raw 311:*:{
if ($dialog(Query. $+ $2) != $null) {
did -ar query. $+ $2 10 $3 $+ @ $+ $4
hadd -m query query. $+ $2 $2 $4
}
}
on *:open:?:*:{
if (!$ial($nick)) { !whois $nick | pause s 1 }
if ($hget(queries) == $null) {
hmake queries 5000
if ($exists(queries.db) == $true) { hload queries queries.db }
}
hinc queries $site | hsave queries queries.db
if ($level($site) == ignore) { haltdef | close -m $nick | halt }
if ($level($site) != query) {
window -h $nick
hadd -m ctimes $nick $ctime
set %q.nick $nick
set %qery query. $+ %q.nick
set %q.msg $strip($1-)
dialog -m %qery Query
msg $nick Your message is being reviewed, I have $+ $query(0) $+ $iif($query(0) > 1,queries,query) open. Stupid pms will be ignored.
$iif($idle != 0,msg $nick I'm currently idle and have been for $+ $duration($idle))
}
}
alias pause {
var %e = !echo $color(info) -a * /pause:
if ($version < 5.91) {
%e this snippet requires atleast mIRC version 5.91
}
elseif (!$regex(pause,$1-,/^m?s \d+$/Si)) {
%e incorrect/insufficient parameters. Syntax: /pause <s|ms> <N>
}
elseif ($1 == ms) && ($istok(95 98 ME,$os,32)) {
%e cannot use milliseconds parameter on OS'es beneath Win2k
}
elseif ($2 !isnum 1-) {
%e must specify a number within range 1-
}
else {
var %wsh = wsh $+ $ticks, %cmd
if ($1 == s) %cmd = ping.exe -n $int($calc($2 + 1)) 127.0.0.1
else %cmd = pathping.exe -n -w 1 -q 1 -h 1 -p $iif($2 > 40,$calc($2 - 40),$2) 127.0.0.1
.comopen %wsh wscript.shell
.comclose %wsh $com(%wsh,run,1,bstr*,% $+ comspec% /c %cmd >nul,uint,0,bool,true)
}
}