pep.py/objects/banchoConfig.py

44 lines
1.6 KiB
Python
Raw Normal View History

# TODO: Rewrite this shit
2016-10-02 20:48:14 +00:00
from common import generalUtils
2016-05-18 17:12:46 +00:00
from objects import glob
2016-10-02 20:48:14 +00:00
2016-04-19 17:40:59 +00:00
2016-09-02 15:45:10 +00:00
class banchoConfig:
2016-04-19 17:40:59 +00:00
"""
Class that loads settings from bancho_settings db table
"""
config = {"banchoMaintenance": False, "freeDirect": True, "menuIcon": "", "loginNotification": ""}
def __init__(self, loadFromDB = True):
2016-04-19 17:40:59 +00:00
"""
Initialize a banchoConfig object (and load bancho_settings from db)
loadFromDB -- if True, load values from db. If False, don't load values. Optional.
2016-04-19 17:40:59 +00:00
"""
if loadFromDB:
2016-04-19 17:40:59 +00:00
try:
self.loadSettings()
except:
raise
2016-04-19 17:40:59 +00:00
def loadSettings(self):
"""
(re)load bancho_settings from DB and set values in config array
"""
2016-10-02 20:48:14 +00:00
self.config["banchoMaintenance"] = generalUtils.stringToBool(glob.db.fetch("SELECT value_int FROM bancho_settings WHERE name = 'bancho_maintenance'")["value_int"])
self.config["freeDirect"] = generalUtils.stringToBool(glob.db.fetch("SELECT value_int FROM bancho_settings WHERE name = 'free_direct'")["value_int"])
2016-04-19 17:40:59 +00:00
self.config["menuIcon"] = glob.db.fetch("SELECT value_string FROM bancho_settings WHERE name = 'menu_icon'")["value_string"]
self.config["loginNotification"] = glob.db.fetch("SELECT value_string FROM bancho_settings WHERE name = 'login_notification'")["value_string"]
def setMaintenance(self, maintenance):
2016-04-19 17:40:59 +00:00
"""
Turn on/off bancho maintenance mode. Write new value to db too
maintenance -- if True, turn on maintenance mode. If false, turn it off
2016-04-19 17:40:59 +00:00
"""
self.config["banchoMaintenance"] = maintenance
glob.db.execute("UPDATE bancho_settings SET value_int = %s WHERE name = 'bancho_maintenance'", [int(maintenance)])