From 4d773b27e9c5cc854c4525a2000f47eccc4f15fd Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Wed, 20 Mar 2019 10:36:08 +0100 Subject: [serversetup-bwlp-ipxe] Fix editing menuchain entries, tweak script --- modules-available/serversetup-bwlp-ipxe/api.inc.php | 4 +++- modules-available/serversetup-bwlp-ipxe/page.inc.php | 7 +++++-- .../serversetup-bwlp-ipxe/templates/menu-edit.html | 11 +++-------- 3 files changed, 11 insertions(+), 11 deletions(-) (limited to 'modules-available/serversetup-bwlp-ipxe') diff --git a/modules-available/serversetup-bwlp-ipxe/api.inc.php b/modules-available/serversetup-bwlp-ipxe/api.inc.php index 7a81f430..ec5fc577 100644 --- a/modules-available/serversetup-bwlp-ipxe/api.inc.php +++ b/modules-available/serversetup-bwlp-ipxe/api.inc.php @@ -71,8 +71,10 @@ if (substr($ip, 0, 7) === '::ffff:') { $menu = Request::get('menuid', false, 'int'); if ($menu !== false) { $menu = new IPxeMenu($menu); + $initLabel = 'slx_menu'; } else { $menu = IPxeMenu::forClient($ip, $uuid); + $initLabel = 'init'; } @@ -133,7 +135,7 @@ if ($slxExtensions) { $output = <<fetch(PDO::FETCH_ASSOC)) { + if ($row['entryid'] === null && $row['refmenuid'] !== null) { + $row['entryid'] = 'menu:' . $row['refmenuid']; + } if ($row['entryid'] == $highlight) { $row['highlight'] = 'active'; } @@ -399,7 +402,7 @@ class Page_ServerSetup extends Page $menu['entrylist'] = array_merge( Database::queryAll("SELECT entryid, title, hotkey, data FROM serversetup_bootentry ORDER BY title ASC"), // Add all menus, so we can link - Database::queryAll("SELECT Concat('menu=', menuid) AS entryid, title FROM serversetup_menu ORDER BY title ASC") + Database::queryAll("SELECT Concat('menu:', menuid) AS entryid, title FROM serversetup_menu ORDER BY title ASC") ); class_exists('BootEntry'); // Leave this here for StandardBootEntry foreach ($menu['entrylist'] as &$bootentry) { @@ -649,7 +652,7 @@ class Page_ServerSetup extends Page 'hidden' => (int)$entry['hidden'], // TODO (needs hotkey to make sense) 'plainpass' => $entry['plainpass'], ]; - if (preg_match('/^menu=(\d+)$/', $entry['entryid'], $out)) { + if (preg_match('/^menu:(\d+)$/', $entry['entryid'], $out)) { $params['refmenuid'] = $out[1]; } else { $params['entryid'] = $entry['entryid']; diff --git a/modules-available/serversetup-bwlp-ipxe/templates/menu-edit.html b/modules-available/serversetup-bwlp-ipxe/templates/menu-edit.html index 701411bf..16d96d6b 100644 --- a/modules-available/serversetup-bwlp-ipxe/templates/menu-edit.html +++ b/modules-available/serversetup-bwlp-ipxe/templates/menu-edit.html @@ -69,17 +69,12 @@ - @@ -333,7 +328,7 @@ $('#entry-list').change(function(e) { var modal = $('#entry-chooser-modal'); modal.find('.entrydata').hide(); - modal.find('#entrydata-' + $(this).val()).show(); + modal.find('#entrydata-' + $(this).val().replace(':', '\\:')).show(); }); var currentEntryButton = null; -- cgit v1.2.3-55-g7522