diff options
author | Simon Rettberg | 2019-12-10 15:10:31 +0100 |
---|---|---|
committer | Simon Rettberg | 2019-12-10 15:10:31 +0100 |
commit | e7cc4e9d0e9a40274c8e337d0330e19dc450d929 (patch) | |
tree | 9b4e1721a3f383811d06ce7b1a26466d93548dd9 /modules-available/serversetup-bwlp-ipxe/inc | |
parent | [minilinux] Remove debug output (diff) | |
download | slx-admin-e7cc4e9d0e9a40274c8e337d0330e19dc450d929.tar.gz slx-admin-e7cc4e9d0e9a40274c8e337d0330e19dc450d929.tar.xz slx-admin-e7cc4e9d0e9a40274c8e337d0330e19dc450d929.zip |
[serversetup-bwlp-ipxe/minilinux] Add comments, fix minor logic bug
Saving a boot entry didn't properly check the validity of a hook's ID,
which was broken anyways, so the invalid check didn't uncover that the
actual cheking code didn't work either.
Diffstat (limited to 'modules-available/serversetup-bwlp-ipxe/inc')
-rw-r--r-- | modules-available/serversetup-bwlp-ipxe/inc/bootentryhook.inc.php | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/modules-available/serversetup-bwlp-ipxe/inc/bootentryhook.inc.php b/modules-available/serversetup-bwlp-ipxe/inc/bootentryhook.inc.php index cf180006..73611b0a 100644 --- a/modules-available/serversetup-bwlp-ipxe/inc/bootentryhook.inc.php +++ b/modules-available/serversetup-bwlp-ipxe/inc/bootentryhook.inc.php @@ -26,6 +26,10 @@ abstract class BootEntryHook */ public abstract function extraFields(); + /** + * @param string $id + * @return bool + */ public abstract function isValidId($id); /** @@ -63,16 +67,30 @@ abstract class BootEntryHook return $this->getBootEntryInternal($data); } - public function setSelected($id) + /** + * @param string $mixed either the plain ID if the entry to be marked as selected, or the JSON string representing + * the entire entry, which must have a key called 'id' that will be used as the ID then. + */ + public function setSelected($mixed) { - $json = @json_decode($id, true); + $json = @json_decode($mixed, true); if (is_array($json)) { $id = $json['id']; $this->data = $json; + } else { + $id = $mixed; } $this->selectedId = $id; } + /** + * @return string ID of entry that was marked as selected by setSelected() + */ + public function getSelected() + { + return $this->selectedId; + } + public function renderExtraFields() { $list = $this->extraFields(); |