Commit Graph

137 Commits

Author SHA1 Message Date
Elián Hanisch 8205738099 refactor bot replies. 2012-07-29 23:36:18 -03:00
Elián Hanisch d241665208 don't ignore extra words prefixed to the duration in @comment or @duration 2012-07-27 23:12:35 -03:00
Elián Hanisch 846667faf2 refactoring replies a bit. 2012-07-27 21:44:29 -03:00
Elián Hanisch dfd9bdf633 fix bug when using @comment with a comma but bad duration syntax. 2012-07-27 21:08:25 -03:00
Elián Hanisch 02e5f2aa10 Remove @baninfo. Ban information is fetched with @duration now. 2012-07-27 19:21:21 -03:00
Elián Hanisch 2e3506c9bd rename the command 'banremove' to 'duration' 2012-07-27 16:09:05 -03:00
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