X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;ds=inline;f=userhandler%2Fviews.py;h=0c12a848acb72349a2df0db3ede27b926d072b6d;hb=refs%2Fchanges%2F81%2F7481%2F1;hp=a7c014d2c75d61e2662ce676917058c6f680482f;hpb=5aea5b7cee866c7abb3f414ab80a172a29e35318;p=osm%2FLW-UI.git diff --git a/userhandler/views.py b/userhandler/views.py index a7c014d..0c12a84 100644 --- a/userhandler/views.py +++ b/userhandler/views.py @@ -1,3 +1,19 @@ +# +# Copyright 2018 EveryUP Srl +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + from django.shortcuts import render, redirect from sf_t3d.decorators import login_required from django.http import HttpResponse @@ -30,10 +46,12 @@ def create(request): "password": request.POST['password'], "projects": request.POST.getlist('projects') } - result = client.user_create(user.get_token(), user_data) - - return __response_handler(request, result, 'users:list', to_redirect=True) + if result['error']: + 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 @@ -41,10 +59,15 @@ def delete(request, user_id=None): user = osmutils.get_user(request) try: client = Client() - del_res = client.user_delete(user.get_token(), user_id) + result = client.user_delete(user.get_token(), user_id) except Exception as e: log.exception(e) - return __response_handler(request, {}, 'users:list', to_redirect=True, ) + result = {'error': True, 'data': str(e)} + if result['error']: + 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 update(request, user_id=None):