1
0
mirror of https://github.com/haiwen/seahub.git synced 2025-09-20 19:08:21 +00:00

Use email in profile url, and clean code

This commit is contained in:
zhengxie
2015-06-27 14:12:46 +08:00
parent dfec4103b5
commit 5e9a8a98ce
25 changed files with 121 additions and 131 deletions

View File

@@ -22,7 +22,7 @@
{% for contact in contacts %}
<tr>
<td>{% avatar contact.contact_email 20 %}</td>
<td><a href="{% url 'user_profile' contact.contact_email|id_or_email%}">{{ contact.contact_email }}</a></td>
<td><a href="{% url 'user_profile' contact.contact_email %}">{{ contact.contact_email }}</a></td>
<td>{{ contact.profile.nickname }}</td>
<td>{{ contact.note }}</td>
<td data-email="{{ contact.contact_email }}" data-name="{{ contact.contact_name }}" data-note="{{ contact.note }}">

View File

@@ -4,10 +4,10 @@
{# for file/dir 'discuss to grp' #}
{% for msg in messages %}
<li class="msg ovhd" data-id="{{msg.id}}">
<a class="pic fleft" href="{% url 'user_profile' msg.from_email|id_or_email %}">{% avatar msg.from_email 48 %}</a>
<a class="pic fleft" href="{% url 'user_profile' msg.from_email %}">{% avatar msg.from_email 48 %}</a>
<div class="txt">
<div class="msg-main">
<a href="{% url 'user_profile' msg.from_email|id_or_email %}">{{ msg.from_email|email2nickname }}</a>
<a href="{% url 'user_profile' msg.from_email %}">{{ msg.from_email|email2nickname }}</a>
<span class="time">{{ msg.timestamp|translate_seahub_time }}</span>
<p class="msg-con">{{ msg.message|seahub_urlize|find_at|linebreaksbr }}</p>
<span class="say"></span>
@@ -23,7 +23,7 @@
<ul class="reply-list">
{% for r in msg.replies %}
<li class="reply w100 ovhd">
{% with id=r.from_email|id_or_email name=r.from_email|email2nickname %}
{% with id=r.from_email name=r.from_email|email2nickname %}
<a href="{% url 'user_profile' id %}" class="pic fleft">{% avatar r.from_email 28 %}</a>
<div class="txt">
<a href="{% url 'user_profile' id %}">{{ name }}</a>

View File

@@ -37,14 +37,14 @@
<ul class="msg-list">
{% for msg in group_msgs.object_list %}
<li class="msg w100 ovhd" data-id="{{msg.id}}">
<a href="{% url 'user_profile' msg.from_email|id_or_email %}" class="pic fleft">{% avatar msg.from_email 48 %}</a>
<a href="{% url 'user_profile' msg.from_email %}" class="pic fleft">{% avatar msg.from_email 48 %}</a>
<div class="txt">
<div class="msg-main">
<div class="msg-hd w100 ovhd">
{% if is_staff or msg.from_email == request.user.username %}
<span class="msg-del op fright vh">{% trans "Delete" %}</span>
{% endif %}
<a href="{% url 'user_profile' msg.from_email|id_or_email %}" class="author">{{ msg.from_email|email2nickname }}</a>
<a href="{% url 'user_profile' msg.from_email %}" class="author">{{ msg.from_email|email2nickname }}</a>
<span class="time">{{ msg.timestamp|translate_seahub_time }}</span>
</div>
<p class="msg-con">{{ msg.message|seahub_urlize|find_at|linebreaksbr }}</p>
@@ -92,7 +92,7 @@
<ul class="reply-list">
{% for r in msg.replies %}
<li class="reply w100 ovhd">
{% with id=r.from_email|id_or_email name=r.from_email|email2nickname %}
{% with id=r.from_email name=r.from_email|email2nickname %}
<a href="{% url 'user_profile' id %}" class="pic fleft">{% avatar r.from_email 28 %}</a>
<div class="txt">
<a href="{% url 'user_profile' id %}">{{ name }}</a>
@@ -145,12 +145,12 @@
{% if request.user.is_authenticated %}
<ul class="new-msg-list hide">
<li class="msg w100 ovhd hide">
<a href="{% url 'user_profile' request.user.username|id_or_email %}" class="pic fleft">{% avatar request.user.username 48 %}</a>
<a href="{% url 'user_profile' request.user.username %}" class="pic fleft">{% avatar request.user.username 48 %}</a>
<div class="txt">
<div class="msg-main">
<div class="msg-hd w100 ovhd">
<span class="msg-del op fright vh">{% trans "Delete" %}</span>
<a href="{% url 'user_profile' request.user.username|id_or_email %}" class="author">{{ request.user.username|email2nickname }}</a>
<a href="{% url 'user_profile' request.user.username %}" class="author">{{ request.user.username|email2nickname }}</a>
<span class="time">{% trans "Just now" %}</span>
</div>
<span class="say"></span>

View File

@@ -12,7 +12,7 @@
</div>
<ul class="user-list">
{% for m in members %}
{% with e=m.user_name id=m.user_name|id_or_email %}
{% with e=m.user_name id=m.user_name %}
<li class="user ovhd">
<a href="{% url 'user_profile' id %}" class="pic fleft">{% avatar e 48 %}</a>
<div class="txt fright">

View File

@@ -2,7 +2,7 @@
{% load url from future %}
{% for r in replies %}
{% with id=r.from_email|id_or_email name=r.from_email|email2nickname %}
{% with id=r.from_email name=r.from_email|email2nickname %}
<li class="reply w100 ovhd">
<a href="{% url 'user_profile' id %}" class="pic fleft">{% avatar r.from_email 28 %}</a>
<div class="txt">

View File

@@ -8,12 +8,12 @@
{% for msg in group_msgs %}
<li class="msg w100 ovhd" data-id="{{msg.id}}">
<div class="pic fleft">
<a href="{% url 'user_profile' msg.from_email|id_or_email %}">{% avatar msg.from_email 48 %}</a>
<a href="{% url 'user_profile' msg.from_email %}">{% avatar msg.from_email 48 %}</a>
</div>
<div class="txt">
<div class="msg-main">
<div class="msg-hd">
<a href="{% url 'user_profile' msg.from_email|id_or_email %}" title="{{msg.from_email|id_or_email}}" class="author">{{ msg.from_email|email2nickname }}</a>
<a href="{% url 'user_profile' msg.from_email %}" title="{{msg.from_email}}" class="author">{{ msg.from_email|email2nickname }}</a>
<span class="time">{{ msg.timestamp|translate_seahub_time }}</span>
<span class="group">{% trans "Group: " %}<a href="{% url 'group_info' msg.group_id %}">{{ msg.group_name }}</a></span>
</div>
@@ -51,9 +51,9 @@
<ul class="reply-list">
{% for r in msg.replies %}
<li class="reply w100 ovhd">
<a href="{% url 'user_profile' r.from_email|id_or_email %}" class="pic fleft">{% avatar r.from_email 28 %}</a>
<a href="{% url 'user_profile' r.from_email %}" class="pic fleft">{% avatar r.from_email 28 %}</a>
<div class="txt">
<a href="{% url 'user_profile' r.from_email|id_or_email %}">{{ r.from_email|email2nickname }}</a>
<a href="{% url 'user_profile' r.from_email %}">{{ r.from_email|email2nickname }}</a>
<span class="time">{{ r.timestamp|translate_seahub_time }}</span>
<span class="reply-at op vh" data="{{ r.from_email|email2nickname }}">{% trans 'Reply' %}</span>
<p class="reply-con">{{ r.message|seahub_urlize|find_at|linebreaksbr }}</p>

View File

@@ -2,7 +2,7 @@
{% for key,value in msgs %}
{% with not_read=value.not_read %}
<tr data-href="{% url 'user_msg_list' key|id_or_email %}" class="{% if not_read > 0 %}bold{% endif %}">
<tr data-href="{% url 'user_msg_list' key %}" class="{% if not_read > 0 %}bold{% endif %}">
<td class="alc">{% avatar key 20 %}</td>
<td>{{ key|email2nickname }}{% if not_read > 0%}({{not_read}}){% endif %}</td>
<td>{{ value.last_msg|seahub_urlize|truncatewords_html:12 }}</td>

View File

@@ -26,7 +26,7 @@
{% if msgs %}
{% for key,value in msgs %}
{% with not_read=value.not_read %}
<tr data-href="{% url 'user_msg_list' key|id_or_email %}" class="{% if not_read > 0 %}bold{% endif %}">
<tr data-href="{% url 'user_msg_list' key %}" class="{% if not_read > 0 %}bold{% endif %}">
<td class="alc">{% avatar key 20 %}</td>
<td>{{ key|email2nickname }}{% if not_read > 0%}({{not_read}}){% endif %}</td>
<td>{{ value.last_msg|seahub_urlize|truncatewords_html:12 }}</td>

View File

@@ -1,12 +1,12 @@
{% load seahub_tags avatar_tags i18n %}
<li class="msg w100 hide" data-id="{{msg.message_id}}">
<a href="{% url 'user_profile' msg.from_email|id_or_email %}" class="pic fleft">{% avatar msg.from_email 48 %}</a>
<a href="{% url 'user_profile' msg.from_email %}" class="pic fleft">{% avatar msg.from_email 48 %}</a>
<div class="txt">
<div class="msg-main">
<div class="msg-hd w100 ovhd">
<span class="msg-del op fright vh">{% trans "Delete" %}</span>
<a class="author" href="{% url 'user_profile' msg.from_email|id_or_email %}">{{ msg.from_email|email2nickname }}</a>
<a class="author" href="{% url 'user_profile' msg.from_email %}">{{ msg.from_email|email2nickname }}</a>
<span class="time">{{ msg.timestamp|translate_seahub_time }}</span>
</div>
<p class="msg-con">{{ msg.message|seahub_urlize|find_at|linebreaksbr }}</p>

View File

@@ -40,10 +40,10 @@
{% for msg in person_msgs.object_list %}
{% if msg.to_email == request.user.email %}
<li class="msg msg-received w100" data-id="{{msg.message_id}}">
<a href="{% url 'user_profile' msg.from_email|id_or_email %}" class="pic fright">{% avatar msg.from_email 48 %}</a>
<a href="{% url 'user_profile' msg.from_email %}" class="pic fright">{% avatar msg.from_email 48 %}</a>
{% else %}
<li class="msg msg-send w100" data-id="{{msg.message_id}}">
<a href="{% url 'user_profile' msg.from_email|id_or_email %}" class="pic fleft">{% avatar msg.from_email 48 %}</a>
<a href="{% url 'user_profile' msg.from_email %}" class="pic fleft">{% avatar msg.from_email 48 %}</a>
{% endif %}
<div class="txt">
<div class="msg-main">
@@ -53,7 +53,7 @@
{% else %}
<span class="re-msg-del op fright vh">{% trans "Delete" %}</span>
{% endif %}
<a class="author" href="{% url 'user_profile' msg.from_email|id_or_email %}">{{ msg.from_email|email2nickname }}</a>
<a class="author" href="{% url 'user_profile' msg.from_email %}">{{ msg.from_email|email2nickname }}</a>
<span class="time">{{ msg.timestamp|translate_seahub_time }}</span>
</div>
<p class="msg-con">{{ msg.message|seahub_urlize|find_at|linebreaksbr }}</p>

View File

@@ -7,6 +7,6 @@ urlpatterns = patterns('seahub.profile.views',
url(r'^delete/$', 'delete_user_account', name="delete_user_account"),
url(r'^default-repo/$', 'default_repo', name="default_repo"),
url(r'^(?P<username_or_id>[^/]+)/$', 'user_profile', name="user_profile"),
url(r'^(?P<username>[^/]+)/$', 'user_profile', name="user_profile"),
# url(r'^logout/$', 'logout_relay', name="logout_relay"),
)

View File

@@ -83,20 +83,11 @@ def edit_profile(request):
}, context_instance=RequestContext(request))
@login_required
def user_profile(request, username_or_id):
# fetch the user by username or id, try id first
user = None
def user_profile(request, username):
try:
user_id = int(username_or_id)
try:
user = User.objects.get(id=user_id)
except:
pass
except ValueError:
try:
user = User.objects.get(email=username_or_id)
user = User.objects.get(email=username)
except User.DoesNotExist:
pass
user = None
nickname = '' if user is None else email2nickname(user.username)
@@ -110,7 +101,6 @@ def user_profile(request, username_or_id):
d_profile = None
return render_to_response('profile/user_profile.html', {
'username_or_id': username_or_id,
'user': user,
'nickname': nickname,
'intro': intro,

View File

@@ -21,8 +21,8 @@
{% block right_panel %}
<div class="tabnav">
<ul class="tabnav-tabs">
<li class="tabnav-tab"><a href="{% url 'user_msg_list' to_email|id_or_email %}">{% trans "Messages" %}</a></li>
<li class="tabnav-tab tabnav-tab-cur"><a href="{% url 'user_share_list' to_email|id_or_email %}">{% trans "Shares" %}</a></li>
<li class="tabnav-tab"><a href="{% url 'user_msg_list' to_email %}">{% trans "Messages" %}</a></li>
<li class="tabnav-tab tabnav-tab-cur"><a href="{% url 'user_share_list' to_email %}">{% trans "Shares" %}</a></li>
</ul>
</div>

View File

@@ -1179,44 +1179,44 @@ def save_private_file_share(request, token):
next = SITE_ROOT
return HttpResponseRedirect(next)
@login_required
def user_share_list(request, id_or_email):
"""List sharing repos with ``to_email``.
"""
try:
uid = int(id_or_email)
try:
user = User.objects.get(id=uid)
except User.DoesNotExist:
user = None
if not user:
return render_to_response("user_404.html", {},
context_instance=RequestContext(request))
to_email = user.email
except ValueError:
to_email = id_or_email
# @login_required
# def user_share_list(request, id_or_email):
# """List sharing repos with ``to_email``.
# """
# try:
# uid = int(id_or_email)
# try:
# user = User.objects.get(id=uid)
# except User.DoesNotExist:
# user = None
# if not user:
# return render_to_response("user_404.html", {},
# context_instance=RequestContext(request))
# to_email = user.email
# except ValueError:
# to_email = id_or_email
share_list = []
username = request.user.username
share_in = seafile_api.get_share_in_repo_list(username, -1, -1)
for e in share_in:
if e.share_type == 'personal' and e.user == to_email:
e.share_in = True
share_list.append(e)
share_out = seafile_api.get_share_out_repo_list(username, -1, -1)
for e in share_out:
if e.share_type == 'personal' and e.user == to_email:
e.share_out = True
share_list.append(e)
# share_list = []
# username = request.user.username
# share_in = seafile_api.get_share_in_repo_list(username, -1, -1)
# for e in share_in:
# if e.share_type == 'personal' and e.user == to_email:
# e.share_in = True
# share_list.append(e)
# share_out = seafile_api.get_share_out_repo_list(username, -1, -1)
# for e in share_out:
# if e.share_type == 'personal' and e.user == to_email:
# e.share_out = True
# share_list.append(e)
c = Contact.objects.get_contact_by_user(username, to_email)
add_to_contacts = True if c is None else False
# c = Contact.objects.get_contact_by_user(username, to_email)
# add_to_contacts = True if c is None else False
return render_to_response('share/user_share_list.html', {
'to_email': to_email,
'share_list': share_list,
'add_to_contacts': add_to_contacts,
}, context_instance=RequestContext(request))
# return render_to_response('share/user_share_list.html', {
# 'to_email': to_email,
# 'share_list': share_list,
# 'add_to_contacts': add_to_contacts,
# }, context_instance=RequestContext(request))
@login_required_ajax
def get_shared_upload_link(request):

View File

@@ -43,7 +43,7 @@
{% if commit.creator_name %}
<td>
{% avatar commit.creator_name 16 %}
<a href="{% url 'user_profile' commit.creator_name|id_or_email %}" class="vam">{{ commit.creator_name|email2nickname }}</a>
<a href="{% url 'user_profile' commit.creator_name %}" class="vam">{{ commit.creator_name|email2nickname }}</a>
</td>
{% else %}
<td>{% trans 'Unknown' %}</td>

View File

@@ -29,7 +29,7 @@
{% if users %}
<ul class="user-list">
{% for u in users %}
{% with e=u.email id=u.email|id_or_email %}
{% with e=u.email id=u.email %}
<li class="user ovhd">
<a href="{% url 'user_profile' id %}" class="pic fleft">{% avatar e 48 %}</a>
<div class="txt fright">

View File

@@ -34,7 +34,7 @@
{% if commit.creator_name %}
{% if not commit.second_parent_id %}
{% avatar commit.creator_name 16 %}
<a href="{% url 'user_profile' commit.creator_name|id_or_email %}" class="vam">{{ commit.creator_name|email2nickname }}</a>
<a href="{% url 'user_profile' commit.creator_name %}" class="vam">{{ commit.creator_name|email2nickname }}</a>
{% else %}
{% trans "None"%}
{% endif %}

View File

@@ -16,7 +16,7 @@
<span class="author">
{% if current_commit.props.creator_name %}
{% avatar current_commit.props.creator_name 20 %}
<a class="name" href="{% url 'user_profile' current_commit.props.creator_name|id_or_email %}">{{ current_commit.props.creator_name|short_email }}</a>
<a class="name" href="{% url 'user_profile' current_commit.props.creator_name %}">{{ current_commit.props.creator_name|short_email }}</a>
{% else %}
{% trans "Unknown"%}
{% endif %}

View File

@@ -31,7 +31,7 @@
<td>
{% if commit.creator_name %}
{% if not commit.second_parent_id %}
{% avatar commit.creator_name 16 %} <a href="{% url 'user_profile' commit.creator_name|id_or_email %}" class="vam">{{ commit.creator_name|email2nickname }}</a>
{% avatar commit.creator_name 16 %} <a href="{% url 'user_profile' commit.creator_name %}" class="vam">{{ commit.creator_name|email2nickname }}</a>
{% else %}
{% trans "None"%}
{% endif %}

View File

@@ -6,7 +6,7 @@
<span class="meta-info split">
{% if info_commit.props.creator_name %}
{% avatar info_commit.props.creator_name 20 %}
<a class="vam" href="{% url 'user_profile' info_commit.creator_name|id_or_email %}">{{ info_commit.creator_name|email2nickname }}</a>
<a class="vam" href="{% url 'user_profile' info_commit.creator_name %}">{{ info_commit.creator_name|email2nickname }}</a>
{% else %}
<span class="vam">{% trans "Unknown"%}</span>
{% endif %}

View File

@@ -33,7 +33,7 @@
<p>{% blocktrans with library_name=e.repo_name %}Deleted library {{ library_name }}{% endblocktrans %}</p>
{% endif %}
<p><a class="normal" href="{% url 'user_profile' e.author|id_or_email %}">{{ e.author|email2nickname }}</a> <span class="time">{{ e.time|translate_seahub_time }}</span></p>
<p><a class="normal" href="{% url 'user_profile' e.author %}">{{ e.author|email2nickname }}</a> <span class="time">{{ e.time|translate_seahub_time }}</span></p>
</div>
</li>
{% endfor %}

View File

@@ -3,7 +3,7 @@
{% load url from future %}
{% block main_panel %}
<h2 class="file-modification-hd"><span class="op-target">{{ u_filename }}</span> {% trans "modification details" %} <a href="{% url 'user_profile' current_commit.creator_name|id_or_email %}">{% avatar current_commit.creator_name 16 %}</a><span class="modifier">{{ current_commit.creator_name|email2nickname }}</span><span class="time">{{ current_commit.ctime|translate_seahub_time }}</span></h2>
<h2 class="file-modification-hd"><span class="op-target">{{ u_filename }}</span> {% trans "modification details" %} <a href="{% url 'user_profile' current_commit.creator_name %}">{% avatar current_commit.creator_name 16 %}</a><span class="modifier">{{ current_commit.creator_name|email2nickname }}</span><span class="time">{{ current_commit.ctime|translate_seahub_time }}</span></h2>
<button class="fright" data="{% url 'file_revisions' repo.id %}?p={{ path|urlencode }}" id="back">{% trans "Back to file versions"%}</button>
<p class="path">

View File

@@ -45,7 +45,7 @@
<div id="file">
<div id="file-op">
<div class="commit fleft">
{% avatar latest_contributor 24 %} <a href="{% url 'user_profile' latest_contributor|id_or_email %}" class="name">{{ latest_contributor|email2nickname }}</a>
{% avatar latest_contributor 24 %} <a href="{% url 'user_profile' latest_contributor %}" class="name">{{ latest_contributor|email2nickname }}</a>
<span class="time">{{ last_modified|translate_seahub_time}}</span>
{% block update_detail %}
{% if last_commit_id %}

View File

@@ -13,8 +13,8 @@ from seahub.views.repo import repo, repo_history_view, view_shared_dir, \
from notifications.views import notification_list
from group.views import group_list
from message.views import user_msg_list, user_msg_remove, user_received_msg_remove
from share.views import user_share_list, gen_private_file_share, \
rm_private_file_share, save_private_file_share
from share.views import gen_private_file_share, rm_private_file_share, \
save_private_file_share
from seahub.views.wiki import personal_wiki, personal_wiki_pages, \
personal_wiki_create, personal_wiki_page_new, personal_wiki_page_edit, \
personal_wiki_page_delete, personal_wiki_use_lib
@@ -119,7 +119,7 @@ urlpatterns = patterns('',
url(r'^user/(?P<id_or_email>[^/]+)/msgs/$', user_msg_list, name='user_msg_list'),
url(r'^user/(?P<msg_id>\d+)/msgdel/$', user_msg_remove, name='user_msg_remove'),
url(r'^user/(?P<msg_id>\d+)/remsgdel/$', user_received_msg_remove, name='user_received_msg_remove'),
url(r'^user/(?P<id_or_email>[^/]+)/shares/$', user_share_list, name='user_share_list'),
# url(r'^user/(?P<id_or_email>[^/]+)/shares/$', user_share_list, name='user_share_list'),
url(r'^modules/toggle/$', toggle_modules, name="toggle_modules"),
url(r'^download_client_program/$', TemplateView.as_view(template_name="download.html"), name="download_client"),
url(r'^choose_register/$', TemplateView.as_view(template_name="choose_register.html"), name="choose_register"),
@@ -234,11 +234,11 @@ urlpatterns = patterns('',
url(r'^useradmin/remove/(?P<email>[^/]+)/$', user_remove, name="user_remove"),
url(r'^useradmin/removetrial/(?P<user_or_org>[^/]+)/$', remove_trial, name="remove_trial"),
url(r'^useradmin/search/$', user_search, name="user_search"),
url(r'^useradmin/makeadmin/(?P<user_id>[^/]+)/$', user_make_admin, name='user_make_admin'),
# url(r'^useradmin/makeadmin/(?P<user_id>[^/]+)/$', user_make_admin, name='user_make_admin'),
url(r'^useradmin/removeadmin/(?P<email>[^/]+)/$', user_remove_admin, name='user_remove_admin'),
url(r'^useradmin/info/(?P<email>[^/]+)/$', user_info, name='user_info'),
url(r'^useradmin/activate/(?P<user_id>[^/]+)/$', user_activate, name='user_activate'),
url(r'^useradmin/deactivate/(?P<user_id>[^/]+)/$', user_deactivate, name='user_deactivate'),
# url(r'^useradmin/activate/(?P<user_id>[^/]+)/$', user_activate, name='user_activate'),
# url(r'^useradmin/deactivate/(?P<user_id>[^/]+)/$', user_deactivate, name='user_deactivate'),
url(r'^useradmin/toggle_status/(?P<email>[^/]+)/$', user_toggle_status, name='user_toggle_status'),
url(r'^useradmin/toggle_role/(?P<email>[^/]+)/$', user_toggle_role, name='user_toggle_role'),
url(r'^useradmin/(?P<email>[^/]+)/set_quota/$', user_set_quota, name='user_set_quota'),

View File

@@ -763,22 +763,22 @@ def remove_trial(request, user_or_org):
messages.success(request, _('Successfully remove trial for: %s') % user_or_org)
return HttpResponseRedirect(next)
@login_required
@sys_staff_required
def user_make_admin(request, user_id):
"""Set user as system admin."""
try:
user = User.objects.get(id=int(user_id))
user.is_staff = True
user.save()
messages.success(request, _(u'Successfully set %s as admin') % user.username)
except User.DoesNotExist:
messages.error(request, _(u'Failed to set admin: the user does not exist'))
# @login_required
# @sys_staff_required
# def user_make_admin(request, user_id):
# """Set user as system admin."""
# try:
# user = User.objects.get(id=int(user_id))
# user.is_staff = True
# user.save()
# messages.success(request, _(u'Successfully set %s as admin') % user.username)
# except User.DoesNotExist:
# messages.error(request, _(u'Failed to set admin: the user does not exist'))
referer = request.META.get('HTTP_REFERER', None)
next = reverse('sys_useradmin') if referer is None else referer
# referer = request.META.get('HTTP_REFERER', None)
# next = reverse('sys_useradmin') if referer is None else referer
return HttpResponseRedirect(next)
# return HttpResponseRedirect(next)
@login_required
@sys_staff_required
@@ -797,39 +797,39 @@ def user_remove_admin(request, email):
return HttpResponseRedirect(next)
@login_required
@sys_staff_required
def user_activate(request, user_id):
try:
user = User.objects.get(id=int(user_id))
user.is_active = True
user.save()
messages.success(request, _(u'Successfully activated "%s".') % user.email)
except User.DoesNotExist:
messages.success(request, _(u'Failed to activate: user does not exist.'))
# @login_required
# @sys_staff_required
# def user_activate(request, user_id):
# try:
# user = User.objects.get(id=int(user_id))
# user.is_active = True
# user.save()
# messages.success(request, _(u'Successfully activated "%s".') % user.email)
# except User.DoesNotExist:
# messages.success(request, _(u'Failed to activate: user does not exist.'))
next = request.META.get('HTTP_REFERER', None)
if not next:
next = reverse('sys_useradmin')
# next = request.META.get('HTTP_REFERER', None)
# if not next:
# next = reverse('sys_useradmin')
return HttpResponseRedirect(next)
# return HttpResponseRedirect(next)
@login_required
@sys_staff_required
def user_deactivate(request, user_id):
try:
user = User.objects.get(id=int(user_id))
user.is_active = False
user.save()
messages.success(request, _(u'Successfully deactivated "%s".') % user.email)
except User.DoesNotExist:
messages.success(request, _(u'Failed to deactivate: user does not exist.'))
# @login_required
# @sys_staff_required
# def user_deactivate(request, user_id):
# try:
# user = User.objects.get(id=int(user_id))
# user.is_active = False
# user.save()
# messages.success(request, _(u'Successfully deactivated "%s".') % user.email)
# except User.DoesNotExist:
# messages.success(request, _(u'Failed to deactivate: user does not exist.'))
next = request.META.get('HTTP_REFERER', None)
if not next:
next = reverse('sys_useradmin')
# next = request.META.get('HTTP_REFERER', None)
# if not next:
# next = reverse('sys_useradmin')
return HttpResponseRedirect(next)
# return HttpResponseRedirect(next)
def email_user_on_activation(user):
"""Send an email to user when admin activate his/her account.