From 083fcf7b3801c1b7b63e60ceb0d588de2a438ef7 Mon Sep 17 00:00:00 2001 From: Priyatham-sai-chand Date: Thu, 22 Oct 2020 23:05:00 +0530 Subject: [PATCH] close bid improved --- auctions/__pycache__/views.cpython-37.pyc | Bin 4756 -> 5056 bytes auctions/templates/auctions/index.html | 38 ++++++++++++++++++---- auctions/templates/auctions/listing.html | 16 +++------ auctions/views.py | 21 +++++++----- db.sqlite3 | Bin 253952 -> 253952 bytes 5 files changed, 48 insertions(+), 27 deletions(-) diff --git a/auctions/__pycache__/views.cpython-37.pyc b/auctions/__pycache__/views.cpython-37.pyc index f6b507042afa65d1b241ab3bd6cd9eff0351ccbf..b61d46818cc9c298fba46bb22b66f1e881e8b95a 100644 GIT binary patch literal 5056 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 DjxG0X diff --git a/auctions/templates/auctions/index.html b/auctions/templates/auctions/index.html index e369078..bb09930 100644 --- a/auctions/templates/auctions/index.html +++ b/auctions/templates/auctions/index.html @@ -14,18 +14,42 @@

{{ listing.title }}


- -

- bid price : ${{listing.price}}
+ {% if not listing.closed %} +

+ {% for bidding in listing.bidding_listing.all %} + bid price : ${{bidding.bid_value}}
+ Last bid by: {{bidding.user}} +
created by: {{listing.user}}
+ {% endfor %} created on {{listing.date_added}}

-
- -
+ {% else %} +

+ CLOSED +
+ This listing is over. +
+
+ {% for bidding in listing.bidding_listing.all %} + {% if user == bidding.user %} + You won this listing!!! + {% else %} + This is won by @{{ bidding.user }} + for ${{bidding.bid_value}} + {% endif %} + {% endfor %} + +

+ {% endif %} + +
- {% if user.is_authenticated %} + {% if listing.closed %} + + + {% elif user.is_authenticated %}
{% csrf_token %} diff --git a/auctions/templates/auctions/listing.html b/auctions/templates/auctions/listing.html index 7ee0945..213f617 100644 --- a/auctions/templates/auctions/listing.html +++ b/auctions/templates/auctions/listing.html @@ -36,23 +36,17 @@

${{bids.bid_value}} by @{{bids.user}}


- {% if user.is_authenticated %} + {% if user.is_authenticated and user != Listing.user %} {% csrf_token %} -
-
- $ -
- -
- .00 -
-
+ {{ bid_form }}
- {% else %} + {% elif user.is_authenticated and user == Listing.user%} +
You can't bid on your own Listing
+ {% else %}
Log In to bid on this Listing {% endif %} diff --git a/auctions/views.py b/auctions/views.py index a901427..7e00c75 100644 --- a/auctions/views.py +++ b/auctions/views.py @@ -1,4 +1,5 @@ from django.contrib.auth import authenticate, login, logout +from django.core.validators import MinValueValidator, MaxValueValidator from django.db import IntegrityError from django.http import HttpResponse, HttpResponseRedirect from django.shortcuts import render @@ -9,11 +10,12 @@ from .models import User,AuctionListing,Comment,Bids categories = ['Fashion','Electronics','Home','Sports','Toys','Automobile','Books','Videogames', 'Other'] class Bid_Form(forms.Form): - bid = 0.0 - def __init__(self,bid_value): - self.bid = bid_value - - bid_value = forms.DecimalField(decimal_places=2,min_value= bid + 1) + bid_value = 0.00 + def __init__(self, *args, **kwargs): + super(Bid_Form, self).__init__(*args, **kwargs) + self.fields['bid'].widget.attrs['min'] = 10 + + bid = forms.DecimalField(decimal_places=2) def watch(request,title): if request.method =="POST": @@ -46,7 +48,6 @@ def listing(request,title): """ listing = AuctionListing.objects.get(pk = title) bids = Bids.objects.get(listing = listing) - print(bids) if request.method == "POST": body = request.POST["comment_body"] comment = Comment(user=request.user,listing=listing,body = body) @@ -56,7 +57,8 @@ def listing(request,title): return render(request,"auctions/listing.html",{ "Listing": listing, - "bids" : bids + "bids" : bids, + "bid_form":Bid_Form(bids.bid_value) }) def category(request,cat_name = None): @@ -140,7 +142,7 @@ def create(request): starting_bid = request.POST["starting_bid"] photo_url = request.POST["photo"] if photo_url == "": - photo_url = "https://www.riobeauty.co.uk/images/product_image_not_found.gif" + photo_url = "https://upload.wikimedia.org/wikipedia/commons/thumb/1/15/No_image_available_600_x_450.svg/1280px-No_image_available_600_x_450.svg.png" category = request.POST["category"] listing_obj = AuctionListing(title = title, desc = desc, user = request.user,price = starting_bid, picture = photo_url,category=category) listing_obj.save() @@ -161,7 +163,8 @@ def bid(request, title): bid.user = request.user return render(request,"auctions/listing.html",{ "Listing": listing, - "bids" : bid + "bids" : bid, + "bid_form":Bid_Form(bid.bid_value) }) def close_bid(request,title): listing = AuctionListing.objects.get(title=title) diff --git a/db.sqlite3 b/db.sqlite3 index 9c78f25d18b015fad7173a393ec18440d62068da..814ccbb9c1e1572745c2ea84d4f889808556eea5 100644 GIT binary patch delta 1599 zcmcJO%TH556vi2**m5boKtLX%Twfru+|KLvaeaamQ?w;$p}8(BEt1j~txza5mAy7qY?_YZI5QME?QZyUtyF$11s`=taqP>DPHMT{oECFuH8PO!27E~$@Aw4T0Osl^Fzxp+ z%^$(ufO}!6|4PCab5kwg&UynLJk&oB*ZdypO^zmf{=rFI8N259WQPJ*;+`pVh9H7^ zFz!LhuK=Ac>|*HUHrN)Wz1UxV17F4Z-^6z+UqC}zvQ&0dh>aFnJ7P}OtO@JYcT8)> zC;L{bW(^uVUD>fQT=yMxEw?E`MQ`)UK@9+~3xs-zK2b$wSS5BDI~{g~@Woru#yg9! z>uP3lHW{{I8&+(-R4|$hMJ9rwxll9_3MVFlc7%fSL8c&iW-emG#EH`LJ$v2bKNew= zNRWhy%9u)AGNY8I=V7QMM9m>l4!m!)3+)8zbray*+R0YdK z=cSImR4Tr+R7sH$vPLsqGg4?unnW98=xunnB# z=fm*ivE^3sH*)G!6)H1?`G+h#!Cx(wZ?>%*Ey6ST)j62n2A*wkmx{f_E>!aI17cNJmhXnFkj z*n8N_gY&Sa%22yf;d(G!r&KRp-X}BzMYkU>z|Qiv`?>(%fC1gMuX?E;>bA#qTT>Cb S%h+%uZ@C36`Fllpv;HU8@7Y}d delta 574 zcmZoTz~69ye}Xh)>O>i5#?*}oeEN)roAdQo+6x*g7@Ala8(0~d>6sf_npqf3*39pL zidtA1ndzBYniv_GHXqC1ek`BS&VX5!Uu8P`0!E|ljtdx1^G!|=P?)Z=p78-tTxmM{ z21f7AiUt?>wkz#tTp=Htl44n9RFalrSz4HEm{yvcTWM)nRF-IIRAf<=l3ryN<&u-> zYZPb@l@*rlSCwuMl^a>^>*87A8y;Ha7vh)cmz7-Qo9k)l8}4i9n;U8DXB27VKVAMl zqZFgTbgTP}MIm09e&JEszTs{;QSP2q{vlzRQ7)dwkyY8ozTtsYQ7%Clks(f5zAo9u zQ6WJ<+SkO--7DKO&%oBmz{o(?&`{UF1RMfjznYtwSQwaWd%*aBUxAR@w|!uI&o79f zxrJ#9GfRO47u!Szei1%n-cX)g?wMQ*I9oVovae;ExH(Xulx_ROGUftLQQl?-c5X&S zervu7y#Kiwc^>gZao^mmsBn)<3@G)K0R|dFS-3v&>@C z<13iCIa%u2fwG2;oYR9(F)L4hTFq?6>Xe_KT|8aClv#?4wULF5OPtXZC@+16Sq&^d xeg7Heb{pXkq1pynnt!e-O