Ejemplo n.º 1
0
def QuickView(request, slug, *args, **kwargs):
    instance = get_object_or_404(Product, slug=slug)
    context = {'p': instance}
    object_viewed_signal.send(instance.__class__,
                              instance=instance,
                              request=request)
    return render(request, 'product/quickview.html', context)
Ejemplo n.º 2
0
 def get_context_data(self, *args, **kwargs):
     context = super(ObjectViewedMixin, self).get_context_data(*args, **kwargs)
     request = self.request
     instance = context['object']
     if instance:
         object_viewed_signal.send(instance.__class__, instance=instance, request=request)
     return context
Ejemplo n.º 3
0
def DeatilView(request, slug, *args, **kwargs):
    instance = get_object_or_404(Product, slug=slug)
    cart_obj, new_obj = Cart.objects.new_or_get(request)
    context = {'p': instance, 'cart': cart_obj}
    object_viewed_signal.send(instance.__class__,
                              instance=instance,
                              request=request)
    return render(request, 'product/detail.html', context)
Ejemplo n.º 4
0
 def get_context_data(self, *args, **kwargs):
     context = super(ObjectViewedMixin,
                     self).get_context_data(*args, **kwargs)
     request = self.request
     instance = context.get('object')
     if request.user.is_authenticated:
         object_viewed_signal.send(instance,
                                   instance=instance,
                                   request=request)
     return context
def pro_details(request, **kwargs):
    pro_id = kwargs['pk']
    qs = Product.objects.filter(pk=pro_id)
    cart = Cart.objects.new_or_get(request)
    if qs.first() is None:
        return render(request, 'details.html', {'empty': 'No Such Product'})
    if request.user.is_authenticated:
        object_viewed_signal.send(qs.first().__class__,
                                  instance=qs.first(),
                                  request=request)
    return render(request, 'details.html', {'qs': qs, 'cart': cart[0]})
Ejemplo n.º 6
0
def featured_view(request, pk=None, *args, **kwargs):
    try:
        obj = Product.objects.get(id=pk, featured=True)
    except Product.DoesNotExist:
        print('this is not featured')
        obj = ''
    context = {'object': obj}
    object_viewed_signal.send(instance.__class__,
                              instance=obj,
                              request=request)
    return render(request, 'product/detail.html', context)
Ejemplo n.º 7
0
def product_detail(request, id=None):
    context = {}
    try:
        product = Product.objects.get(pk=id)
        context = {'product': product}
        object_viewed_signal.send(product.__class__,
                                  instance=product,
                                  request=request)
    except Product.DoesNotExist:
        return HttpResponse(
            '<!DOCTYPE html> <html>    <head>       <title>Page Not Found </title>       <meta http-equiv = "refresh" content = "2; url = /products/product_list/" />    </head>    <body> <h1> Error 404!</h1>   <h2>Page Not Found</h2>   </body> </html>'
        )
    return render(request, 'detail.html', context)
Ejemplo n.º 8
0
def accessoire_computer_detail(request, pk=None, slug=None, *args, **kwargs):
    product = get_object_or_404(Product, pk=pk, slug=slug)
    cart_obj, new_obj = Cart.objects.new_or_get(request)
    try:
        accessoire_computer = AccessoireComputer.objects.get(
            product_id=product.id)

    except AccessoireComputer.MultipleObjectsReturned:
        accessoire_computer = AccessoireComputer.objects.filter(
            product_id=product.id).first()

    except AccessoireComputer.DoesNotExist:
        pass

    except:
        print("Autre erreur non liée à la laison")

    if product:
        object_viewed_signal.send(product.__class__,
                                  instance=product,
                                  request=request)

    if product in cart_obj.products.all():
        quantite = cart_obj.quantite[str(product.id)]

    else:
        quantite = "1"

    stock_list = range(product.stock)

    if request.user.is_authenticated:
        views = request.user.objectviewed_set.by_model(
            Product, model_queryset=True
        ).exclude(
            id=product.id
        )  #all().filter(content_type__name="product"), l'exclude permet d'enlever les produit encours puisque de toutes les façons il est déjà afficher
    else:
        views = None

    context = {
        "cart": cart_obj,
        "product": product,
        "accessoire_computer": accessoire_computer,
        "quantite": quantite,
        "stock_list": stock_list,
        "views": views,
    }

    return render(request, "products/accessoire_cumputer_detail.html", context)
Ejemplo n.º 9
0
def product_detail(request, *args, **kwargs):
    slug = kwargs.get('slug')
    try:
        instance = Product.objects.get(slug=slug)
        cart_obj = Cart.objects.new_or_get(request=request)
    except:
        raise Http404("Product Doesn't Exists.")
    context = {
        "product": instance,
        "cart": cart_obj,
        "prod_views_dict": product_total_views()
    }

    object_viewed_signal.send(instance.__class__, instance=instance, request=request)
    return render(request, "products/product_detail.html", context=context)
Ejemplo n.º 10
0
def product_details_by_slug(request, slug):
    '''This is the actual detail view that I am using'''
    try:
        object = get_object_or_404(Product, slug=slug)
    except Product.DoesNotExist:
        raise Http404("The Product You are searching for does not exists")
    except Product.MultipleObjectsReturned:
        queryset = Product.objects.filter(slug=slug, is_active=True)
        object = queryset.last()
    except:
        raise Http404("Ahhh I got a Headache Sorry!!!")

    object_viewed_signal.send(object.__class__,
                              instance=object,
                              request=request)
    context = {'object': object}
    return render(request, 'products/product_detail.html', context)
Ejemplo n.º 11
0
def post_detail_view(request, pk):

    post = get_object_or_404(Post, id=pk)
    comments = Comment.objects.filter(
        post=post).order_by('-id').filter(parent=None)

    if request.method == 'POST':
        comment_form = CommentForm(request.POST or None)
        if comment_form.is_valid():
            content = request.POST.get('content')
            name = request.POST.get('name')
            email = request.POST.get('email')
            try:
                parent_id = int(request.POST.get('parent_id'))
            except:
                parent_id = None

            parent_obj = None

            if parent_id:
                parent_qs = Comment.objects.get(id=parent_id)
                if parent_qs:
                    parent_obj = parent_qs

            comment = Comment.objects.create(
                post=post, content=content, name=name, email=email, parent=parent_obj)
            comment.save()

            messages.success(
                request, 'Your comment has been posted!')

            return redirect(reverse('blog:post-detail', kwargs={'pk': post.pk}))

    else:
        comment_form = CommentForm

    context = {
        'post': post,
        'comments': comments,
        'comment_form': comment_form,
    }

    object_viewed_signal.send(post.__class__, instance=post, request=request)

    return render(request, 'blog/post_detail.html', context)
Ejemplo n.º 12
0
def product_detail_view(request, slug=None, pk=None, *args, **kwargs):

    instance = Product.objects.get_by_slug_id(slug, pk)
    instance_image = ProductFile.objects.filter(product_id=instance.id)

    cart_obj, new_obj = Cart.objects.new_or_get(request)

    if instance:
        object_viewed_signal.send(instance.__class__,
                                  instance=instance,
                                  request=request)

    context = {
        "object": instance,
        "instance_image": instance_image,
        "cart": cart_obj,
    }

    return render(request, "products/detail.html", context)