# coding: utf8 import json import shutil import WGDBus import Activity import fsio import logConfig import status_mod # Fake globals for syntax check import notify_activity import sys_capabilities if False: response = None request = None session = None db = None GUI_CFG_FILENAME = '/home/tool/config/guiconfig.json' status_mod.sessionUserMgr.setLastVisit(session, request) if logConfig.guiSetSessFrgt: session.forget(response) @auth.requires(request.ajax==True, requires_login=True) def cfg(): if request.env.request_method == "GET": res = fsio.jsonload(GUI_CFG_FILENAME) res['view']['MainMenu']['entries'] = [item for item in res['view']['MainMenu']['entries'] if item['state'] != 'testview'] return response.json(res) if request.env.request_method == "POST": olddata = fsio.jsonload(GUI_CFG_FILENAME) old_laserwarning = olddata.get('global').get('laserwarning') data = json.loads(request.body.read()) laserwarning = data.get('global').get('laserwarning') if old_laserwarning is not laserwarning: Activity.LOG(session, Activity.GUI_LASERWARNING_CHANGED, str(laserwarning).lower()) data['view']['MainMenu']['entries'] = [item for item in data['view']['MainMenu']['entries'] if item['state'] != 'testview'] fsio.jsondump_sorted(GUI_CFG_FILENAME, data) notify_activity.configChanged(GUI_CFG_FILENAME, Activity.GUI_SETTINGS_CHANGED, session=session) return response.json(data) @auth.requires(request.ajax==True, requires_login=True) def resetToFactory(): defaultguiconfig = fsio.jsonload('/home/tool/config/default/guiconfig.json') mustReadLaserWarning = sys_capabilities.hasScanner() defaultguiconfig.get('global')['laserwarning'] = mustReadLaserWarning defaultguiconfig.get('view').get('warning')['forceread'] = mustReadLaserWarning fsio.jsondump_sorted(GUI_CFG_FILENAME, defaultguiconfig) notify_activity.configChanged(GUI_CFG_FILENAME, Activity.GUI_SETTINGS_CHANGED, session=session) return ''