def user_search(request): """Search a user. """ email = request.GET.get('email', '') email_patt = email.replace('*', '%') # Make sure page request is an int. If not, deliver first page. try: current_page = int(request.GET.get('page', '1')) per_page = int(request.GET.get('per_page', '100')) except ValueError: current_page = 1 per_page = 100 users_plus_one = ccnet_threaded_rpc.search_emailusers( email_patt, per_page * (current_page - 1), per_page + 1) if len(users_plus_one) == per_page + 1: page_next = True else: page_next = False users = users_plus_one[:per_page] return render_to_response('sysadmin/user_search.html', { 'users': users, 'email': email, 'current_page': current_page, 'prev_page': current_page-1, 'next_page': current_page+1, 'per_page': per_page, 'page_next': page_next, }, context_instance=RequestContext(request))
def user_search(request): """Search a user. """ email = request.GET.get('email', '') email_patt = email.replace('*', '%') users = ccnet_threaded_rpc.search_emailusers(email_patt, -1, -1) last_logins = UserLastLogin.objects.filter(username__in=[x.email for x in users]) for user in users: try: user.self_usage = seafile_api.get_user_self_usage(user.email) user.share_usage = seafile_api.get_user_share_usage(user.email) user.quota = seafile_api.get_user_quota(user.email) except: user.self_usage = -1 user.share_usage = -1 user.quota = -1 # populate user last login time user.last_login = None for last_login in last_logins: if last_login.username == user.email: user.last_login = last_login.last_login return render_to_response('sysadmin/user_search.html', { 'users': users, 'email': email, }, context_instance=RequestContext(request))
def user_search(request): """Search a user. """ email = request.GET.get('email', '') email_patt = email.replace('*', '%') users = ccnet_threaded_rpc.search_emailusers(email_patt, -1, -1) last_logins = UserLastLogin.objects.filter( username__in=[x.email for x in users]) for user in users: try: user.self_usage = seafile_api.get_user_self_usage(user.email) user.share_usage = seafile_api.get_user_share_usage(user.email) user.quota = seafile_api.get_user_quota(user.email) except: user.self_usage = -1 user.share_usage = -1 user.quota = -1 # populate user last login time user.last_login = None for last_login in last_logins: if last_login.username == user.email: user.last_login = last_login.last_login return render_to_response('sysadmin/user_search.html', { 'users': users, 'email': email, }, context_instance=RequestContext(request))
def test_can_remove(self): # create one user username = self.user.username resp = self.client.post(reverse('user_remove', args=[username])) self.assertEqual(302, resp.status_code) assert len(ccnet_threaded_rpc.search_emailusers( 'DB', username, -1, -1)) == 0
def test_can_remove(self): # create one user username = self.user.username resp = self.client.post(reverse("user_remove", args=[username])) self.assertEqual(302, resp.status_code) assert "Successfully deleted %s" % username in parse_cookie(resp.cookies)["messages"] assert len(ccnet_threaded_rpc.search_emailusers("DB", username, -1, -1)) == 0
def test_can_delete(self): self.login_as(self.user) username = self.user.username resp = self.client.post(reverse('delete_user_account')) self.assertEqual(302, resp.status_code) assert len(ccnet_threaded_rpc.search_emailusers( 'DB', username, -1, -1)) == 0
def test_can_remove(self): # create one user username = self.user.username resp = self.client.post( reverse('user_remove', args=[username]) ) self.assertEqual(302, resp.status_code) assert 'Successfully deleted %s' % username in resp.cookies['messages'].value assert len(ccnet_threaded_rpc.search_emailusers('DB', username, -1, -1)) == 0
def user_search(request): """Search a user. """ email = request.GET.get('email', '') email_patt = email.replace('*', '%') users = ccnet_threaded_rpc.search_emailusers( email_patt, -1, -1) return render_to_response('sysadmin/user_search.html', { 'users': users, 'email': email, }, context_instance=RequestContext(request))
def user_search(request): """Search a user. """ email = request.GET.get('email', '') email_patt = email.replace('*', '%') users = ccnet_threaded_rpc.search_emailusers(email_patt, -1, -1) return render_to_response('sysadmin/user_search.html', { 'users': users, 'email': email, }, context_instance=RequestContext(request))
def test_can_delete(self): self.client.post( reverse('auth_login'), {'username': self.user.username, 'password': '******'} ) username = self.user.username resp = self.client.post( reverse('delete_user_account') ) self.assertEqual(302, resp.status_code) assert len(ccnet_threaded_rpc.search_emailusers('DB', username, -1, -1)) == 0
def user_search(request): """Search a user. """ email = request.GET.get('email', '') users = ccnet_threaded_rpc.search_emailusers(email, -1, -1) last_logins = UserLastLogin.objects.filter( username__in=[x.email for x in users]) for user in users: org = ccnet_threaded_rpc.get_orgs_by_user(user.email) try: if not org: user.self_usage = seafile_api.get_user_self_usage(user.email) user.share_usage = seafile_api.get_user_share_usage(user.email) user.quota = seafile_api.get_user_quota(user.email) else: user.org = org[0] org_id = user.org.org_id user.self_usage = seafserv_threaded_rpc.get_org_user_quota_usage( org_id, user.email) user.share_usage = 0 user.quota = seafserv_threaded_rpc.get_org_user_quota( org_id, user.email) except SearpcError as e: logger.error(e) user.self_usage = -1 user.share_usage = -1 user.quota = -1 # check user's role if user.role == GUEST_USER: user.is_guest = True else: user.is_guest = False # populate user last login time user.last_login = None for last_login in last_logins: if last_login.username == user.email: user.last_login = last_login.last_login return render_to_response('sysadmin/user_search.html', { 'users': users, 'email': email, 'default_user': DEFAULT_USER, 'guest_user': GUEST_USER, 'enable_guest': ENABLE_GUEST, }, context_instance=RequestContext(request))
def test_can_remove(self): self.client.post( reverse('auth_login'), {'username': self.admin.username, 'password': '******'} ) # create one user username = self.user.username resp = self.client.get( reverse('user_remove', args=[username]) ) assert 'Successfully deleted %s' % username in parse_cookie(resp.cookies)['messages'] assert len(ccnet_threaded_rpc.search_emailusers('DB', username, -1, -1)) == 0
def test_can_remove(self): self.client.post(reverse('auth_login'), { 'username': self.admin.username, 'password': '******' }) # create one user username = self.user.username resp = self.client.get(reverse('user_remove', args=[username])) assert 'Successfully deleted %s' % username in parse_cookie( resp.cookies)['messages'] assert len(ccnet_threaded_rpc.search_emailusers( 'DB', username, -1, -1)) == 0
def user_search(request): """Search a user. """ email = request.GET.get('email', '') users = ccnet_threaded_rpc.search_emailusers(email, -1, -1) last_logins = UserLastLogin.objects.filter(username__in=[x.email for x in users]) for user in users: org = ccnet_threaded_rpc.get_orgs_by_user(user.email) try: if not org: user.self_usage = seafile_api.get_user_self_usage(user.email) user.share_usage = seafile_api.get_user_share_usage(user.email) user.quota = seafile_api.get_user_quota(user.email) else: user.org = org[0] org_id = user.org.org_id user.self_usage = seafserv_threaded_rpc.get_org_user_quota_usage(org_id, user.email) user.share_usage = 0 user.quota = seafserv_threaded_rpc.get_org_user_quota(org_id, user.email) except SearpcError as e: logger.error(e) user.self_usage = -1 user.share_usage = -1 user.quota = -1 # check user's role if user.role == GUEST_USER: user.is_guest = True else: user.is_guest = False # populate user last login time user.last_login = None for last_login in last_logins: if last_login.username == user.email: user.last_login = last_login.last_login return render_to_response('sysadmin/user_search.html', { 'users': users, 'email': email, 'default_user': DEFAULT_USER, 'guest_user': GUEST_USER, 'enable_guest': ENABLE_GUEST, }, context_instance=RequestContext(request))
def user_search(request): """Search a user. """ email = request.GET.get('email', '') 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_ACCOUNT: trial_users = TrialAccount.objects.filter( user_or_org__in=[x.email for x in users]) else: trial_users = [] for user in users: _populate_user_quota_usage(user) # check user's role if user.role == GUEST_USER: user.is_guest = True else: user.is_guest = False # populate user last login time user.last_login = None for last_login in last_logins: if last_login.username == user.email: user.last_login = last_login.last_login user.trial_info = None for trial_user in trial_users: 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', { 'users': users, 'email': email, 'default_user': DEFAULT_USER, 'guest_user': GUEST_USER, 'enable_guest': ENABLE_GUEST, }, context_instance=RequestContext(request))
def user_search(request): """Search a user. """ email = request.GET.get('email', '') email_patt = email.replace('*', '%') users = ccnet_threaded_rpc.search_emailusers(email_patt, -1, -1) last_logins = UserLastLogin.objects.filter( username__in=[x.email for x in users]) for user in users: try: user.self_usage = seafile_api.get_user_self_usage(user.email) user.share_usage = seafile_api.get_user_share_usage(user.email) user.quota = seafile_api.get_user_quota(user.email) except: user.self_usage = -1 user.share_usage = -1 user.quota = -1 # check user's role if user.role == GUEST_USER: user.is_guest = True else: user.is_guest = False # populate user last login time user.last_login = None for last_login in last_logins: if last_login.username == user.email: user.last_login = last_login.last_login return render_to_response('sysadmin/user_search.html', { 'users': users, 'email': email, 'default_user': DEFAULT_USER, 'guest_user': GUEST_USER, 'enable_guest': ENABLE_GUEST, }, context_instance=RequestContext(request))
def user_search(request): """Search a user. """ email = request.GET.get('email', '') 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_account: trial_users = TrialAccount.objects.filter(user_or_org__in=[x.email for x in users]) else: trial_users = [] for user in users: _populate_user_quota_usage(user) # check user's role if user.role == GUEST_USER: user.is_guest = True else: user.is_guest = False # populate user last login time user.last_login = None for last_login in last_logins: if last_login.username == user.email: user.last_login = last_login.last_login user.trial_info = None for trial_user in trial_users: 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', { 'users': users, 'email': email, 'default_user': DEFAULT_USER, 'guest_user': GUEST_USER, 'enable_guest': ENABLE_GUEST, }, context_instance=RequestContext(request))
def user_search(request): """Search a user. """ email = request.GET.get('email', '') email_patt = email.replace('*', '%') users = ccnet_threaded_rpc.search_emailusers(email_patt, -1, -1) last_logins = UserLastLogin.objects.filter(username__in=[x.email for x in users]) for user in users: try: user.self_usage = seafile_api.get_user_self_usage(user.email) user.share_usage = seafile_api.get_user_share_usage(user.email) user.quota = seafile_api.get_user_quota(user.email) except: user.self_usage = -1 user.share_usage = -1 user.quota = -1 # check user's role if user.role == GUEST_USER: user.is_guest = True else: user.is_guest = False # populate user last login time user.last_login = None for last_login in last_logins: if last_login.username == user.email: user.last_login = last_login.last_login return render_to_response('sysadmin/user_search.html', { 'users': users, 'email': email, 'default_user': DEFAULT_USER, 'guest_user': GUEST_USER, 'enable_guest': ENABLE_GUEST, }, context_instance=RequestContext(request))