40 lines
1.7 KiB
Python
40 lines
1.7 KiB
Python
class CryptoBoxWebserverSettings:
|
|
'''this is the motherclass of all cbx site settings
|
|
|
|
put the stuff in here, that every site will need access to'''
|
|
|
|
def setSettings(self, website):
|
|
'''fills a dictionary with values from the configfile
|
|
|
|
There may also be set some useful standards here.'''
|
|
website.settings={}
|
|
#TODO: this is nessessary since the last config split in different sections
|
|
## put all found WebSettings values in the dictionary
|
|
## RFC: arbitrarily importing all available keys does not sound very secure [l]
|
|
## RFC: settings with the same names in different sections (Log, Main, ...) will collide silently - right? [l]
|
|
for key in self.cbxPrefs["WebSettings"].keys():
|
|
website.settings["Settings."+key] = self.cbxPrefs["WebSettings"][key]
|
|
## also all Log values
|
|
for key in self.cbxPrefs["Log"].keys():
|
|
website.settings["Log."+key] = self.cbxPrefs["Log"][key]
|
|
## also Main
|
|
for key in self.cbxPrefs["Main"].keys():
|
|
website.settings["Settings."+key] = self.cbxPrefs["Main"][key]
|
|
## Locations dito
|
|
for key in self.cbxPrefs["Locations"].keys():
|
|
website.settings["Settings."+key] = self.cbxPrefs["Locations"][key]
|
|
|
|
## put available languages also in the dictionary
|
|
website.settings["Settings.AvailableLanguages"] = self.getAvailableLanguages()
|
|
website.settings["Settings.AvailableDocLanguages"] = self.getAvailableDocLanguages()
|
|
#self.log.info(self.settings)
|
|
|
|
|
|
def print_foo(self):
|
|
'''a stupid demo method
|
|
|
|
if there are methods necessary for more than one site,
|
|
put them in here like this stupid demo'''
|
|
self.log.info("'print_foo' was called by some site and triggerd an inheritated method")
|
|
self.cbx_inheritance_test("fooooooooooooobaaaaaaaaaaaaaaaaaaaar")
|
|
|