diff --git a/bin/CryptoBoxContainer.py b/bin/CryptoBoxContainer.py index 9d1a52d..31e1509 100755 --- a/bin/CryptoBoxContainer.py +++ b/bin/CryptoBoxContainer.py @@ -54,8 +54,9 @@ class CryptoBoxContainer: def setName(self, new_name): if new_name == self.name: return - if self.isMounted(): - raise CBVolumeIsActive("the container must be inactive during renaming") + # TODO: check why the following test was/is (?) necessary - side effects? + #if self.isMounted(): + # raise CBVolumeIsActive("the container must be inactive during renaming") if not re.search(r'^[a-zA-Z0-9_\.\- ]+$', new_name): raise CBInvalidName("the supplied new name contains illegal characters") "check for active partitions with the same name" diff --git a/bin/WebInterfaceSites.py b/bin/WebInterfaceSites.py index e931bf3..67322db 100755 --- a/bin/WebInterfaceSites.py +++ b/bin/WebInterfaceSites.py @@ -142,7 +142,7 @@ class WebInterfaceSites: except KeyError: self.__setWebLang("") ## we always read the "device" setting - otherwise volume-plugin links - ## would not work easily (see "volume_props" linking to "format_fs") + ## would not work easily (see "volume_props" linking to "volume_format_fs") ## it will get ignored for non-volume plugins try: plugin.device = None @@ -213,11 +213,6 @@ class WebInterfaceSites: valueDict["message_keep"]["dataset"][keep_key] = plugin.hdf[keep_key] new_plugin = self.pluginList.getPlugin(nextTemplate["plugin"]) return self.return_plugin_action(new_plugin)(**valueDict) - ## did we want to keep some dataset values? then save the specified plugin - if keep_values: - if type(nextTemplate) == types.StringType: - nextTemplate = { "template":nextTemplate } - nextTemplate["old_plugin"] = keep_values["plugin"] ## save the currently active plugin name self.dataset["Data.ActivePlugin"] = plugin.getName() return self.__render(nextTemplate, plugin) @@ -388,16 +383,12 @@ class WebInterfaceSites: ## is renderInfo a string (filename of the template) or a dictionary? if type(renderInfo) == types.DictType: template = renderInfo["template"] - if renderInfo.has_key("old_plugin"): - old_plugin = renderInfo["old_plugin"] - else: - old_plugin = None if renderInfo.has_key("generator"): generator = renderInfo["generator"] else: generator = None else: - (template, generator, old_plugin) = (renderInfo, None, None) + (template, generator) = (renderInfo, None) ## load the language data hdf = neo_util.HDF() @@ -406,6 +397,12 @@ class WebInterfaceSites: ## first: assume, that the template file is in the global template directory self.dataset["Settings.TemplateFile"] = os.path.abspath(os.path.join(self.prefs["Locations"]["TemplateDir"], template + ".cs")) + ## load the language data of all plugins + for p in self.pluginList.getPlugins(): + pl_lang = p.getLanguageData(self.dataset["Settings.Language"]) + if pl_lang: + hdf.copy("Lang.Plugins.%s" % p.getName(), pl_lang) + if plugin: ## check, if the plugin provides the template file -> overriding plugin_cs_file = plugin.getTemplateFileName(template) @@ -414,17 +411,6 @@ class WebInterfaceSites: ## add the current state of the plugins to the hdf dataset self.dataset["Data.Status.Plugins.%s" % plugin.getName()] = plugin.getStatus() - ## load the language data - pl_lang = plugin.getLanguageData(self.dataset["Settings.Language"]) - if pl_lang: - self.cbox.log.info("load plugin language: %s" % plugin.getName()) - hdf.copy("Lang.Plugins.%s" % plugin.getName(), pl_lang) - ## was there an "old_plugin"? then load its language data, too - if old_plugin and (old_plugin != plugin): - pl_lang = old_plugin.getLanguageData(self.dataset["Settings.Language"]) - if pl_lang: - self.cbox.log.info("load old plugin language: %s" % old_plugin.getName()) - hdf.copy("Lang.Plugins.%s" % old_plugin.getName(), pl_lang) ## load the dataset of the plugin plugin.loadDataSet(hdf)