All pastes #754634 Raw Edit

Unnamed

public text v1 · immutable
#754634 ·published 2007-10-30 03:43 UTC
rendered paste body
alias vinfo {
    set %v.state wait
    hs waiting
}

on *:notice:*:?:{
  if ($nick == HostServ) {
    ;echo -a triggered
    if (%v.state == wait) {
      if ($regex($1-,/Displayed\sall\srecords/Si)) { set %v.state list | .timer 1 2 vhost.prev | halt }
      writeini vhosts.ini waiting $remove($2,Nick:,$chr(44)) $remove($3,vhost:)
    }
    elseif (%v.state == list) {
      if ($regex($1-,/Displayed\srecords\smatching/Si)) { halt }
      writeini vhosts.ini prev $remove($2,Nick:,$chr(44)) $remove($3,vhost:)
      writeini vhosts.ini time $remove($2,Nick:,$chr(44)) $ctime($remove($6-,$chr(41)))
    }
  }
  if ($nick == NickServ) {
    if (%v.group) && ($regex($1-,/(\d)+\snicknames\sin\sthe\sgroup\./Si)) {
      writeini vhosts.ini group %v.group $regml(1)
      vhost.group
    }
  }
}

alias vhost.prev {
  ;echo -a vhost.prev
  var %i = 1
  while (%i <= $ini(vhosts.ini,waiting,0)) {
    hs list $ini(vhosts.ini,waiting,%i)
    inc %i
  }
  vhost.group
  .timer 1 10 vhost.disp
  .timer 1 11 unset %v.state
}

alias vhost.group {
  if (!%v.group) {
    set %v.group.i 1
  }
  if ($ini(vhosts.ini,waiting,%v.group.i)) {
    set %v.group $ini(vhosts.ini,waiting,%v.group.i)
    ns glist $ini(vhosts.ini,waiting,%v.group.i)
    inc %v.group.i
  }
}

alias vhost.disp {
  var %i = 1
  while (%i <= $ini(vhosts.ini,waiting,0)) {
    var %x = $ini(vhosts.ini,waiting,%i)
    echo 3 -a vHost request by: %x Request: $readini(vhosts.ini,waiting,%x) $&
      $iif($ini(vhosts.ini,prev,%x),Last vHost: $readini(vhosts.ini,prev,%x) $iif($calc($calc($ctime + 7200) - $readini(vhosts.ini,time,%x)) >= 1209600,Time Ok,Time left: $duration($calc(1209600 - $calc($calc($ctime + 7200) - $readini(vhosts.ini,time,%x))),2)),no previous vhost) $&
      Grouped nicks: $readini(vhosts.ini,group,%x)
    inc %i
  }
  unset %v.state
  unset %v.group
  remini vhosts.ini waiting
  remini vhosts.ini prev
  remini vhosts.ini time
  remini vhosts.ini group
}