Elián Hanisch
44cd80515d
list the ids of bans set to expire if no id is given to @baninfo
2012-07-27 16:03:15 -03:00
Elián Hanisch
e979e864db
use a interval of 10 min between ban removal checks instead of one minute. This way bans with close expire dates are more likely to be removed with a single MODE command.
2012-07-27 13:45:37 -03:00
Elián Hanisch
2f1a087faf
set ban duration with @comment command, also allow multiple ban ids
...
example:
@comment 1,2 this is a comment, 1 week
2012-07-27 00:50:25 -03:00
Elián Hanisch
3c7eff0f70
allow setting multiple bans with one command.
2012-07-18 21:34:49 -03:00
Elián Hanisch
909d56d704
merge multiple mode messages into one (4 modes max)
2012-07-15 22:28:38 -03:00
Elián Hanisch
6640435520
make @baninfo display time in human readable format, instead of number of seconds.
2012-07-15 21:15:06 -03:00
Elián Hanisch
401e5ae5d4
fix @baninfo, inform if the ban is inactive
2012-07-15 21:06:23 -03:00
Elián Hanisch
c283e6b924
add a simple @baninfo command for check when a ban expires.
2012-07-13 13:45:37 -03:00
Elián Hanisch
bf93f42503
add some colors in the notification message.
2012-07-05 20:40:57 -03:00
Elián Hanisch
c90821186e
fix extbans
2012-07-05 19:36:13 -03:00
Elián Hanisch
b8225fd507
fix previous commit, Ban objects are never going to be of other type than ban and quiet.
2012-07-05 19:24:49 -03:00
Elián Hanisch
800a228d92
banremove should only work with bans or quiets.
2012-07-05 19:12:38 -03:00
Elián Hanisch
4d5ea85544
fix autoremoving quiets
2012-07-05 19:08:44 -03:00
Elián Hanisch
e3dd878cf3
save ban autoremoval information in a csv files, so it isn't lost during plugin reloads.
2012-07-05 02:31:53 -03:00
Elián Hanisch
e3f6aacdf5
added configuration options:
...
* supybot.plugins.Bantracker.autoremove
* supybot.plugins.Bantracker.autoremove.notify
* supybot.plugins.Bantracker.autoremove.notify.channels
2012-07-04 22:12:55 -03:00
Elián Hanisch
87f61b1654
send notifications when ban are about to expire (notification channel hardcoded to #test)
2012-07-04 21:35:07 -03:00
Elián Hanisch
1e92a7002a
debug line I forgot to delete.
2012-07-04 21:21:46 -03:00
Elián Hanisch
011a0859a0
refactored readTimeDelta function.
2012-07-04 19:49:38 -03:00
Elián Hanisch
30c78107af
added FuzzyDict class, gives a more flexible matching of the time units.
2012-07-04 19:36:19 -03:00
Elián Hanisch
a3266bc1de
@banremoval command now accepts time in different units, such as "2 weeks", "1 month", "24h" and so on.
...
The units are: minutes, hours, days, weeks, months and years. One letter shortcuts allowed.
2012-07-04 19:23:37 -03:00
Elián Hanisch
3e584e6880
add 'banremove' command for set expire time of bans.
2012-07-04 00:22:53 -03:00
Elián Hanisch
912cc8490c
send -b/-q messages when ban/quiet expires
2012-06-27 01:14:51 -03:00
Elián Hanisch
57c349aace
Start hack for the ban autoremoval feature:
...
* BanRemoval class that keeps data about bans that expires.
* BanStore class for store BanRemoval objects
* testBanAutoRemove testcase
right now it doesn't do much.
2012-06-25 19:40:09 -03:00
Elián Hanisch
a08559a758
Fix spurious testcase fail, sometimes seconds didn't match.
2012-06-25 19:35:42 -03:00
Elián Hanisch
5ffcf6511a
some refactoing.
...
* added Ban.type property
* PersistentCache renamed to ReviewStore and made it work more like defaultdict.
2012-06-25 19:30:11 -03:00
Terence Simpson
bed505399f
Don't just give up if an SQL operation throws an error; try, try, try again... and then some
2011-08-26 07:48:13 +01:00
Elián Hanisch
ed91a8a426
bantracker: When joining a channel, discard the ban list for that channel.
2011-06-18 23:14:35 -03:00
Elián Hanisch
8d61d972fd
bantracker: remove an useless extra search
2011-06-18 22:43:43 -03:00
Elián Hanisch
a9a111b8e6
Bantracker: Don't duplicate bans if for some reason the bot request a ban list.
...
Only sort bans when the ban list is over.
2011-06-18 22:39:16 -03:00
Elián Hanisch
af068e2f91
Bantracker: when unbanning, if there was a problem reading the db,
...
bt would fail to remove the ban from self.bans.
2011-06-18 22:32:04 -03:00
Elián Hanisch
0a435b668c
Bantracker: don't re-add bans that are out of sync into self.bans
2011-06-18 16:27:51 -03:00
Elián Hanisch
62936a986c
bantracker: forgot about extbans.
2011-05-31 19:55:38 -03:00
Elián Hanisch
d0d7fe616a
bantracker: HACK assume bans with exact mask are marks, so they won't get a review.
2011-05-31 19:43:45 -03:00
Elián Hanisch
e69ac691c6
Bantracker: trim messages so they are more to the point.
2011-05-31 03:39:28 -03:00
Elián Hanisch
f71a3c9929
Bantracker: ignore reviews for bans with a #ubuntu-read-topic forward.
2011-05-31 03:15:58 -03:00
Elián Hanisch
638ccf7b47
Bantracker: strip '%' from quiets in the string that's send to channels/nicks.
2011-05-31 01:45:05 -03:00
Elián Hanisch
223c3f9229
Bantracker: add separate configs so comment request, and review requests,
...
can be configured independently.
2011-05-29 19:22:34 -03:00
Elián Hanisch
46d07b8095
bantracker: add options --verbose --view and --flush to banreview command.
...
intended for manually fix the review queue when the bot messes up.
2011-05-29 19:21:27 -03:00
Elián Hanisch
5ed4e67b07
forgot to remove these debug lines.
2010-10-24 03:25:40 -03:00
Elián Hanisch
21c041631f
workaround, remove duplicate reviews before sending any.
2010-10-24 03:13:43 -03:00
Terence Simpson
ad7a493262
Update copyright/license/author/contributors information
...
Make sure all files have encoding set to utf-8 unless they already have an encoding
Added COPYING with contense of GPL-2
Added plugin name prefix to all log output. This should take the form of self.log.severity("Plugin: message"),
when not logging from plugin.py use: "Plugin/file_without_dot_py: message"
Bantracker: Made the confgure() function do something, it also creates an initial database if it doesn't exist
Encyclopedia: Made the configure() function do something, it also creates an initial database if it doesn't exist
PackageInfo: Improve the configure() function, it also now creates some initial .list files and prompts to run update_apt and update_apt_file
This goes some way to getting an "ubottu" package together, all we need to do is patch supybot-wizard to download the plugins
from bzr and put them somewhere supybot will see them, then the wizard will do all the initial setup
2010-05-24 14:38:06 +01:00
Terence Simpson
b6465cc8bb
Don't fetch bans/nicks for channels where Bantracker is disabled
2010-05-22 09:11:37 +01:00
Elián Hanisch
a162404aec
Bantracker: try to re-connect to the db if for some reason it didn't connect
...
or got closed.
2010-05-14 13:17:40 -03:00
Elián Hanisch
42a64c4c18
Bantracker: Don't enqueue ban reviews already in queue. Testcase updated.
2010-05-14 00:09:50 -03:00
Elián Hanisch
e5801cf105
merge with devel
2010-04-26 17:37:37 -03:00
Elián Hanisch
bb6c417989
fix error handling on cursor.execute
...
the previous code seemed to try 5 times before giving up, except that
it wasn't inside any loop, so it only tried once and there was no error msg.
Now at least log that there was an error.
2010-04-20 10:27:46 -03:00
Terence Simpson
9d99263232
Fix some IndexErrors
2010-04-20 12:27:35 +01:00
Terence Simpson
2a0e6a1f1a
fix check_auth
2010-04-13 05:11:15 +01:00
Elián Hanisch
7538da2329
fix request ignores, It was matching against full hostmask instead of nick.
...
New testcase: testCommentIgnore
2010-04-12 23:02:07 -03:00
Terence Simpson
02f95832db
Don't recognise /remove as a kick and fix hostmaskPatternEqual for 'new' ban-forward syntax
2010-04-13 01:24:45 +01:00