I have finally created a Oper Dialog for those who don't know everything about UnrealIRCd 3.2.x and Anope 1.8.x. Please make sure that you are a oper otherwise you will have errors in your status window due to not having the correct permissions for these commands.
menu * {
-
Oper Panel:/dialog -md Panel Panel
-
}
Alias Panel {
dialog -md Panel Panel
}
dialog Panel {
size -10 -1 240 225
option dbu
tab "Server", 1, 0 0 245 240
tab "Services", 2, 0 0 245 240
title "mIRC Oper Panel"
box "Server Chat" 3, 2 20 235 45, tab 1
button "WallOps" 4, 5 30 30 10, tab 1
button "ChatOps" 5, 35 30 30 10, tab 1
button "GlobalOps" 6, 65 30 30 10, tab 1
button "LocalOps" 7, 95 30 30 10, tab 1
button "Adminstators" 8, 125 30 45 10, tab 1
button "Network Administrators" 9, 170 30 65 10, tab 1
text "Message:" 10, 5 40 30 10, tab 1
edit "" 11, 5 50 230 10, tab 1 autohs
box "Network/Server Banning" 12, 2 70 235 65, tab 1
button "Kill" 16, 5 80 40 10, tab 1
button "24 Hour G:Line" 17, 5 90 40 10, tab 1
button "30 Day G:Line" 18, 5 100 40 10, tab 1
button "AKill" 19, 45 80 40 10, tab 1
button "Shun" 20, 45 90 40 10, tab 1
button "Z:Line" 21, 5 120 40 10, tab 1
button "K:Line" 22, 5 110 40 10, tab 1
button "G:Line" 23, 45 110 40 10, tab 1
button "GZ:Line" 24, 45 100 40 10, tab 1
Text "Nickname:" 25, 90 80 40 10, tab 1
edit "" 26, 90 90 60 10, tab 1 autohs
text "Reason:" 27, 90 102 30 10, tab 1
edit "No Reason." 28, 90 112 60 10, tab 1 autohs
text "Length of Ban:" 29, 165 80 50 10, tab 1
edit "24h" 30, 165 90 40 10, tab 1 autohs
box "Override Access" 31, 2 140 235 50, tab 1
button "Owner" 32, 8 147 30 10, tab 1
button "DeOwner" 33, 8 157 30 10, tab 1
button "Admin" 34, 38 147 30 10, tab 1
button "DeAdmin" 35, 38 157 30 10, tab 1
button "Op" 36, 68 147 30 10, tab 1
button "DeOp" 37, 68 157 30 10, tab 1
button "HalfOp" 38, 98 147 30 10, tab 1
button "DeHalfOp" 39, 98 157 30 10, tab 1
button "Voice" 40, 128 147 30 10, tab 1
button "DeVoice" 41, 128 157 30 10, tab 1
Text "Nickname:" 42, 160 149 25 10, tab 1
edit "" 43, 185 147 50 10, tab 1 autohs
text "Channel:" 44, 160 159 25 10, tab 1
edit "#" 45, 185 159 50 10, tab 1 autohs
button "SAJoin" 46, 8 167 30 10, tab 1
button "SAPart" 47, 38 167 30 10, tab 1
button "SAMode" 48, 68 167 30 10, tab 1
button "SVSNick" 49, 98 167 30 10, tab 1
Text "New Nickname/Host/Ident/Modes:" 50, 100 179 85 10, tab 1
edit "" 51, 185 177 50 10, tab 1 autohs
button "ChgIdent" 52, 8 177 30 10, tab 1
button "ChgHost" 53, 38 177 30 10, tab 1
button "ChgName" 54, 68 177 30 10, tab 1
box "Server Tools" 55, 2 195 235 25, tab 1
button "Rehash" 56, 8 205 30 10, tab 1
button "Restart" 57, 38 205 30 10, tab 1
button "Die" 58, 68 205 30 10, tab 1
Text "Password:" 59, 100 206 25 10, tab 1
edit "" 60, 127 205 50 10, tab 1 autohs
box "NickServ Control" 61, 2 20 235 40, tab 2
button "GetPass" 62, 8 28 30 10, tab 2
button "GetEmail" 63, 38 28 30 10, tab 2
button "Suspend" 64, 68 28 30 10, tab 2
button "UnSuspend" 65, 98 28 30 10, tab 2
button "OInfo" 66, 128 28 30 10, tab 2
Text "Nickname:" 68, 8 41 25 10, tab 2
edit "" 69, 33 40 50 10, tab 2 autohs
text "Reason:" 70, 85 41 25 10, tab 2
edit "No Reason." 71, 105 40 50 10, tab 2 autohs
text "Add OInfo:" 72, 158 41 30 10, tab 2
edit "" 73, 185 40 50 10, tab 2 autohs
box "ChanServ Control" 74, 2 60 235 40, tab 2
button "GetPass" 75, 8 70 30 10, tab 2
button "Suspend" 76, 38 70 30 10, tab 2
button "UnSuspend" 77, 68 70 30 10, tab 2
button "Forbid" 78, 98 70 30 10, tab 2
button "OInfo" 79, 128 70 30 10, tab 2
Text "Channel:" 80, 10 84 25 10, tab 2
edit "#" 81, 33 83 50 10, tab 2 autohs
text "Reason:" 82, 85 84 25 10, tab 2
edit "No Reason." 83, 105 83 50 10, tab 2 autohs
text "Add OInfo:" 84, 158 84 30 10, tab 2
edit "" 85, 185 83 50 10, tab 2 autohs
box "HostServ Control" 86, 2 100 235 40, tab 2
button "Set" 87, 8 110 20 10, tab 2
button "SetALL" 88, 28 110 20 10, tab 2
button "Del" 89, 48 110 20 10, tab 2
button "DelALL" 90, 68 110 20 10, tab 2
button "Waiting" 91, 88 110 25 10, tab 2
button "Activate" 92, 113 110 25 10, tab 2
button "Reject" 93, 138 110 25 10, tab 2
Text "Nickname:" 94, 8 126 25 10, tab 2
edit "" 95, 33 125 50 10, tab 2 autohs
text "vHost:" 96, 87 126 25 10, tab 2
edit "vHost.Here" 97, 105 125 50 10, tab 2 autohs
box "BotServ Control" 98, 2 140 235 20, tab 2
button "BotADD" 99, 8 147 22 10, tab 2
button "BotDEL" 100, 30 147 22 10, tab 2
text "Add Bot:" 101, 55 148 30 10, tab 2
edit "Nickname" 102, 78 147 35 10, tab 2 autohs
edit "Ident" 103, 115 147 35 10, tab 2 autohs
edit "Host" 104, 152 147 35 10, tab 2 autohs
edit "Realname" 105, 190 147 35 10, tab 2 autohs
box "OperServ Control" 106, 2 160 235 60, tab 2
button "Staff" 107, 8 170 20 10, tab 2
button "Add Oper" 108, 28 170 30 10, tab 2
button "Del Oper" 109, 58 170 30 10, tab 2
button "Add Admin" 110, 88 170 30 10, tab 2
button "Del Admin" 111, 118 170 30 10, tab 2
button "ClearModes" 112, 148 170 35 10, tab 2
button "ChanList" 113, 183 170 25 10, tab 2
button "UserList" 114, 208 170 25 10, tab 2
Text "Nickname:" 115, 8 210 25 10, tab 2
edit "" 116, 33 208 50 10, tab 2 autohs
text "Channel:" 117, 85 210 25 10, tab 2
edit "#" 118, 108 208 40 10, tab 2 autohs
text "Server:" 119, 150 210 25 10, tab 2
edit "irc." 120, 170 208 50 10, tab 2 autohs
button "NOOP" 121, 8 180 25 10, tab 2
button "Jupe" 122, 33 180 25 10, tab 2
button "Reload" 123, 58 180 25 10, tab 2
button "Restart" 124, 83 180 25 10, tab 2
button "Quit" 125, 108 180 20 10, tab 2
button "Shutdown" 126, 128 180 30 10, tab 2
button "ChanKill" 127, 158 180 25 10, tab 2
button "ModList" 128, 183 180 25 10, tab 2
button "Revoke NOOP" 129, 8 190 45 10, tab 2
}
on 1:dialog:Panel:sclick:4: {
wallops %server.chat
}
on 1:dialog:Panel:sclick:5: {
chatops %server.chat
}
on 1:dialog:Panel:sclick:6: {
globops %server.chat
}
on 1:dialog:Panel:sclick:7: {
locops %server.chat
}
on 1:dialog:Panel:sclick:8: {
adchat %server.chat
}
on 1:dialog:Panel:sclick:9: {
nachat %server.chat
}
on 1:dialog:Panel:edit:11: {
if ($did(11).text == $null) { unset %server.chat }
set %server.chat $did(11).text
}
on 1:dialog:Panel:sclick:16:{
kill %nickname %reason
}
on 1:dialog:Panel:sclick:17:{
gline %nickname 86400 %reason
}
on 1:dialog:Panel:sclick:18:{
gline %nickname 30d %reason
}
on 1:dialog:Panel:sclick:19:{
akill %nickname %reason
}
on 1:dialog:Panel:sclick:20:{
shun %nickname %reason
}
on 1:dialog:Panel:sclick:21:{
zline %nickname %time %reason
}
on 1:dialog:Panel:sclick:22:{
kline %nickname %time %reason
}
on 1:dialog:Panel:sclick:23:{
gline %nickname %time %reason
}
on 1:dialog:Panel:sclick:24:{
gzline %nickname %time %reason
}
on 1:dialog:Panel:edit:26: {
if ($did(26).text == $null) { unset %nickname }
set %nickname $did(26).text
}
on 1:dialog:Panel:edit:28: {
if ($did(28).text == $null) { unset %reason }
set %reason $did(28).text
}
on 1:dialog:Panel:edit:30: {
if ($did(30).text == $null) { unset %time }
set %time $did(30).text
}
on 1:dialog:Panel:sclick:32:{
mode %channel +q %nickname
}
on 1:dialog:Panel:sclick:33:{
mode %channel -q %nickname
}
on 1:dialog:Panel:sclick:34:{
mode %channel +a %nickname
}
on 1:dialog:Panel:sclick:35:{
mode %channel -a %nickname
}
on 1:dialog:Panel:sclick:36:{
mode %channel +o %nickname
}
on 1:dialog:Panel:sclick:37:{
mode %channel -o %nickname
}
on 1:dialog:Panel:sclick:38:{
mode %channel +h %nickname
}
on 1:dialog:Panel:sclick:39:{
mode %channel -h %nickname
}
on 1:dialog:Panel:sclick:40:{
mode %channel +v %nickname
}
on 1:dialog:Panel:sclick:41:{
mode %channel -v %nickname
}
on 1:dialog:Panel:edit:43: {
if ($did(43).text == $null) { unset %nickname }
set %nickname $did(43).text
}
on 1:dialog:Panel:edit:45: {
if ($did(45).text == $null) { unset %channel }
set %channel $did(45).text
}
on 1:dialog:Panel:sclick:46:{
sajoin %nickname %channel
}
on 1:dialog:Panel:sclick:47:{
sapart %nickname %channel
}
on 1:dialog:Panel:sclick:48:{
samode %channel %new
}
on 1:dialog:Panel:sclick:49:{
os svsnick %nickname %new
}
on 1:dialog:Panel:edit:51: {
if ($did(51).text == $null) { unset %new }
set %new $did(51).text
}
on 1:dialog:Panel:sclick:52:{
chgident %nickname %new
}
on 1:dialog:Panel:sclick:53:{
chghost %nickname %new
}
on 1:dialog:Panel:sclick:54:{
chgname %nickname %new
}
on 1:dialog:Panel:sclick:56:{
rehash
}
on 1:dialog:Panel:sclick:57:{
restart %password
}
on 1:dialog:Panel:sclick:58:{
die %password
}
on 1:dialog:Panel:edit:60: {
if ($did(60).text == $null) { Unset %password }
set %password $did(60).text
}
on 1:dialog:Panel:sclick:62:{
ns getpass %nickname
}
on 1:dialog:Panel:sclick:63:{
ns getemail %nickname
}
on 1:dialog:Panel:sclick:64:{
ns suspend %nickname %reason
}
on 1:dialog:Panel:sclick:65:{
ns unsuspend %nickname
}
on 1:dialog:Panel:sclick:66:{
ns oinfo %nickname add %oinfo
}
on 1:dialog:Panel:edit:69: {
if ($did(69).text == $null) { Unset %nickname }
set %nickname $did(69).text
}
on 1:dialog:Panel:edit:71: {
if ($did(71).text == $null) { Unset %reason }
set %reason $did(71).text
}
on 1:dialog:Panel:edit:73: {
if ($did(73).text == $null) { Unset %oinfo }
set %oinfo $did(73).text
}
on 1:dialog:Panel:sclick:75:{
cs getpass %channel
}
on 1:dialog:Panel:sclick:76:{
cs suspend %channel %reason
}
on 1:dialog:Panel:sclick:77:{
cs unsuspend %channel
}
on 1:dialog:Panel:sclick:78:{
cs forbid %channel %reason
}
on 1:dialog:Panel:sclick:79:{
cs oinfo %channel add %oinfo
}
on 1:dialog:Panel:edit:81: {
if ($did(69).text == $null) { Unset %channel }
set %channel $did(69).text
}
on 1:dialog:Panel:edit:83: {
if ($did(71).text == $null) { Unset %reason }
set %reason $did(71).text
}
on 1:dialog:Panel:edit:85: {
if ($did(73).text == $null) { Unset %oinfo }
set %oinfo $did(73).text
}
on 1:dialog:Panel:sclick:87:{
hs set %nickname %vhost
}
on 1:dialog:Panel:sclick:88:{
hs setall %nickname %vhost
}
on 1:dialog:Panel:sclick:89:{
hs del %nickname
}
on 1:dialog:Panel:sclick:90:{
hs delall %nickname
}
on 1:dialog:Panel:sclick:91:{
hs waiting
}
on 1:dialog:Panel:sclick:92:{
hs activate %nickname
}
on 1:dialog:Panel:sclick:93:{
hs reject %nickname
}
on 1:dialog:Panel:edit:95: {
if ($did(95).text == $null) { Unset %nickname }
set %nickname $did(95).text
}
on 1:dialog:Panel:edit:97: {
if ($did(97).text == $null) { Unset %vhost }
set %vhost $did(97).text
}
on 1:dialog:Panel:sclick:99:{
bs bot add %botnick %botident %bothost %botname
}
on 1:dialog:Panel:sclick:100:{
bs bot del %botnick
}
on 1:dialog:Panel:edit:102: {
if ($did(102).text == $null) { Unset %botnick }
set %botnick $did(102).text
}
on 1:dialog:Panel:edit:103: {
if ($did(103).text == $null) { Unset %botident }
set %botident $did(103).text
}
on 1:dialog:Panel:edit:104: {
if ($did(104).text == $null) { Unset %bothost }
set %bothost $did(104).text
}
on 1:dialog:Panel:edit:105: {
if ($did(105).text == $null) { Unset %botname }
set %botname $did(105).text
}
on 1:dialog:Panel:sclick:107:{
os staff
}
on 1:dialog:Panel:sclick:108:{
os oper add %nickname
}
on 1:dialog:Panel:sclick:109:{
os oper del %nickname
}
on 1:dialog:Panel:sclick:110:{
os admin add %nickname
}
on 1:dialog:Panel:sclick:111:{
os admin del %nickname
}
on 1:dialog:Panel:sclick:112:{
os clearmodes %channel
}
on 1:dialog:Panel:sclick:113:{
os chanlist
}
on 1:dialog:Panel:sclick:114:{
os userlist
}
on 1:dialog:Panel:edit:116: {
if ($did(116).text == $null) { Unset %nickname }
set %nickname $did(116).text
}
on 1:dialog:Panel:edit:118: {
if ($did(118).text == $null) { Unset %channel }
set %channel $did(118).text
}
on 1:dialog:Panel:edit:120: {
if ($did(120).text == $null) { Unset %server }
set %server $did(120).text
}
on 1:dialog:Panel:sclick:121:{
os noop set %server
}
on 1:dialog:Panel:sclick:122:{
os jupe %server
}
on 1:dialog:Panel:sclick:123:{
os reload
}
on 1:dialog:Panel:sclick:124:{
os restart
}
on 1:dialog:Panel:sclick:125:{
os quit
}
on 1:dialog:Panel:sclick:126:{
os shutdown
}
on 1:dialog:Panel:sclick:127:{
os chankill %channel
}
on 1:dialog:Panel:sclick:128:{
os modlist
}
on 1:dialog:Panel:sclick:129:{
os noop revoke %server
}
ach thats easy I have it on my script, its a full quarantine using m_uline on unreal. when a user is quarantined they are pulled out of all rooms and then force joined to another.
here is part of the code...
on *:Part:#Quarantine: {
if ($nick == %Abuse) {
svsjoin %abuse #Quarantine
.msg #Quarantine You may not leave $chan While under Quarantine!
}
}
that little peice of course stops them from parting and rejoins them to #quarantine. they cannot join any other channel or change nicks either :P