Exemple #1
0
    def get(self, request):
        # print('------')
        # print(request.session.get('firstname'))
        cart = request.session.get('cart')
        if not cart:
            request.session['cart'] = {}
        total = []
        products = None
        categories = Category.objects.all()
        categoryID = request.GET.get('category')

        if categoryID:
            products = Product.get_all_products_by_categoryid(categoryID)
        else:
            products = Product.get_all_products()

        for category in categories:
            cat_id = category.id
            value = Product.objects.filter(category=cat_id).count()
            total.append(value)
        # we can use zip only when size of list is same
        data = zip(categories, total)
        return render(request, 'store/index.html', {
            'products': products,
            'data': data
        })
Exemple #2
0
    def get(self, request):
        cart = request.session.get('cart')
        if not cart:
            request.session['cart'] = {}
        products = None
        categories = Category.get_all_categories()
        categoryID = request.GET.get('category')
        if categoryID:
            request.session['category'] = categoryID
        elif not categoryID:
            request.session['category'] = None
        # print(request.session['category'])
        name = None
        if categoryID:
            for cat in categories:
                if cat.id == int(categoryID):
                    name = cat.name

        if categoryID:
            products = Product.get_all_products_by_categoryid(categoryID)
        else:
            products = Product.get_all_products()

        data = {}
        data['products'] = products
        data['categories'] = categories
        data['name'] = name

        # print(name)
        return render(request, 'index.html', data)
Exemple #3
0
    def get(self, request):
        # checking if cart contain items for condition statements in home
        cart = request.session.get('cart')
        if not cart:
            request.session['cart'] = {}

        prds = None
        categ = Category.get_all_categories()
        categoryId = request.GET.get('category')
        if categoryId:
            prds = Product.get_all_products_by_category(categoryId)
        else:
            prds = Product.get_all_products()

        # Getiing user detail from session
        currentCustomer = None
        mail = request.session.get('customer_email')
        if mail:
            currentCustomer = Customer.get_customer_by_mail(mail)

        #--------------------------------
        data = {}
        data['products'] = prds
        data['categories'] = categ
        data['currentCustomer'] = currentCustomer

        # return render(request,'orders.html')
        return render(request, 'index.html', data)
    def get(self, request):

        products = None
        cart=request.session.get("cart")
        if not cart:
            request.session.cart={}
        categories = Category.get_all_categories()
        messages = Message.get_all_message()
        categoryID = request.GET.get('category')
        if categoryID:
            products = Product.get_all_products_by_id(categoryID)
        else:
            products = Product.get_all_products()
        welcome = str(request.session.get('name'))
        data = {}
        data['products'] = products
        data['categories'] = categories
        data['messages'] = messages
        data['name'] = name
        data['welcome'] = welcome
        print("your pnone is " + str(request.session.get("phone")))
        print("your id is " + str(request.session.get("id")))
        print("your id is " + str(request.session.get("name")))

        return render(request, 'home.html', data)
    def post(self , request):
            existingRating = 0
            ratedBefore = False
            userRatings = request.POST.get('ratings')
            customer = request.session.get('customer')
            product = request.POST.get('product')
            remove = request.POST.get('remove')
            cart = request.session.get('cart')
            if userRatings == None:
                if cart:
                    quantity = cart.get(product)
                    if quantity:
                        if remove:
                            if quantity<=1:
                                cart.pop(product)
                                messages.warning(request,'Item is removed from cart!')
                            else:
                                cart[product]  = quantity-1
                                messages.warning(request,'Item quantity is deducted from cart!')
                        else:
                            cart[product]  = quantity+1
                            messages.success(request,'Item quantity is updated in cart!')
                    else:
                        cart[product] = 1
                        messages.success(request,'Item is added to cart!')
                else:
                    cart = {}
                    cart[product] = 1
                    messages.success(request,'Item is added to cart!')

            request.session['cart'] = cart
            product = Product.get_products_by_productid(product)
            for products in product:
                category = products.category
                existingRating = products.rating
            
            if userRatings:
                newRating = (existingRating+float(userRatings))/2
                print(newRating)
                for p in product:
                    rating = UserRating(customer=Customer(id=customer),
                                    product=p,
                                    feedbackRating=userRatings
                                    )
                    rating.saveRating()
                    p.rating = newRating
                    p.save()
                ratedBefore = True
                
            
        
            categories = Product.get_all_products_by_category(category)
            data = {}
            data['products'] = product
            data['categories'] = categories
            data['ratedBefore'] = ratedBefore
            return render(request , 'productdetails.html'  , data)
Exemple #6
0
def index(request):

    categories = Category.getAllCategory()
    cat_id = request.GET.get('category')
    if cat_id:
        products = Product.getProductByCat(cat_id)
    else:
        products = Product.get_all_product()

    context = {'products': products, 'categories': categories}
    return render(request, 'index.html', context)
Exemple #7
0
    def get(self, request):
        product = None
        categories = Category.get_all_category()

        category_id = request.GET.get('category')

        if category_id:
            product = Product.get_all_product_by_categoryId(category_id)
        else:
            product = Product.get_all_product()
        return render(request, 'store/home.html', {'products':product, 'categoris':categories})
Exemple #8
0
 def get(self, request):
     cart = request.session.get('cart')
     if not cart:
         request.session['cart'] = {}
     categoryId = request.GET.get('cat_id')
     if categoryId:
         products = Product.get_products_by_category(categoryId)
     else:
         products = Product.get_all_products()
     categories = Category.get_all_categories()
     data = {'products': products, 'categories': categories}
     return render(request, 'index.html', data)
Exemple #9
0
def collection(request):
    products = None
    categories = Category.get_all_categories()
    categoryID = request.GET.get('Category')
    if categoryID:
        products = Product.get_all_products_by_categoryid(catagoty_id)
    else:
        products = Product.get_all_products()
    data = {}
    data['products'] = products
    data['categories'] = categories
    return render(request, 'collection.html', data)
Exemple #10
0
 def get(self, request):
     categories = Category.get_all_category()
     if request.GET.get("category"):
         products = Product.get_all_products_by_category_id(
             request.GET.get("category"))
     else:
         products = Product.get_all_products()
     cart_size = Cart.get_all_products_by_user(request.user.id)
     data = {}
     data['products'] = products
     data['categories'] = categories
     data['cart_size'] = len(cart_size)
     return render(request, "index.html", data)
Exemple #11
0
def index(request):
    # return HttpResponse('<h1>Index Page</h1>')
    products = None
    categories = Category.get_all_categories()
    categoryId = request.GET.get('category')
    if categoryId:
        products = Product.get_all_product_by_id(categoryId)
    else:
        products = Product.get_all_products()
    data = {}
    data['products'] = products
    data['categories'] = categories
    return render(request, 'index.html', data)
Exemple #12
0
def index(request):
    prods = None
    catergory = Category.get_all_categories()
    categoryID = request.GET.get('category')
    if categoryID:
        prods = Product.get_all_products_by_categoryid(categoryID)
    else:
        prods = Product.get_all_products()
    data = {}
    data['product'] = prods
    data['categories'] = catergory
    print(request.session.get('customer_email'))
    return render(request, 'index.html', data)
Exemple #13
0
 def get(self, request):
     cart = request.session.get('cart')
     if not cart:
         request.session['cart'] = {}
     products = None
     categories = Category.get_all_categories()
     categoryID = request.GET.get('category')
     if categoryID:
         products = Product.get_all_products_by_category_id(categoryID)
     else:
         products = Product.get_all_products()
     data = {'products': products, 'categories': categories}
     # print('You are', request.session.get('email'))
     return render(request, "index.html", data)
Exemple #14
0
 def get(self,request):
     cart = request.session.get('cart')
     if not cart:
         request.session['cart'] = {}
     products = ''
     # request.session.get('cart').clear()
     cate = Category.objects.all()
     categoryID = request.GET.get('category')
     if categoryID:
         products = Product.get_all_products_by_categoryid(categoryID)
     else:
         products = Product.get_all_products()
     context = {'products': products, 'category': cate}
     print('get user : '******'email'))
     return render(request,'index.html',context)
Exemple #15
0
    def get(self, request):
        products = None
        categories = Category.get_all_categories()

        categoryID = request.GET.get('category')
        if categoryID:
            products = Product.get_all_products_by_categoryid(categoryID)
        else:
            products = Product.get_all_products()

        data = {}
        data['products'] = products
        data['categories'] = categories
        print('You are : ', request.session.get('email'))
        return render(request, 'index.html', data)
Exemple #16
0
 def get(self,request):
     cart = request.session.get('cart')
     if not cart:
         request.session['cart'] = {}
     products= None
     categoryID = request.GET.get('category')
     categories=Category.get_all_categories()
     if categoryID:
         products=Product.get_all_products_by_categoryId(categoryID)
     else:
         products=Product.get_all_products()
     data={}
     data['products'] = products
     data['category'] = categories
     return render(request,'index.html',data)
Exemple #17
0
    def get(self, request):

        cart = request.session.get('cart')

        if not cart:
            request.session.cart = {}
        products = None
        categories = Category.get_all_category()
        categoryID = request.GET.get('category')
        if categoryID:
            products = Product.get_all_products_by_id(categoryID)
        else:
            products = Product.get_all_products()

        data = {'products': products, 'categories': categories}
        return render(request, 'index.html', data)
Exemple #18
0
 def post(self, request):
     customer = request.session.get('customer')
     if not customer:
         messages.warning(
             request, f'You to have login to check out, please login now.')
         return redirect('login')
     else:
         address = request.POST.get('address')
         phone = request.POST.get('phone')
         cart = request.session.get('cart')
         products = Product.get_products_by_id(list(cart.keys()))
         for product in products:
             order = Order(customer=Customer(id=customer),
                           product=product,
                           price=product.price,
                           quantity=cart.get(str(product.id)),
                           address=address,
                           phone=phone)
             request.session['cart'] = {}
             order.placeOrder()
         messages.success(
             request,
             f'Thank you for purchasing!!! Please click on Orders tab to view your orders.'
         )
         return redirect('cart')
Exemple #19
0
    def get(self, request):
        product_ids = list(request.session.get("cart").keys())
        products = Product.get_products_by_id(product_ids)

        print(products)

        return render(request, "cart.html", {"products": products})
Exemple #20
0
 def post(self, request):
     # print(request.POST)
     address = request.POST.get('address')
     phone = request.POST.get('phone')
     customer = request.session.get('customer_id')
     print(address, phone, customer)
     cart = request.session.get('cart')
     products_on_cart = list(cart.keys())
     products = Product.get_cart_product(products_on_cart)
     print(cart, products)
     for product in products:
         product = product
         price = product.price
         quantity = cart.get(str(product.id))
         print(customer)
         order = Order(customer=Customer(id=customer),
                       product=product,
                       price=price,
                       quantity=quantity,
                       address=address,
                       phone=phone)
         order.palceOrder()
         #empty card after saving or palcing the order
         request.session['cart'] = {}
         # order.save() can be used as it is used in placeorder() method.
     return redirect('cartpage')
Exemple #21
0
 def get(self, request):
     if request.session.get('cart'):
         ids = list(request.session.get('cart').keys())
         products = Product.get_products_by_id(ids)
         return render(request, 'cart.html', {'products' : products})
     else:
         return HttpResponse('<h1>Your cart is empty...</h1>')
Exemple #22
0
    def get(self,request):
        cart = request.session.get('cart')
        if not cart:
            request.session.cart = {}
        products = None
        categories = Category.get_all_categories()
        category_id = request.GET.get('category')
        if category_id:
            products = Product.get_all_products_by_categoryid(category_id)
        else:
            products = Product.get_all_products()

        data = {}
        data['products'] = products
        data['categories'] = categories
        return render(request, 'home.html', data)
 def get(self , request):
     ids = list(request.session.get('cart').keys())
     products = Product.get_products_by_id(ids)
     print(products)
     date_time = datetime.datetime.now()
     # print(date_time)
     return render(request , 'cart.html' , {'products' : products, 'date_time':date_time} )
Exemple #24
0
    def post(self, request):
        address = request.POST.get('address')
        phone = request.POST.get('phone')
        GrandTotal = int(request.POST.get('GrandTotal'))
        customer = request.session.get('customer')
        cart = request.session.get('cart')
        products = Product.get_products_by_id(list(cart.keys()))
        error_message = None
        error_message = self.validateCustomer(address,phone)

        if not error_message:
            orderID = random.randint(0,9999)
            for product in products:
                order = Order(customer=Customer(id=customer),
                          product=product,
                          price=product.price,
                          address=address,
                          phone=phone,
                          grandtotal=GrandTotal,
                          orderId=orderID,
                          quantity=cart.get(str(product.id)))
                order.save()
            request.session['cart'] = {}
            messages.success(request,"Order placed successfully!")
            return redirect('orders')
        else:
            messages.warning(request,error_message)
            return redirect('cart')
Exemple #25
0
    def get(self, request):
        productList = list(request.session.get('cart').keys())
        if request.GET.get('increase'):
            products = request.session.get('')
            print(products)
            pId = request.GET.get('increase')
            products = request.session.get('cart')
            products[pId] += 1
            request.session['cart'] = products

        if request.GET.get('decrease'):
            pId = request.GET.get('decrease')
            products = request.session.get('cart')
            print(products[pId])
            if products[pId] > 1:
                products[pId] -= 1
                request.session['cart'] = products
                productList = list(request.session.get('cart').keys())
            else:
                del products[pId]
                request.session['cart'] = products
                productList = list(request.session.get('cart').keys())

        allProduct = Product.getProductById(productList)
        return render(request, 'cart.html', {"allProduct": allProduct})
Exemple #26
0
    def get(self, request):
        cart = request.session.get('cart')
        if not cart:
            request.session['cart'] = {}
        products = None
        categoryies = Category.get_all_categories()
        category_id = request.GET.get('category')
        if category_id:
            products = Product.get_all_products_by_category_id(category_id)
        else:
            products = Product.get_all_products()

        context = {}
        context['products'] = products
        context['categories'] = categoryies
        return render(request, 'store/index.html', context)
    def post(self, request):
        address = request.POST.get('address')
        phone = request.POST.get('phone')
        customer = request.session.get('customer')
        cart = request.session.get('cart')
        products = Product.get_products_by_id(list(cart.keys()))

        if customer:

          for product in products:
            order = Order(customer=Customer(id=customer),
                          product=product,

                          brandname=product.brandname,
                          variety=product.variety,
                          weight=product.weight,
                          price=product.price,
                          address=address,
                          phone=phone,

                          quantity=cart.get(str(product.id)))

            order.save();

          request.session['cart'] = {}
          return redirect('cart')

        else:
            return redirect('login')
Exemple #28
0
    def post(self, request):
        addressline1 = request.POST.get('addressline1')
        addressline2 = request.POST.get('addressline2')
        phone = request.POST.get('phone')
        customer = request.session.get('customer')
        cart = request.session.get('cart')
        city = request.session.get('city')
        pincode = request.session.get('pincode')
        state = request.session.get('state')
        products = Product.get_products_by_id(list(cart.keys()))
        print(addressline1, addressline2, city, state, pincode, phone,
              customer, cart, products)

        for product in products:
            print(cart.get(str(product.id)))
            order = Order(customer=Customer(id=customer),
                          product=product,
                          price=product.price,
                          city=city,
                          state=state,
                          address1=addressline1,
                          address2=addressline2,
                          pincode=pincode,
                          phone=phone,
                          quantity=cart.get(str(product.id)))
            order.save()
        request.session['cart'] = {}

        return redirect('cart')
Exemple #29
0
 def get(self, request):
     # request.session.get('cart') le chai yo {'1': 1, '2': 1, '5': 2} formate ma value print garxa
     # request.session.get('cart').keys() le chai (['1', '2', '5'])
     ids = list(request.session.get('cart').keys())
     products = Product.get_into_cart(ids)
     print(products)
     return render(request, 'cart.html', {'products': products})
Exemple #30
0
def store(request):
    cart = request.session.get('cart')
    if not cart:
        request.session['cart'] = {}
    categories = Category.get_all_categories()

    categoryID = request.GET.get('category')

    if categoryID:
        products = Product.get_all_products_by_category_id(categoryID)
    else:
        products = Product.get_all_products()

    data = {'products': products, 'categories': categories}
    print('you are :', request.session.get('email'))
    return render(request, 'index.html', data)