All pastes #597830 Raw Edit

Stuff

public text v1 · immutable
#597830 ·published 2007-06-30 21:07 UTC
rendered paste body
dialog QM {
  title "Query Manager [/QM] v2.2.7"
  size -1 -1 124 133
  option dbu
  tab "Configuration", 100, 2 1 120 130
  box "basic configuration", 5, 4 17 115 58, tab 100
  check "block all incoming messeges", 6, 7 26 82 10, tab 100 flat
  check "use Whitelist", 7, 7 53 41 10, tab 100 flat
  check "use Blacklist", 8, 7 44 43 10, tab 100 flat
  check "accept all incoming messeges", 9, 7 35 87 10, tab 100 flat
  text "Auto Block messeges after:", 26, 7 64 70 8, tab 100
  edit "0", 27, 75 62 16 10, tab 100 autohs right
  text "sec.", 28, 93 64 13 8, tab 100
  button "reset", 33, 80 86 37 12, tab 100 flat
  edit "", 34, 5 100 112 10, tab 100 autohs
  button "change", 32, 41 86 37 12, tab 100 flat
  box "edit text", 30, 4 76 115 38, tab 100
  combo 31, 6 86 33 37, tab 100 size drop
  link "mIRCboard.de", 25, 44 122 36 8, tab 100
  text "by Salz`", 24, 51 115 22 8, tab 100
  button "Ok", 2, 4 116 37 12, tab 100 flat ok
  button "Cancel", 3, 82 116 37 12, tab 100 flat cancel
  tab "White/Black List", 10
  box "Whitelist", 11, 4 26 116 49, tab 10
  list 12, 6 34 72 38, tab 10 size
  button "remove", 13, 80 60 37 12, tab 10 flat
  button "edit", 14, 80 46 37 12, tab 10 flat
  button "add", 15, 80 32 37 12, tab 10 flat
  box "Blacklist", 22, 4 77 116 49, tab 10
  list 19, 6 85 72 38, tab 10 size
  button "add", 18, 80 83 37 12, tab 10 flat
  button "edit", 20, 80 97 37 12, tab 10 flat
  button "remove", 21, 80 111 37 12, tab 10 flat
  text "Note: add and edit will open a input dialog", 1, 5 16 114 10, tab 10
}
on *:dialog:qm:init:0:{
  if ($qm.config(blockall)) did -c $dname 6
  if ($qm.config(allowall)) did -c $dname 9
  if ($qm.config(blacklist)) did -c $dname 8
  if ($qm.config(whitelist)) did -c $dname 7
  if ($qm.config(autoclose)) did -ra $dname 27 $ifmatch
  var %x = 0
  while (%x < $qm.text(0).title) {
    inc %x
    did -a $dname 31 $qm.text(%x).title
  }
  did -fc $dname 31 1
  did -ra $dname 34 $qm.text($did($dname,31))
  qm.list $dname
}
on *:dialog:qm:edit:27:{
  if ($did($dname,$did) isnum) { qm.config autoclose $ifmatch }
}
on *:dialog:qm:sclick:14:{
  var %know = $did($dname,12).sel
  if ($input(Please enter the nickname here:,e,edit nick from whitelist,$did($dname,12).seltext,)) {
    var %known = $ifmatch
    did -d $dname 12 %know
    did -a $dname 12 %known
    qm.white -r %know
    qm.white %known
  }
}
on *:dialog:qm:sclick:20:{
  var %know = $did($dname,19).sel
  if ($input(Please enter the nickname here:,e,edit nick from blacklist,$did($dname,19).seltext,)) {
    var %known = $ifmatch
    did -d $dname 19 %know
    did -a $dname 19 %known
    qm.white -r %know
    qm.white %known
  }
}
on *:dialog:qm:sclick:15:{
  qm.white $input(Please enter the nickname here:,e,add nick to whitelist,,)
  qm.list $dname
}
on *:dialog:qm:sclick:18:{
  qm.black $input(Please enter the nickname here:,e,add nick to blacklist,,)
  qm.list $dname
}
on *:dialog:qm:sclick:13:{
  qm.white -r $did($dname,12).seltext
  qm.list $dname
}
on *:dialog:qm:sclick:21:{
  qm.black -r $did($dname,19).seltext
  qm.list $dname
}
on *:dialog:qm:sclick:6:{
  qm.config blockall $did($dname,$did).state
}
on *:dialog:qm:sclick:7:{
  qm.config whitelist $did($dname,$did).state
}
on *:dialog:qm:sclick:8:{
  qm.config blacklist $did($dname,$did).state
}
on *:dialog:qm:sclick:9:{
  qm.config allowall $did($dname,$did).state
}
on *:dialog:qm:sclick:31:{
  did -ra $dname 34 $qm.text($did($dname,31))   
}
on *:dialog:qm:sclick:32:{
  qm.text $did($dname,31) $did($dname,34)
}
on *:dialog:qm:sclick:33:{
  qm.text -d $did($dname,31)
  did -ra $dname 34 $qm.text($did($dname,31))
}
on *:dialog:qm:sclick:25:{ run http://mircboard.de }
dialog qminform {
  title "Query, autoblock in: 300sec"
  size -1 -1 160 71
  option dbu
  text "Name:", 2, 14 11 19 9, right
  box "Information", 3, 3 2 154 53
  text "$nick", 5, 35 11 119 8
  text "ComChan:", 4, 8 20 25 8
  text "$comchan", 6, 35 20 119 14
  button "allow", 1, 3 57 37 12, flat ok
  button "block", 7, 42 57 37 12, flat cancel
  button "blacklist", 8, 120 57 37 12, flat
  button "whitelist", 9, 81 57 37 12, flat
  text "Message:", 10, 8 35 25 8, right
  text "", 11, 35 35 119 17
}
on ^*:open:?:{
  echo $color(info2 text) -ts * Incomming query: $nick
  .timer -h 1 20 window -h $nick
  if (($qm.config(blacklist)) && ($qm.black($nick))) { 
    .msg $nick $qm.text(blacklist)
    .timer $+ $nick 1 20 close -m $nick 
    haltdef 
    halt
  }
  if (($qm.config(whitelist)) && ($qm.white($nick))) { 
    .msg $nick $qm.text(whitelist) 
    .timer -h 1 30 window -wa $nick
    return
  }
  if ($qm.config(allowall)) { 
    .timer -h 1 30 window -w $nick
  }
  if ($qm.config(blockall)) { haltdef | halt }
  else {
    .msg $nick $qm.text(wait)
    .timer -h 1 30 qm.inform $nick
  }
}
on *:start:{ right }
alias qm.inform { ; nick
  dialog -m $+(qminform.,$1) qminform
}
on *:dialog:qminform.*:init:0:{
  if ($qm.config(autoclose) > 0)  .timer $+ $gettok($dname,2,46) $qm.config(autoclose) 1 qm.time $dname 
  else dialog -t $dname Query
  did -a $dname 5 $gettok($dname,2,46)
  var %x = 0, %text
  while (%x < $comchan($gettok($dname,2,46),0)) {
    inc %x
    %text = %text $comchan($gettok($dname,2,46),%x)
  }
  did -a $dname 6 $iif(%text,$ifmatch,no)
  did -a $dname 11 $gettok($line($query($gettok($dname,2,46)),1),$+($calc($findtok($line($query($gettok($dname,2,46)),1),$wildtok($line($query($gettok($dname,2,46)),1),$+(*,$gettok($dname,2,46),*),1,32),32) + 1),-),32)
  ; $gettok($line($query(Salz`),1),$+($calc($findtok($line($query(Salz`),1),$wildtok($line($query(Salz`),1),$+(*,Salz`,*),1,32),32) + 1),-),32)
}
on *:dialog:qminform.*:close:0:{
  .timer $+ $gettok($dname,2,46) off
}
on *:dialog:qminform.*:sclick:8:{
  qm.black $gettok($dname,2,46)
  .timer -h 1 20 close -m $gettok($dname,2,46)
  dialog -c $dname
}
on *:dialog:qminform.*:sclick:9:{
  qm.white $gettok($dname,2,46)
  .timer -h 1 20 window -a $gettok($dname,2,46)
  dialog -k $dname
}
on *:dialog:qminform.*:sclick:1:{
  .msg $gettok($dname,2,46) $qm.text(allow)
  window -aw $gettok($dname,2,46)
}
on *:dialog:qminform.*:sclick:7:{
  .msg $gettok($dname,2,46) $qm.text(block)
  .ignore -pu10 $gettok($dname,2,46)
  close -m $gettok($dname,2,46)
}
alias qm.time { ;dialog
  if (!$qm.config(autoclose)) return
  if (!$dialog($1)) return
  if ($dialog($1).title == Query) dialog -t $1 Query, autoblock in: $duration($qm.config(autoclose))
  if ($duration($gettok($dialog($1).title,2,58)) > 0) {
    dialog -t $1 Query, autoblock in: $duration($calc($duration($gettok($dialog($1).title,2,58)) -1))
  }
  if (!$duration($gettok($dialog($1).title,2,58))) { dialog -c $1 }
}
alias right {
  window -pdhC +b @right -1 -1 160 100
  var %do =  drawtext @right $color(info text)
  %do 10 20 AddonScript made by Salz`
  %do 24 30 irc.quakenet.org
  %do 24 40 #mirc-scripting
  %do 24 60 www.mIRCscripte.de
  %do 24 70 www.mIRCboard.de 
  .timer 1 8 window -c @right
}
on *:load:{
  qm.default | right
}
alias qm.default {
  if (!$exists($qm.path)) { mkdir $qm.path }
  if (!$exists($qm.path(qm.config))) {
    var %do = writeini $qm.path(qm.config)
    %do config blacklist 1
    %do config whitelist 1
    %do config allowall 0
    %do config blockall 0
    %do config autoclose 60
    %do text blacklist Sorry, no chance for you! :)
    %do text whitelist Hello my friend :)
    %do text wait plz hold....
    %do text allow your request has been accepted
    %do text block sorry, no time!

  }
}
alias qm.text {
  if ($1 isnum) {
    if ($prop == title) {
      if ($1 > 0) { return $ini($qm.path(qm.config),text,$1) }
      else { return $ini($qm.path(qm.config),text,0) }
    }
    else {
      if ($1 > 0) { return $readini($qm.path(qm.config),text,$ini($qm.path(qm.config),text,$1)) }
      else { return $ini($qm.path(qm.config),text,0) }
    }
  }
  if (!$isid) {
    if ($1 == -d) {
      if ($2 == blacklist) .timer 1 0 qm.text $2 14(4QUERY14)4Your query request has been ignored and you are blacklisted from sending me any pm's, I am sorry that you decided to be an asshole. :)
      if ($2 == whitelist) .timer 1 0 qm.text $2 14(4QUERY14)4Your query has been permanently accepted, you can pm me whenever you like my friend :)
      if ($2 == wait) .timer 1 0 qm.text $2 14(4QUERY14)4Please wait for your query to be accepted. If this is about voice in 14#RSPC4, ask someone else.
      if ($2 == allow) .timer 1 0 qm.text $2 14(4QUERY14)4Your query request has been accepted.
      if ($2 == block) .timer 1 0 qm.text $2 14(4QUERY14)4Your query request has been denied. I am currently not accepting any pm's right now. Please try again later.
    }
    else { writeini $qm.path(qm.config) text $1- }
  }
  else { return $readini($qm.path(qm.config),text,$1) }
}
alias qm.path {
  if (!$isid) return
  if ($1) return $+(",$scriptdir,qm\,$1-,")
  else return $+(",$scriptdir,qm\,") 
}
alias qm.list {
  did -r $1 19
  did -r $1 12
  var %x = 0
  while (%x < $qm.black(0)) {
    inc %x
    did -a $1 19 $qm.black(%x)
  }
  var %x = 0
  while (%x < $qm.white(0)) {
    inc %x
    did -a $1 12 $qm.white(%x)
  }
}
alias qm.black {
  if (!$isid) {
    if ($1 == -r) .ruser qmblack $2 $iif(*!*@* !iswm $2,3)
    else .guser qmblack $1 $iif(*!*@* !iswm $2,3)
  }
  if (($isid) && ($1 isnum)) return $ulist(*,qmblack,$1)
  else return $iif($ulist($address($1,3),qmblack,0),$true,$false)
}
alias qm.white {
  if (!$isid) {
    if ($1 == -r) .ruser qmwhite $2 $iif(*!*@* !iswm $2,3)
    else .guser qmwhite $1 $iif(*!*@* !iswm $2,3)
  }
  if (($isid) && ($1 isnum)) return $ulist(*,qmwhite,$1)
  else return $iif($ulist($address($1,3),qmwhite,0),$true,$false) 
}
alias qm.config {
  :start
  if (!$exists($qm.path)) { qm.default | goto start }
  if (!$isid) { writeini $qm.path(qm.config) config $1- }
  else { return $readini($qm.path(qm.config),config,$1) }
}
alias QM { qm.default | dialog -m QM QM }
menu menubar {
  Query Manager [/QM]:/QM
}
menu Query,Nicklist {
  Query Manager
  . $iif($qm.config(whitelist),$iif(!$qm.white($1),whitelist $1 )):qm.white $1
  . $iif($qm.config(whitelist),$iif($qm.white($1),unwhitelist $1 )):qm.white -r $1
  . $iif($qm.config(blacklist),$iif(!$qm.black($1),blacklist $1 )):qm.black $1
  . $iif($qm.config(blacklist),$iif($qm.black($1),unblacklist $1)):qm.black -r $1
  . $iif(($qm.config(blacklist)) || ($qm.config(blacklist)),-)
  . Configure:/qm