mirror of
https://github.com/haiwen/seahub.git
synced 2025-08-02 15:57:31 +00:00
Add password reset
This commit is contained in:
parent
e0c5529557
commit
930bd31c30
@ -208,6 +208,9 @@ HTTP_SERVER_ROOT = "http://localhost:8082"
|
||||
# Seafile-applet address and port, used in repo download
|
||||
CCNET_APPLET_ROOT = "http://localhost:13420"
|
||||
|
||||
# Account initial password, for password resetting.
|
||||
INIT_PASSWD = '123456'
|
||||
|
||||
SEAHUB_TITLE = 'SeaHub'
|
||||
|
||||
USE_SUBDOMAIN = False
|
||||
|
@ -13,12 +13,7 @@
|
||||
{% if messages %}
|
||||
<ul class="messages hide">
|
||||
{% for message in messages %}
|
||||
{% if message.tags == 'info' %}
|
||||
<li class="info">邮件发送成功。</li>
|
||||
{% endif %}
|
||||
{% if message.tags == 'error' %}
|
||||
<li class="info">邮件发送失败。</li>
|
||||
{% endif %}
|
||||
<li class="info">{{ message }}</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
{% endif %}
|
||||
@ -26,9 +21,9 @@
|
||||
<h3>所有用户</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<th width="70%">邮箱</th>
|
||||
<th width="65%">邮箱</th>
|
||||
<th width="20%">是否激活</th>
|
||||
<th width="10%">操作</th>
|
||||
<th width="15%">操作</th>
|
||||
</tr>
|
||||
|
||||
{% for user in users %}
|
||||
@ -42,6 +37,7 @@
|
||||
<td>
|
||||
{% if not user.is_self %}
|
||||
<button class="remove-user-btn" data="{{ SITE_ROOT }}useradmin/remove/{{ user.props.id }}/">删除</button>
|
||||
<button class="reset-user-btn" data="{{ SITE_ROOT }}useradmin/password/reset/{{ user.props.id }}/">密码重置</button>
|
||||
{% endif %}
|
||||
</td>
|
||||
</tr>
|
||||
@ -83,7 +79,7 @@ $('.activate').each(function(){
|
||||
});
|
||||
});
|
||||
|
||||
//delete confirm
|
||||
addConfirmTo($('.remove-user-btn'));
|
||||
addConfirmTo($('.reset-user-btn'), '确定要重置?');
|
||||
</script>
|
||||
{% endblock %}
|
||||
|
3
urls.py
3
urls.py
@ -5,7 +5,7 @@ from django.views.generic.simple import direct_to_template
|
||||
from seahub.views import root, myhome, \
|
||||
repo, repo_history, modify_token, remove_repo, sys_seafadmin, sys_useradmin, \
|
||||
activate_user, user_add, user_remove, sys_group_admin, sys_org_admin, \
|
||||
ownerhome, repo_history_revert, repo_file_edit, org_remove, \
|
||||
ownerhome, repo_history_revert, repo_file_edit, org_remove, user_reset, \
|
||||
user_info, repo_set_access_property, repo_access_file, \
|
||||
repo_remove_share, repo_download, org_info, repo_view_file, pdf_full_view, \
|
||||
seafile_access_check, repo_history_changes, \
|
||||
@ -82,6 +82,7 @@ urlpatterns = patterns('',
|
||||
(r'^useradmin/remove/(?P<user_id>[^/]+)/$', user_remove),
|
||||
(r'^useradmin/info/(?P<email>[^/]+)/$', user_info),
|
||||
(r'^useradmin/activate/(?P<user_id>[^/]+)/$', activate_user),
|
||||
(r'^useradmin/password/reset/(?P<user_id>[^/]+)/$', user_reset),
|
||||
|
||||
### Document previewd ###
|
||||
(r'^crocodoc/upload/$', crocodoc_upload),
|
||||
|
27
views.py
27
views.py
@ -55,7 +55,7 @@ try:
|
||||
from settings import CROCODOC_API_TOKEN
|
||||
except ImportError:
|
||||
CROCODOC_API_TOKEN = None
|
||||
from settings import FILE_PREVIEW_MAX_SIZE
|
||||
from settings import FILE_PREVIEW_MAX_SIZE, INIT_PASSWD
|
||||
|
||||
@login_required
|
||||
def root(request):
|
||||
@ -1219,10 +1219,27 @@ def activate_user(request, user_id):
|
||||
except User.DoesNotExist:
|
||||
pass
|
||||
|
||||
return HttpResponseRedirect(reverse('useradmin'))
|
||||
return HttpResponseRedirect(reverse('sys_useradmin'))
|
||||
|
||||
@login_required
|
||||
@sys_staff_required
|
||||
def user_reset(request, user_id):
|
||||
"""Reset password for user."""
|
||||
try:
|
||||
user = User.objects.get(id=int(user_id))
|
||||
user.password = INIT_PASSWD
|
||||
user.save()
|
||||
|
||||
msg =u'密码重置成功。初始密码为%s,请联系该用户更改密码。' % INIT_PASSWD
|
||||
messages.add_message(request, messages.INFO, msg)
|
||||
except User.DoesNotExist:
|
||||
msg =u'密码重置失败,用户不存在。'
|
||||
messages.add_message(request, messages.ERROR, msg)
|
||||
|
||||
return HttpResponseRedirect(reverse('sys_useradmin'))
|
||||
|
||||
def send_user_add_mail(request, email, password):
|
||||
""" Send email when add new user """
|
||||
"""Send email when add new user."""
|
||||
|
||||
use_https = request.is_secure()
|
||||
domain = RequestSite(request).domain
|
||||
@ -1239,9 +1256,9 @@ def send_user_add_mail(request, email, password):
|
||||
try:
|
||||
send_mail(u'SeaCloud注册信息', t.render(Context(c)),
|
||||
None, [email], fail_silently=False)
|
||||
messages.add_message(request, messages.INFO, email)
|
||||
messages.add_message(request, messages.INFO, '邮件发送成功。')
|
||||
except:
|
||||
messages.add_message(request, messages.ERROR, email)
|
||||
messages.add_message(request, messages.ERROR, '邮件发送失败。')
|
||||
|
||||
@login_required
|
||||
def user_add(request):
|
||||
|
Loading…
Reference in New Issue
Block a user