Exemplo n.º 1
0
def orders(request):
    """
    This is basically like orders/index, but limited to the user
    First, filter by the provided search criteria,
    then check if we have a saved search filter
    then default to user id
    Always update saved search filter
    """
    args = request.GET.copy()
    default = {"state": Order.STATE_OPEN}

    if len(args) < 2:
        f = request.session.get("account_search_filter", default)
        args = QueryDict("", mutable=True)
        args.update(f)

    # On the profile page, filter by the user, no matter what
    args.update({"followed_by": request.user.pk})
    request.session["account_search_filter"] = args

    data = prepare_list_view(request, args)
    data["title"] = _("My Orders")

    del (data["form"].fields["assigned_to"])

    return render(request, "accounts/orders.html", data)
Exemplo n.º 2
0
def orders(request):
    """
    This is basically like orders/index, but limited to the user
    First, filter by the provided search criteria,
    then check if we have a saved search filter
    then default to user id
    Always update saved search filter
    """
    args = request.GET.copy()
    default = {'state': Order.STATE_OPEN}

    if len(args) < 2:
        f = request.session.get("account_search_filter", default)
        args = QueryDict('', mutable=True)
        args.update(f)

    # On the profile page, filter by the user, no matter what
    args.update({'followed_by': request.user.pk})
    request.session['account_search_filter'] = args

    data = prepare_list_view(request, args)
    data['title'] = _("My Orders")

    del (data['form'].fields['assigned_to'])

    return render(request, "accounts/orders.html", data)
Exemplo n.º 3
0
def search(request):
    """
    User searching for something from their homepage
    """
    query = request.GET.get("q")

    if not query or len(query) < 3:
        messages.error(request, _("Search query is too short"))
        return redirect("accounts-list_orders")

    request.session["search_query"] = query

    # Redirect Order ID:s to the order
    try:
        order = Order.objects.get(code__iexact=query)
        return redirect(order)
    except Order.DoesNotExist:
        pass

    kwargs = request.GET.copy()
    kwargs.update({"followed_by": request.user.pk})
    data = prepare_list_view(request, kwargs)

    data["title"] = _("Search results")
    orders = data["queryset"]
    data["orders"] = orders.filter(customer__fullname__icontains=query)

    return render(request, "accounts/orders.html", data)
Exemplo n.º 4
0
def search(request):
    """
    User searching for something from their homepage
    """
    query = request.GET.get("q")

    if not query or len(query) < 3:
        messages.error(request, _('Search query is too short'))
        return redirect('accounts-list_orders')

    request.session['search_query'] = query

    # Redirect Order ID:s to the order
    try:
        order = Order.objects.get(code__iexact=query)
        return redirect(order)
    except Order.DoesNotExist:
        pass

    kwargs = request.GET.copy()
    kwargs.update({'followed_by': request.user.pk})
    data = prepare_list_view(request, kwargs)

    data['title'] = _("Search results")
    orders = data['queryset']
    data['orders'] = orders.filter(customer__fullname__icontains=query)

    return render(request, "accounts/orders.html", data)