From 80337411ae7afaf8888391fcd4e877ce0ec3115d Mon Sep 17 00:00:00 2001 From: lars Date: Mon, 6 Nov 2006 06:17:22 +0000 Subject: [PATCH] URLs changed to new plugin addressing scheme svn:keywords set fixed: shutdown - delay reboot/poweroff by some seconds to finish the web page before added: format_fs - show link to umount in case of active device added: new plugin "language_selection" fixed: recently introduced syntax error in 'network' added: "volume_props" mentions encryption support via "format_fs" (including link) updated: plugin-interface.txt fixed: broken test case for date plugin (caused by twill, I guess) added: "partition" plugin - better handling of config partition --- pythonrewrite/plugins/date/date.py | 2 +- pythonrewrite/plugins/date/form_date.cs | 6 +- pythonrewrite/plugins/date/unittests.py | 12 +++- pythonrewrite/plugins/disks/plugin_icon.png | Bin 11821 -> 6279 bytes pythonrewrite/plugins/disks/unittests.py | 2 +- pythonrewrite/plugins/format_fs/lang/en.hdf | 18 +++++- pythonrewrite/plugins/format_fs/unittests.py | 2 +- .../plugins/format_fs/volume_format.cs | 7 +- .../plugins/format_fs/volume_format_luks.cs | 7 +- pythonrewrite/plugins/help/help.py | 2 +- pythonrewrite/plugins/help/unittests.py | 10 +-- .../plugins/language_selection/lang/en.hdf | 5 ++ .../language_selection/language_selection.cs | 15 +++++ .../language_selection/language_selection.py | 16 +++++ .../language_selection/plugin_icon.png | Bin 0 -> 13094 bytes .../plugins/language_selection/unittests.py | 10 +++ pythonrewrite/plugins/logs/unittests.py | 4 +- pythonrewrite/plugins/network/form_network.cs | 2 +- pythonrewrite/plugins/network/network.py | 4 +- pythonrewrite/plugins/network/unittests.py | 8 +-- pythonrewrite/plugins/partition/lang/en.hdf | 14 +++- pythonrewrite/plugins/partition/partition.py | 60 +++++++++++++----- .../plugins/partition/root_action.py | 3 + .../plugins/partition/select_device.cs | 6 +- .../plugins/partition/set_partitions.cs | 21 ++++-- pythonrewrite/plugins/partition/unittests.py | 2 +- pythonrewrite/plugins/plugin-interface.txt | 9 +-- .../plugins/plugin_manager/lang/en.hdf | 2 +- .../plugins/plugin_manager/plugin_list.cs | 2 +- .../plugins/plugin_manager/unittests.py | 2 +- .../plugins/shutdown/form_shutdown.cs | 15 ++--- pythonrewrite/plugins/shutdown/lang/en.hdf | 3 +- .../plugins/shutdown/progress_reboot.cs | 6 ++ .../plugins/shutdown/progress_shutdown.cs | 6 ++ pythonrewrite/plugins/shutdown/root_action.py | 18 +++--- pythonrewrite/plugins/shutdown/shutdown.py | 6 +- pythonrewrite/plugins/shutdown/unittests.py | 6 +- .../plugins/system_preferences/unittests.py | 2 +- .../plugins/user_manager/lang/en.hdf | 2 +- .../plugins/user_manager/plugin_icon.png | Bin 3660 -> 10613 bytes .../plugins/user_manager/unittests.py | 2 +- .../plugins/user_manager/user_list.cs | 6 +- .../plugins/volume_details/unittests.py | 2 +- .../plugins/volume_mount/unittests.py | 2 +- .../plugins/volume_mount/volume_mount.cs | 2 +- .../plugins/volume_mount/volume_umount.cs | 2 +- .../plugins/volume_props/lang/en.hdf | 17 ++++- .../plugins/volume_props/unittests.py | 2 +- .../plugins/volume_props/volume_properties.cs | 23 +++++-- 49 files changed, 259 insertions(+), 116 deletions(-) create mode 100644 pythonrewrite/plugins/language_selection/lang/en.hdf create mode 100644 pythonrewrite/plugins/language_selection/language_selection.cs create mode 100644 pythonrewrite/plugins/language_selection/language_selection.py create mode 100644 pythonrewrite/plugins/language_selection/plugin_icon.png create mode 100644 pythonrewrite/plugins/language_selection/unittests.py create mode 100644 pythonrewrite/plugins/shutdown/progress_reboot.cs create mode 100644 pythonrewrite/plugins/shutdown/progress_shutdown.cs diff --git a/pythonrewrite/plugins/date/date.py b/pythonrewrite/plugins/date/date.py index 245c6b6..466a81a 100644 --- a/pythonrewrite/plugins/date/date.py +++ b/pythonrewrite/plugins/date/date.py @@ -7,7 +7,7 @@ class date(CryptoBoxPlugin.CryptoBoxPlugin): requestAuth = False rank = 10 - def doAction(self, store=None, year=0, month=0, day=0, hour=0, minute=0): + def doAction(self, store=None, year=None, month=None, day=None, hour=None, minute=None): import datetime if store: try: diff --git a/pythonrewrite/plugins/date/form_date.cs b/pythonrewrite/plugins/date/form_date.cs index 3f58f4b..3dd732a 100644 --- a/pythonrewrite/plugins/date/form_date.cs +++ b/pythonrewrite/plugins/date/form_date.cs @@ -4,10 +4,10 @@ - +


-


- diff --git a/pythonrewrite/plugins/format_fs/volume_format_luks.cs b/pythonrewrite/plugins/format_fs/volume_format_luks.cs index 940ac22..e2c52bb 100644 --- a/pythonrewrite/plugins/format_fs/volume_format_luks.cs +++ b/pythonrewrite/plugins/format_fs/volume_format_luks.cs @@ -7,13 +7,12 @@ - + - - - + +

:

: + +

+ + + +
+ +
diff --git a/pythonrewrite/plugins/language_selection/language_selection.py b/pythonrewrite/plugins/language_selection/language_selection.py new file mode 100644 index 0000000..9b28764 --- /dev/null +++ b/pythonrewrite/plugins/language_selection/language_selection.py @@ -0,0 +1,16 @@ +import CryptoBoxPlugin + + +class language_selection(CryptoBoxPlugin.CryptoBoxPlugin): + + pluginCapabilities = [ "system", "menu" ] + requestAuth = False + rank = 60 + + def doAction(self): + return "language_selection" + + + def getStatus(self): + return "TODO" + diff --git a/pythonrewrite/plugins/language_selection/plugin_icon.png b/pythonrewrite/plugins/language_selection/plugin_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..fdaa85296c6831e525961a24f533bfc274e94ac3 GIT binary patch literal 13094 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 AiU0rr literal 0 HcmV?d00001 diff --git a/pythonrewrite/plugins/language_selection/unittests.py b/pythonrewrite/plugins/language_selection/unittests.py new file mode 100644 index 0000000..6e9b349 --- /dev/null +++ b/pythonrewrite/plugins/language_selection/unittests.py @@ -0,0 +1,10 @@ +import WebInterfaceTestClass + +class unittests(WebInterfaceTestClass.WebInterfaceTestClass): + + def test_read_form(self): + url = self.URL + "language_selection?weblang=en" + self.register_auth(url) + self.cmd.go(url) + self.cmd.find('hoose an interface language') + diff --git a/pythonrewrite/plugins/logs/unittests.py b/pythonrewrite/plugins/logs/unittests.py index 95bc49a..25b7727 100644 --- a/pythonrewrite/plugins/logs/unittests.py +++ b/pythonrewrite/plugins/logs/unittests.py @@ -3,7 +3,7 @@ import WebInterfaceTestClass class unittests(WebInterfaceTestClass.WebInterfaceTestClass): def test_read_logs(self): - log_url = self.URL + "plugins/logs" + log_url = self.URL + "logs" self.register_auth(log_url) self.cmd.go(log_url) self.cmd.find('class="console"') @@ -14,7 +14,7 @@ class unittests(WebInterfaceTestClass.WebInterfaceTestClass): ## 2) the log message does not get lost in a possible stream of log messages log_text = "unittest - just a marker - please ignore" self.cbox.log.error(log_text) - log_url = self.URL + "plugins/logs" + log_url = self.URL + "logs" self.register_auth(log_url) self.cmd.go(log_url) self.cmd.find(log_text) diff --git a/pythonrewrite/plugins/network/form_network.cs b/pythonrewrite/plugins/network/form_network.cs index e2b6786..509e2d5 100644 --- a/pythonrewrite/plugins/network/form_network.cs +++ b/pythonrewrite/plugins/network/form_network.cs @@ -8,7 +8,7 @@ - +

0 ?> - + - +


-

- - diff --git a/pythonrewrite/plugins/shutdown/lang/en.hdf b/pythonrewrite/plugins/shutdown/lang/en.hdf index 2321ae2..2356e4a 100644 --- a/pythonrewrite/plugins/shutdown/lang/en.hdf +++ b/pythonrewrite/plugins/shutdown/lang/en.hdf @@ -2,11 +2,12 @@ Name = Shutdown or reboot the computer Link = Shutdown Title.Shutdown = Shutdown computer +Title.ProgressShutdown = The CryptoBox is shutting down +Title.ProgressReboot = The CryptoBox is rebooting Button.Shutdown = Poweroff Button.Reboot = Reboot -Text.ShutdownInfo = You may turn off or reboot your CryptoBox here. SuccessMessage { Shutdown { diff --git a/pythonrewrite/plugins/shutdown/progress_reboot.cs b/pythonrewrite/plugins/shutdown/progress_reboot.cs new file mode 100644 index 0000000..d36ce78 --- /dev/null +++ b/pythonrewrite/plugins/shutdown/progress_reboot.cs @@ -0,0 +1,6 @@ + + +

+ + + diff --git a/pythonrewrite/plugins/shutdown/progress_shutdown.cs b/pythonrewrite/plugins/shutdown/progress_shutdown.cs new file mode 100644 index 0000000..a4afd10 --- /dev/null +++ b/pythonrewrite/plugins/shutdown/progress_shutdown.cs @@ -0,0 +1,6 @@ + + +

+ + + diff --git a/pythonrewrite/plugins/shutdown/root_action.py b/pythonrewrite/plugins/shutdown/root_action.py index de357b7..9aa553b 100755 --- a/pythonrewrite/plugins/shutdown/root_action.py +++ b/pythonrewrite/plugins/shutdown/root_action.py @@ -3,20 +3,20 @@ ## necessary: otherwise CryptoBoxRootActions.py will refuse to execute this script PLUGIN_TYPE = "cryptobox" -POWEROFF_BIN = "/sbin/poweroff" -REBOOT_BIN = "/sbin/reboot" +SHUTDOWN_BIN = "/sbin/shutdown" + +## delay (in seconds) before shutdown +SHUTDOWN_DELAY = 3 import subprocess -import re import sys -import os def call_prog(progy): proc = subprocess.Popen( - shell = False, - args = [progy]) - proc.wait() + shell = False, + args = progy) + proc.communicate() return proc.returncode == 0 @@ -34,9 +34,9 @@ if __name__ == "__main__": sys.exit(1) if args[0] == "reboot": - result = call_prog(REBOOT_BIN) + result = call_prog([SHUTDOWN_BIN, "-t", str(SHUTDOWN_DELAY), "-r", "now"]) elif args[0] == "shutdown": - result = call_prog(POWEROFF_BIN) + result = call_prog([SHUTDOWN_BIN, "-t", str(SHUTDOWN_DELAY), "-h", "now"]) else: sys.stderr.write("%s: illegal argument (%s)\n" % (self_bin, args[0])) sys.exit(1) diff --git a/pythonrewrite/plugins/shutdown/shutdown.py b/pythonrewrite/plugins/shutdown/shutdown.py index d083cbf..0638058 100644 --- a/pythonrewrite/plugins/shutdown/shutdown.py +++ b/pythonrewrite/plugins/shutdown/shutdown.py @@ -6,7 +6,7 @@ class shutdown(CryptoBoxPlugin.CryptoBoxPlugin): pluginCapabilities = [ "system", "menu" ] requestAuth = False - rank = 70 + rank = 90 def doAction(self, type=None): if not type: @@ -14,7 +14,7 @@ class shutdown(CryptoBoxPlugin.CryptoBoxPlugin): elif type == "shutdown": if self.__doShutdown("shutdown"): self.hdf["Data.Success"] = "Plugins.shutdown.Shutdown" - return None + return "progress_shutdown" else: self.hdf["Data.Warning"] = "Plugins.shutdown.ShutdownFailed" return "form_shutdown" @@ -23,7 +23,7 @@ class shutdown(CryptoBoxPlugin.CryptoBoxPlugin): self.hdf["Data.Success"] = "Plugins.shutdown.Reboot" self.hdf["Data.Redirect.URL"] = "" self.hdf["Data.Redirect.Delay"] = REDIRECT_DELAY - return None + return "progress_reboot" else: self.hdf["Data.Warning"] = "Plugins.shutdown.RebootFailed" return "form_shutdown" diff --git a/pythonrewrite/plugins/shutdown/unittests.py b/pythonrewrite/plugins/shutdown/unittests.py index db75182..baa0308 100644 --- a/pythonrewrite/plugins/shutdown/unittests.py +++ b/pythonrewrite/plugins/shutdown/unittests.py @@ -3,9 +3,9 @@ import WebInterfaceTestClass class unittests(WebInterfaceTestClass.WebInterfaceTestClass): def test_read_form(self): - url = self.URL + "plugins/shutdown" + url = self.URL + "shutdown" self.register_auth(url) self.cmd.go(url) - self.cmd.find('plugins/shutdown\?type=reboot') - self.cmd.find('plugins/shutdown\?type=shutdown') + self.cmd.find('shutdown\?type=reboot') + self.cmd.find('shutdown\?type=shutdown') diff --git a/pythonrewrite/plugins/system_preferences/unittests.py b/pythonrewrite/plugins/system_preferences/unittests.py index 5f99c1d..5e0e862 100644 --- a/pythonrewrite/plugins/system_preferences/unittests.py +++ b/pythonrewrite/plugins/system_preferences/unittests.py @@ -3,6 +3,6 @@ import WebInterfaceTestClass class unittests(WebInterfaceTestClass.WebInterfaceTestClass): def test_preferences_overview(self): - self.cmd.go(self.URL + "plugins/system_preferences?weblang=en") + self.cmd.go(self.URL + "system_preferences?weblang=en") self.cmd.find("Preferences") diff --git a/pythonrewrite/plugins/user_manager/lang/en.hdf b/pythonrewrite/plugins/user_manager/lang/en.hdf index 548b81b..3d99c44 100644 --- a/pythonrewrite/plugins/user_manager/lang/en.hdf +++ b/pythonrewrite/plugins/user_manager/lang/en.hdf @@ -1,5 +1,5 @@ Name = User Manager -Link = User Manager +Link = Manage users Title { UserManager = Manage users diff --git a/pythonrewrite/plugins/user_manager/plugin_icon.png b/pythonrewrite/plugins/user_manager/plugin_icon.png index b1fd4ebca698d2339385b89c2e9ad578cd1d8e5b..e035d2b1c3eb33e618d627fc86bd09afbb26562d 100644 GIT binary patch literal 10613 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 literal 3660 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 eDU;FvX8aGG-oDuptyk0l0000

- + @@ -40,7 +40,7 @@

- +

@@ -68,7 +68,7 @@

- + diff --git a/pythonrewrite/plugins/volume_mount/volume_umount.cs b/pythonrewrite/plugins/volume_mount/volume_umount.cs index de2fb33..6002510 100644 --- a/pythonrewrite/plugins/volume_mount/volume_umount.cs +++ b/pythonrewrite/plugins/volume_mount/volume_umount.cs @@ -2,7 +2,7 @@ - +

diff --git a/pythonrewrite/plugins/volume_props/lang/en.hdf b/pythonrewrite/plugins/volume_props/lang/en.hdf index c7b9863..55bbfcc 100644 --- a/pythonrewrite/plugins/volume_props/lang/en.hdf +++ b/pythonrewrite/plugins/volume_props/lang/en.hdf @@ -5,17 +5,30 @@ Title { Properties = Properties ChangeVolumeName = Change the name of this volume ChangePassword = Change the password of this volume + Encryption = Encryption } Button { ContainerNameSet = Change name ChangePassword = Change password + FormatContainer = Format volume } -Text { - UmountBeforeProps = You must deactivate a volume, if you want to change its properties. +Text.FormatForEncryptionSupport = This volume is not encrypted. If you want to turn on encryption, then you have to format the volume. Beware: this will destroy all data of this container. + + +AdviceMessage { + UmountBeforeProps { + Text = You must deactivate a volume, if you want to change its properties. + Link.Text = Deactive volume now + Link.Rel = volume_mount + Link.Attr1.name = action + Link.Attr1.value = umount + Link.Attr2.name = redirect + Link.Attr2.value = volume_props + } } diff --git a/pythonrewrite/plugins/volume_props/unittests.py b/pythonrewrite/plugins/volume_props/unittests.py index 8fb49b5..e91a78d 100644 --- a/pythonrewrite/plugins/volume_props/unittests.py +++ b/pythonrewrite/plugins/volume_props/unittests.py @@ -3,7 +3,7 @@ import WebInterfaceTestClass class unittests(WebInterfaceTestClass.WebInterfaceTestClass): def test_read_form(self): - url = self.URL + "plugins/volume_props?weblang=en&device=%2Fdev%2Floop1" + url = self.URL + "volume_props?weblang=en&device=%2Fdev%2Floop1" self.register_auth(url) self.cmd.go(url) self.cmd.find('Properties') diff --git a/pythonrewrite/plugins/volume_props/volume_properties.cs b/pythonrewrite/plugins/volume_props/volume_properties.cs index cd01d19..92c3fe6 100644 --- a/pythonrewrite/plugins/volume_props/volume_properties.cs +++ b/pythonrewrite/plugins/volume_props/volume_properties.cs @@ -8,7 +8,7 @@ - + @@ -17,10 +17,10 @@ - + - - + @@ -49,14 +49,23 @@ - - + + + + +

+ @@ -35,7 +35,7 @@

+ -

+
+

+
+ + +