Skip to content

Commit 4eedcdd

Browse files
authored
Bypass when command not in script
1 parent def90a4 commit 4eedcdd

File tree

1 file changed

+10
-4
lines changed

1 file changed

+10
-4
lines changed

tcl/anope.tcl

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ set CS_ARGS "vop|hop|aop <add|del> nick \[#channel\]"
3131

3232
set CS_ADESC "Alias for chanserv"
3333

34-
34+
set CS_ACTIONS {"vop" "hop" "aop"}
3535
::weechat::register $SCRIPT_NAME {CrazyCat <[email protected]>} $SCRIPT_VERSION GPL3 $SCRIPT_SUMMARY {} {}
3636
::weechat::hook_command cs $SCRIPT_SUMMARY $CS_ARGS $CS_ADESC {\
3737
vop add|del %(nicks) %(irc_server_channels)\
@@ -68,7 +68,7 @@ proc anope_setup {} {
6868
}
6969

7070
proc global_msg {data buffer args} {
71-
lassign server schannel [buffer2sc $buffer]
71+
lassign [buffer2sc $buffer] server schannel
7272
if {$server eq $::weechat::WEECHAT_RC_ERROR} {
7373
return $::weechat::WEECHAT_RC_ERROR
7474
}
@@ -77,11 +77,16 @@ proc global_msg {data buffer args} {
7777
}
7878

7979
proc cs_op {data buffer args} {
80-
lassign server schannel [buffer2sc $buffer]
80+
lassign [buffer2sc $buffer] server schannel
8181
if {$server eq $::weechat::WEECHAT_RC_ERROR} {
8282
return $::weechat::WEECHAT_RC_ERROR
8383
}
8484
lassign {*}$args csact csflag nick channel
85+
if {$csact ni $::CS_ACTIONS} {
86+
# bypass for unknown actions
87+
::weechat::command "" "/msg [::weechat::config_get_plugin "${server}.chanserv"] [join $args]"
88+
return $::weechat::WEECHAT_RC_OK
89+
}
8590
if {$channel eq ""} {
8691
set channel $schannel
8792
}
@@ -101,13 +106,14 @@ proc buffer2sc { buffer } {
101106
set sc [split [::weechat::buffer_get_string $buffer "localvar_name"] {.}]
102107
}
103108
server {
104-
set sc {[::weechat::buffer_get_string $buffer "localvar_channel"] ""}
109+
set sc [list [::weechat::buffer_get_string $buffer "localvar_channel"] ""]
105110
}
106111
default {
107112
::weechat::print $buffer "Sorry but you need to be in a server or a channel to use this command"
108113
return $::weechat::WEECHAT_RC_ERROR
109114
}
110115
}
116+
return $sc
111117
}
112118

113119
anope_setup

0 commit comments

Comments
 (0)