== CODE ===
cap = 'muter'
chancap = ircdb.makeChannelCapability(chan, cap)
_global = ircdb.checkCapability(msg.prefix, cap)
_channel = ircdb.checkCapability(msg.prefix, chancap)
self.log.info('%s => isop@%s=%s cap=%s [%s] chancap=%s [%s]', nick, chan, str(isop), cap, str(_global), chan$
if not _global and _channel:
self.log.warning('%s tried to mute on %s without capability [global=%s;channel=%s ]',
msg.prefix, chan, _global, _channel)
=== LOG ===
02:15 <foobario> capabilities
02:15 <obZen> [#supybot,muter]
02:16 <foobario> ^mute #supybot testing
INFO 2010-09-06T02:17:30 supybot foobario => isop@#supybot=False cap=muter [False] chancap=#supybot,muter [True]
WARNING 2010-09-06T02:17:30 supybot foobario!~hiryu@151.16.Azzurra=54D9ECBF tried to mute on #supybot without capability [global=False;channel=True ]
INFO 2010-09-06T02:17:49 su
02:17 <foobario> capabilities
02:17 <obZen> []
INFO 2010-09-06T02:17:30 supybot foobario => isop@#supybot=False cap=muter [False] chancap=#supybot,muter [True]
WARNING 2010-09-06T02:17:30 supybot foobario!~hiryu@151.16.Azzurra=54D9ECBF tried to mute on #supybot without capability [global=False;channel=True ]
INFO 2010-09-06T02:17:49 su