X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=projecthandler%2Fviews.py;h=06b4770def158f6bc86a8a35ec3bdb9f03dd3e9b;hb=4908f382154fddb84d72ce8d516229649c01b606;hp=575d2534d27b51d7f2178bdf1624338ed2d1e345;hpb=10b52d1480ad41e7a1d51575f1e5f4ea762b2dd6;p=osm%2FLW-UI.git diff --git a/projecthandler/views.py b/projecthandler/views.py index 575d253..06b4770 100644 --- a/projecthandler/views.py +++ b/projecthandler/views.py @@ -18,7 +18,7 @@ import json import logging import yaml -from django.contrib.auth.decorators import login_required +from sf_t3d.decorators import login_required from django.http import HttpResponse, JsonResponse from django.shortcuts import render, redirect @@ -64,7 +64,6 @@ def user_projects(request): },'projectlist.html') - def open_composer(request): user = osmutils.get_user(request) project_id = user.project_id @@ -255,6 +254,7 @@ def open_project(request): client = Client() ##TODO change with adhoc api call + prj = client.project_get(user.get_token(), project_id) nsd = client.nsd_list(user.get_token()) vnfd = client.vnfd_list(user.get_token()) ns = client.ns_list(user.get_token()) @@ -262,9 +262,9 @@ def open_project(request): project_overview = { 'owner': user.username, 'name': project_id, - 'updated_date': '-', - 'created_date': '-', - 'info': '-', + 'updated_date': prj['data']['_admin']['modified'] if prj and prj['error'] is False else '-', + 'created_date': prj['data']['_admin']['created'] if prj and prj['error'] is False else '-', + 'type': 'osm', 'nsd': len(nsd['data']) if nsd and nsd['error'] is False else 0, 'vnfd': len(vnfd['data']) if vnfd and vnfd['error'] is False else 0, @@ -280,9 +280,9 @@ def open_project(request): @login_required -def delete_project(request): +def delete_project(request, project_id): user = osmutils.get_user(request) - project_id = user.project_id + client = Client() result = client.project_delete(user.get_token(), project_id) if isinstance(result, dict) and 'error' in result and result['error']: @@ -300,6 +300,23 @@ def switch_project(request, project_id): return redirect('projects:open_project') +@login_required +def edit_project(request, project_id): + if request.method == 'POST': + user = osmutils.get_user(request) + client = Client() + project_dict = request.POST.dict() + keys = ["name"] + project_data = dict(filter(lambda i: i[0] in keys and len(i[1]) > 0, project_dict.items())) + result = client.project_edit(user.get_token(), project_id, project_data) + if isinstance(result, dict) and 'error' in result and result['error']: + print result + return __response_handler(request, result['data'], url=None, + status=result['data']['status'] if 'status' in result['data'] else 500) + else: + return __response_handler(request, {}, url=None, status=200) + + @login_required def show_descriptors(request, descriptor_type=None): user = osmutils.get_user(request)