summaryrefslogtreecommitdiffstats
path: root/ogcp
diff options
context:
space:
mode:
authorJavier Hernandez <jhernandez@soleta.eu>2024-02-05 12:07:35 +0100
committerOpenGnSys Support Team <soporte-og@soleta.eu>2024-02-05 12:08:48 +0100
commit7955baf35c46515e6b845d6805b3d8b55f0eb27d (patch)
tree8ead62be7cca3e3481d59b50d179ea7ef52d1782 /ogcp
parent6153ca426f9f880c70564ecb2d5346d64c2802eb (diff)
views: preselect pxe boot mode in add client
preselect 'pxe' (if available) at adding a new client. use a dedicated template for adding a client and remove irrelevant partition table; client has yet to set its partition, so everytime, the table would load empty.
Diffstat (limited to 'ogcp')
-rw-r--r--ogcp/templates/actions/client_add.html19
-rw-r--r--ogcp/views.py6
2 files changed, 23 insertions, 2 deletions
diff --git a/ogcp/templates/actions/client_add.html b/ogcp/templates/actions/client_add.html
new file mode 100644
index 0000000..b1c37a5
--- /dev/null
+++ b/ogcp/templates/actions/client_add.html
@@ -0,0 +1,19 @@
+{% extends parent %}
+{% import "bootstrap/wtf.html" as wtf %}
+
+{% set sidebar_state = 'disabled' %}
+{% set btn_back = true %}
+
+{% block nav_client %} active{% endblock %}
+{% block nav_client_details %} active{% endblock %}
+{% block nav_client_add %}active{% endblock %}
+{% block content %}
+
+<h1 class="m-5">{{_('Add client')}}</h1>
+
+{{ wtf.quick_form(form,
+ method='post',
+ button_map={'submit': 'primary'},
+ extra_classes="mx-5") }}
+
+{% endblock %}
diff --git a/ogcp/views.py b/ogcp/views.py
index 572b784..8f94cad 100644
--- a/ogcp/views.py
+++ b/ogcp/views.py
@@ -1312,7 +1312,9 @@ def action_client_add():
if r.status_code != requests.codes.ok:
return ogserver_error('scopes')
- available_modes = [(mode, mode) for mode in r.json()['modes']]
+ available_modes = [(mode, mode) for mode in r.json()['modes'] if mode == 'pxe']
+ available_modes.extend([(mode, mode) for mode in r.json()['modes'] if mode != 'pxe'])
+
form.boot.choices = list(available_modes)
form.mac.render_kw = {'placeholder': 'aabbccddeeaa'}
@@ -1344,7 +1346,7 @@ def action_client_add():
form.submit.render_kw = {"formaction": url_for('action_client_add')}
scopes, clients = get_scopes()
- return render_template('actions/client_details.html', form=form,
+ return render_template('actions/client_add.html', form=form,
parent="scopes.html", scopes=scopes)
PLACEHOLDER_TEXT = '''host example1 { hardware ethernet 94:c6:91:a6:25:1a; fixed-address 10.141.10.100; }