+
+
+ {% trans 'Quick modify' %}
-
-
{% trans "Paste your SSH Public Key here" %}
-
-
+
+
+
+
+ {% trans 'Reset password' %}: |
+
+
+
+
+ |
+
+
+ {% trans 'Reset public key' %}: |
+
+
+
+
+ |
+
+
+ {% trans 'Test admin user' %}: |
+
+
+
+
+ |
+
+
+ {% trans 'Test system pingpong' %}: |
+
+
+
+
+ |
+
+
+
+
diff --git a/apps/users/templates/users/user_profile_update.html b/apps/users/templates/users/user_profile_update.html
new file mode 100644
index 000000000..1d926d7c6
--- /dev/null
+++ b/apps/users/templates/users/user_profile_update.html
@@ -0,0 +1,77 @@
+{% extends 'base.html' %}
+{% load static %}
+{% load i18n %}
+{% load bootstrap %}
+
+{% block custom_head_css_js %}
+
+
+
+
+
+{% endblock %}
+{% block content %}
+
+{% endblock %}
+
+{% block custom_foot_js %}
+
+
+{% endblock %}
diff --git a/apps/users/urls/views_urls.py b/apps/users/urls/views_urls.py
index 9ec2fecf6..a51b5738e 100644
--- a/apps/users/urls/views_urls.py
+++ b/apps/users/urls/views_urls.py
@@ -25,6 +25,9 @@ urlpatterns = [
url(r'^profile/$',
views.UserProfileView.as_view(),
name='user-profile'),
+ url(r'^profile/update/$',
+ views.UserProfileUpdateView.as_view(),
+ name='user-profile-update'),
# User view
url(r'^user$', views.UserListView.as_view(), name='user-list'),
diff --git a/apps/users/views/user.py b/apps/users/views/user.py
index eaa9b26b4..03e00ab1b 100644
--- a/apps/users/views/user.py
+++ b/apps/users/views/user.py
@@ -36,7 +36,9 @@ from perms.models import AssetPermission
__all__ = ['UserListView', 'UserCreateView', 'UserDetailView',
'UserUpdateView', 'UserAssetPermissionCreateView',
'UserAssetPermissionView', 'UserGrantedAssetView',
- 'UserExportView', 'UserBulkImportView', 'UserProfileView']
+ 'UserExportView', 'UserBulkImportView', 'UserProfileView',
+ 'UserProfileUpdateView',
+ ]
logger = get_logger(__name__)
@@ -311,18 +313,40 @@ class UserProfileView(LoginRequiredMixin, TemplateView):
template_name = 'users/user_profile.html'
def get_context_data(self, **kwargs):
- from perms.utils import (get_user_granted_assets,
- get_user_granted_asset_groups,
- get_user_asset_permissions)
+ from perms.utils import get_user_granted_assets
assets = get_user_granted_assets(self.request.user)
- asset_groups = get_user_granted_asset_groups(self.request.user)
- permissions = get_user_asset_permissions(self.request.user)
context = {
'app': 'User',
'action': 'User Profile',
'assets': assets,
- 'asset_groups': asset_groups,
- 'permissions': permissions
}
kwargs.update(context)
return super(UserProfileView, self).get_context_data(**kwargs)
+
+
+class UserProfileUpdateView(LoginRequiredMixin, UpdateView):
+ template_name = 'users/user_profile_update.html'
+ model = User
+ form_class = forms.UserProfileForm
+ success_url = reverse_lazy('users:user-profile')
+ success_message = _('Create user
%s successfully.')
+
+ def get_object(self, queryset=None):
+ return self.request.user
+
+ def get_success_message(self, cleaned_data):
+ return self.success_message % (
+ reverse_lazy('users:user-detail', kwargs={'pk': self.object.pk}),
+ self.object.name,
+ )
+
+ def get_context_data(self, **kwargs):
+ from perms.utils import get_user_granted_assets
+ assets = get_user_granted_assets(self.request.user)
+ context = {
+ 'app': 'User',
+ 'action': 'User Profile',
+ 'assets': assets,
+ }
+ kwargs.update(context)
+ return super(UserProfileUpdateView, self).get_context_data(**kwargs)
\ No newline at end of file