From a998402d3db47785788c915c2d9134cda792fc7e Mon Sep 17 00:00:00 2001 From: Jannik Schönartz Date: Wed, 24 Jan 2018 15:55:21 +0100 Subject: [usb-lock-off] Configurations splitted into tabs for a better overview. Removed old code. --- .../usblockoff/lang/de/template-tags.json | 7 +- .../usblockoff/lang/en/template-tags.json | 7 +- modules-available/usblockoff/page.inc.php | 83 +++++----------- .../usblockoff/templates/usb-add-generic-rule.html | 2 +- .../usblockoff/templates/usb-choose-config.html | 37 ++++++- .../usblockoff/templates/usb-configuration.html | 107 --------------------- .../usblockoff/templates/usb-daemon-config.html | 26 +++++ .../usblockoff/templates/usb-device-list.html | 1 - .../usblockoff/templates/usb-rules-config.html | 66 +++++++++++++ 9 files changed, 164 insertions(+), 172 deletions(-) delete mode 100644 modules-available/usblockoff/templates/usb-configuration.html create mode 100644 modules-available/usblockoff/templates/usb-daemon-config.html create mode 100644 modules-available/usblockoff/templates/usb-rules-config.html (limited to 'modules-available') diff --git a/modules-available/usblockoff/lang/de/template-tags.json b/modules-available/usblockoff/lang/de/template-tags.json index 3614ed55..15a60aca 100644 --- a/modules-available/usblockoff/lang/de/template-tags.json +++ b/modules-available/usblockoff/lang/de/template-tags.json @@ -39,5 +39,10 @@ "lang_equals": "Gleicht", "lang_equals-ordered": "Gleicht geordnet", "lang_saveAsNewConfig": "Als neue Konfiguration Speichern", - "lang_saveAsNewConfig-helptext": "Erstellt eine neue Konfiguration anstatt die alte zu Überschreiben." + "lang_saveAsNewConfig-helptext": "Erstellt eine neue Konfiguration anstatt die alte zu Überschreiben.", + "lang_add-generic-rule": "Generische Regel hinzufügen", + "lang_device-list": "Geräte Liste", + "lang_rulesConfig": "Regel Konfiguration", + "lang_daemonConfig": "Daemon Konfiguration", + "lang_assignMenu": "Zuweisungsmenü" } diff --git a/modules-available/usblockoff/lang/en/template-tags.json b/modules-available/usblockoff/lang/en/template-tags.json index 914b844b..3daffdb7 100644 --- a/modules-available/usblockoff/lang/en/template-tags.json +++ b/modules-available/usblockoff/lang/en/template-tags.json @@ -39,5 +39,10 @@ "lang_equals": "Equals", "lang_equals-ordered": "Equals ordered", "lang_saveAsNewConfig": "Save as new config", - "lang_saveAsNewConfig-helptext": "If true a new config is created instead of overriding the old one" + "lang_saveAsNewConfig-helptext": "If true a new config is created instead of overriding the old one", + "lang_add-generic-rule": "Add generic rule", + "lang_device-list": "Device list", + "lang_rulesConfig": "Rules config", + "lang_daemonConfig": "Daemon config", + "lang_assignMenu": "Assign menu" } diff --git a/modules-available/usblockoff/page.inc.php b/modules-available/usblockoff/page.inc.php index 9e5664fc..c02fadba 100644 --- a/modules-available/usblockoff/page.inc.php +++ b/modules-available/usblockoff/page.inc.php @@ -136,12 +136,18 @@ class Page_usblockoff extends Page } elseif ($action === 'loadConfig') { $id = Request::any('id', 0, 'int'); $this->ajaxConfig($id); + } elseif ($action === 'loadDaemonConfig') { + $id = Request::any('id', 0, 'int'); + $this->ajaxDaemonConfig($id); + } elseif ($action === 'loadRulesConfig') { + $id = Request::any('id', 0, 'int'); + $this->ajaxRulesConfig($id); } elseif ($action === 'genericRuleBuilder') { $this->ajaxGenericRuleBuilder(); } } - private function ajaxConfig($id) + private function ajaxDaemonConfig($id) { $form = array(); $rulesConf = null; @@ -149,12 +155,10 @@ class Page_usblockoff extends Page if ($id == 0) { $currentdir = getcwd(); - $rulesConf = file_get_contents($currentdir . '/modules/usblockoff/inc/default-configs/rules.conf'); $daemonConf = file($currentdir . '/modules/usblockoff/inc/default-configs/usbguard-daemon.conf'); } else { $dbquery = Database::queryFirst("SELECT * FROM `usb_configs` WHERE configid=:id", array('id' => $id)); $daemonConf = explode("\r\n", $dbquery['daemonconfig']); - $rulesConf = $dbquery['rulesconfig']; } $element = array(); @@ -178,8 +182,24 @@ class Page_usblockoff extends Page } } - echo Render::parse('usb-configuration', array( + echo Render::parse('usb-daemon-config', array( 'list' => array_values($form), + )); + } + + private function ajaxRulesConfig($id) { + $rulesConf = null; + + if ($id == 0) { + $currentdir = getcwd(); + + $rulesConf = file_get_contents($currentdir . '/modules/usblockoff/inc/default-configs/rules.conf'); + } else { + $dbquery = Database::queryFirst("SELECT * FROM `usb_configs` WHERE configid=:id", array('id' => $id)); + $rulesConf = $dbquery['rulesconfig']; + } + + echo Render::parse('usb-rules-config', array( 'rules' => $rulesConf, )); } @@ -208,63 +228,8 @@ class Page_usblockoff extends Page $setting['settingHtml'] = Render::parse('server-prop-dropdown', (array)$setting); $settings[] = $setting; - /* - $setting = array(); - $setting['title'] = "Operator"; - $setting['select_list'] = array( - array( - 'option' => 'all-of', - 'active' => true, - ), - array( - 'option' => 'one-of', - 'active' => false, - ), - array( - 'option' => 'none-of', - 'active' => false, - ), - array( - 'option' => 'equals', - 'active' => false, - ), - array( - 'option' => 'equals-ordered', - 'active' => false, - ) - ); - $setting['helptext'] = array('helptext' => Dictionary::translateFile('rule', 'operator_helptext')); - $setting['property'] = 'action'; - $setting['settingHtml'] = Render::parse('server-prop-dropdown', (array)$setting); - $settings[] = $setting; - */ - - /* THIS IS DONE in HTML code because server-prop-dropdown doens't have a value option for a selected - $casualMode = array(); - $setting = array(); - // $setting['helptext'] = array('helptext' => Dictionary::translateFile('rule', '')) - $setting['title'] = 'Device Class'; - $setting['select_list'] = array( - array( - 'option' => 'USB-Sticks', - 'active' => true, - ), - array( - 'option' => 'HID-Devices', - 'active' => false, - ), - array( - 'option' => 'All', - 'active' => false, - ) - ); - $setting['property'] = 'action'; - $setting['settingHtml'] = Render::parse('server-prop-dropdown', (array)$setting); - $casualMode[] = $setting;*/ - echo Render::parse('usb-add-generic-rule', array( 'settings' => array_values($settings), - /*'casual' => array_values($casualMode)*/ )); } diff --git a/modules-available/usblockoff/templates/usb-add-generic-rule.html b/modules-available/usblockoff/templates/usb-add-generic-rule.html index 4e8339c7..6d91dcb5 100644 --- a/modules-available/usblockoff/templates/usb-add-generic-rule.html +++ b/modules-available/usblockoff/templates/usb-add-generic-rule.html @@ -180,7 +180,7 @@ } if (mode == "casual") { if (contains) { - $('#rules').val($('#rules').val() + $('#prop-action').val() + ' with-interface all-of' + ' { ' + + $('#rules').val($('#rules').val() + $('#prop-action').val() + ' with-interface one-of' + ' { ' + $('#casual_selected option:selected').val() + ' }'); } else { $('#rules').val($('#rules').val() + $('#prop-action').val() + ' with-interface ' + $('#casual_selected option:selected').val()); diff --git a/modules-available/usblockoff/templates/usb-choose-config.html b/modules-available/usblockoff/templates/usb-choose-config.html index 0ad7213a..b50447fa 100644 --- a/modules-available/usblockoff/templates/usb-choose-config.html +++ b/modules-available/usblockoff/templates/usb-choose-config.html @@ -87,7 +87,39 @@ -
+ + + +
+
+
+
+
+
+
+
+

Work in progress ...

+

Todo: Implement this.

+

Or not.

+

¯\_(ツ)_/¯

+
+
+ +
+ + + +
+ diff --git a/modules-available/usblockoff/templates/usb-daemon-config.html b/modules-available/usblockoff/templates/usb-daemon-config.html new file mode 100644 index 00000000..be8c903c --- /dev/null +++ b/modules-available/usblockoff/templates/usb-daemon-config.html @@ -0,0 +1,26 @@ +
+
usbugard-daemon.conf
+
+
+ + {{#list}} +
+
+
+ +
+
+ +
+
+ + + +
+
+
+ {{/list}} + +
+
+
\ No newline at end of file diff --git a/modules-available/usblockoff/templates/usb-device-list.html b/modules-available/usblockoff/templates/usb-device-list.html index b5cc82b0..459c6801 100644 --- a/modules-available/usblockoff/templates/usb-device-list.html +++ b/modules-available/usblockoff/templates/usb-device-list.html @@ -116,7 +116,6 @@ } } - // This function is used in the usb-configuration.html. (myModalAddButton) function addDevices() { $('.selected').each(function () { var rule = $('#prop-action').val(); diff --git a/modules-available/usblockoff/templates/usb-rules-config.html b/modules-available/usblockoff/templates/usb-rules-config.html new file mode 100644 index 00000000..ab3dc664 --- /dev/null +++ b/modules-available/usblockoff/templates/usb-rules-config.html @@ -0,0 +1,66 @@ +
+
rules.conf
+
+ +
+
+ + + + \ No newline at end of file -- cgit v1.2.3-55-g7522