diff --git a/inc/functions.php b/inc/functions.php index 8d6e0a2d..40a2c1fe 100644 --- a/inc/functions.php +++ b/inc/functions.php @@ -654,6 +654,16 @@ function checkBan($board = 0) { displayBan($ban); } + + // I'm not sure where else to put this. It doesn't really matter where; it just needs to be called every now and then to keep the ban list tidy. + purge_bans(); +} + +// No reason to keep expired bans in the database (except those that haven't been viewed yet) +function purge_bans() { + $query = prepare("DELETE FROM `bans` WHERE `expires` IS NOT NULL AND `expires` < :time AND `seen` = 1"); + $query->bindValue(':time', time()); + $query->execute() or error(db_error($query)); } function threadLocked($id) { diff --git a/templates/mod/ban_list.html b/templates/mod/ban_list.html index 2edb9cdf..f8826ade 100644 --- a/templates/mod/ban_list.html +++ b/templates/mod/ban_list.html @@ -10,6 +10,7 @@ {% trans 'Set' %} {% trans 'Duration' %} {% trans 'Expires' %} + {% trans 'Seen' %} {% trans 'Staff' %} {% for ban in bans %} @@ -58,6 +59,13 @@ {% endif %} {% endif %} + + {% if ban.seen %} + {% trans 'Yes' %} + {% else %} + {% trans 'No' %} + {% endif %} + {% if ban.username %} {% if mod|hasPermission(config.mod.view_banstaff) %} diff --git a/templates/mod/view_ip.html b/templates/mod/view_ip.html index 562a0140..e2dad7af 100644 --- a/templates/mod/view_ip.html +++ b/templates/mod/view_ip.html @@ -136,6 +136,16 @@ {% endif %} + + {% trans 'Seen' %} + + {% if ban.seen %} + {% trans 'Yes' %} + {% else %} + {% trans 'No' %} + {% endif %} + + {% trans 'Staff' %}