From 5948163164b2501b1f43fb9a4e3a8aceaaf79d56 Mon Sep 17 00:00:00 2001 From: Reena-cell Date: Tue, 31 Jan 2023 11:50:31 +0100 Subject: [PATCH] bugfix/ username in Lock/unlock --- apimanager/base/templates/base.html | 2 +- .../templates/metrics/custom_summary.html | 4 +- apimanager/users/views.py | 64 ++++++++----------- 3 files changed, 31 insertions(+), 39 deletions(-) diff --git a/apimanager/base/templates/base.html b/apimanager/base/templates/base.html index 6c5fc6f..e5facb6 100644 --- a/apimanager/base/templates/base.html +++ b/apimanager/base/templates/base.html @@ -66,7 +66,7 @@
  • {% trans "Account Create" %}
  • {% trans "Account List" %}
  • -
  • {% trans "Customers" %}
  • +
  • {% trans "Customer Create" %}
  • {% trans "Customer List" %}
  • {% trans "Branches" %}
  • {% trans "ATM Create" %}
  • diff --git a/apimanager/metrics/templates/metrics/custom_summary.html b/apimanager/metrics/templates/metrics/custom_summary.html index 8ee8dbb..0b0f413 100644 --- a/apimanager/metrics/templates/metrics/custom_summary.html +++ b/apimanager/metrics/templates/metrics/custom_summary.html @@ -38,14 +38,14 @@
    {% if form.from_date_custom.errors %}
    {{ form.from_date_custom.errors }}
    {% endif %}
    - {% trans "from_date_custom" %} + {% trans "From Date Custom" %} {{ form.from_date_custom }}
    {% if form.to_date.errors %}
    {{ form.to_date.errors }}
    {% endif %}
    - {% trans "to_date" %} + {% trans "To Date Custom" %} {{ form.to_date }}
    diff --git a/apimanager/users/views.py b/apimanager/users/views.py index 3237db2..6144dd1 100644 --- a/apimanager/users/views.py +++ b/apimanager/users/views.py @@ -248,7 +248,7 @@ class MyDetailView(LoginRequiredMixin, FormView): messages.error(self.request, err) except Exception as err: messages.error(self.request, err) - user["entitlements"]["list"] = sorted(user["entitlements"]["list"], key=lambda d: d['role_name']) + context.update({ 'apiuser': user, # 'user' is logged-in user in template context }) @@ -360,16 +360,38 @@ class UserStatusUpdateView(LoginRequiredMixin, View): api = API(self.request.session.get('obp')) try: if(request.POST.get("Delete")): - self._delete_user(api, request, args, kwargs) + urlpath = '/users/{}'.format(kwargs['user_id']) + result = api.delete(urlpath) + if result is not None and 'code' in result and result['code'] >= 400: + messages.error(request, result['message']) + else: + msg = 'User with ID {} has been deleted.'.format(kwargs['user_id']) + messages.success(request, msg) elif(request.POST.get("Lock")): - self._lock_user(api, request, args, kwargs) + urlpath = '/users/{}/locks'.format(kwargs['username']) + result = api.post(urlpath, None) + if result is not None and 'code' in result and result['code'] >= 400: + messages.error(request, result['message']) + else: + msg = 'User {} has been lock.'.format(kwargs['username']) + messages.success(request, msg) else: - self._lock_status_user(api, request, args, kwargs) + urlpath = '/users/{}/lock-status'.format(kwargs['username']) + result = api.put(urlpath, None) + #if result is not None and 'code' in result and result['code'] >= 400: + if 'code' in result and result['code'] == 404: + msg = 'User {} has been unlocked.'.format(kwargs['username']) + messages.success(request, msg) + else: + messages.error(request, result['message']) + #else: + # msg = 'User {} has been unlocked.'.format(kwargs['username']) + # messages.success(request, msg) except APIError as err: messages.error(request, err) - except Exception as err: - messages.error(self.request, err) + except Exception as e: + messages.error(self.request, 'Unknown Error' + str(e)) # from sonarcloud: Change this code to not perform redirects based on user-controlled data. redirect_url_from_gui = request.POST.get('next', reverse('users-index')) @@ -382,36 +404,6 @@ class UserStatusUpdateView(LoginRequiredMixin, View): return HttpResponseRedirect(redirect_url) - def _delete_user(self, api, request, *args, **kwargs): - urlpath = '/users/{}'.format(kwargs['user_id']) - result = api.delete(urlpath) - if result is not None and 'code' in result and result['code'] >= 400: - messages.error(request, result['message']) - else: - msg = 'User with ID {} has been deleted.'.format(kwargs['user_id']) - messages.success(request, msg) - - def _lock_user(self, api, request, *args, **kwargs): - urlpath = '/users/{}/locks'.format(kwargs['username']) - result = api.post(urlpath, None) - if result is not None and 'code' in result and result['code'] >= 400: - messages.error(request, result['message']) - else: - msg = 'User {} has been lock.'.format(kwargs['username']) - messages.success(request, msg) - - def _lock_status_user(self, api, request, *args, **kwargs): - urlpath = '/users/{}/lock-status'.format(kwargs['username']) - result = api.put(urlpath, None) - #if result is not None and 'code' in result and result['code'] >= 400: - if 'code' in result and result['code'] == 404: - msg = 'User {} has been unlocked.'.format(kwargs['username']) - messages.success(request, msg) - else: - messages.error(request, result['message']) - #else: - # msg = 'User {} has been unlocked.'.format(kwargs['username']) - # messages.success(request, msg) class ExportCsvView(LoginRequiredMixin, View): """View to export the user to csv"""