From d2862870c0ecd1e4855db1b0ec3a455fed876af1 Mon Sep 17 00:00:00 2001 From: Christian Hofmaier Date: Tue, 20 Mar 2018 15:35:18 +0100 Subject: [usb-lock-off] now you can add a description which is shown on the front page, edited database, added template tags, made nice red-flag for missing input name :) --- modules-available/usblockoff/install.inc.php | 7 ++++- .../usblockoff/lang/de/template-tags.json | 8 +++++- .../usblockoff/lang/en/template-tags.json | 8 +++++- modules-available/usblockoff/page.inc.php | 19 ++++++++----- modules-available/usblockoff/style.css | 5 ++++ .../templates/usb-configuration-table.html | 6 ++-- .../usblockoff/templates/usb-edit-config.html | 33 +++++++++++++++++++++- .../usblockoff/templates/usb-rules-config.html | 4 +-- 8 files changed, 74 insertions(+), 16 deletions(-) (limited to 'modules-available') diff --git a/modules-available/usblockoff/install.inc.php b/modules-available/usblockoff/install.inc.php index cf260c61..47a07573 100644 --- a/modules-available/usblockoff/install.inc.php +++ b/modules-available/usblockoff/install.inc.php @@ -16,7 +16,7 @@ $t2 = $res[] = tableCreate('usblockoff_hw_prop', ' PRIMARY KEY (`hwid`, `serial`, `prop`) '); -$res[] = tableCreate('usb_configs', ' +$t4 = $res[] = tableCreate('usb_configs', ' `configid` int(10) UNSIGNED NOT NULL AUTO_INCREMENT, `configname` VARCHAR(200) NOT NULL, `rulesconfig` VARCHAR(512), @@ -60,6 +60,11 @@ if ($t1 === UPDATE_DONE || $t2 === UPDATE_DONE) { $res[] = UPDATE_DONE; } +if ($t4 === UPDATE_NOOP) { + Database::exec("ALTER TABLE `usb_configs` + ADD `configdesc` VARCHAR(200)"); +} + if (in_array(UPDATE_DONE, $res)) { finalResponse(UPDATE_DONE, 'Table created successfully'); diff --git a/modules-available/usblockoff/lang/de/template-tags.json b/modules-available/usblockoff/lang/de/template-tags.json index 15a885df..4e623e3a 100644 --- a/modules-available/usblockoff/lang/de/template-tags.json +++ b/modules-available/usblockoff/lang/de/template-tags.json @@ -49,5 +49,11 @@ "lang_configuration": "Konfiguration", "lang_usb-lock-off": "USB Lock-Off", "lang_disabledButtons_helptext": "Sie müssen zuerst die Konfiguration speichern, um Regeln hinzufügen zu können.", - "lang_firstMatchingRuleCounts": "Die erste zutreffende Regel (von Oben nach Unten) wird angewendet." + "lang_firstMatchingRuleCounts": "Die erste zutreffende Regel (von Oben nach Unten) wird angewendet.", + "lang_description": "Beschreibung", + "lang_configurationTable": "Konfigurationstabelle", + "lang_editConfig": "Konfiguration bearbeiten", + "lang_configDesc_helptext": "Beschreibung der Konfiguration.", + "lang_attributes": "Attribute", + "lang_action": "Aktion" } diff --git a/modules-available/usblockoff/lang/en/template-tags.json b/modules-available/usblockoff/lang/en/template-tags.json index 78f7166f..1ddb6334 100644 --- a/modules-available/usblockoff/lang/en/template-tags.json +++ b/modules-available/usblockoff/lang/en/template-tags.json @@ -49,5 +49,11 @@ "lang_configuration": "Configuration", "lang_usb-lock-off": "USB lock off", "lang_disabledButtons_helptext": "You must first save the configuration to add rules.", - "lang_firstMatchingRuleCounts": "First matching rule (from top to bottom) will be applied." + "lang_firstMatchingRuleCounts": "First matching rule (from top to bottom) will be applied.", + "lang_description": "Description", + "lang_configurationTable": "Configuration Table", + "lang_editConfig": "Edit Configuration", + "lang_configDesc_helptext": "Description of the configuration.", + "lang_attributes": "Attributes", + "lang_action": "Action" } diff --git a/modules-available/usblockoff/page.inc.php b/modules-available/usblockoff/page.inc.php index 4a8e4a80..28479234 100644 --- a/modules-available/usblockoff/page.inc.php +++ b/modules-available/usblockoff/page.inc.php @@ -37,7 +37,7 @@ class Page_usblockoff extends Page $this->loadConfigChooser(); } else if ($show === "edit-config") { $configid = Request::get("configid", ""); - $configName = Database::queryFirst("SELECT configname FROM `usb_configs` WHERE configid=:id", array( + $dbquery = Database::queryFirst("SELECT configname, configdesc FROM `usb_configs` WHERE configid=:id", array( 'id' => $configid )); @@ -46,7 +46,8 @@ class Page_usblockoff extends Page Render::addTemplate('usb-edit-config', array( 'configid' => $configid, - 'configName' => $configName['configname'], + 'configName' => $dbquery['configname'], + 'configDesc' => $dbquery['configdesc'], 'rulesConfigHtml' => $rulesConfigHtml, 'daemonConfigHtml' => $daemonConfigHtml )); @@ -200,11 +201,12 @@ class Page_usblockoff extends Page protected function loadConfigChooser() { - $dbquery = Database::simpleQuery("SELECT configid, configname FROM `usb_configs`"); + $dbquery = Database::simpleQuery("SELECT configid, configname, configdesc FROM `usb_configs`"); $configs = array(); while ($dbentry = $dbquery->fetch(PDO::FETCH_ASSOC)) { $config['config_id'] = $dbentry['configid']; $config['config_name'] = $dbentry['configname']; + $config['config_desc'] = $dbentry['configdesc']; $configs[] = $config; } Render::addTemplate('usb-configuration-table', array('config_list' => array_values($configs))); @@ -254,6 +256,7 @@ class Page_usblockoff extends Page $id = Request::post('id', 0, 'int'); $configname = Request::post('configName', '', 'string'); + $configdesc = Request::post('configDesc', '', 'string'); $dbquery = Database::queryFirst("SELECT * FROM `usb_configs` WHERE configid=:id", array('id' => $id)); // Load daemon.conf from db else load default @@ -281,16 +284,18 @@ class Page_usblockoff extends Page // INSERT IN DB if ($id == '0' || $result['saveAsNewConfig']) { - $dbquery = Database::exec("INSERT INTO `usb_configs` (configname, rulesconfig, daemonconfig) VALUES (:configname, :rulesconfig, :daemonconfig)", + $dbquery = Database::exec("INSERT INTO `usb_configs` (configname, rulesconfig, daemonconfig, configdesc) VALUES (:configname, :rulesconfig, :daemonconfig, :configdesc)", array('configname' => $configname, 'rulesconfig' => json_encode($result['rules']), - 'daemonconfig' => implode($newDaemonConf))); + 'daemonconfig' => implode($newDaemonConf), + 'configdesc' => $configdesc)); } else { - $dbquery = Database::exec("UPDATE `usb_configs` SET configname=:configname, rulesconfig=:rulesconfig, daemonconfig=:daemonconfig WHERE configid=:configid", + $dbquery = Database::exec("UPDATE `usb_configs` SET configname=:configname, rulesconfig=:rulesconfig, daemonconfig=:daemonconfig, configdesc=:configdesc WHERE configid=:configid", array('configid' => $id, 'configname' => $configname, 'rulesconfig' => json_encode($result['rules']), - 'daemonconfig' => implode($newDaemonConf))); + 'daemonconfig' => implode($newDaemonConf), + 'configdesc' => $configdesc)); } Message::addSuccess('config-saved'); } diff --git a/modules-available/usblockoff/style.css b/modules-available/usblockoff/style.css index 5867511a..b54b2d88 100644 --- a/modules-available/usblockoff/style.css +++ b/modules-available/usblockoff/style.css @@ -5,4 +5,9 @@ #configurationTable th, #configurationTable td { word-wrap: break-word +} + +.missingInput { + border-color: rgba(255, 0, 0, 0.8); + box-shadow: 0 1px 1px rgba(255, 0, 0, 0.075) inset, 0 0 8px rgba(255, 0, 0, 0.6); } \ No newline at end of file diff --git a/modules-available/usblockoff/templates/usb-configuration-table.html b/modules-available/usblockoff/templates/usb-configuration-table.html index 45d0c229..35eede5a 100644 --- a/modules-available/usblockoff/templates/usb-configuration-table.html +++ b/modules-available/usblockoff/templates/usb-configuration-table.html @@ -66,8 +66,8 @@ ID - {{lang_configName}} - {{lang_ruleInfoTODO}} + {{lang_configName}} + {{lang_description}} {{lang_edit}} {{lang_delete}} @@ -77,7 +77,7 @@ {{config_id}} {{config_name}} - TODO: Show Rule information here + {{config_desc}} diff --git a/modules-available/usblockoff/templates/usb-edit-config.html b/modules-available/usblockoff/templates/usb-edit-config.html index 51166138..1cd24ce7 100644 --- a/modules-available/usblockoff/templates/usb-edit-config.html +++ b/modules-available/usblockoff/templates/usb-edit-config.html @@ -14,7 +14,7 @@
- +
@@ -22,6 +22,20 @@
+
+
+
+ +
+
+ +
+
+ + + +
+
@@ -54,3 +68,20 @@ + + + + + + diff --git a/modules-available/usblockoff/templates/usb-rules-config.html b/modules-available/usblockoff/templates/usb-rules-config.html index 6aed254d..8cb63d88 100644 --- a/modules-available/usblockoff/templates/usb-rules-config.html +++ b/modules-available/usblockoff/templates/usb-rules-config.html @@ -1,9 +1,9 @@
+ rules.conf - rules.conf
@@ -14,7 +14,7 @@ - {{lang_target}} + {{lang_action}} {{lang_attributes}} {{lang_edit}} {{lang_delete}} -- cgit v1.2.3-55-g7522