From 7105e749969fdca37925cca66a5bf92f17cb82ed Mon Sep 17 00:00:00 2001 From: Robert Wall Date: Mon, 14 Apr 2014 21:08:43 -0700 Subject: [PATCH] Add Bantracker search option to include or ignore marks. --- Bantracker/cgi/bans.cgi | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/Bantracker/cgi/bans.cgi b/Bantracker/cgi/bans.cgi index c5d1873..1398cde 100755 --- a/Bantracker/cgi/bans.cgi +++ b/Bantracker/cgi/bans.cgi @@ -304,6 +304,7 @@ print '
' makeInput("kicks", "Kicks") makeInput("bans", "Bans") makeInput("oldbans", "Removed bans") +makeInput("marks", "Marks") print '
' print '
' @@ -324,7 +325,7 @@ if not haveQuery: send_page('bans.tmpl') # Select and filter bans -def getBans(id=None, mask=None, kicks=True, oldbans=True, bans=True, floodbots=True, operator=None, +def getBans(id=None, mask=None, kicks=True, oldbans=True, bans=True, marks=True, floodbots=True, operator=None, channel=None, limit=None, offset=0, withCount=False): sql = "SELECT channel, mask, operator, time, removal, removal_op, id FROM bans" args = [] @@ -343,6 +344,8 @@ def getBans(id=None, mask=None, kicks=True, oldbans=True, bans=True, floodbots=T if channel: where.append("channel LIKE %s") args.append(channel) + if not marks: + where.append("id NOT IN (SELECT ban_id FROM comments WHERE comment LIKE '**MARK**%%')") if not kicks: where.append("mask LIKE '%%!%%'") if not (oldbans or bans): @@ -424,6 +427,7 @@ if not bans: bans, ban_count = getBans(mask=query, kicks=isOn('kicks'), oldbans=isOn('oldbans') or isOn('oldmutes'), bans=isOn('bans') or isOn('mutes'), + marks=isOn('marks'), floodbots=isOn('floodbots'), operator=oper, channel=chan,