summaryrefslogtreecommitdiffstats
path: root/ogcp/views.py
diff options
context:
space:
mode:
authorJavier Sánchez Parra <jsanchez@soleta.eu>2022-08-22 17:02:13 +0200
committerJavier Sánchez Parra <jsanchez@soleta.eu>2022-09-27 09:48:35 +0200
commit0db56d5eee7d7d73073e904bb41cc1960ec1e29e (patch)
tree80388f32990018657762fe721b6fed8a1444ed50 /ogcp/views.py
parentf16b1a0347bb587cd4116faf246d4a5176af3cfd (diff)
Adapt Import Clients to work with several ogServers
This commit makes Import Clients view to use ogServer field from scopesForm to send the command to the correct ogServer.
Diffstat (limited to 'ogcp/views.py')
-rw-r--r--ogcp/views.py7
1 files changed, 5 insertions, 2 deletions
diff --git a/ogcp/views.py b/ogcp/views.py
index 560ff5c..af1df47 100644
--- a/ogcp/views.py
+++ b/ogcp/views.py
@@ -893,7 +893,9 @@ def action_clients_import_get():
return redirect(url_for('scopes'))
form = ImportClientsForm()
- r = g.server.get('/scopes')
+ form.server.data = params['scope-server']
+ server = get_server_from_ip_port(params['scope-server'])
+ r = server.get('/scopes')
rooms = parse_scopes_from_tree(r.json(), 'room')
selected_room_id = params['scope-room']
selected_room = [(room['id'], room['name'] + " (" + room['parent'] + ")")
@@ -926,6 +928,7 @@ OG_CLIENT_DEFAULT_REMOTE = False
@login_required
def action_clients_import_post():
form = ImportClientsForm(request.form)
+ server = get_server_from_ip_port(form.server.data)
clients = re.findall(OG_REGEX_DHCPD_CONF, form.dhcpd_conf.data)
if not clients:
flash(_('No clients found. Check the dhcpd.conf file.'),
@@ -943,7 +946,7 @@ def action_clients_import_post():
payload['name'] = client[0]
payload['mac'] = client[1].replace(':', '')
payload['ip'] = client[2]
- resp = g.server.post('/client/add', payload)
+ resp = server.post('/client/add', payload)
if resp.status_code != requests.codes.ok:
flash(_('ogServer: error adding client {}').format(client[0]),
category='error')