From 2f51e6e24b7ab77a718b481aab78946464466d1c Mon Sep 17 00:00:00 2001 From: bot50 Date: Thu, 22 Oct 2020 17:35:24 +0000 Subject: [PATCH] Priyatham-sai-chand-web50/projects/2020/x/commerce@20201022T173524.830272188Z --- .vscode/settings.json | 4 + auctions/__init__.py | 0 auctions/__pycache__/__init__.cpython-37.pyc | Bin 0 -> 141 bytes auctions/__pycache__/admin.cpython-37.pyc | Bin 0 -> 364 bytes auctions/__pycache__/models.cpython-37.pyc | Bin 0 -> 2391 bytes auctions/__pycache__/urls.cpython-37.pyc | Bin 0 -> 774 bytes auctions/__pycache__/views.cpython-37.pyc | Bin 0 -> 5056 bytes auctions/admin.py | 9 + auctions/apps.py | 5 + auctions/migrations/0001_initial.py | 82 ++++++++ .../migrations/0002_auctionlisting_closed.py | 18 ++ auctions/migrations/__init__.py | 0 .../__pycache__/0001_initial.cpython-37.pyc | Bin 0 -> 3549 bytes .../0002_auctionlisting_closed.cpython-37.pyc | Bin 0 -> 576 bytes ...e_auctionlisting_date_added.cpython-37.pyc | Bin 0 -> 527 bytes ...3_auctionlisting_date_added.cpython-37.pyc | Bin 0 -> 723 bytes .../__pycache__/0004_comment.cpython-37.pyc | Bin 0 -> 1007 bytes .../0005_auto_20201018_2304.cpython-37.pyc | Bin 0 -> 716 bytes .../0006_auto_20201019_1109.cpython-37.pyc | Bin 0 -> 947 bytes .../0007_auto_20201019_1723.cpython-37.pyc | Bin 0 -> 1288 bytes .../0008_auto_20201019_1725.cpython-37.pyc | Bin 0 -> 646 bytes .../0009_auto_20201019_1740.cpython-37.pyc | Bin 0 -> 773 bytes .../0010_auto_20201019_1744.cpython-37.pyc | Bin 0 -> 764 bytes .../__pycache__/__init__.cpython-37.pyc | Bin 0 -> 152 bytes auctions/models.py | 46 +++++ auctions/static/auctions/styles.css | 3 + auctions/templates/auctions/category.html | 59 ++++++ .../templates/auctions/category_listing.html | 19 ++ .../templates/auctions/create_listing.html | 34 ++++ auctions/templates/auctions/index.html | 80 ++++++++ auctions/templates/auctions/layout.html | 61 ++++++ auctions/templates/auctions/listing.html | 99 ++++++++++ auctions/templates/auctions/login.html | 24 +++ auctions/templates/auctions/register.html | 30 +++ auctions/templates/auctions/watchlist.html | 53 +++++ auctions/tests.py | 3 + auctions/urls.py | 19 ++ auctions/views.py | 181 ++++++++++++++++++ commerce/__init__.py | 0 commerce/__pycache__/__init__.cpython-37.pyc | Bin 0 -> 141 bytes commerce/__pycache__/settings.cpython-37.pyc | Bin 0 -> 2301 bytes commerce/__pycache__/urls.cpython-37.pyc | Bin 0 -> 966 bytes commerce/__pycache__/wsgi.cpython-37.pyc | Bin 0 -> 546 bytes commerce/asgi.py | 16 ++ commerce/settings.py | 122 ++++++++++++ commerce/urls.py | 22 +++ commerce/wsgi.py | 16 ++ db.sqlite3 | Bin 0 -> 253952 bytes google | Bin 0 -> 15903 bytes google_9q82OQA | Bin 0 -> 15903 bytes image_google | Bin 0 -> 15903 bytes image_google_sTknGkm | Bin 0 -> 15903 bytes manage.py | 21 ++ 53 files changed, 1026 insertions(+) create mode 100644 .vscode/settings.json create mode 100644 auctions/__init__.py create mode 100644 auctions/__pycache__/__init__.cpython-37.pyc create mode 100644 auctions/__pycache__/admin.cpython-37.pyc create mode 100644 auctions/__pycache__/models.cpython-37.pyc create mode 100644 auctions/__pycache__/urls.cpython-37.pyc create mode 100644 auctions/__pycache__/views.cpython-37.pyc create mode 100644 auctions/admin.py create mode 100644 auctions/apps.py create mode 100644 auctions/migrations/0001_initial.py create mode 100644 auctions/migrations/0002_auctionlisting_closed.py create mode 100644 auctions/migrations/__init__.py create mode 100644 auctions/migrations/__pycache__/0001_initial.cpython-37.pyc create mode 100644 auctions/migrations/__pycache__/0002_auctionlisting_closed.cpython-37.pyc create mode 100644 auctions/migrations/__pycache__/0002_remove_auctionlisting_date_added.cpython-37.pyc create mode 100644 auctions/migrations/__pycache__/0003_auctionlisting_date_added.cpython-37.pyc create mode 100644 auctions/migrations/__pycache__/0004_comment.cpython-37.pyc create mode 100644 auctions/migrations/__pycache__/0005_auto_20201018_2304.cpython-37.pyc create mode 100644 auctions/migrations/__pycache__/0006_auto_20201019_1109.cpython-37.pyc create mode 100644 auctions/migrations/__pycache__/0007_auto_20201019_1723.cpython-37.pyc create mode 100644 auctions/migrations/__pycache__/0008_auto_20201019_1725.cpython-37.pyc create mode 100644 auctions/migrations/__pycache__/0009_auto_20201019_1740.cpython-37.pyc create mode 100644 auctions/migrations/__pycache__/0010_auto_20201019_1744.cpython-37.pyc create mode 100644 auctions/migrations/__pycache__/__init__.cpython-37.pyc create mode 100644 auctions/models.py create mode 100644 auctions/static/auctions/styles.css create mode 100644 auctions/templates/auctions/category.html create mode 100644 auctions/templates/auctions/category_listing.html create mode 100644 auctions/templates/auctions/create_listing.html create mode 100644 auctions/templates/auctions/index.html create mode 100644 auctions/templates/auctions/layout.html create mode 100644 auctions/templates/auctions/listing.html create mode 100644 auctions/templates/auctions/login.html create mode 100644 auctions/templates/auctions/register.html create mode 100644 auctions/templates/auctions/watchlist.html create mode 100644 auctions/tests.py create mode 100644 auctions/urls.py create mode 100644 auctions/views.py create mode 100644 commerce/__init__.py create mode 100644 commerce/__pycache__/__init__.cpython-37.pyc create mode 100644 commerce/__pycache__/settings.cpython-37.pyc create mode 100644 commerce/__pycache__/urls.cpython-37.pyc create mode 100644 commerce/__pycache__/wsgi.cpython-37.pyc create mode 100644 commerce/asgi.py create mode 100644 commerce/settings.py create mode 100644 commerce/urls.py create mode 100644 commerce/wsgi.py create mode 100644 db.sqlite3 create mode 100644 google create mode 100644 google_9q82OQA create mode 100644 image_google create mode 100644 image_google_sTknGkm create mode 100644 manage.py diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..f514ed3 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,4 @@ +{ + "python.pythonPath": "C:\\ProgramData\\Anaconda3\\python.exe", + "python.dataScience.jupyterServerURI": "local" +} \ No newline at end of file diff --git a/auctions/__init__.py b/auctions/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/auctions/__pycache__/__init__.cpython-37.pyc b/auctions/__pycache__/__init__.cpython-37.pyc new file mode 100644 index 0000000000000000000000000000000000000000..73420462a6caf2a6cdc4cb93ea604b24391236c8 GIT binary patch literal 141 zcmZ?b<>g`kf_HcQ;z0Cc5CH>>K!yVl7qb9~6oz01O-8?!3`HPe1o6wv*(xTqIJKxa zCMhpDBQeG$zdSD|KQW~^COJPhH?=4^H72n%xg;|`uQ(TZl OX-=vg$h^-$%m4t$+am@5 literal 0 HcmV?d00001 diff --git a/auctions/__pycache__/admin.cpython-37.pyc b/auctions/__pycache__/admin.cpython-37.pyc new file mode 100644 index 0000000000000000000000000000000000000000..bdfb581390bba6a4e00d4de9bad9e736f6079be4 GIT binary patch literal 364 zcmYk0&q@O^5XO_upIvp^lP|HCUc8BjwjRZccnJaBZbD7jB$8|qAHr7%)hV=J%xv+I4UqU^G7=(KEifuh{zojkpy>I~dgy*|&` OV+~T{8XuFaHU0&p09&X4 literal 0 HcmV?d00001 diff --git a/auctions/__pycache__/models.cpython-37.pyc b/auctions/__pycache__/models.cpython-37.pyc new file mode 100644 index 0000000000000000000000000000000000000000..d3d8c8d39ee88bbe9fdf4e1728046b3a8a88bd86 GIT binary patch literal 2391 zcmaJ@U2hvj6x~nn+Fsjf+D1@56a+08wT?g)5)rDJCJjimL82}Xt4OQ$&cxniy<=w9 zq>gxkzEfVzeIm} zhVd6omXCwMT{Ja3-9Op2TS>)0)J9L?gV;iMI=ak*8c~Ybze~_vo&Bw#AbsQJTB*Rqot^+S0#ZZvkO?k$` z=Gpmw7&3r~7B6mZZ|;*rYJZd`lX!ne9Os#cnc7dpbjoGI_v6Y_wO_sXV78D11~p|t z_@)Kfz!b5N3upcMjb;Bv#nK%;P>}ley2Vu!T{ZH3%Wh0&NRyo|$0><1TBn z0OOw4BfP8ws};;HA;ev*tYUnb^|aL$w!$twHNvZG6=A0O8+oM=tsCsD@paWN^|Gnr0fxrmPV0(@(VJObf( z!A~hWPATNe9V{KEg(|y@C)kojvn)=yO8)@``lfsXmM3>6MKM#G8ym;R#{-#)5s&A^ zVvvZz{AdH4#$0X8B$$*Gk)B4mD53)~&)Hy{9>4*Q@q>7t6@5#eSbE7sq_~E117`_r zIF4e*b`uj9(nEb4Z5vH}3h|?HXgo*GqBqf7=&ic9>)xq*_qp*a<)6KGVr{O!FmHnO zZjlxlFI@yC;ibd4N=k2*CdFLx(oc{fV<8u1i(y2ba0cHT#j}HRrppfeD7`2`GDi{R zsV1*so~&I=#X)Vd*I$!9%w&@Ug+5$aUKQ0LsB*2jJ&C2xGWkBt%GR!sJRRp>^D0wH zZ+q*}_SVk*(wS542Rjv9)s_$F`0KRKfBfx(N_T^FACj)KgLfLHQ(i56M7jVB%Xpk? zRoO@~p*WKt)1I@$u156En)#@vh9XM(mecB*D`wXW@YB-L78la@te!oxE9 zgQ^-Tnx{2Bv$c+DT$9_swSG6kHZ%d1UP|4n;D%k+1gtFtg9=Mt0Jv&^dMB@uqvT}R zA#F-Ek79)-((3ggDE%HL7ib2iS2Ux9)C2>?h+YTQnt}VQy%X=cTEDe^UG?qKqxy<+ zt8tP8Y{8j*bT0)?$BcqWAS^l3tDQb4NAEx6&{U8&=`4z#yhY+O5>yNIU1f8~pA;2p z&PcF@{DhVW)7PVS8>{PRiWumdtN8h5U`f)y8na!jyo_1(4MM5Z*l|M5XATOk#_O=b z>BHxv?2@KkqZQO>IrmbgP=x#t_XVQs*G{mMe9hz;%n)DQT-XXL#0;{;NEez zQ<`X(x4^!ea9cD?yS1ozt3CXPzSF*B6;~aTI@lFmxvdejS4viNOot_EB_wBRIJWcq zcbBS@7f89Oca^TOKELD87j^z${*kG~+iIWQ@vdf9dS=bx^k20X(uUQzm4lV;Xbp>N z4hO!2#;_`Dq1b^Rj8=}(FPo)~;HGFRan{RP$q6<{x<;l(Jd`vXyONuprP01MBS>?# zWMm{p(f;$k<=l7+BTFOZqUi|h;~8K#TlI^`wFwyc^ZwIC_DwOVvg@|o7TIU9Yim(} q%1Y5ROqMJw`m*DqRhil2+3mgdFB<_pcFi29Iz@>mu`{PHKYsxh?b~?( literal 0 HcmV?d00001 diff --git a/auctions/__pycache__/views.cpython-37.pyc b/auctions/__pycache__/views.cpython-37.pyc new file mode 100644 index 0000000000000000000000000000000000000000..b61d46818cc9c298fba46bb22b66f1e881e8b95a GIT binary patch literal 5056 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 oHtUyU){@+oRkL00fF$VUf(DkB z$y2|tz3Q4%56-dwOOHL_+Dr8>^w6(A083d;UGfu%84P9y^P3q!cjo8oIeg;39|hOX z<#PWt#OzbVWF3F%DF(`s7w3jv+w;skALrWz`&+cXg}5{x##Q-O-CGN_V=Z;8rOIVyJZR0Xd_HL6nmC=YrL zblu7{X#S`G&H^}d*s(}U^q%D`+dXIKEcfUft&qnWgZaV2VDa_Rx4E82%XI#zjGY&( zoJSYw5?!`C-_JNJbS2|l1?N53`+)q6^C39K-ZlCtv-dsA@#y>XgN*Y-aO$wSJUBBr zOV_DseZK+jIq3SBKB1e`q8qeo{aDNRw=Dlh^kc{G%|q%Zu=MF)3-r_M43*a_-{!iA z8vX3Z#qH^VLM=REzAzMwCy<#j8uL3fTkoO=`01=^x*OYPXTyL6Af zqF>Q{dO#295k2l1jZf_EUqiyg{Hc|{3F;!exiqK@E)U*kR|Z#U*U0rMw0D%ZSnj_Q z%V(_e`UB%Vy{+*#Z)>FA((kBk&+#2w^m}W~uJuYM)(+lj?GMm;ItJgh^7a3<5}dM9 z%&hpp;*Zd1@C&iCb5x+{sL(65KO{n3FkO2%tARaKL@^wv{q~i$wOhA>@rc5d1tTe5 zO@a}VL#~u9mEyi)Qs+7C==@h(&7y8#mk1)sAWwR3B>6Culi)d<=o&+u$ltV>mg6z3G!Jrg$%bH_A`@VTyq(-z@q4Q2AjT`=`$1AM&&>#;MOp_iE3FdFe!x$hD@oj$CO+FTP~U5f{pP@U;~(i zR9VowTq5em`{S#SnAR=BH;iUME}v|-5Y;S1W^HPxR!o=JFy!&^f6VrIJNH8(2^VzL z;FN~l?)0-$7#;Q*!Yoa!U7VsYF<|>VNreM1q#;jy#Z%UrHmrsW2wj6pM2Np+Q}#}s zGw2mSj>+#ZKXsW3lzq3eYskJJ7N*<^60G^>LNQ&s;o6#w3eToG>xg%b9#p^8O^98XXni6<`9hH zu?%Bf4Ld3|>8~rIGXOdY&8BD_EO$AJNnv5+?(ga_OpxJH>4l9k(m^B-P*4C)mr|58 zJ6^}hVa?|LoI$5yLQz7qir6vk_uR30o}dve5Y9IYV|WopOyQM)#^fqZ7m2Be|EmB& z&#Kau5s%WbWYaJDX*yE3S62@Y4_lIp4nqtktw^-S&sU)j)whaXN^mZ)WRQq7=pv`6 z)#F|0GdZKH5s>K#Ie{mYoly0068WX`Y;N16s1ym0lw5bb;yp2Ba>Ehj-I0)~l6SJT zJuy*o(-HLzH0hz}@R-Rh$12?s;<=LBnZPqnO!QF9O73I=k4;_5yN;?veSu&pcksH+ zeiSw%ysO+5kch(o9JpQ+NnlHd$s2aJT*HsNg+W&~#c;?HWNAmxL|5VrsA}Z+YI;6& z5USSOSOUNMM$L6I7`=Ml>_Jzcz@(Ed-r-1!T8C4B&NgOx5mQ1I1T!Oz8NAfOnVO`ujqbz@x_#Zg4{deWqv(>&z(>t%x*Aw^5a@akKx`Z{%o{=QVjRXMTR~NL z!c$y?xzcu8$7Hy!ZQ=%S)A=o=#vUIsM>c?7 z%)-P`Wg3J@Pv}Y{l2r1JESnfzHrg)iBVnL?9}zO{Je&1=UEemH+9@cFQy!y3r!X)T z3DX6jsTUuH$z)HM(TU9&Eg(&;>Bg2T6}ME~fBL}9>N`R*T%h;y0?1QGS6vqs39#ST z-Q3vPmZswL;>P~oyMJDBCs!JC)5YuWzk{w0y-f0FjqcL}_?y>%^Hr;bf3mq!;*m@TKPH3Oo3 nE?csww`QPQ2j7I)%?@E-S3h@|{e?+cWqN1BtKz$4#=?IAO2b#L literal 0 HcmV?d00001 diff --git a/auctions/migrations/__pycache__/0002_auctionlisting_closed.cpython-37.pyc b/auctions/migrations/__pycache__/0002_auctionlisting_closed.cpython-37.pyc new file mode 100644 index 0000000000000000000000000000000000000000..a78b3981084846b935cb8ef3096d71be34598ce1 GIT binary patch literal 576 zcmY*W%}OLO5KcNhJw3xH9`ptFu+Xr`tVa>iS<#bTWG_uah+XBFA)Sn!8N{=D9T0p9 zUny5lzJez!Jr1%JQq*6nzOORb+8Q#F$&Y9G!Wnyu&PGx)PU!ldq<{f8tl=eZk}~1! zf$COXMM;T2WWg9Qya<1IHBu*kwR8-U}XY) z%1eRitQVVOHtRzQy%mRSB`A|apGM?iaJlJCgL1X3*JDQG@%XpYRxh+NVf!m?v|ngD z4OwlRM>sEd=mXxWrCAh$U`A-tss=;a>E5kI16Rc$qZQE|O`J2RY!?bcH^;BFys~ze3Oe<1{pYay>#_CKjjiug zb><$daSD7@yQaam#%jZ}`rd3sj1T1hMCF?2{`|3x9~k%S;~(cDOH-cE>Ec&K8U`>^ gcIx)wrbFK0?ULWX*47@q5Bbr02gi|?k5qTWCo-;_p8x;= literal 0 HcmV?d00001 diff --git a/auctions/migrations/__pycache__/0002_remove_auctionlisting_date_added.cpython-37.pyc b/auctions/migrations/__pycache__/0002_remove_auctionlisting_date_added.cpython-37.pyc new file mode 100644 index 0000000000000000000000000000000000000000..d727c804da521b4120691ff1b374f34d567c2a8a GIT binary patch literal 527 zcmY*Vu};G<5Veyuq@hLd3v5}c!iW$;fMB8nh$Tc=ZtfHuB~FP`5HpPMA^eh8CVqj5 zOWLU7qiaP%g_nfisw&}y8;*`?t695BVu#(4|vnvJ;xbF;H`lsz*XREoIRTwH@FBHK0xvn%W@~cKZg)>KQK;7GT3_foqpvtlp*b4t^ibkCHos zwMphWeU!;X^`eVPf=SY5U|tk4nhWp{P53@!ycx_?awTYnN{FDNR5SxW4Cc nhj;8Oa_tausk3SV^X|zVzj@rM+M`7q9It$zw0fqsH*)^~yswY$ literal 0 HcmV?d00001 diff --git a/auctions/migrations/__pycache__/0003_auctionlisting_date_added.cpython-37.pyc b/auctions/migrations/__pycache__/0003_auctionlisting_date_added.cpython-37.pyc new file mode 100644 index 0000000000000000000000000000000000000000..fd96d766cb7d4761be4c9dff106b8f34257bb327 GIT binary patch literal 723 zcmZ`%y>8S%5Z<-dKA*Wm5mFjbQ@A;uK%zhhB@l&*Gz1}8mR1|jpSa2!B{(*|M_OdFPF=d5&f>e%aeeypI(_rkZ?-Ru808x-msSEybbbz zdp&5vT)buwg80TjAg`mZVID#7mSxc|%3)dH(ze=ks;`W;E^ZBAV=qhZn`lPDDLwm? z7_yuL%LCvWo`)!EssNa=tH&YwxnW&-Mb$qm5 zuOG_}Tk{F!-r7{Quk=QO>d6Lx;O_tHa_PZ$MfDbH=#A9o)`z{7GE{rZ2f?jhxm?9cmG z&x&^h&=%La{Gf_+bE_Mpz!s%xTkJ|KrX?1K3l_A_C;#8$YWunKKaD@BT@XvcSO^}_ z_kfR{EOzr9-W6Pr(~UFb$9v;A!)h9#JN9^e#RKx4bV4?lJm2l`g?Nk79<1*PFw;~R0&QMLJdg@h!!N8UaUwf$1@E!{s~@(l3wYN zyaOD06&_))oOlIJ%z6_lvC^()cER~r{f#6!o^qq(=v=-%GoZPj3e6OkPa|_ zrAEdA#*}TQW@ZIeW(RidTWKS3UKn6QIG>B2 zDg7*-mthqbxsXm)0H)$ir1G|_O~w&zaZLvr0Rtm2fz4T9p`A3q1Ph&{Nr;3A4m8*H zg$XV?-`wv8Ssq0_iur3sUW+^*TS+@{l1{P%ZRo(x+M>wre~~WkCS4tyH(+mV65<~0 zQy;gace*7_9k}5#(){lq92`968#j%G>XAcOArAo%WOG<#8RnHVW0)LE^VO(l%XYY| z3Lce6c_3ShGS0$s#XsOmdIHNhOyet*?N3Pl~dpDS&4Mnr28XQ*BOxF|86=dVd82a+(K7t(~8bn8B7oJj4#*>Er#m!>MZJ2;=b zH(^|CNm;>FJ;Fjn@6es%%g}m$v9C!*Xn!ndWWgvmJJi)zO|STbg)3D)I|W)7#v@tX4-0 pa`)e5U;iQfZIk5##am(BbfB$AbSK@X`W>DrrG-OBn{}CM{RO5&ExP~! literal 0 HcmV?d00001 diff --git a/auctions/migrations/__pycache__/0005_auto_20201018_2304.cpython-37.pyc b/auctions/migrations/__pycache__/0005_auto_20201018_2304.cpython-37.pyc new file mode 100644 index 0000000000000000000000000000000000000000..3d2de5c6962cee008e6a0b80aeb38e467efb72ec GIT binary patch literal 716 zcmYLG&2G~`5Z)i#v6B>fh9~f)azl|2LRAYba3BS>$;DV&Ii79m)ZPtVhpG}cIFh&E z!Yl2S6R*IDStn6Pn$O>^XXode*L!#jHzNcfKr2$ylv2l8 z#cH1N+Dko3-Vxy7{UG2;zVN^E)Cd2H#KB*DM`CJ2BipuAa}zV$ugiIpx20Cb2DJuR znZkwbEJAXEZjKQoNhy$&0iDy7OK;%=bEVb{c>q3e*;|AV;5SYus||<8iL;C)(lW7FUS3r_;%MF}*s!6yuL) z=O1ieFXdMA-=ukhF&+H-^yXzY#o0|ZQ^if5o#{JO=^RYfNz)WE+ewx^tSv+Fo{N0d zYB5Si$zgK%LX4gzM+eLM#>d<}bhD2T^1$;bqXBcsX!rLb4(tFHxti;PLaXbhYdPB9 gz^og(o30Cg=yt=NVqP1*+Q@h81Ts#EA>HTy0rf`05C8xG literal 0 HcmV?d00001 diff --git a/auctions/migrations/__pycache__/0006_auto_20201019_1109.cpython-37.pyc b/auctions/migrations/__pycache__/0006_auto_20201019_1109.cpython-37.pyc new file mode 100644 index 0000000000000000000000000000000000000000..034785cf345065a0cd4d6488b191f187a7ece663 GIT binary patch literal 947 zcmY*YOK;Oa5cVsM?WFHVIC7y)q6nd;g_Z*?h!zf(C2Ql^I!f9^vBe+zsguF3zb9MVh06ipl4dH z2YPMNYemNps|Yjb}}8W+u2Zg>n()p~r(3v|$OBVFgxU z4c1{JabXj-W`;s0X3&CdEUqKnvqe={qC+NeRbbHZeg9cRCMApZ{5`+t_g+MM`~Fk8 zJcnedDAOX5?hPs9p|UE9idIyRoJy;f6G8dqZD(=uZokg(z7Fr2vN6a=aV^`NW~8K0 z2OA~pn%u!ga2JJaT%|Mv>BI<07@uOU<_Qr)Y$jht0NSm$8I4QMiZm8{tv<8fv7GYt z+ORLijF*CM%zc+^D)?q?cztA=vq73szEvMJju^WZe7mx4TVGP3?C~iw6Aui`-1txq zDd!zT-W}G#&3MStmL?j-syRLiyBE`N@p$3=1cx{u&mYXkLDcK{2fO1b zSAU6(TRcMHn6_o$Scv9YM=7 z$z#zsq?aWz56h&;g|xE*C=>4@6}KH-RNmk#{y{;tKnE=_K#%pnq*mGj159eCZB-HM zwE^vQ<9EPCzk^;6I^eI(&5R3O*ufbOXIjvMU3jv#<_7GcuLJvV08iHj+FzmV({8$x z+G#J{g+t8p_1eT4=Zl$V^hvtc%*7TwUmLL*?87&R_*>~-ZQ&tSC#<3d>EUoVd`ZHp zEXeWjcsLr4UXjsg_)6|&Q@T8bgT)i4Z#h|)B zO0qDf;%LDOzzU=`NnVs>UQ{^@;$(h<<=a5#VZ};mlRV5Q`jl+V6UsnZ zm7rX@%dm{@)J~-LNfi%=TNHzF1Lv~YD<*8sSeV~SpHmi=6q?LNSxD<`0zw)ITu9^R zN#BxwjXmO2#mUZsPOMrX`Sw$ZW?1e|wu?TAi zXoRa7S+Fpo0#Sv35J=*r6tcbLv4?8`2_+i`Zq_Ywg79fc`95ai2PmY!jZ+Nt4X(OR z+BGZUUH?Ejq}~f5(jx@vs~APyC*=1kWQsy%0bS4>XdWe0a8qUQ#th3`C~~>FPSUx3 ze_5NdcNONVn?lLP(K)MGxl(5%-7)q^}>>$CCXoGY?qZ+v_66S=)Ue^0J{ot$4vuUOE{#rs?1Cm2(U|9(3=o!%mNF`ebn zT{xW-%bXPj*-=j}D SKQw3eTAhxtQTSNjG5-hE+=TW3 literal 0 HcmV?d00001 diff --git a/auctions/migrations/__pycache__/0008_auto_20201019_1725.cpython-37.pyc b/auctions/migrations/__pycache__/0008_auto_20201019_1725.cpython-37.pyc new file mode 100644 index 0000000000000000000000000000000000000000..e2bb23042e0bbec448e2c3a04c0a911c5679a38e GIT binary patch literal 646 zcmZWn&5qMB5VqsAO)D000PzM$kx-fzp@kJ%EkA+_tPp4~Q6wwPOtUFT9PC8Za^M2j zJ_ygjOCVo4@d}(6r(5lTu{@eT&(Al0adb3eL_fdoJo{C*h2)c|Z&p@QT$u z;kB1|oV{V-f%wiqAm4~@A`#$!WZ~!!#j?<|v$`yF)|IL;c3dmK%H+;Zc5o?HClh*qjiZDoQG2z$iXh9ok>Y? zeT5|7lJaw(RW8HQ~&#MmgYnMd}X9zAnyd6|KQ!QTO`-ADbiI?3Rnl43Bz%0ti?osjS$l z?AW%*B>@|pp9CCkEu0@t?0|bs#=RTllCiDBs>md33Q;TVRRVaaQsdgK5h^o0$_P$k z3rK8(m07XF-9^tl&b>t+Tb0f&gQ-p6_=)YNbs(gLN-bcw!XJwt>mx+;VA~M#JniEG({u5cP7L~CHGqN zb@09bE*@U8imQKsVZLs1F6BNlZ)V-)ewvFSv`fl2laKu#_je*(A3=B*7^i|2L&a z(cy9}%`f!uDAQ}-@m$xkakuuXv8w}EusRcmFmJPNGi{x>S#{cdys!PIUH#8YLCTbQ G;QR&HFwk27 literal 0 HcmV?d00001 diff --git a/auctions/migrations/__pycache__/0010_auto_20201019_1744.cpython-37.pyc b/auctions/migrations/__pycache__/0010_auto_20201019_1744.cpython-37.pyc new file mode 100644 index 0000000000000000000000000000000000000000..13a0c25803a952c81e9c3c77abc2c8d3d8e6c694 GIT binary patch literal 764 zcmZWnOK;RL5OyA$O|p+JCvI><+DnzKDxo5Twk;Gc6r=)&D3ayPm?YaIUhJ%3PaMj1 ze+YlcS5Ey4oERrr^?)sp=9~HKdHG^82??&~Zcl&Og#0n!uv}D@c+@i#K)@P+8(pMsN~a zKw=xL%!(cEt_S9E?yZO5!T>xNf)4?NFoJOwzyzjy8;{eYQ>8 z(DCCaiq0t8HiDi+C($BWoYBSe(@0NyN?E9;s59-Stl^oEJG?%;Vk*bXrH{EG9=$1f z+DK6ssgglwbKi-IOVd0gcsCm%8zo1*?~~XmIqpDsj=?LjDoQR*(MTU$2yv_Av?qKi zfQyV(T*;%J@S(}Mlru#4%g!`Rb5W#RVPn}3TJkz;^0|Y^w3gO*Tf40sd@Xnh*YiO8 zw6#;JLrRgiEjj9AO22JcX}AUf-|!lEofa4#e*n?pdD(DzWnPhvF$9-6>#z>RhWAtb zP2>~ww&L%{%NNOK#idGCb(*u}wfJ6_f`Lj>QDL7_o*YJ!Jba8K!h!rhoYUjYPMXi> z;Zdf=zT>&BW#ew`*K=0~ux528j$zei-DcW4AF}GSr+8ocFT46*nSzulbLRX5=&a0+ literal 0 HcmV?d00001 diff --git a/auctions/migrations/__pycache__/__init__.cpython-37.pyc b/auctions/migrations/__pycache__/__init__.cpython-37.pyc new file mode 100644 index 0000000000000000000000000000000000000000..72625fe45c12792a61abe00a3d3dfe8f1c30c2a4 GIT binary patch literal 152 zcmZ?b<>g`kg2z@p@n9N6zyKqV;Q++NEI=ZKA(%mv(QhR~5l9$8{Bm@*iU}=FEh>&l z%1h2jjB&{?&&$bAOeu~@&d<$FElN&}Ni0n+$;{6yj>*kTFG_?kListings under category "{{ cat_name }}" + {% if listings %} + + + {% else %} +
+
+
+
+

Seems to be no listings in this category

+
+ {% endif %} +{% endblock %} \ No newline at end of file diff --git a/auctions/templates/auctions/category_listing.html b/auctions/templates/auctions/category_listing.html new file mode 100644 index 0000000..7d9f73e --- /dev/null +++ b/auctions/templates/auctions/category_listing.html @@ -0,0 +1,19 @@ +{% extends "auctions/layout.html" %} + +{% block body %} +
+
+

Categories

+

Select category to browse through listings

+
+
+
+ + Select any one of the following + + {% for cat in categories %} + {{cat}} + {% endfor %} +
+ +{% endblock %} diff --git a/auctions/templates/auctions/create_listing.html b/auctions/templates/auctions/create_listing.html new file mode 100644 index 0000000..9001e5a --- /dev/null +++ b/auctions/templates/auctions/create_listing.html @@ -0,0 +1,34 @@ +{% extends "auctions/layout.html" %} + +{% block body %} + +

Create Listing

+ + +
+ {% csrf_token %} +
+ +
+
+ +
+
+ +
+
+ +
+
+ +
+ +
+ + +{% endblock %} \ No newline at end of file diff --git a/auctions/templates/auctions/index.html b/auctions/templates/auctions/index.html new file mode 100644 index 0000000..bb09930 --- /dev/null +++ b/auctions/templates/auctions/index.html @@ -0,0 +1,80 @@ +{% extends "auctions/layout.html" %} + +{% block body %} +

Active Listings

+ + +{% endblock %} \ No newline at end of file diff --git a/auctions/templates/auctions/layout.html b/auctions/templates/auctions/layout.html new file mode 100644 index 0000000..8e73546 --- /dev/null +++ b/auctions/templates/auctions/layout.html @@ -0,0 +1,61 @@ +{% load static %} + + + + + {% block title %}Auctions{% endblock %} + + + + +

Auctions

+
+ {% if user.is_authenticated %} + Signed in as {{ user.username }}. + {% else %} + Not signed in. + {% endif %} +
+ +
+ {% block body %} + {% endblock %} + + diff --git a/auctions/templates/auctions/listing.html b/auctions/templates/auctions/listing.html new file mode 100644 index 0000000..213f617 --- /dev/null +++ b/auctions/templates/auctions/listing.html @@ -0,0 +1,99 @@ + +{% extends "auctions/layout.html" %} + +{% block body %} +

Listing : {{ Listing.title}}

+ +
+ {% if user.username|stringformat:"s" == Listing.user|stringformat:"s" %} + + + + Close this Listing + {% endif %} +
+ {% csrf_token %} + {% if user not in Listing.watchlists.all %} + + {% else %} + + {% endif %} + +
+
+ + +
+ +

{{Listing.desc}}

+ + {% if Listing.closed %} +
+

This listing is CLOSED

+
+

This Listing is won by @{{bids.user}} for ${{bids.bid_value}}

+ {% else %} +

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

+ +
+ {% if user.is_authenticated and user != Listing.user %} +
+ {% csrf_token %} + {{ bid_form }} + +
+ +
+ {% 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 %} + {% endif %} +
+
+

Comments ...

+ + {% if not Listing.comments.all %} + No comments Yet.... +
+
+
+ + {% else %} + {% for comment in Listing.comments.all %} + {{comment.user}} - {{comment.date_added}} +
+ {{ comment.body }} +
+
+ {% endfor %} + + + {% endif %} + {% if not Listing.closed%} +
Add comment
+

+

+ {% csrf_token %} + +
+ +
+

+ {% elif not user.is_authenticated %} +
+
+ Log In to comment on this listing + + {% else %} +
+
+ The Listing is CLOSED for comments + {% endif %} + + + + +{% endblock %} \ No newline at end of file diff --git a/auctions/templates/auctions/login.html b/auctions/templates/auctions/login.html new file mode 100644 index 0000000..67624a4 --- /dev/null +++ b/auctions/templates/auctions/login.html @@ -0,0 +1,24 @@ +{% extends "auctions/layout.html" %} + +{% block body %} + +

Login

+ + {% if message %} +
{{ message }}
+ {% endif %} + +
+ {% csrf_token %} +
+ +
+
+ +
+ +
+ + Don't have an account? Register here. + +{% endblock %} \ No newline at end of file diff --git a/auctions/templates/auctions/register.html b/auctions/templates/auctions/register.html new file mode 100644 index 0000000..47e956f --- /dev/null +++ b/auctions/templates/auctions/register.html @@ -0,0 +1,30 @@ +{% extends "auctions/layout.html" %} + +{% block body %} + +

Register

+ + {% if message %} +
{{ message }}
+ {% endif %} + +
+ {% csrf_token %} +
+ +
+
+ +
+
+ +
+
+ +
+ +
+ + Already have an account? Log In here. + +{% endblock %} \ No newline at end of file diff --git a/auctions/templates/auctions/watchlist.html b/auctions/templates/auctions/watchlist.html new file mode 100644 index 0000000..effa4c1 --- /dev/null +++ b/auctions/templates/auctions/watchlist.html @@ -0,0 +1,53 @@ +{% extends "auctions/layout.html" %} + +{% block body %} +

WatchList

+ {% if Watchlistings %} + + {% else %} +

There seems to be no listing you are watching !! +

+ {% endif %} + +{% endblock %} \ No newline at end of file diff --git a/auctions/tests.py b/auctions/tests.py new file mode 100644 index 0000000..7ce503c --- /dev/null +++ b/auctions/tests.py @@ -0,0 +1,3 @@ +from django.test import TestCase + +# Create your tests here. diff --git a/auctions/urls.py b/auctions/urls.py new file mode 100644 index 0000000..437e120 --- /dev/null +++ b/auctions/urls.py @@ -0,0 +1,19 @@ +from django.urls import path + +from . import views + +urlpatterns = [ + path("", views.index, name="index"), + path("login", views.login_view, name="login"), + path("logout", views.logout_view, name="logout"), + path("register", views.register, name="register"), + path("watchlist", views.watchlist, name="watchlist"), + path("create", views.create, name="create"), + path("categories", views.category, name="categories"), + path("category/",views.category,name="individual_categories"), + path("listing/",views.listing,name="listing"), + path("category/listing/",views.listing,name="listing"), + path("watch/",views.watch,name="watch"), + path("bid/",views.bid,name="bid"), + path("close/",views.close_bid,name="close_bid"), +] diff --git a/auctions/views.py b/auctions/views.py new file mode 100644 index 0000000..7e00c75 --- /dev/null +++ b/auctions/views.py @@ -0,0 +1,181 @@ +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 +from django.urls import reverse +from django import forms +from .models import User,AuctionListing,Comment,Bids + + +categories = ['Fashion','Electronics','Home','Sports','Toys','Automobile','Books','Videogames', 'Other'] +class Bid_Form(forms.Form): + 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": + listing = AuctionListing.objects.get(title=title) + if request.user in listing.watchlists.all(): + request.user.watchlist.remove(listing) + else: + request.user.watchlist.add(listing) + previous_url = request.POST.get('previous','/') + + return HttpResponseRedirect(previous_url) +def watchlist(request): + listings = request.user.watchlist.all() + + return render(request,"auctions/watchlist.html",{ + "Watchlistings": listings + }) + +def index(request): + listings = AuctionListing.objects.all() + + return render(request, "auctions/index.html",{ + "Listings":listings, + + }) + +def listing(request,title): + """ + docstring + """ + listing = AuctionListing.objects.get(pk = title) + bids = Bids.objects.get(listing = listing) + if request.method == "POST": + body = request.POST["comment_body"] + comment = Comment(user=request.user,listing=listing,body = body) + comment.save() + + + + return render(request,"auctions/listing.html",{ + "Listing": listing, + "bids" : bids, + "bid_form":Bid_Form(bids.bid_value) + }) + +def category(request,cat_name = None): + """ + docstring + """ + if( cat_name != None): + if cat_name.capitalize() in categories: + + listings = AuctionListing.objects.filter(category=cat_name.capitalize()) + print(listings) + + return render(request, "auctions/category.html",{ + "listings":listings, + "cat_name": cat_name + + }) + + else: + return render(request,"auctions/category_listing.html",{ + "categories": categories + }) + +def login_view(request): + if request.method == "POST": + + # Attempt to sign user in + username = request.POST["username"] + password = request.POST["password"] + user = authenticate(request, username=username, password=password) + + # Check if authentication successful + if user is not None: + login(request, user) + return HttpResponseRedirect(reverse("index")) + else: + return render(request, "auctions/login.html", { + "message": "Invalid username and/or password." + }) + else: + return render(request, "auctions/login.html") + + +def logout_view(request): + logout(request) + return HttpResponseRedirect(reverse("index")) + + +def register(request): + if request.method == "POST": + username = request.POST["username"] + email = request.POST["email"] + + # Ensure password matches confirmation + password = request.POST["password"] + confirmation = request.POST["confirmation"] + if password != confirmation: + return render(request, "auctions/register.html", { + "message": "Passwords must match." + }) + + # Attempt to create new user + try: + user = User.objects.create_user(username, email, password) + user.save() + except IntegrityError: + return render(request, "auctions/register.html", { + "message": "Username already taken." + }) + login(request, user) + return HttpResponseRedirect(reverse("index")) + else: + return render(request, "auctions/register.html") +def create(request): + """ + docstring + """ + if request.method == "POST": + title = request.POST["title"] + desc = request.POST["desc"] + starting_bid = request.POST["starting_bid"] + photo_url = request.POST["photo"] + if photo_url == "": + 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() + bid_obj = Bids(bid_value = starting_bid, listing = listing_obj, user = request.user) + bid_obj.save() + return render(request,"auctions/index.html",{ + "Listings" : AuctionListing.objects.all() + }) + else: + return render(request,"auctions/create_listing.html",{ + "categories":categories + }) +def bid(request, title): + listing = AuctionListing.objects.get(title=title) + bid = Bids.objects.get(listing = listing) + new_bid_value = request.POST["bid"] + bid.bid_value = new_bid_value + bid.user = request.user + return render(request,"auctions/listing.html",{ + "Listing": listing, + "bids" : bid, + "bid_form":Bid_Form(bid.bid_value) + }) +def close_bid(request,title): + listing = AuctionListing.objects.get(title=title) + listing.closed = True + listing.save() + previous_url = request.POST.get('previous','/') + print(previous_url) + + + return HttpResponseRedirect(previous_url) + + + + diff --git a/commerce/__init__.py b/commerce/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/commerce/__pycache__/__init__.cpython-37.pyc b/commerce/__pycache__/__init__.cpython-37.pyc new file mode 100644 index 0000000000000000000000000000000000000000..497af4142c453cfc1f5008abfe6665476efef008 GIT binary patch literal 141 zcmZ?b<>g`kf=_q+;z0Cc5CH>>K!yVl7qb9~6oz01O-8?!3`HPe1o6wv*(xTqIJKxa zCMhpDBQeG$zdSD|KQW~^COJPhH?=4^6~Ty)&&hr(-o*q=B-LQg;vQg%{LlH?%uTY7F5$kNATH1rIl^(+W_u9wi4VF@yjg&ZtH z9xn8hze{bv@B?heP67L>zhUfLL70=XZ%iJd+a;JE!6U zh(Vhs45=eBZhCxT`9Sm;x)CQ{x1`6?Q$)W(r$g5xB6ZOJ(B#y0MEvqT#fa1<-(dnI z-{*Y9UY1JWT1*H0$ z{Mod9!v0Szk96k({f#_GG=itkM{IkrVR?g|_nvP(vyMB*&Wrc=J6oss9(JA6?RVQw z|LK!Q$7b=~3ES%SH;y$uXZlvOZ5FJLcP3e`!#&!O;wlDL7PUU_2e%iL5rjCLpN7h~;~fpGxXPsGqF`&lX)x zf=hFFb*!616+aCUam{t4a{Tijrp)U~WtiK6jVN>hfz_i{W_oW}-c;=8aNAYRT;R@5Xl6=o*L22TKli|q5&XPKa zCk{-RFID0u(1@&j6-tMIp@Y$mO?6qoNCyYD*1s^8UUNOWEeWR&6%a;O1GqPFRmh z=4gafj*l?R0_mE*&CeJOomu(Vu}wMI3i7C&$i-BcQ5w6|h7t-5xvm6-X*Wu3Mm#Tz zeI4vAY$T@9$Ykuq^}xWpgF+lVhR8hXU7r(`4ykQMZE`TSaJ}Hwc|FysLx=vbMw}k+ z&+tE-7eDTr{Yj292d~fTpyA_1PpwZqED>kZXL`D=m4jRfuXt>qQt@V(H4MC+4I@ms zEEGm2@8e-m&q2nAS+m1pP0lc)OT{qs+>Wd&(Yc0sRVlX=&3LQ)6fRYio%U{6kZZN( zp;9sSnyRLTtJQ|8p$Zj91~tsrtCdPkIh0#UxYBAiHKX0Cm79$>;j*UG_iM7IsNuy! zb+;PX*Q#YX;!P+FTx!W_kv2KR8`USdF^0*OZBAuq=)-()Vj?()*;fctl zc>3pg`Q=eWFLu;%tiE|vaZeoEHGv&XnLQJx|7OzYG|YWJbiudDs|)Cg9pEISa_Ku+ qAuXhYOe#4W8DS=;l9{wHeosxcs~I61$?JlU&7`A|&!La;$ovb^HVQ!i literal 0 HcmV?d00001 diff --git a/commerce/__pycache__/urls.cpython-37.pyc b/commerce/__pycache__/urls.cpython-37.pyc new file mode 100644 index 0000000000000000000000000000000000000000..bb63353ba8b4839a226ad7f826884d4fed627125 GIT binary patch literal 966 zcma)5!H&}~5OvaIThcA?14zELkxBx~tpWrTR;+~f0PLlz=(@4nq>AleJ1o1`eht4A zapT05BPYggDk>zTwG?YI8ozn(js0pch!Ct_-_Jii=pgjN{_Ix>!3+4b-6)zN>QTS+ zxIgnf8+XbM4`u-mXQ78!NCW0?jyBz`4{^u>dbIVn{@S1QX!iq(d*ri^P$oHNDr5NK z{X0CBVpXhbMNA<@6n)GYzN}SQ5o4GV`VyCgHdx8pFl`TLY$X0tuq&P5Q>ieQis3@6 zq~Z<&S0y8wVa?bi!mx5pNq|VoMEWFolp0wTnNDqS3hi|o zz4=NwVChM8T8qrG+qHF|j}!coQcMIccqNsYV7yY2V}89LRn;aB>QCBwCm94BD1@UR zHXjX#<5pKLIU8d^ID0m<@i302CDHof5`@tM)c>)NCTGeLNt{u8I&T5XvA-o7Tb~fU zupp!OA4X>)D{ESaHJIS~S!o#zbMMcYGX?_{7>})GqZqGRDB_;d_#8?bw-e zYqrZ$u2V2@-)U$Q4tE&G(NDO$DE69=P+o}GZ@O(=6IknSj$A%%(9M9^hq4cb)q1g?|ErimvPK-gC76N7hn+&(%%Mnpt{ zs%RA9-B7e_j2aPvXx{v>C7NREC&jGsjf}Ph9g@!W-9!9k*z2?0=&3B&)L0D55^N5v zvStpsPvW@m8QfIHfn$CKY~8_?;#Ue7cZ{>rh-(FV3KpQ)f?K&NXcVwep_OH*Al0Y&-l1&mRcDu+<3$PKd3p9>Nd2G*IRzuMi^JSCT-Il`kX!j DL@KPg literal 0 HcmV?d00001 diff --git a/commerce/asgi.py b/commerce/asgi.py new file mode 100644 index 0000000..5594f23 --- /dev/null +++ b/commerce/asgi.py @@ -0,0 +1,16 @@ +""" +ASGI config for commerce project. + +It exposes the ASGI callable as a module-level variable named ``application``. + +For more information on this file, see +https://docs.djangoproject.com/en/3.0/howto/deployment/asgi/ +""" + +import os + +from django.core.asgi import get_asgi_application + +os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'commerce.settings') + +application = get_asgi_application() diff --git a/commerce/settings.py b/commerce/settings.py new file mode 100644 index 0000000..016409a --- /dev/null +++ b/commerce/settings.py @@ -0,0 +1,122 @@ +""" +Django settings for commerce project. + +Generated by 'django-admin startproject' using Django 3.0.2. + +For more information on this file, see +https://docs.djangoproject.com/en/3.0/topics/settings/ + +For the full list of settings and their values, see +https://docs.djangoproject.com/en/3.0/ref/settings/ +""" + +import os + +# Build paths inside the project like this: os.path.join(BASE_DIR, ...) +BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) + + +# Quick-start development settings - unsuitable for production +# See https://docs.djangoproject.com/en/3.0/howto/deployment/checklist/ + +# SECURITY WARNING: keep the secret key used in production secret! +SECRET_KEY = '6ps8j!crjgrxt34cqbqn7x&b3y%(fny8k8nh21+qa)%ws3fh!q' + +# SECURITY WARNING: don't run with debug turned on in production! +DEBUG = True + +ALLOWED_HOSTS = [] + + +# Application definition + +INSTALLED_APPS = [ + 'auctions', + 'django.contrib.admin', + 'django.contrib.auth', + 'django.contrib.contenttypes', + 'django.contrib.sessions', + 'django.contrib.messages', + 'django.contrib.staticfiles', +] + +MIDDLEWARE = [ + 'django.middleware.security.SecurityMiddleware', + 'django.contrib.sessions.middleware.SessionMiddleware', + 'django.middleware.common.CommonMiddleware', + 'django.middleware.csrf.CsrfViewMiddleware', + 'django.contrib.auth.middleware.AuthenticationMiddleware', + 'django.contrib.messages.middleware.MessageMiddleware', + 'django.middleware.clickjacking.XFrameOptionsMiddleware', +] + +ROOT_URLCONF = 'commerce.urls' + +TEMPLATES = [ + { + 'BACKEND': 'django.template.backends.django.DjangoTemplates', + 'DIRS': [], + 'APP_DIRS': True, + 'OPTIONS': { + 'context_processors': [ + 'django.template.context_processors.debug', + 'django.template.context_processors.request', + 'django.contrib.auth.context_processors.auth', + 'django.contrib.messages.context_processors.messages', + ], + }, + }, +] + +WSGI_APPLICATION = 'commerce.wsgi.application' + + +# Database +# https://docs.djangoproject.com/en/3.0/ref/settings/#databases + +DATABASES = { + 'default': { + 'ENGINE': 'django.db.backends.sqlite3', + 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), + } +} + +AUTH_USER_MODEL = 'auctions.User' + +# Password validation +# https://docs.djangoproject.com/en/3.0/ref/settings/#auth-password-validators + +AUTH_PASSWORD_VALIDATORS = [ + { + 'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator', + }, + { + 'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator', + }, + { + 'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator', + }, + { + 'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator', + }, +] + + +# Internationalization +# https://docs.djangoproject.com/en/3.0/topics/i18n/ + +LANGUAGE_CODE = 'en-us' + +TIME_ZONE = 'UTC' + +USE_I18N = True + +USE_L10N = True + +USE_TZ = True + + +# Static files (CSS, JavaScript, Images) +# https://docs.djangoproject.com/en/3.0/howto/static-files/ + +STATIC_URL = '/static/' diff --git a/commerce/urls.py b/commerce/urls.py new file mode 100644 index 0000000..2f7a9e0 --- /dev/null +++ b/commerce/urls.py @@ -0,0 +1,22 @@ +"""commerce URL Configuration + +The `urlpatterns` list routes URLs to views. For more information please see: + https://docs.djangoproject.com/en/3.0/topics/http/urls/ +Examples: +Function views + 1. Add an import: from my_app import views + 2. Add a URL to urlpatterns: path('', views.home, name='home') +Class-based views + 1. Add an import: from other_app.views import Home + 2. Add a URL to urlpatterns: path('', Home.as_view(), name='home') +Including another URLconf + 1. Import the include() function: from django.urls import include, path + 2. Add a URL to urlpatterns: path('blog/', include('blog.urls')) +""" +from django.contrib import admin +from django.urls import include, path + +urlpatterns = [ + path("admin/", admin.site.urls), + path("", include("auctions.urls")) +] \ No newline at end of file diff --git a/commerce/wsgi.py b/commerce/wsgi.py new file mode 100644 index 0000000..054e015 --- /dev/null +++ b/commerce/wsgi.py @@ -0,0 +1,16 @@ +""" +WSGI config for commerce project. + +It exposes the WSGI callable as a module-level variable named ``application``. + +For more information on this file, see +https://docs.djangoproject.com/en/3.0/howto/deployment/wsgi/ +""" + +import os + +from django.core.wsgi import get_wsgi_application + +os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'commerce.settings') + +application = get_wsgi_application() diff --git a/db.sqlite3 b/db.sqlite3 new file mode 100644 index 0000000000000000000000000000000000000000..814ccbb9c1e1572745c2ea84d4f889808556eea5 GIT binary patch literal 253952 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�ZkvUe1M)ErGJS$u zCsRU86Q?WpT zCA4o7ip@xrefm^_4sMa_9W{7mJA86|+}9~KfW$>^ebqR5e35h&HDy5VRGl!y!__j9 z@ENGVe|Ncb%)y0?{W~=H5ra7X&Kemb5qPr&LRIHxQu%Xi^Aa!H)wa_{pSK!Zn|Cpv zT*?7iN_tIT*D(I(zDh`$V6a%Z+jxZon|VqiuQAjvek~`rTSPasE(RRswtFfv-SA_~ z>MFg7eWgma1fiawGT;3B#+wo3f%$`qyeqZzAWNHiFIPOZ?e}^1{tnLhw^W6$RN*eU zZ>|crbj_?Kkv&^>9@Gf8h|#mk(;<;+a3h9j_D^(<>ppeqGQ;>=d#>}Mj;_gG$E;~`HJep z1x96Fdg>$C!<5uMKS+VK1s44q@5TLk8@f>OVlkIGW4e<}jDxW8+rI^+=TF zpB7?HKC728J4<(bmOGA&(~2M6Ui$`R&%MVv`g+-MPkyUuF^#AN+!Di>8EX^3f^@!E7}M0(^I_GJ{Z!vWAAEKBA53qT=uR#ela(sbO00#Iql)hl2+tSHnG3s4h;3eu%FZo3j<8 zQQ^Zq4X<#hG%QX_W+rt;C*f5Q^J&zV((YFwKL)|`&9B+s|5<-vqo2Q8$bE=Zi7`>(80&{?#XZHf1^v8&}d_ljcYb$ zFBanrZlL`UU3nYuiYvy`Qi?_TY#~b(KPxj=fb>co#Tjw$%Ct{cETD}x&490=8_}eL6hMSOt<;9_-@&3hzV`%Xp ztfpO0EI0FX?RDB(b6row&X?zH!JZLdbyRq(Cz2BIb;FL7iBK6xFVgcZr_oiy(|e_r zj}>7*teJ3LE4ej>J;)xtZ$M;^K5Ie2qSvIWS`YXWL5!5B&(wlAtD34RE1C27LuS=A z<>7<~i;rmEUHRyw^@bq8pAG{}*`%Vyv<4iZjPsuPYOfVRlOCt1GQavx@Gf(HrcKP|ha;X>oLdDz4b$8D+gi=4&v8mGDb1Vil z&a|NPnQ2+_#g-2oR6=0asa_;jUhsM4m?uVsUT+oEQMDC`zP|_?r8M7-s$3cUDyH1i z&eFD&w#8VvYmNPG$SvzF<1gf&$lm;M-jQUqVWZ!x?<@U0jlS64;J%gHi6-W#f9EIK zn$=Ypd+@Fk5!CxuQ2a(M6xVIEcK{;_73D%QH#kvAq&mts$J~Mr+`D2>EZ|VTeBf}} zF4P=96gv*hq=?QIJ92hEwky4G+WKQYe`xiF`ctaV2%9GR4}$hYO3>v4aC9^E@fO2@<}}=it_7Fo#rz*PrU-X)o}>(Jd_6Pk1Yaatj8>dXhzo1yhUe1|m)&Yc0}q(z5rkfuzuwQrCBDW090E7N;n_l4YN~U( z5t|A&$lj={=Kkm-L2Y}@M^}uB>t{STiUsrP{in)48V5INbRiQ zvhr!34wy>y8S07~iZ(#D_iM`tnzn;@!;rm5{nSuqX$?qD+-}un@=SmpeR_%JU$h!0 z9*Z=W-si7dd{s%CggAF2t0Xqxt=_1p zFHi*x%N5V)K#U~_=eeCY>T+M%2QKA()GaTNb9|ZpvNb}p8kx&0A3ohqI5r)jcCtz- zwa(nP6fpY@hV#<4f2&ET{EW|Wke&Hl)qMnCf(uckd``2^lu@JRk6yeJHQnhOa91i8 zZ}i&d7MtT5L~G-P722#Wk4lpLMq9Z?jWm~+n_n`yb^(6fKI@!)X34H+MTxYTU_$;h z#NUSzR-X6dnPC#Ynl!c}8U$GptV|Z!r1KK)j3KB?jn@Hg6nQ0r#tHy@e)=t<()WV2 ze1KH-5f^o?00yj7gw`DJMv@GPQ(zvZMP{ue+Ta#!yi&uKM#xY5>Q181!41mx-Q ztvi%~adcmv;2rOa>D1iBWp-=xO8? z_Y{yF_0va$Yp&MA#wF=n4XE7Y1lJZ`PbAe8zLqP6Q~x4X_&`_5T>D#+3)qDTH||0E zY{cQFb4PNr7DVpNl`2uwN@#pjv~vUT$T8`>pL?&yj-U;@#0nq`=Tm+M`!Xx;7oRvI zOxr_*r`J~B&9fFL$fR6d5^mgX<#E5v$oWeBMp2fluSAMWPo0>TY>g`8iPx4R&-hIo zFlF3}KZE7;@=7Fle(T%_+vutQj~=E3z&qx8;j(a-vdF^_27Vu6jSq7r|03(y&JH`2R0u0&;r)B3hu4b+BOW|s)#&KC;e|iwI0w$RXXE68*vBtyqx+6 zanwp@1KmZwMkfZlM#eJq`(+siQ6eqV{iz%1dabESyOwUTk470j?h_40T6Dn~#Wo7+ zvBJT1GXeI@oINXlzf=0Wsa&??(JI++#c%NWNI8Yxr)4>#6UVL_L&IxY|6N&f;4HQQ zduUMP^FiofCA!T^nWpkY>c0Cp$OF5?hM@>6Qx+~=I&rT@&K!e@=ZfkXYL`CI#=BY3 zEkq~5S5N>G6ua3Wq^ymrKN)pHG%WZP1M`|efJ_B^O?r6>yj^T?r=PMYP->&}Hm(y8 zGb}hy=T1+0#@WNzS5-)k**8G#*|b>x{o92IS^@%OU|QLtwF`#yfOhkF1mll2Mp`Bp zfo-z1=t&^gOIHN_aMUW!s7uw{@J%$-=E8Ogw9MfzQEa3fjKqtWr>O`nxMJ)1vLZ>A za95rxcdMmi1^1*g8Q39M=RHV0-XDjzYwVlYL6^|En;?sYZEQL_DBU<#`pFRG(JWUa zrxV5bD)DkumO~;L`o{SfoLZLRO7#g!T8>Yd3q823ti>_L82LyOS2vmA77of04DOP6 zezfa+glp82XkNH9VSRg^z9n3QPfeL447mb~SK;NdN)HWT&9gLkX_2zz#{zYH z9H~IS)9N|O)^QK)^?|yzbzDEMP@qRk0z$F;ql8#np}!Xgz1F7X0(QpqxfBtDM$X2@ znTS&}J~1Y=U@`AHTGl!unzP${%|^<)_1Y^LU5ReENG^>kNEb6YmAOdG>5Jz2?3)h08_ zGJJHfv+1`j$z91JxDy@ogc)M=$bwxLRkQsg?<$O>WV~qO5LxxX_*043yi71bya#@&sg1kus+ln zsWi)N+?7IH{r$w9KYgQA2imG*YCqNKO}>g4@u4)WH(as$dZ$M?bisM#oO(|!QWj9a`<)ZKklNBjnRys{|p7|5ACyE$KN?GNpPKa z;kC^ATb*%k1Pbk5*71gujJg1-zji*v4T7$5nM90O8|K0>r5ECLKXuc~OBFLXhf!7M z!U>JezYK2}2};L6MK&J-GKCHkdU4>6cGhmUg&Ysj6MikGS2IC5%MjDFX%0%uum@di zlaMDGO3g@2P(fUax^Rp9vM;7p`(kuk5?3k?x${wO=7Lo4FB!h-4ZOR6nXEW`EOti4 z3PF64Ef}_`1Sbtetda(QMgRqsvyjD6|BXvuEXxKVQ(UC`BY}J7r39BxIV4hr`^W2X zL)Tf=&B_O5I~wU#=A@6sOmVt6553}DoL4#_HVwTvqgW)`fAWRyaKK;q#LI{9v7HMc z;?t#5UTiWX#d?{n3865gTl_M5W~3no2|J+1a!A=aUeIhlC5!9R*4ej@ne+ z7NkGgi4O82mfbL>Nx{g`(Q7`S6-#JVyvygUyyMjCk)H|NcMuohRoNE>r(Zm)zB7-W%6}}|_$l2RI4(~m-L?T`Cq*5zAeQF$o$cW^lNmvv zF>cU9jgfkdgih$85C&_q{)fo;%k)| zGTB217q6#$&YFT~8cUw)zu58UGDR>SNR+Rl;9ExUU5N^0cEG zH~Jp&8IU^KvNqA@(~aA~7U;IC=(~45QZ(ry?PwMe5&@k;AkA)}`Ww|- zwNvLc#*^{s*d^D8?0e+n4;W)I*we=Sa)rH4#c`$=wHD+gFFqiJ=3%fgS;*%~@Do!^O@K;*eufhtPsFOnp%D~IbXzN}q3|Gpc zJ&OP@&AUp9@&`=(CKQw)mky2Xh8EPKhelC5LE<#9>hQqTT;_*zmioy6T#%^2w`rz1 z?n(}RE|7({H5S1grrjU%TKvOCqOqQa$#%` z_Vds0mQV*%J@75Flp%S`3%}f!V$U-Nb*b;MuX0=%>jm}`k#ZfnD_)9c=M&?qjC_u) zx4u|{?+fh1tXhqiiKc>7y<_hmGraXawf|D+o7-b#7Zs<6b_(5X$5r?Gk&3QiKOta`=ePy8qY7h7>?;vIOU1Fi_G_xT}=|-0&cARI=`mYMspH&l3g{Z6*;*d*@H{J z-oYPO>(S6bNUiaIaw=~0vj&CabUliFE+*NPcnJ|(gZB`;){f{ZDvliyA61aDP`p+^ zWoo=})+9|)qc>10D=g|_s$t`LWo2?D&sxVeb8TfEJ+|H|yJ(>FL0G+OC0>+3iBlAS zOsN4#h(O0At|3iNsm5AYVdQ5z*W}*Ero|ZQu%PTO^bdqEnor{ZumCNToD=VFK73#b zw!(WwfB3@7LRF6+{!-hdrHr9zK<3BKSYZjgwj zFP9w*z9i}GW5=reIfQxq+Aq)=|H4jnQ4t42+V=1@&9A`FsgP@6Y|oSYlAe>W5;Y5I zAkhj#sTBQ2wkbnvkXKhiB|O8+Yf5RBO=SAc`%CD&M?SiR!5G);YRlc;?d+VbxnxC| zN0X4xO`^cEI?TQY^XlunR)lpj)K*n51arNuKGq1Jo0ywGx}j{K3bq zhL^TfN*cdb_yc`oev{GcP*o6zt8MnauUX?!{)6p4(ol;%B>p2v`{;Ne0F*MHj{{Q> z|G`$K^rPg3)C+<*(}7FQM|K3GZl@4lH zJD{smRf^m??4ijoS6S(U%Hcs}1cF+e;Y)k^7y4hMjT=T8+FmZ61T@GaX8=+X&fH>F zy0y{PH63zWKe)}urqDuJ#qg(~{mv91IF=T+xNh;?7pWWf{9o)Bj`Wp@ttzli7R;;1 z5ap;t2rYD+gLOW1!gnT)8wR_-$MVaW{iu7^KgRm!_}x#Cj7gu#igwLI^|D2Xem~Ey zX>c!`d1srUA|u54%hkK`?^=%zCSd!q-;!GWcQP<~-f68uZ+9tK3TS$mJge#5q1+ev z%=^W{fN}-G6YJKf(psX5OTyYm72I1!nflhl(lh;FO);8OrID5K&e8Aido4zNAAkQz zWx~3>0pWqoSBdsFgot0JK~H$DFUts)C)N&zuLy1)vOj(bz>VW2(8Hm!1NJoO%a|9K zGkm+R_HQHfda9d5{1!oz7Jd13SmJug(2Mu6D=CMeoE(L(u*~sk>V08ZgfJ#xlCWIE zVa!HTwD$caHSj^4O@kI?W;fM6i}f7v)Ji%Z;`X?;$6wP_awXUb&i@XT6&9_@U9XNH zi~J;53cmbE%1F}Wt%C-)6&(#(S}-`A6TK_B8f-D2n9z3Npwt{*srB6Hl20CiZPSya z+Y6e1-jnwR9KiiF#4jSer`A>FVd|pN9}c`5y~~sE!4V1R?pc#XQ&pzD-`!~$qPQ63 zF0P52^Iw=V$~3izleCIgn-n7AH8*^?pb74kq?sUfHC;8-8~Nq>ZSk}ri7NOq3`w^A zrS0P=MB(*|dBe{bFXD8&_bQk$5#>)0YJs}P!@r2k!+WCRiC<-?%pbO7RWtp0|47m_ z$Vrk@V;I2{bwcMDG%*{CIe^$A*E+w4b9`NV+2UFP{iy?D&~-rI_vR`tD_zJyl+BJO_d6fvDIVJ@oDPc-wghoXfh0 zGi|K1o18*kvU2-FT0e2`<{I`L?E3Mw)z;`eQ z(FI3Q#WU0#+kD~cgilcQ{ZC7K{wn4si3^DKADpWamva{k$bhf1r#FH&$YH>C+LK>xSIf#MQ`8rEpVWq5w zN(=LXDm8(3c`=z*g;8{nw<9GA$ANNDI5L=oqgCd{GXTR0zhf2$Kmka<*^~a>s};le za694~GqpgjtfQ?|5koe~ zvkJ`^O@^$7V4bCoKOc3beLewM4L*kA+Mty@Ghjwk*iEj}bcrQs$Mh7b8W?k;D$mt>IG)VCb^Xw)*f(1KBI)!pP;Zc@?UAsb1ddCb|KXI}X6HKn2J@m3>{Z6E>XiKjxar`$(J4w!(01ru`z)O#2&A z%LlvBFRHSNRT&3@bH9|jOZIrQ7KK_cxa;( z`~a?>@XV2runf!ab8L%{uXbV zvfeS1#=*8KAi+h-=!(%jE9fVxUthUN5ar%7C)7%!|Spv`k6; zt=3`+y$RVDi13~3tWlo}2%bM9wX3$j%_s2;4@oxJWL#(as^mYeAX;WSF5g~S=v*32 zk@{B}NvP3DuSVcn6Z>6^=}w>b1n!>NeLjbG(;UqtuN9(j^9Z2Un4c?V^H0o}p zmRf+|4fT!BZ)0yB$&=qF&=;4m*F~Hgr$)tpjnh2a>?t5(B0ubJ5u_zKP8&)5wmp!J zjPJrm6DicRr=$=9-F94B?DW>)58l)#tRNHXSce?AOE6BnThfg4oVv-xM72Z>LmF)r zgw_XSpv8DjL5Menst1?FJuH)zO9VE z^T8X&9$0$oQK7h?`m4oKC=^f8k%m4FX*5ueIh8q5cEla$Le3p4=j!7IS>V)fJmX>d z1J4!^-Trici`p|ii~fsRg%O+juyRO&TzG$_Qr(h5UYw*kuXgPsJD*Q%Z9j;v`_RJ@IaLAk-4P8jh<^ip>t~wx z0?~}-@%2e&J#K5P1X2v+6=-Bg$mzphJ{*ciG9-O4cWg<=tpsxT=MBpHfB_Z;$ffR++$3f0ghtPyVpnmQa2*lg_n zEPjrS5{t3z(aSAhJ}QS?{6N7ZNoRa=>|ZU?KNKzjp(J5}(%Cos?lLg0)9D0fqqZ;{ zJh=ix*_bOK8w>Wc>t2T=B6rO0-qCN;&(yY*Pv;FnfdE$lpBRX4qWaZ-r2K<1howB|9s}G}4uaq2ZS8j&CD;gU`$OXBS27yX0#2Z!h#Yuk9k z7~iZ6zd0BlCn#^Y6|&K1jlq4ed%iu9@@^P6~zFXYGO2>NrSIY tnt*?4e*d3i_+N4=|0f*7?I)Bs2pb+~poYm-roWVJWqA#`IvLCG{{u8a(ggqj literal 0 HcmV?d00001 diff --git a/google_9q82OQA b/google_9q82OQA new file mode 100644 index 0000000000000000000000000000000000000000..492f44c27eb2d402e0dd3446b4d38192e75874c4 GIT binary patch literal 15903 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�ZkvUe1M)ErGJS$u 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 literal 0 HcmV?d00001 diff --git a/image_google b/image_google new file mode 100644 index 0000000000000000000000000000000000000000..492f44c27eb2d402e0dd3446b4d38192e75874c4 GIT binary patch literal 15903 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�ZkvUe1M)ErGJS$u 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 literal 0 HcmV?d00001 diff --git a/image_google_sTknGkm b/image_google_sTknGkm new file mode 100644 index 0000000000000000000000000000000000000000..492f44c27eb2d402e0dd3446b4d38192e75874c4 GIT binary patch literal 15903 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�ZkvUe1M)ErGJS$u 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 literal 0 HcmV?d00001 diff --git a/manage.py b/manage.py new file mode 100644 index 0000000..bea064a --- /dev/null +++ b/manage.py @@ -0,0 +1,21 @@ +#!/usr/bin/env python +"""Django's command-line utility for administrative tasks.""" +import os +import sys + + +def main(): + os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'commerce.settings') + try: + from django.core.management import execute_from_command_line + except ImportError as exc: + raise ImportError( + "Couldn't import Django. Are you sure it's installed and " + "available on your PYTHONPATH environment variable? Did you " + "forget to activate a virtual environment?" + ) from exc + execute_from_command_line(sys.argv) + + +if __name__ == '__main__': + main()