SysOp IRC Services — File Browser

SysOpIRCServicesv0.1 / SysOpIRCServicesv0.1 / system / channel.mrc

channel.mrc — 107.16 KB — Download this file

; Copying or editing of any of the scripts included in this module is strictly prohibited, you may distribute the package
; in its entireity un edited in any form. Support can only be given to those who do not edit these files please do not ask
; if you plan to edit them yourself. Credits and links back to us must remain in the script we do not advertise using your
; network unless the .VERSION command is triggered. You must also agree when connecting the service to any IRC net
; that you have the correct permission to connect the service, you MUST NOT connect the service to Digi-Net and you
; connect the service at your own risk. For support see http://www.digi-net.org

alias system.chandrop {
  if ($netconf(system,chanreg) == off) && (!$readadmin($addy($1),nickname) == $1) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,chanreg1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,chanreg2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$addy($1)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,3)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($left($2,1) != $chr(35)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Channel name required, names MUST start with
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color the character  $+ $chr(35) $+  e.g #My-Channel
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt    
  }
  if (!$readchan($2,channel)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,notreg)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$readaccess($addy($1),$2,level)) && (!$readadmin($1,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,4)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  } 
  if ($readaccess($addy($1),$2,level) < $netconf(chanlevel,drop)) && (!$readadmin($1,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,4).
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($readnick($1,operlevel) < $netconf(chanlevel,admindrop)) && ($readadmin($1,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,4).
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  } 
  ;remove any infolines
  var %x = 1
  while ($ini(data/access/infolines.db,%x)) {
    if ($readuserinfoline($ini(data/access/infolines.db,%x),$2)) {
      remini data/access/infolines.db $ini(data/access/infolines.db,%x) $2
    }
    inc %x
  }
  ;remove any autovoice
  var %x = 1
  while ($ini(data/access/autovoice.db,%x)) {
    if ($readini(data/access/autovoice.db,$ini(data/access/autovoice.db,%x),$2)) {
      remini data/access/autovoice.db $ini(data/access/autovoice.db,%x) $2
    }
    inc %x
  }
  ;remove any autoop
  var %x = 1
  while ($ini(data/access/autoop.db,%x)) {
    if ($readini(data/access/autoop.db,$ini(data/access/autoop.db,%x),$2)) {
      remini data/access/autoop.db $ini(data/access/autoop.db,%x) $2
    }
    inc %x
  }
  ;remove any autojoins
  var %x = 1
  while ($ini(data/access/autojoin.db,%x)) {
    if ($readini(data/access/autojoin.db,$ini(data/access/autojoin.db,%x),$2)) {
      remini data/access/autojoin.db $ini(data/access/autojoin.db,%x) $2
    }
    inc %x
  }
  ;remove any user levels
  var %x = 1
  while ($ini(data/access/level.db,%x)) {
    if ($readini(data/access/level.db,$ini(data/access/level.db,%x),$2)) {
      remini data/access/level.db $ini(data/access/level.db,%x) $2
    }
    inc %x
  }
  ;remove the topic if any
  removetopic $2
  ;delete the channel
  wipechan $2
  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,drop)
  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $2 $lang($1,channel,drop2)
  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
  .sockwrite -tn serv $+(:,$netconf(server,server)) MODE $2 -r
  .sockwrite -tn serv $+(:,$netconf(system,nickname)) PART $2
  report DROP: $2 Deleted by $+($1,!,$userhost($1)) 
  halt
}

alias system.chanreg {
  if ($netconf(system,chanreg) == off) && (!$readadmin($addy($1),nickname) == $1) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,chanreg1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,chanreg2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$addy($1)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,3)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  var %x = 1
  set %channels 0
  while ($ini(data/channels.db,%x)) {
    if ($readchan($ini(data/channels.db,%x),owner) == $1) {
      set %channels $calc(%channels + 1)
    }
    inc %x
  }
  if (%channels > $netconf(system,maxchans)) && (!$readadmin($1,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Too Many Channels
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,noreg2) - %channels
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($left($2,1) != $chr(35)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Channel name required, names MUST start with
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color the character  $+ $chr(35) $+  e.g #My-Channel
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt    
  }
  if ($readchan($2,channel)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Channel Taken
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Sorry that channel is already registered.
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  addchan $2 channel $2
  addchan $2 owner $addy($1)
  addchan $2 datereg $ctime
  addchan $2 autoop off
  addchan $2 badlang off
  addchan $2 inchan on
  addchan $2 modes +nrt
  addchan $2 voice off
  addchan $2 clones off
  addchan $2 strictop off
  addchan $2 setaccess 4
  addchan $2 bantimeout 0
  addchan $2 topicfreq off
  addchan $2 spamfilter off
  addchan $2 sayaccess 3
  addchan $2 capkick 0

  addaccess $1 $2 level 5
  if ($readnick($1,autoop) == on) {
    addaccess $1 $2 autoop on
  }
  else
  {
    addaccess $1 $2 autoop off
  }
  addaccess $1 $2 autovoice off
  writetopic $2 Welcome to $2
  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Channel Registration Complete
  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $2 is now registered to you $1 $+ .
  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
  .sockwrite -tn serv $+(:,$netconf(system,nickname)) JOIN $2
  .sockwrite -tn serv $+(:,$netconf(server,server)) MODE $2 +o $netconf(system,nickname)
  .sockwrite -tn serv $+(:,$netconf(server,server)) MODE $2 $readchan($2,modes)
  report CHANREG: $2 from $+($1,!,$userhost($1)) successful
  halt
}

alias system.version {
  sysmsg $2 SysOp Services Version $netconf(system,version) $+  Bozza & Borderlad http://sysop-services.org
}
alias system.deluser {
  if (!$addy($1)) { 
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,3)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$2) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Channel name required
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($readchan($2,suspended)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $2 is currently suspended by admin, 
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Reason: $readchan($2,suspended)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$readchan($2,channel)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Channel $2 is not registered
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color For help regarding registration /msg $netconf(system,nickname) HELP CHANREG
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$readaccess($addy($1),$2,level)) && (!$readadmin($1,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,4)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  } 
  if ($readaccess($addy($1),$2,level) < $netconf(chanlevel,deluser)) && (!$readadmin($1,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,4).
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$3) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Incorrect Nickname
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Valid nickname to deluser required
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$readnick($3,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Incorrect Nickname
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Nickname $3 is not registered
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color For help regarding registration /msg $netconf(system,nickname) HELP NICKREG
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$readaccess($3,$2,level)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,5)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Nickname $3 does not have access to $2
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$4) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Incorrect Level
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Valid level required
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Valid Options are: Owner, Co-Owner, Operator, Friend, Lamer 
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($axs.levels.name($4) == Nothing) && ($axs.levels.number($4) == Nothing) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Incorrect Level
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Valid level required
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Valid Options are: Owner, Co-Owner, Operator, Friend, Lamer 
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($4 !isnum) { set -u10 %level $axs.levels.number($4) }
  if ($readaccess($addy($1),$2,level) <= %level) && ($readchan($1,owner) != $1) && (!$readadmin($1,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Cannot remove a user with equal or higher access than your own.
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($readnick($1,operlevel) < $netconf(chanlevel,admindeluser)) && ($readadmin($1,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,4).
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  } 
  delaccess $3 $2 level
  delaccess $3 $2 autoop
  delaccess $3 $2 autovoice
  delaccess $3 $2 autojoin
  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  User Removed
  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $3 has been removed as a $2 $axs.levels.name(%level)
  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
  ;send user a note
  if ($readnick($3,notesystem) == on) && (!$readnick($3,noteabuse)) && ($readnick($3,accessalert) == on) {
    writeini data/notes.db $3 $calc($ini(data/notes.db,$3,0) +1) Hello $3 $+ , $1 removed you as a $2 $axs.levels.name(%level)  on $asctime($ctime)
    if ($readclient($3,nickname)) {
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $3 :-
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $3 : $+ %color $+  Note Recieved from $netconf(system,nickname)
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $3 : $+ %color To List your notes type /msg $netconf(system,nickname) NOTE LIST
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $3 : $+ %color You are using 12 $+ $ini(data/notes.db,$3,0) $+  out of your 12 $+ $readnick($3,pmquota) $+  note limit
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $3 :-
    }
  }
  if ($addy($3)) && ($axs.levels.name(%level) != Lamer) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $3 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $3 : $+ %color $+  Channel Access Removed
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $3 : $+ %color $1 removed your access as a $2 $axs.levels.name(%level)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $3 :-
    halt
  }
  if ($axs.levels.name(%level) == Lamer) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $3 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $3 : $+ %color $+  Ban Removed $2
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $3 : $+ %color $1 removed you as a $2 $axs.levels.name(%level)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $3 :-
    sockwrite -tn serv : $+ $netconf(system,nickname) MODE $2 -b $mask($+($3,!,$userhost($3)),2)
  }
}
alias sysop.say {
  if (!$addy($1)) { 
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,3)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$2) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Channel name required
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$readchan($2,channel)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Channel $2 is not registered
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color For help regarding registration /msg $netconf(system,nickname) HELP CHANREG
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($readchan($2,suspended)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $2 is currently suspended by admin, 
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Reason: $readchan($2,suspended)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$readaccess($addy($1),$2,level)) && (!$readadmin($1,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,4)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  } 
  if ($readaccess($addy($1),$2,level) < $readchan($2,sayaccess)) && (!$readadmin($1,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,4).
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($readnick($1,operlevel) < $netconf(chanlevel,adminsay)) && ($readadmin($1,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,4).
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  } 
  if (!$3) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Incorrect usage
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Try /msg SysOp SAY <#channel> <message>
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  sockwrite -tn serv $+(:,$netconf(system,nickname)) PRIVMSG $2 : $+ $3-

}
alias system.access {
  if (!$addy($1)) { 
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,3)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$2) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Channel name required
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$readchan($2,channel)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Channel $2 is not registered
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color For help regarding registration /msg $netconf(system,nickname) HELP CHANREG
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($readchan($2,suspended)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $2 is currently suspended by admin, 
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Reason: $readchan($2,suspended)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$readaccess($addy($1),$2,level)) && (!$readadmin($1,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,4)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  } 
  if ($readaccess($addy($1),$2,level) < $netconf(chanlevel,access)) && (!$readadmin($1,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,4).
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($readnick($1,operlevel) < $netconf(chanlevel,adminaccess)) && ($readadmin($1,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,4).
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  } 
  if (!$3) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Incorrect Nickname
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Valid nickname for access required
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$readnick($3,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Incorrect Nickname
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Nickname $3 is not registered
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color For help regarding registration /msg $netconf(system,nickname) HELP NICKREG
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$readaccess($3,$2,level)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  No Access For user
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Nickname $3 does not have access to $2
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Access Information
  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Channel     : $2
  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Nickname    : $3
  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Access Level:   $+ $axs.levels.name($readaccess($3,$2,level))
  if ($readadmin($3,nickname) == $3) && ($readnick($3,operlevel)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $3 $+  is an IRCop with 12 $+ $readnick($3,operlevel)  $+ access.
  }
  elseif ($readadmin($3,nickname) == $3) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $3 $+  is an IRCop with 12 $+ No  $+ access.
  } 
  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
  halt
}
alias system.adduser {
  if (!$addy($1)) { 
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,3)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$2) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Channel name required
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$readchan($2,channel)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Channel $2 is not registered
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color For help regarding registration /msg $netconf(system,nickname) HELP CHANREG
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($readchan($2,suspended)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $2 is currently suspended by admin, 
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Reason: $readchan($2,suspended)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$readaccess($addy($1),$2,level)) && (!$readadmin($1,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,4)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  } 
  if ($readaccess($addy($1),$2,level) < $netconf(chanlevel,adduser)) && (!$readadmin($1,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,4).
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$3) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Incorrect Nickname
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Valid nickname to adduser required
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$4) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Incorrect Level
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Valid level required
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Valid Options are: Owner, Co-Owner, Operator, Friend, Lamer 
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($axs.levels.name($4) == No-Access) && ($axs.levels.number($4) == No-Access) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Incorrect Level
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Valid level required
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Valid Options are: Owner, Co-Owner, Operator, Friend, Lamer 
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($4 !isnum) { set -u10 %level $axs.levels.number($4) }
  if ($readaccess($addy($1),$2,level) <= %level) && ($readchan($2,owner) != $1) && (!$readadmin($1,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Cannot add a user with higher or equal access than your own.
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($readnick($1,operlevel) < $netconf(chanlevel,adminadduser)) && ($readadmin($1,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,4).
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  } 
  if (!$readnick($3,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Incorrect Nickname
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Nickname $3 is not registered
    if ($readclient($3,nickname)) {
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $3 is online, i will send them a message inviting
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color them to register, then you may attempt to add them.
      ;notice the person
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $3 :-
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $3 : $+ %color $+  You were asked to join a channel access list
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $3 : $+ %color Hello, $1 tried to add you as a $2 $axs.levels.name(%level)
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $3 : $+ %color but couldn't as your not registered yet, if you would like to
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $3 : $+ %color register type /msg $netconf(system,nickname) HELP REGISTER
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $3 :-
      echo -a >> Sent NICKREG request to $3
    }
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($readaccess($3,$2,level)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,5)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Nickname $3 already has access to $2
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  } 
  addaccess $3 $2 level %level  
  addaccess $3 $2 autoop $iif(%level > 2,on,off)
  addaccess $3 $2 autovoice $iif(%level < 2,on,off)
  addaccess $3 $2 autojoin off
  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  User Added 
  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $3 has been added as a $2 $axs.levels.name(%level)
  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
  ;send user a note
  if ($readnick($3,notesystem) == on) && (!$readnick($3,noteabuse)) && ($readnick($3,accessalert) == on) {
    writeini data/notes.db $3 $calc($ini(data/notes.db,$3,0) +1) Hello $3 $+ , $1 added you as a $2 $axs.levels.name(%level)  on $asctime($ctime)
    if ($readclient($3,nickname)) {
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $3 :-
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $3 : $+ %color $+  Note Recieved from $netconf(system,nickname)
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $3 : $+ %color To List your notes type /msg $netconf(system,nickname) NOTE LIST
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $3 : $+ %color You are using 12 $+ $ini(data/notes.db,$3,0) $+  out of your 12 $+ $readnick($3,pmquota) $+  note limit
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $3 :-
    }
  }
  if ($addy($3)) && ($axs.levels.name(%level) != Lamer) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $3 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $3 : $+ %color $+  Channel Access Granted
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $3 : $+ %color $1 added you as a $2 $axs.levels.name(%level)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $3 :-
    halt
  }
  if ($axs.levels.name(%level) == Lamer) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $3 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $3 : $+ %color $+  Banned From $2
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $3 : $+ %color $1 added you as a $2 $axs.levels.name(%level)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $3 :-
    sockwrite -tn serv : $+ $netconf(system,nickname) MODE $2 +b $mask($+($3,!,$userhost($3)),2)
    .sockwrite -tn serv $+(:,$netconf(system,nickname)) KICK $2 $3 Lamer
    halt 
  }
}
alias system.chanuset {
  if (!$addy($1)) { 
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,3)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$2) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Channel name required
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$readchan($2,channel)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Channel $2 is not registered
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color For help regarding registration /msg $netconf(system,nickname) HELP CHANREG
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($readchan($2,suspended)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $2 is currently suspended by admin, 
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Reason: $readchan($2,suspended)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$readaccess($addy($1),$2,level)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,4)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  } 
  if ($readaccess($addy($1),$2,level) < $netconf(chanlevel,uset)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,4)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$3) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Personal Settings For $2
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Auto-Op   : $readuserautoop($1,$2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Auto-Voice: $readuserautovoice($1,$2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Auto-Join : $readuserautojoin($1,$2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Join Info : $readuserinfoline($1,$2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($3 == aop) {
    if ($4 != on) && ($4 != off) { 
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Incorrect Value
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Valid values are: on/off
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      halt
    }
    if ($4 == on) { userautoop $1 $2 on }
    if ($4 == off) { userautoop $1 $2 off }
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Option Set
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color AOP is now $lower($4) in $2
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($3 == autojoin) {
    if ($4 != on) && ($4 != off) { 
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Incorrect Value
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Valid values are: on/off
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      halt
    }
    if ($4 == on) { userautojoin $1 $2 on }
    if ($4 == off) { userautojoin $1 $2 off }
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Option Set
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color AutoJoin is now $lower($4) for $2
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($3 == vop) {
    if ($4 != on) && ($4 != off) { 
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Incorrect Value
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Valid values are: on/off
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      halt
    }
    if ($4 == on) { userautovoice $1 $2 on }
    if ($4 == off) { userautovoice $1 $2 off }
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Option Set
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Auto Voice is now $lower($4) in $2
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($3 == info) {
    if (!$4)  && ($4 != off) { 
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Missing Informations
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Try .USET INFO [<message>|off]
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      halt
    }
    if ($4 == off) {
      remini data/access/infolines.db $1 $2
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Info Message
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Your infoline message was removed
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      halt
    }
    if ($4) && ($4 != *) { 
      %x = 1
      while ($gettok(%bwords,%x,44)) {
        if ($gettok(%bwords,%x,44) isin $4-) {
          sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
          sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Bad Words Filtered
          sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Your infoline message is too rude to display
          sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
          report Badwords filtered in  $+ $1 $+ 's $2 INFO
          halt
        }
        inc %x
      }
    setuserchaninfo $1 $2 $4- }
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Infoline saved for $2
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $4-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
  }
}
alias system.opdown {
  if (!$addy($1)) { 
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,3)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$2) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Channel name required
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$readchan($2,channel)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Channel $2 is not registered
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color For help regarding registration /msg $netconf(system,nickname) HELP CHANREG
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($readchan($2,suspended)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $2 is currently suspended by admin, 
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Reason: $readchan($2,suspended)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$readaccess($addy($1),$2,level)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,4)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  } 
  if ($readaccess($addy($1),$2,level) < $netconf(chanlevel,down)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,4).
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  ;functions go in here
  if ($readaccess($addy($1),$2,level) == 5) { chanopuser $2 -ov $1 $1 }
  if ($readaccess($addy($1),$2,level) == 4) { chanopuser $2 -ov $1 $1 }
  if ($readaccess($addy($1),$2,level) == 3) { chanopuser $2 -ov $1 $1 }
  if ($readaccess($addy($1),$2,level) == 2) { chanopuser $2 -v $1 }
}
alias system.opup {
  if (!$addy($1)) { 
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,3)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$2) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Channel name required
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$readchan($2,channel)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Channel $2 is not registered
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color For help regarding registration /msg $netconf(system,nickname) HELP CHANREG
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($readchan($2,suspended)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $2 is currently suspended by admin, 
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Reason: $readchan($2,suspended)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$readaccess($addy($1),$2,level)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,4)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  } 
  if ($readaccess($addy($1),$2,level) < $netconf(chanlevel,up)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,4).
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  ;functions go in here
  if ($readaccess($addy($1),$2,level) == 5) { chanopuser $2 +o $1 }
  if ($readaccess($addy($1),$2,level) == 4) { chanopuser $2 +o $1 }
  if ($readaccess($addy($1),$2,level) == 3) { chanopuser $2 +o $1 }
  if ($readaccess($addy($1),$2,level) == 2) { chanopuser $2 +v $1 }
}
alias system.deopuser {
  if (!$addy($1)) { 
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,3)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$2) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Channel name required
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$3) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Incorrect USername
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Username name required
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$readchan($2,channel)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Channel $2 is not registered
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color For help regarding registration /msg $netconf(system,nickname) HELP CHANREG
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($readchan($2,suspended)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $2 is currently suspended by admin, 
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Reason: $readchan($2,suspended)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$readaccess($addy($1),$2,level)) && (!$readadmin($1,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,4)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  } 
  if ($readaccess($addy($1),$2,level) < $netconf(chanlevel,op)) && (!$readadmin($1,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,4).
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($readnick($1,operlevel) < $netconf(chanlevel,admindeopuser)) && ($readadmin($1,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,4).
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  } 
  if ($readaccess($addy($1),$2,level) < $readaccess($3,$2,level)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Cannot deop users with a higher access than you.
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  ;functions go in here
  if ($readaccess($addy($3),$2,level) == 5) { chanopuser $2 -ov $3 $3 | halt }
  if ($readaccess($addy($3),$2,level) == 4) { chanopuser $2 -ov $3 $3 | halt }
  if ($readaccess($addy($3),$2,level) == 3) { chanopuser $2 -ov $3 $3 | halt }
  if ($readaccess($addy($3),$2,level) == 2) { chanopuser $2 -v $3 | halt }
  chanopuser $2 -o $3
}
alias system.opuser {
  if (!$addy($1)) { 
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,3)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$2) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Channel name required
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$3) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Incorrect USername
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Username name required
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$readchan($2,channel)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Channel $2 is not registered
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color For help regarding registration /msg $netconf(system,nickname) HELP CHANREG
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($readchan($2,suspended)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $2 is currently suspended by admin, 
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Reason: $readchan($2,suspended)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$readaccess($addy($1),$2,level)) && (!$readadmin($1,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,4)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  } 
  if ($readaccess($addy($1),$2,level) < $netconf(chanlevel,op)) && (!$readadmin($1,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,4).
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($readnick($1,operlevel) < $netconf(chanlevel,adminopuser)) && ($readadmin($1,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,4).
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  } 
  ;functions go in here
  if ($readaccess($addy($3),$2,level) == 5) { chanopuser $2 +o $3 | halt }
  if ($readaccess($addy($3),$2,level) == 4) { chanopuser $2 +o $3 | halt }
  if ($readaccess($addy($3),$2,level) == 3) { chanopuser $2 +o $3 | halt }
  if ($readaccess($addy($3),$2,level) == 2) { chanopuser $2 +v $3 | halt }
  chanopuser $2 +o $3
}
alias system.kickuser {
  if (!$addy($1)) { 
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,3)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$2) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Channel name required
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  /msg SysOp K #channel bob
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$3) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Incorrect Username
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Username name required
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  /msg SysOp K #channel bob
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$readchan($2,channel)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Channel $2 is not registered
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color For help regarding registration /msg $netconf(system,nickname) HELP CHANREG
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($readchan($2,suspended)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $2 is currently suspended by admin, 
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Reason: $readchan($2,suspended)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$readaccess($addy($1),$2,level)) && (!$readadmin($1,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,4)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  } 
  if ($readaccess($addy($1),$2,level) < $netconf(chanlevel,kick)) && (!$readadmin($1,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,4).
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($readnick($1,operlevel) < $netconf(chanlevel,adminkick)) && ($readadmin($1,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,4).
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  } 
  if ($readadmin($3,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Cannot kick an IRC operator from the channel.
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($readaccess($addy($1),$2,level) < $readaccess($3,$2,level)) && (!$readadmin($1,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Cannot Kick Users With Higher Access Than You.
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  ;functions go in here
  sockwrite -tn serv $+(:,$netconf(system,nickname)) KICK $2 $3 Requested
}
alias system.kickbanuser {
  if (!$addy($1)) { 
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,3)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$2) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Channel name required
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  /msg SysOp KB #channel bob
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$3) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Incorrect Username
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Username name required
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  /msg SysOp KB #channel bob
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$readchan($2,channel)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Channel $2 is not registered
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color For help regarding registration /msg $netconf(system,nickname) HELP CHANREG
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($readchan($2,suspended)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $2 is currently suspended by admin, 
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Reason: $readchan($2,suspended)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$readaccess($addy($1),$2,level)) && (!$readadmin($1,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,4)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  } 
  if ($readaccess($addy($1),$2,level) < $netconf(chanlevel,kickban)) && (!$readadmin($1,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,4).
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($readnick($1,operlevel) < $netconf(chanlevel,adminkick)) && ($readadmin($1,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,4).
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  } 
  if ($readadmin($3,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Cannot kick an IRC operator from the channel.
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($readaccess($addy($1),$2,level) < $readaccess($3,$2,level)) && (!$readadmin($1,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Cannot Kick Users With Higher Access Than You.
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  ;functions go in here
  sockwrite -tn serv : $+ $netconf(system,nickname) MODE $2 +b $mask($+($3,!,$userhost($3)),2)
  sockwrite -tn serv $+(:,$netconf(system,nickname)) KICK $2 $3 Requested
}
alias system.chanset {
  if (!$addy($1)) { 
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,3)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$2) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Channel name required
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$readchan($2,channel)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Channel $2 is not registered
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color For help regarding registration /msg $netconf(system,nickname) HELP CHANREG
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($readchan($2,suspended)) && (!$readadmin($1,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $2 is currently suspended by admin, 
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Reason: $readchan($2,suspended)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$readaccess($addy($1),$2,level)) && (!$readadmin($1,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,4)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  } 
  if ($readaccess($addy($1),$2,level) < $readchan($2,setaccess)) && (!$readadmin($1,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,4).
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$3) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Channel Settings For $2
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Registrar    :  $+ $readchan($2,owner)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Topic        : $left($remove($read(data/set_topics.txt, s, $2 $+ :),$2 $+ :),40) $+ ...
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Modes        : $readchan($2,modes)
    if ($readchan($2,strictop) == on) { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color StrictOp     : On  : Only listed users can be opped }
    else { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color StrictOp     : Off : No opping restrictions }
    if ($readchan($2,spamfilter) == on) { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Spam Filter  : On  : Spammers will be kicked }
    else { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Spam Filter  : Off : Not protected from spammers }
    if ($readchan($2,inchan) == on) { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color InChan       : On  : $netconf(system,nickname)) will join the channel }
    else { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color InChan       : Off : $netconf(system,nickname)) will not join the channel }  
    if ($readchan($2,capkick) = 0) { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color CapKick      : Off : CapKick is disabled }
    elseif (!$readchan($2,capkick)) { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color CapKick      : Off : CapKick is disabled }
    else { 
      if ($len($readchan($2,capkick)) = 1) { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color CapKick      : $readchan($2,capkick)   : % cap letters before kick }
      elseif ($len($readchan($2,capkick)) = 2) { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color CapKick      : $readchan($2,capkick)  : % cap letters before kick }
      else { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color CapKick      : $readchan($2,capkick) : % cap letters before kick }
    }
    if ($readchan($2,badlang) == on) { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color BadLang      : On  : $netconf(system,nickname)) will kick non users who swear }
    else { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color BadLang      : Off : $netconf(system,nickname)) will allow anyone to swear }  
    if ($readchan($2,autoop) == on) { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color AutoOp       : On  : $netconf(system,nickname)) will auto op users on join }
    else { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color AutoOp       : Off : $netconf(system,nickname)) will not auto op anyone }  
    if ($readchan($2,voice) == on) { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color AutoVoice    : On  : $netconf(system,nickname)) will auto voice users on join }
    else { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color AutoVoice    : Off : $netconf(system,nickname)) will not auto voice anyone }  
    if ($readchan($2,voice) == on) { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color CloneStrict  : On  : Clones not allowed in $2 }
    else { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color CloneStrict  : Off : Clones allowed in $2 } 
    if ($readchan($2,joinmsg)) { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color JoinMsg      : On  : $left($readchan($2,joinmsg),40) }
    else { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color JoinMsg      : Off : No JoinMsg saved! } 
    if ($readchan($2,char)) { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Trigger      : On  : Public command trigger is  $+ $readchan($2,char) }
    else { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Trigger      : Off : Using default command trigger } 
    if ($readchan($2,url)) { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Channel URL  : On  : $readchan($2,url) }
    else { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Channel URL  : Off : No URL saved for $2 } 
    if ($readchan($2,setaccess) == 5) { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color SetAccess    :  5  : Only Onwers can use SET }
    if ($readchan($2,setaccess) == 4) { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color SetAccess    :  4  : Co-Owners and above can use SET }
    if ($readchan($2,setaccess) == 3) { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color SetAccess    :  3  : Operators and above can use SET }
    if ($readchan($2,sayaccess) == 5) { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color SayAccess    :  5  : Only Onwers can use SAY }
    if ($readchan($2,sayaccess) == 4) { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color SayAccess    :  4  : Co-Owners and above can use SAY }
    if ($readchan($2,sayaccess) == 3) { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color SayAccess    :  3  : Operators and above can use SAY }
    if ($readchan($2,sayaccess) == 2) { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color SayAccess    :  2  : Friends and above can use SAY }
    if ($readchan($2,bantimeout) == 1) { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color BanTimeOut   :  1  : Bans removed after 15 mins }
    if ($readchan($2,bantimeout) == 2) { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color BanTimeOut   :  2  : Bans removed afer 60 mins }
    if ($readchan($2,bantimeout) == 3) { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color BanTimeOut   :  3  : Bans Removed after 180 mins }
    if ($readchan($2,bantimeout) == 0) { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color BanTimeOut   :  0  : Bans never automatically removed }
    if ($readchan($2,topiclock) == off) { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color TopicLock    :  0  : No TopicLock restrictions }
    if ($readchan($2,topiclock) == 2) { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color TopicLock    :  2  : Friends and above can change topics }
    if ($readchan($2,topiclock) == 3) { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color TopicLock    :  3  : Operators and above can change topics }
    if ($readchan($2,topiclock) == 4) { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color TopicLock    :  4  : Co-Owners and above can change topics }
    if ($readchan($2,topiclock) == 5) { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color TopicLock    :  5  : Only Owners can change topics }
    if ($readchan($2,topicfreq) == on) { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color TopicFreq    : On  : Topic refreshed every 4 hours }
    else { sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color TopicFreq    : Off : Topic is never refreshed } 
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($3 == topiclock) {
    if (!$4) && ($4 != off) { 
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Incorrect Value
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Valid values are: off 2 3 4 5
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      halt
    }
    addchan $2 topiclock $4
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Option Set
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color TopicLock is now $lower($4)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($3 == topicfreq) {
    if ($4 != on) && ($4 != off) { 
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Incorrect Value
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Valid values are: on/off
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      halt
    }
    if ($4 == on) { 
      addchan $2 topicfreq on
      timer $+ $2 $+ topic 0 14400 sockwrite -tn serv $+(:,$netconf(system,nickname)) TOPIC $2 $netconf(system,nickname) $ctime : $+ $remove($read(data/set_topics.txt, s, $2 $+ :),$2 $+ :)
    }
    if ($4 == off) { 
      addchan $2 topicfreq off 
      timer $+ $2 $+ topic off
    }
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Option Set
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color TopicFreq is now $lower($4)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($3 == spamfilter) {
    if ($4 != on) && ($4 != off) { 
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Incorrect Value
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Valid values are: on/off
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      halt
    }
    if ($4 == on) { addchan $2 spamfilter on }
    if ($4 == off) { addchan $2 spamfilter off }
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Option Set
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color SpamFilter is now $lower($4)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($3 == autoop) {
    if ($4 != on) && ($4 != off) { 
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Incorrect Value
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Valid values are: on/off
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      halt
    }
    if ($4 == on) { addchan $2 autoop on }
    if ($4 == off) { addchan $2 autoop off }
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Option Set
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color AutoOP is now $lower($4)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($3 == setaccess) {
    if ($4 != 3) && ($4 != 4) && ($4 != 5) { 
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Incorrect Value
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Valid values are: 3-5
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      halt
    }
    addchan $2 setaccess $4
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Option Set
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color SetAccess is now $lower($4)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($3 == capkick) {
    if ($4 !< 100) || ($4 !> -1) { 
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Incorrect Value
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Valid values are: 1 - 100
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      halt
    }
    addchan $2 capkick $4
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Option Set
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color CapKick is now $lower($4) $+ %
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($3 == sayaccess) {
    if ($4 != 2) && ($4 != 3) && ($4 != 4) && ($4 != 5) { 
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Incorrect Value
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Valid values are: 2-5
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      halt
    }
    addchan $2 sayaccess $4
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Option Set
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color SayAccess is now $lower($4)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($3 == autovoice) {
    if ($4 != on) && ($4 != off) { 
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Incorrect Value
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Valid values are: on/off
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      halt
    }
    if ($4 == on) { addchan $2 voice on }
    if ($4 == off) { addchan $2 voice off }
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Option Set
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color AutoVoice is now $lower($4)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($3 == strictop) {
    if ($4 != on) && ($4 != off) { 
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Incorrect Value
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Valid values are: on/off
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      halt
    }
    if ($4 == on) { addchan $2 strictop on }
    if ($4 == off) { addchan $2 strictop off }
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Option Set
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color StrictOP is now $lower($4)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($3 == bantimeout) {
    if ($4 != 1) && ($4 != 2) && ($4 != 3) && ($4 != 0) { 
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Incorrect Value
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Valid values are: 0-3
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      halt
    }
    addchan $2 bantimeout $4
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Option Set
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color BanTimeOut is now $lower($4)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($3 == badlang) {
    if ($4 != on) && ($4 != off) { 
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Incorrect Value
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Valid values are: on/off
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      halt
    }
    if ($4 == on) { addchan $2 badlang on }
    if ($4 == off) { addchan $2 badlang off }
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Option Set
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color BadLang is now $lower($4)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($3 == joinmsg) {
    if (!$4) && ($4 != off) { 
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Incorrect Value
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Valid values are: off/message
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      halt
    }
    if ($4 != off ) { addchan $2 joinmsg $4- }
    if ($4 == off) { remini data/channels.db $2 joinmsg }
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Option Set
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color JoinMsg is now $4-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($3 == topic) {
    if (!$4) { 
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Incorrect Value
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color SET TOPIC <topic msg>
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      halt
    }
    writetopic $2 $4-
    removetopic $2
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Option Set
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Topic is now $4-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) TOPIC $2 $netconf(system,nickname) $ctime : $+ $remove($read(data/set_topics.txt, s, $2 $+ :),$2 $+ :)
    halt  
  }
  if ($3 == founder) {
    if (!$4) { 
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Incorrect Value
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color SET FOUNDER <nickname>
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      halt
    }
    if (!$readnick($4,nickname)) { 
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  New Founder Isnt Registered
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Sorry $4 isnt registered, please choose another founder
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      halt
    }
    if ($readchan($2,owner) != $1) && (!$readadmin($1,nickname)) {
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Access Denied
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Only the channel registrar can change the founder.
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      halt
    }
    ;change channel founder
    addaccess $4 $2 level 5
    addchan $2 owner $4
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  New Founder Complete
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color  $+ $readchan($2,owner) $+  is the new channel registrar
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($3 == url) {
    if (!$4) { 
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Incorrect Value
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color SET URL <http://url.com>
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      halt
    }
    addchan $2 url $4-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Option Set
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Channel URL is now $4
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($3 == trigger) {
    if (!$4) { 
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Incorrect Value
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color SET TRIGGER <character>
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      halt
    }
    addchan $2 char $4
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Option Set
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Public command trigger is now $4
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($3 == modes) {
    if (!$4) { 
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Incorrect Value
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color SET MODES <+-a-z>
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      halt
    }
    if ($4 != clear) { addchan $2 modes +r $+ $4 | .sockwrite -tn serv $+(:,$netconf(system,nickname)) MODE $2 $readchan($2,modes) }
    if ($4 == clear) { addchan $2 modes +r | .sockwrite -tn serv $+(:,$netconf(system,nickname)) MODE $2 -ijklmpszAMOR }
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Option Set
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Channel Modes Are Now  $4
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($3 == inchan) {
    if (!$readadmin($1,nickname)) {
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  IRCop Only Function
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color You do not have access to use SET INCHAN
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Please ask an IRC operator /msg SysOp IRCOPS
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      halt
    }

    if ($4 != on) && ($4 != off) { 
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Incorrect Value
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Valid values are: on/off
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      halt
    }
    if ($4 == on) { 
      if ($readchan($2,inchan) == on) {
        sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
        sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Cannot Complete
        sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color I am already in the channel and inchan is set ON
        sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
        halt
      }
      addchan $2 inchan on 
      sysjoin $2
    }
    if ($4 == off) {
      if (!$readchan($2,inchan)) {
        sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
        sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Cannot Complete
        sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Im not in that channel and inchan is set OFF
        sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
        halt
      }
      addchan $2 inchan off 
      syspart $2 Inchan Off
    }
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Option Set
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Inchan is now $lower($4)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($3 == suspend) {
    if (!$readadmin($1,nickname)) {
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  IRCop Only Function
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color You do not have access to use SET SUSPEND
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Please ask an IRC operator /msg SysOp IRCOPS
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      halt
    }

    if ($4 != off) && (!$4) { 
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Incorrect Value
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Valid values are: off/message to users
      sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
      halt
    }
    if ($4 == off) { 
      addchan $2 inchan on 
      remini data/channels.db $2 suspended
      sysjoin $2
      halt
    }
    if ($4 != off) {
      addchan $2 inchan off 
      addchan $2 suspended $4-
      syspart $2 Suspended By $1
    }
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Option Set
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Suspend is now $lower($4)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Incorrect SET option
  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color See  $+ /msg $netconf(system,nickname) HELP SET
  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
  halt
}
alias system.userlist {
  if (!$addy($1)) { 
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,3)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$2) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Channel name required
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$readchan($2,channel)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Channel $2 is not registered
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color For help regarding registration /msg $netconf(system,nickname) HELP CHANREG
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($readchan($2,suspended)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $2 is currently suspended by admin, 
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Reason: $readchan($2,suspended)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$readaccess($addy($1),$2,level)) && (!$readadmin($1,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,4)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  } 
  if ($readaccess($addy($1),$2,level) < $netconf(chanlevel,ulist)) && (!$readadmin($1,nickname)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,2)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,channel,4).
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  } 
  ;displaying user lists
  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $2 $lang($1,channel,userlist)
  var %x = 1
  while ($ini(data/access/level.db,%x)) {
    if ($readison($2,$ini(data/access/level.db,%x)) == ison) {
      if ($axs.levels.name($readaccess($ini(data/access/level.db,%x),$2,level)) == Owner) {  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,levels,Owner)     : $+ $readaccess($ini(data/access/level.db,%x),$2,level) $+ : [12here $+ ] $ini(data/access/level.db,%x) }
      inc %x
    }
    else {
      if ($axs.levels.name($readaccess($ini(data/access/level.db,%x),$2,level)) == Owner) {  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,levels,Owner)     : $+ $readaccess($ini(data/access/level.db,%x),$2,level) $+ : $ini(data/access/level.db,%x) }
      inc %x
    }

  }
  var %x = 1
  while ($ini(data/access/level.db,%x)) {
    if ($readison($2,$ini(data/access/level.db,%x)) == ison) {
      if ($axs.levels.name($readaccess($ini(data/access/level.db,%x),$2,level)) == Co-Owner) {  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,levels,Co-Owner)  : $+ $readaccess($ini(data/access/level.db,%x),$2,level) $+ : [12here $+ ] $ini(data/access/level.db,%x) }    
      inc %x
    }
    else {
      if ($axs.levels.name($readaccess($ini(data/access/level.db,%x),$2,level)) == Co-Owner) {  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,levels,Co-Owner)  : $+ $readaccess($ini(data/access/level.db,%x),$2,level) $+ : $ini(data/access/level.db,%x) }    
      inc %x
    }
  }
  var %x = 1
  while ($ini(data/access/level.db,%x)) {
    if ($readison($2,$ini(data/access/level.db,%x)) == ison) {
      if ($axs.levels.name($readaccess($ini(data/access/level.db,%x),$2,level)) == Operator) {  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,levels,Operator)  : $+ $readaccess($ini(data/access/level.db,%x),$2,level) $+ : [12here $+ ] $ini(data/access/level.db,%x) }
      inc %x
    }
    else {
      if ($axs.levels.name($readaccess($ini(data/access/level.db,%x),$2,level)) == Operator) {  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,levels,Operator)  : $+ $readaccess($ini(data/access/level.db,%x),$2,level) $+ : $ini(data/access/level.db,%x) }
      inc %x
    }
  }
  var %x = 1
  while ($ini(data/access/level.db,%x)) {
    if ($readison($2,$ini(data/access/level.db,%x)) == ison) {
      if ($axs.levels.name($readaccess($ini(data/access/level.db,%x),$2,level)) == Friend) {  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,levels,Friend)    : $+ $readaccess($ini(data/access/level.db,%x),$2,level) $+ : [12here $+ ] $ini(data/access/level.db,%x) }
      inc %x
    }
    else {
      if ($axs.levels.name($readaccess($ini(data/access/level.db,%x),$2,level)) == Friend) {  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,levels,Friend)    : $+ $readaccess($ini(data/access/level.db,%x),$2,level) $+ : $ini(data/access/level.db,%x) }
      inc %x
    }
  }
  var %x = 1
  while ($ini(data/access/level.db,%x)) {
    if ($axs.levels.name($readaccess($ini(data/access/level.db,%x),$2,level)) == Lamer) {  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $lang($1,levels,Lamer)     : $+ $readaccess($ini(data/access/level.db,%x),$2,level) $+ : $ini(data/access/level.db,%x) }   
    inc %x
  }
  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,enduserlist)
  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
}

alias system.chaninfo {
  if (!$2) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Channel name required
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if (!$readchan($2,channel)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Channel $2 is not registered
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color For help regarding registration /msg $netconf(system,nickname) HELP CHANREG
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  if ($readchan($2,suspended)) {
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  $lang($1,channel,1)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $2 is currently suspended by admin, 
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Reason: $readchan($2,suspended)
    sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
    halt
  }
  ;display channel info
  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color $+  Viewing 12 $+ $2 $+  information
  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Registrar    : $readchan($2,owner)
  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Date Created : $asctime($readchan($2,datereg))
  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Channel URL  : $readchan($2,url)
  var %x = 1
  var %owners = 0
  while ($ini(data/access/level.db,%x)) {
    if ($axs.levels.name($readaccess($ini(data/access/level.db,%x),$2,level)) == Owner) { inc %owners }
    inc %x
  }
  var %x = 1
  var %coowners = 0
  while ($ini(data/access/level.db,%x)) {
    if ($axs.levels.name($readaccess($ini(data/access/level.db,%x),$2,level)) == Co-Owner) { inc %coowners }
    inc %x
  }
  var %x = 1
  var %ops = 0
  while ($ini(data/access/level.db,%x)) {
    if ($axs.levels.name($readaccess($ini(data/access/level.db,%x),$2,level)) == Operator) { inc %ops }
    inc %x
  }
  var %x = 1
  var %friends = 0
  while ($ini(data/access/level.db,%x)) {
    if ($axs.levels.name($readaccess($ini(data/access/level.db,%x),$2,level)) == Friend) { inc %friends }
    inc %x
  }
  var %x = 1
  var %lamers = 0
  while ($ini(data/access/level.db,%x)) {
    if ($axs.levels.name($readaccess($ini(data/access/level.db,%x),$2,level)) == Lamer) { inc %lamers }
    inc %x
  }
  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Owners       : %owners
  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Co-Owners    : %coowners
  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Operators    : %ops
  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Friends      : %friends
  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 : $+ %color Lamers       : %lamers
  sockwrite -tn serv $+(:,$netconf(system,nickname)) NOTICE $1 :-
  halt
}