def manage_single_registrar(request, registrar_id): """ Linky admins can manage registrars (libraries) in this view, we allow for edit/delete """ target_registrar = get_object_or_404(Registrar, id=registrar_id) context = {'target_registrar': target_registrar, 'this_page': 'users_registrars'} if request.method == 'POST': form = RegistrarForm(request.POST, prefix = "a", instance=target_registrar) if form.is_valid(): new_user = form.save() return HttpResponseRedirect(reverse('user_management_manage_registrar')) else: context.update({'form': form,}) else: form = RegistrarForm(prefix = "a", instance=target_registrar) context.update({'form': form,}) context = RequestContext(request, context) return render_to_response('user_management/manage_single_registrar.html', context)
def manage_registrar(request): """ Linky admins can manage registrars (libraries) """ DEFAULT_SORT = 'name' sort = request.GET.get('sort', DEFAULT_SORT) if sort not in valid_registrar_sorts: sort = DEFAULT_SORT page = request.GET.get('page', 1) if page < 1: page = 1 registrars = Registrar.objects.all() # handle search search_query = request.GET.get('q', '') if search_query: registrars = get_search_query(registrars, search_query, ['name', 'email', 'website']) registrars = registrars.annotate(vested_links=Count('vesting_orgs__link',distinct=True), registrar_users=Count('linkuser', distinct=True),last_active=Max('linkuser__last_login', distinct=True),vesting_orgs_count=Count('vesting_orgs',distinct=True)).order_by(sort) registrar_count = registrars.count() vesting_org_count = registrars.aggregate(count=Sum('vesting_orgs_count')) #users_count = registrars.aggregate(count=Sum('registrar_users')) registrar_results = registrars.count() paginator = Paginator(registrars, settings.MAX_USER_LIST_SIZE) registrars = paginator.page(page) context = {'registrars': registrars, 'registrar_count': registrar_count, 'vesting_org_count':vesting_org_count, #'users_count': users_count, 'this_page': 'users_registrars', 'registrar_results': registrar_results, 'search_query':search_query} if request.method == 'POST': form = RegistrarForm(request.POST, prefix = "a") if form.is_valid(): new_user = form.save() return HttpResponseRedirect(reverse('user_management_manage_registrar')) else: context.update({'form': form}) else: form = RegistrarForm(prefix = "a") context.update({'form': form,}) context = RequestContext(request, context) return render_to_response('user_management/manage_registrars.html', context)
def manage_registrar(request): """ Linky admins can manage registrars (libraries) """ DEFAULT_SORT = 'name' sort = request.GET.get('sort', DEFAULT_SORT) if sort not in valid_registrar_sorts: sort = DEFAULT_SORT page = request.GET.get('page', 1) if page < 1: page = 1 registrars = Registrar.objects.all().order_by(sort) # handle search search_query = request.GET.get('q', None) if search_query: registrars = registrars.filter( Q(name__icontains=search_query), Q(email__icontains=search_query), Q(website__icontains=search_query), ) paginator = Paginator(registrars, settings.MAX_USER_LIST_SIZE) registrars = paginator.page(page) context = {'registrars_list': list(registrars), 'registrars': registrars, 'this_page': 'users_registrars', 'search_query':search_query} if request.method == 'POST': form = RegistrarForm(request.POST, prefix = "a") if form.is_valid(): new_user = form.save() return HttpResponseRedirect(reverse('user_management_manage_registrar')) else: context.update({'form': form}) else: form = RegistrarForm(prefix = "a") context.update({'form': form,}) context = RequestContext(request, context) return render_to_response('user_management/manage_registrars.html', context)
def manage_registrar(request): """ Linky admins can manage registrars (libraries) """ DEFAULT_SORT = 'name' sort = request.GET.get('sort', DEFAULT_SORT) if sort not in valid_registrar_sorts: sort = DEFAULT_SORT page = request.GET.get('page', 1) if page < 1: page = 1 registrars = Registrar.objects.all().order_by(sort) # handle search search_query = request.GET.get('q', '') if search_query: registrars = get_search_query(registrars, search_query, ['name', 'email', 'website']) paginator = Paginator(registrars, settings.MAX_USER_LIST_SIZE) registrars = paginator.page(page) context = {'registrars_list': list(registrars), 'registrars': registrars, 'this_page': 'users_registrars', 'search_query':search_query} if request.method == 'POST': form = RegistrarForm(request.POST, prefix = "a") if form.is_valid(): new_user = form.save() return HttpResponseRedirect(reverse('user_management_manage_registrar')) else: context.update({'form': form}) else: form = RegistrarForm(prefix = "a") context.update({'form': form,}) context = RequestContext(request, context) return render_to_response('user_management/manage_registrars.html', context)
def manage_registrar(request): """ Linky admins can manage registrars (libraries) """ DEFAULT_SORT = 'name' sort = request.GET.get('sort', DEFAULT_SORT) if sort not in valid_registrar_sorts: sort = DEFAULT_SORT page = request.GET.get('page', 1) if page < 1: page = 1 registrars = Registrar.objects.all() # handle search search_query = request.GET.get('q', '') if search_query: registrars = get_search_query(registrars, search_query, ['name', 'email', 'website']) registrars = registrars.annotate( vested_links=Count('vesting_orgs__link', distinct=True), registrar_users=Count('linkuser', distinct=True), last_active=Max('linkuser__last_login', distinct=True), vesting_orgs_count=Count('vesting_orgs', distinct=True)).order_by(sort) registrar_count = registrars.count() vesting_org_count = registrars.aggregate(count=Sum('vesting_orgs_count')) #users_count = registrars.aggregate(count=Sum('registrar_users')) registrar_results = registrars.count() paginator = Paginator(registrars, settings.MAX_USER_LIST_SIZE) registrars = paginator.page(page) context = { 'registrars': registrars, 'registrar_count': registrar_count, 'vesting_org_count': vesting_org_count, #'users_count': users_count, 'this_page': 'users_registrars', 'registrar_results': registrar_results, 'search_query': search_query } if request.method == 'POST': form = RegistrarForm(request.POST, prefix="a") if form.is_valid(): new_user = form.save() return HttpResponseRedirect( reverse('user_management_manage_registrar')) else: context.update({'form': form}) else: form = RegistrarForm(prefix="a") context.update({ 'form': form, }) context = RequestContext(request, context) return render_to_response('user_management/manage_registrars.html', context)