1
0
mirror of https://github.com/haiwen/seahub.git synced 2025-09-20 10:58:33 +00:00

Modify trialuser

This commit is contained in:
zhengxie
2015-01-10 12:07:33 +08:00
parent 7f57515fd4
commit 24124d0d0a
5 changed files with 38 additions and 17 deletions

View File

@@ -21,7 +21,7 @@
{% endif %}
{% if user.trialing %}
<p><a href="#">Trial expires at {{user.trial_expire_date|date:"Y-m-d"}}</a></p>
<p><a href="{{user.trial_info.payment_url}}">Trial expires at {{user.trial_info.expire_date|date:"Y-m-d"}}</a></p>
{% endif %}
</div>

View File

@@ -39,7 +39,12 @@
</tr>
{% for org in orgs %}
<tr>
<td><a href="{% url 'sys_org_info_user' org.org_id %}">{{ org.org_name }}</a></td>
<td>
<a href="{% url 'sys_org_info_user' org.org_id %}">{{ org.org_name }}</a>
{% if org.trial_info %}
<p style="font-size:11px;">(Trial &nbsp;<a href="#" class="unset-trial" data-target="{{ org.org_name }}" data-url="{% url 'remove_trial' org.org_id %}">X</a>)</p>
{% endif %}
</td>
<td>{{ org.url_prefix }}</td>
<td><a href="{% url 'user_info' org.creator %}">{{ org.creator }}</a></td>
<td>
@@ -132,5 +137,11 @@ $('#add-org-form').submit(function() {
return false;
});
addConfirmTo($('.unset-trial'), {
'title':"{% trans "Remove Trial" %}",
'con':"{% trans "Are you sure you want to remove trial for %s ?" %}"
});
</script>
{% endblock %}

View File

@@ -16,7 +16,7 @@
<p style="font-size:11px;"><a href="{% url 'sys_org_info_user' user.org.org_id %}">({{user.org.org_name}})</a></p>
{% endif %}
{% if user.trial_info %}
<p style="font-size:11px;">(Trial &nbsp;<a href="#" class="unset-trial" data-target="{{ user.email }}" data-url="{% url 'user_remove_trial' user.email %}">X</a>)</p>
<p style="font-size:11px;">(Trial &nbsp;<a href="#" class="unset-trial" data-target="{{ user.email }}" data-url="{% url 'remove_trial' user.email %}">X</a>)</p>
{% endif %}
</td>
<td>

View File

@@ -199,7 +199,7 @@ urlpatterns = patterns('',
url(r'^sys/notificationadmin/', notification_list, name='notification_list'),
url(r'^useradmin/add/$', user_add, name="user_add"),
url(r'^useradmin/remove/(?P<user_id>[^/]+)/$', user_remove, name="user_remove"),
url(r'^useradmin/removetrial/(?P<username>[^/]+)/$', user_remove_trial, name="user_remove_trial"),
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/removeadmin/(?P<user_id>[^/]+)/$', user_remove_admin, name='user_remove_admin'),

View File

@@ -37,10 +37,10 @@ from seahub.settings import INIT_PASSWD, SITE_NAME, \
from seahub.utils import send_html_email, get_user_traffic_list, get_server_id
from seahub.utils.sysinfo import get_platform_name
try:
from seahub_extra.trialuser.models import TrialUser
enable_trial_user = True
from seahub_extra.trialaccount.models import TrialAccount
enable_trial_account = True
except:
enable_trial_user = False
enable_trial_account = False
logger = logging.getLogger(__name__)
@@ -202,8 +202,8 @@ def sys_user_admin(request):
users = users_plus_one[:per_page]
last_logins = UserLastLogin.objects.filter(username__in=[x.email for x in users])
if enable_trial_user:
trial_users = TrialUser.objects.filter(username__in=[x.email for x in users])
if enable_trial_account:
trial_users = TrialAccount.objects.filter(user_or_org__in=[x.email for x in users])
else:
trial_users = []
for user in users:
@@ -226,7 +226,7 @@ def sys_user_admin(request):
user.trial_info = None
for trial_user in trial_users:
if trial_user.username == user.email:
if trial_user.user_or_org == user.email:
user.trial_info = {'expire_date': trial_user.expire_date}
have_ldap = True if len(get_emailusers('LDAP', 0, 1)) > 0 else False
@@ -545,8 +545,8 @@ def user_remove(request, user_id):
@login_required
@sys_staff_required
def user_remove_trial(request, username):
"""
def remove_trial(request, user_or_org):
"""Remove trial account.
Arguments:
- `request`:
@@ -554,9 +554,9 @@ def user_remove_trial(request, username):
referer = request.META.get('HTTP_REFERER', None)
next = reverse('sys_useradmin') if referer is None else referer
TrialUser.objects.filter(username=username).delete()
TrialAccount.objects.filter(user_or_org=user_or_org).delete()
messages.success(request, _('Successfully remove trial for user: %s') % username)
messages.success(request, _('Successfully remove trial for: %s') % user_or_org)
return HttpResponseRedirect(next)
@login_required
@@ -873,10 +873,20 @@ def sys_org_admin(request):
orgs_plus_one = ccnet_threaded_rpc.get_all_orgs(per_page * (current_page - 1),
per_page + 1)
orgs = orgs_plus_one[:per_page]
if enable_trial_account:
trial_orgs = TrialAccount.objects.filter(user_or_org__in=[x.org_id for x in orgs])
else:
trial_orgs = []
for org in orgs:
org.quota_usage = seafserv_threaded_rpc.get_org_quota_usage(org.org_id)
org.total_quota = seafserv_threaded_rpc.get_org_quota(org.org_id)
org.trial_info = None
for trial_org in trial_orgs:
if trial_org.user_or_org == str(org.org_id):
org.trial_info = {'expire_date': trial_org.expire_date}
if len(orgs_plus_one) == per_page + 1:
page_next = True
else:
@@ -1090,8 +1100,8 @@ def user_search(request):
users = ccnet_threaded_rpc.search_emailusers(email, -1, -1)
last_logins = UserLastLogin.objects.filter(username__in=[x.email for x in users])
if enable_trial_user:
trial_users = TrialUser.objects.filter(username__in=[x.email for x in users])
if enable_trial_account:
trial_users = TrialAccount.objects.filter(user_or_org__in=[x.email for x in users])
else:
trial_users = []
for user in users:
@@ -1111,7 +1121,7 @@ def user_search(request):
user.trial_info = None
for trial_user in trial_users:
if trial_user.username == user.email:
if trial_user.user_or_org == user.email:
user.trial_info = {'expire_date': trial_user.expire_date}
return render_to_response('sysadmin/user_search.html', {