several changes on auth flow
Change-Id: I49ddbb074a9bc018b9e5becafbe5956fa5860333
Signed-off-by: lombardofr <lombardo@everyup.it>
diff --git a/sdnctrlhandler/template/sdn_create.html b/sdnctrlhandler/template/sdn_create.html
index 60249a3..75d010d 100644
--- a/sdnctrlhandler/template/sdn_create.html
+++ b/sdnctrlhandler/template/sdn_create.html
@@ -19,7 +19,7 @@
{% block breadcrumb_body %}
{{ block.super }}
- <li><a href="{% url 'projects:sdns:list' project_id=project_id %}">SDN Controllers</a></li>
+ <li><a href="{% url 'projects:sdns:list' %}">SDN Controllers</a></li>
{% endblock %}
{% block content_body %}
@@ -27,7 +27,7 @@
<div class="row">
<div class="col-md-12">
- <form action='{% url 'projects:sdns:create' project_id=project_id %}' method="post">
+ <form action='{% url 'projects:sdns:create' %}' method="post">
{% csrf_token %}
<div class="box">
<div class="box-header with-border">
@@ -120,7 +120,7 @@
</div>
<div class="box-footer">
- <button onclick="location.href='{% url 'projects:sdns:list' project_id=project_id %}'"
+ <button onclick="location.href='{% url 'projects:sdns:list' %}'"
class="btn btn-default pull-left">Back to
SDN Controllers
</button>
diff --git a/sdnctrlhandler/template/sdn_list.html b/sdnctrlhandler/template/sdn_list.html
index 8abb5e0..acb73d1 100644
--- a/sdnctrlhandler/template/sdn_list.html
+++ b/sdnctrlhandler/template/sdn_list.html
@@ -17,7 +17,7 @@
{% block breadcrumb_body %}
{{ block.super }}
- <li><a href="{% url 'projects:sdns:list' project_id=project_id %}">SDN Controllers</a></li>
+ <li><a href="{% url 'projects:sdns:list' %}">SDN Controllers</a></li>
{% endblock %}
{% block content_body %}
@@ -31,7 +31,7 @@
<div class="box-header with-border">
<h3 class="box-title">Registered SDN Controllers</h3>
<div class="box-tools">
- <a href='{% url "projects:sdns:create" project_id=project_id %}' class="btn btn-block btn-primary btn-sm"><i
+ <a href='{% url "projects:sdns:create" %}' class="btn btn-block btn-primary btn-sm"><i
class="fa fa-plus"></i><span> New SDN Controller</span></a>
</div>
</div>
@@ -61,10 +61,10 @@
<td>
<div class="btn-group">
<button type="button" class="btn btn-default"
- onclick="javascript:showSDN('{{ project_id }}', '{{ s|get:"_id" }}')" data-toggle="tooltip" data-placement="top" data-container="body" title="Show Info"><i
+ onclick="javascript:showSDN( '{{ s|get:"_id" }}')" data-toggle="tooltip" data-placement="top" data-container="body" title="Show Info"><i
class="fa fa-info"></i></button>
<button type="button" class="btn btn-default"
- onclick="javascript:deleteSDN('{{ project_id }}', '{{ s|get:"_id" }}')" data-toggle="tooltip" data-placement="top" data-container="body" title="Delete"><i
+ onclick="javascript:deleteSDN('{{ s|get:"_id" }}')" data-toggle="tooltip" data-placement="top" data-container="body" title="Delete"><i
class="far fa-trash-alt" ></i></button>
</div>
</td>
diff --git a/sdnctrlhandler/views.py b/sdnctrlhandler/views.py
index f01f8b2..26488ce 100644
--- a/sdnctrlhandler/views.py
+++ b/sdnctrlhandler/views.py
@@ -19,7 +19,7 @@
from django.http import HttpResponse
import json
import logging
-#from lib.osm.osmclient.client import Client
+import authosm.utils as osmutils
from lib.osm.osmclient.clientv2 import Client
logging.basicConfig(level=logging.DEBUG)
@@ -27,9 +27,11 @@
@login_required
-def list(request, project_id):
+def list(request):
+ user = osmutils.get_user(request)
+ project_id = user.project_id
client = Client()
- result = client.sdn_list(request.session['token'])
+ result = client.sdn_list(user.get_token())
result = {
'project_id': project_id,
@@ -39,7 +41,9 @@
@login_required
-def create(request, project_id):
+def create(request):
+ user = osmutils.get_user(request)
+ project_id = user.project_id
result = {'project_id': project_id}
if request.method == 'GET':
return __response_handler(request, result, 'sdn_create.html')
@@ -57,25 +61,29 @@
sdn_data = dict(filter(lambda i: i[0] in keys and len(i[1]) > 0, new_sdn_dict.items()))
sdn_data['port'] = int(sdn_data['port'])
- result = client.sdn_create(request.session['token'], sdn_data)
+ result = client.sdn_create(user.get_token(), sdn_data)
- return __response_handler(request, result, 'projects:sdns:list', to_redirect=True, project_id=project_id)
+ return __response_handler(request, result, 'projects:sdns:list', to_redirect=True, )
@login_required
-def delete(request, project_id, sdn_id=None):
+def delete(request, sdn_id=None):
+ user = osmutils.get_user(request)
+ project_id = user.project_id
try:
client = Client()
- del_res = client.sdn_delete(request.session['token'], sdn_id)
+ del_res = client.sdn_delete(user.get_token(), sdn_id)
except Exception as e:
log.exception(e)
- return __response_handler(request, {}, 'projects:sdns:list', to_redirect=True, project_id=project_id)
+ return __response_handler(request, {}, 'projects:sdns:list', to_redirect=True, )
@login_required
-def show(request, project_id, sdn_id=None):
+def show(request, sdn_id=None):
+ user = osmutils.get_user(request)
+ project_id = user.project_id
client = Client()
- result = client.sdn_get(request.session['token'], sdn_id)
+ result = client.sdn_get(user.get_token(), sdn_id)
if isinstance(result, dict) and 'error' in result and result['error']:
return render(request, 'error.html')
return __response_handler(request, {