diff options
author | Javier Sánchez Parra <jsanchez@soleta.eu> | 2022-08-22 16:54:45 +0200 |
---|---|---|
committer | Javier Sánchez Parra <jsanchez@soleta.eu> | 2022-08-31 15:57:52 +0200 |
commit | 0466b009ae6f99d62505702ba0a7ab0cf2e6eb53 (patch) | |
tree | aafc97547ec545b922ae06d1f13ab459ff180afd /ogcp/views.py | |
parent | 88a01f018c80e175df41d22ebf0925ec17f1be13 (diff) |
Import clients to a room using the scopes tree
With this commit users can select a room from the scopes tree, and then
import clients to that room.
Diffstat (limited to 'ogcp/views.py')
-rw-r--r-- | ogcp/views.py | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/ogcp/views.py b/ogcp/views.py index a60a8d6..560ff5c 100644 --- a/ogcp/views.py +++ b/ogcp/views.py @@ -887,12 +887,20 @@ def action_client_add(): @app.route('/action/clients/import', methods=['GET']) @login_required def action_clients_import_get(): + params = request.args.to_dict() + if not params.get('scope-room'): + flash(_('Please, select one room'), category='error') + return redirect(url_for('scopes')) + form = ImportClientsForm() r = g.server.get('/scopes') rooms = parse_scopes_from_tree(r.json(), 'room') - rooms = [(room['id'], room['name'] + " (" + room['parent'] + ")") - for room in rooms] - form.room.choices = list(rooms) + selected_room_id = params['scope-room'] + selected_room = [(room['id'], room['name'] + " (" + room['parent'] + ")") + for room in rooms if room['id'] == int(selected_room_id)] + form.room.choices = selected_room + form.room.render_kw = {'readonly': True} + scopes, _clients = get_scopes() return render_template('actions/import_clients.html', form=form, scopes=scopes) |