Fix some mod log errors and make it more durable to future changes.

This commit is contained in:
Ben Rog-Wilhelm 2022-08-27 07:08:20 -05:00 committed by Ben Rog-Wilhelm
parent 74a21234b5
commit de4d923b32
2 changed files with 45 additions and 15 deletions

View file

@ -6,6 +6,7 @@ from files.helpers.lazy import lazy
from os import environ from os import environ
from copy import deepcopy from copy import deepcopy
from files.helpers.const import * from files.helpers.const import *
import logging
class ModAction(Base): class ModAction(Base):
__tablename__ = "modactions" __tablename__ = "modactions"
@ -81,11 +82,18 @@ class ModAction(Base):
def note(self, x): def note(self, x):
self._note=x self._note=x
def lookup_action_type(self):
if self.kind in ACTIONTYPES:
return ACTIONTYPES[self.kind]
else:
logging.warning(f'Unfamiliar ACTIONTYPE {self.kind}')
return ACTIONTYPES["fallback"]
@property @property
@lazy @lazy
def string(self): def string(self):
output = ACTIONTYPES[self.kind]["str"].format(self=self, cc=CC_TITLE) output = self.lookup_action_type()["str"].format(self=self, cc=CC_TITLE)
if self.note: output += f" <i>({self.note})</i>" if self.note: output += f" <i>({self.note})</i>"
@ -103,12 +111,12 @@ class ModAction(Base):
@property @property
@lazy @lazy
def icon(self): def icon(self):
return ACTIONTYPES[self.kind]['icon'] return self.lookup_action_type()['icon']
@property @property
@lazy @lazy
def color(self): def color(self):
return ACTIONTYPES[self.kind]['color'] return self.lookup_action_type()['color']
@property @property
@lazy @lazy
@ -176,27 +184,32 @@ ACTIONTYPES = {
"icon": 'fa-flag', "icon": 'fa-flag',
"color": 'bg-danger' "color": 'bg-danger'
}, },
'disable_Bots': { 'disabled_Bots': {
"str": 'disabled Bots', "str": 'disabled Bots',
"icon": 'fa-robot', "icon": 'fa-robot',
"color": 'bg-danger' "color": 'bg-danger'
}, },
'disable_Fart mode': { 'disabled_Fart_mode': {
"str": 'disabled fart mode', "str": 'disabled fart mode',
"icon": 'fa-gas-pump-slash', "icon": 'fa-gas-pump-slash',
"color": 'bg-danger' "color": 'bg-danger'
}, },
'disable_Read-only mode': { 'disabled_FilterNewPosts': {
"str": 'disabled filter new posts',
"icon": 'fa-filter',
"color": 'bg-danger'
},
'disabled_Read-only_mode': {
"str": 'disabled readonly mode', "str": 'disabled readonly mode',
"icon": 'fa-book', "icon": 'fa-book',
"color": 'bg-danger' "color": 'bg-danger'
}, },
'disable_Signups': { 'disabled_Signups': {
"str": 'disabled Signups', "str": 'disabled Signups',
"icon": 'fa-users', "icon": 'fa-users',
"color": 'bg-danger' "color": 'bg-danger'
}, },
'disable_under_attack': { 'disabled_under_attack': {
"str": 'disabled under attack mode', "str": 'disabled under attack mode',
"icon": 'fa-shield', "icon": 'fa-shield',
"color": 'bg-muted' "color": 'bg-muted'
@ -226,27 +239,32 @@ ACTIONTYPES = {
"icon": 'fa-edit', "icon": 'fa-edit',
"color": 'bg-primary' "color": 'bg-primary'
}, },
'enable_Bots': { 'enabled_Bots': {
"str": 'enabled Bots', "str": 'enabled Bots',
"icon": 'fa-robot', "icon": 'fa-robot',
"color": 'bg-success' "color": 'bg-success'
}, },
'enable_Fart mode': { 'enabled_Fart_mode': {
"str": 'enabled fart mode', "str": 'enabled fart mode',
"icon": 'fa-gas-pump', "icon": 'fa-gas-pump',
"color": 'bg-success' "color": 'bg-success'
}, },
'enable_Read-only mode': { 'enabled_FilterNewPosts': {
"str": 'enabled filter new posts',
"icon": 'fa-filter',
"color": 'bg-success'
},
'enabled_Read-only_mode': {
"str": 'enabled readonly mode', "str": 'enabled readonly mode',
"icon": 'fa-book', "icon": 'fa-book',
"color": 'bg-success' "color": 'bg-success'
}, },
'enable_Signups': { 'enabled_Signups': {
"str": 'enabled Signups', "str": 'enabled Signups',
"icon": 'fa-users', "icon": 'fa-users',
"color": 'bg-success' "color": 'bg-success'
}, },
'enable_under_attack': { 'enabled_under_attack': {
"str": 'enabled under attack mode', "str": 'enabled under attack mode',
"icon": 'fa-shield', "icon": 'fa-shield',
"color": 'bg-success' "color": 'bg-success'
@ -410,6 +428,12 @@ ACTIONTYPES = {
"str": 'unshadowbanned {self.target_link}', "str": 'unshadowbanned {self.target_link}',
"icon": 'fa-eye', "icon": 'fa-eye',
"color": 'bg-success' "color": 'bg-success'
},
'fallback': {
"str": 'unfamiliar action type, please report',
"icon": 'fa-robot',
"color": 'bg-muted'
} }
} }

View file

@ -9,6 +9,7 @@ import calendar
import matplotlib.pyplot as plt import matplotlib.pyplot as plt
from files.classes.mod_logs import ACTIONTYPES, ACTIONTYPES2 from files.classes.mod_logs import ACTIONTYPES, ACTIONTYPES2
from files.classes.badges import BadgeDef from files.classes.badges import BadgeDef
import logging
@app.get('/logged_out/') @app.get('/logged_out/')
@app.get('/logged_out/<path:old>') @app.get('/logged_out/<path:old>')
@ -224,8 +225,13 @@ def log(v):
kind = request.values.get("kind") kind = request.values.get("kind")
if v and v.admin_level > 1: types = ACTIONTYPES if kind not in ACTIONTYPES:
else: types = ACTIONTYPES2 logging.warning(f'Unfamiliar ACTIONTYPE {kind}')
if v and v.admin_level > 1:
types = ACTIONTYPES
else:
types = ACTIONTYPES2
if kind not in types: kind = None if kind not in types: kind = None