* removed hardcoded doclangs

* truly removed '?action'
* some RFC comments
This commit is contained in:
age 2006-09-06 07:14:27 +00:00
parent 528652afcb
commit 7f9c736116
3 changed files with 8 additions and 6 deletions

View file

@ -11,7 +11,8 @@ class CryptoBoxWebserverSettings:
#TODO: this is nessessary since the last config split in different sections #TODO: this is nessessary since the last config split in different sections
## put all found WebSettings values in the dictionary ## put all found WebSettings values in the dictionary
## RFC: arbitrarily importing all available keys does not sound very secure [l] ## 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] ## RFC: settings with the same names in different sections (Log, Main, ...) will collide silently - right? [l]
## yep, we'll have to divide between settings for clearsilver and settings we need for other webstuff [a]
for key in self.cbxPrefs["WebSettings"].keys(): for key in self.cbxPrefs["WebSettings"].keys():
website.settings["Settings."+key] = self.cbxPrefs["WebSettings"][key] website.settings["Settings."+key] = self.cbxPrefs["WebSettings"][key]
## also all Log values ## also all Log values

View file

@ -47,6 +47,7 @@ class CryptoBoxWebserverSites(CryptoBox.CryptoBoxProps, CryptoBoxWebserverSettin
what about the unnamed place, where 'exposed' attributes are set? [l] what about the unnamed place, where 'exposed' attributes are set? [l]
''' '''
# RFC: this dictionary is not sufficient for arbitrary text inputs (e.g.: names) or numbers [l] # RFC: this dictionary is not sufficient for arbitrary text inputs (e.g.: names) or numbers [l]
# what way would we sanizite such input? just exclude forbidden elements? [a]
niceparams = { niceparams = {
'weblang': ["Settings.Language", self.settings["Settings.AvailableLanguages"]], 'weblang': ["Settings.Language", self.settings["Settings.AvailableLanguages"]],
'loglevel': ["Log.Level", ('','info', 'warn', 'debug', 'error')], 'loglevel': ["Log.Level", ('','info', 'warn', 'debug', 'error')],
@ -62,6 +63,7 @@ class CryptoBoxWebserverSites(CryptoBox.CryptoBoxProps, CryptoBoxWebserverSettin
#self.log.warn(niceparams[nicekey][1]) #self.log.warn(niceparams[nicekey][1])
if evilparams[nicekey] and evilparams[nicekey] in niceparams[nicekey][1]: if evilparams[nicekey] and evilparams[nicekey] in niceparams[nicekey][1]:
# RFC: isn't "self.settings" a non-obvious name for user input? [l] # RFC: isn't "self.settings" a non-obvious name for user input? [l]
# self.settings is used by clearsilver [a]
self.settings[niceparams[nicekey][0]] = evilparams[nicekey] self.settings[niceparams[nicekey][0]] = evilparams[nicekey]
#self.log.warn(niceparams[nicekey][0]) #self.log.warn(niceparams[nicekey][0])
#self.log.warn(evilparams[nicekey]) #self.log.warn(evilparams[nicekey])
@ -137,10 +139,9 @@ class CryptoBoxWebserverSites(CryptoBox.CryptoBoxProps, CryptoBoxWebserverSettin
# TODO: add "doclang" - it is selected by each link in the doc pages # TODO: add "doclang" - it is selected by each link in the doc pages
# according to scripts/docexport it's weblang [a]
def doc(self,page="",weblang=""): def doc(self,page="",weblang=""):
'''prints the offline wikipage '''prints the offline wikipage
TODO: "action" is unnessessary, remove it from all html files in doc/html/[de|en]/*
''' '''
self.__prepare("show_doc") self.__prepare("show_doc")
# TODO: single pagenames should be sanitized # TODO: single pagenames should be sanitized
@ -154,9 +155,9 @@ class CryptoBoxWebserverSites(CryptoBox.CryptoBoxProps, CryptoBoxWebserverSettin
if len(self.settings["Settings.AvailableDocLanguages"]) < 1: if len(self.settings["Settings.AvailableDocLanguages"]) < 1:
self.settings["Data.Error"] = "NoDocumentation" self.settings["Data.Error"] = "NoDocumentation"
# TODO: what should be done, if there is an error? # TODO: what should be done, if there is an error?
# do you mean this is not an error? [a]
## set doclang to weblang, otherwise the default weblang from the config will be used for doclang ## set doclang to weblang, otherwise the default weblang from the config will be used for doclang
# TODO: hard coded languages? elif self.settings["Settings.Language"] in ["Settings.AvailableDocLanguages"]:
elif self.settings["Settings.Language"] in ("en","de"):
self.settings["Settings.DocLang"] = self.settings["Settings.Language"] self.settings["Settings.DocLang"] = self.settings["Settings.Language"]
# TODO: missing 'else'? # TODO: missing 'else'?

View file

@ -29,7 +29,7 @@ WIKI_HOST="https://systemausfall.org"
# the trailing slash is important # the trailing slash is important
WIKI_URL=/trac/cryptobox/wiki/ WIKI_URL=/trac/cryptobox/wiki/
CBOX_CGI="?action=doc\&page=" CBOX_CGI="?page="
LANGUAGES="de en" LANGUAGES="de en"