From d68822b6c6d3a8c21374564499cd52667eab28ad Mon Sep 17 00:00:00 2001 From: 3p1c0w3nd <3p1c0w3nd@gmail.com> Date: Wed, 28 Jan 2026 10:00:02 -0500 Subject: [PATCH 1/6] cambios en about y en contact --- server/djangoproj/settings.py | 8 +- server/djangoproj/urls.py | 2 + server/frontend/static/About.html | 77 +++++++++------ server/frontend/static/Contact.html | 141 ++++++++++++++++++++++++++++ server/frontend/static/person.png | Bin 138137 -> 0 bytes server/frontend/static/person1.png | Bin 0 -> 6224 bytes server/frontend/static/person2.png | Bin 0 -> 15257 bytes server/frontend/static/person3.png | Bin 0 -> 4869 bytes server/frontend/static/style.css | 81 ++++++++-------- 9 files changed, 238 insertions(+), 71 deletions(-) create mode 100644 server/frontend/static/Contact.html delete mode 100644 server/frontend/static/person.png create mode 100644 server/frontend/static/person1.png create mode 100644 server/frontend/static/person2.png create mode 100644 server/frontend/static/person3.png diff --git a/server/djangoproj/settings.py b/server/djangoproj/settings.py index e0b1092a5c..9aa08599d1 100644 --- a/server/djangoproj/settings.py +++ b/server/djangoproj/settings.py @@ -61,7 +61,9 @@ TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', - 'DIRS': [], + 'DIRS': [ + os.path.join(BASE_DIR, 'frontend/static'),#Para que reconosca los archivos estaticos de la aplicacion + ], 'APP_DIRS': True, 'OPTIONS': { 'context_processors': [ @@ -134,5 +136,7 @@ DEFAULT_AUTO_FIELD = 'django.db.models.BigAutoField' -STATICFILES_DIRS = [] +STATICFILES_DIRS = [ + os.path.join(BASE_DIR, 'frontend/static') +] diff --git a/server/djangoproj/urls.py b/server/djangoproj/urls.py index 6808da9141..6c38c938cf 100644 --- a/server/djangoproj/urls.py +++ b/server/djangoproj/urls.py @@ -23,4 +23,6 @@ path('admin/', admin.site.urls), path('djangoapp/', include('djangoapp.urls')), path('', TemplateView.as_view(template_name="Home.html")), + path('about', TemplateView.as_view(template_name="About.html")), + path('contact', TemplateView.as_view(template_name="Contact.html")), ] + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT) diff --git a/server/frontend/static/About.html b/server/frontend/static/About.html index 484efd960f..42689b3782 100644 --- a/server/frontend/static/About.html +++ b/server/frontend/static/About.html @@ -1,68 +1,85 @@ + + +
-
+ - + \ No newline at end of file diff --git a/server/frontend/static/Contact.html b/server/frontend/static/Contact.html new file mode 100644 index 0000000000..3e640dbb69 --- /dev/null +++ b/server/frontend/static/Contact.html @@ -0,0 +1,141 @@ + + + + + + + + + + + +
+ +
+ + + + +
+
+
+ +

Contact Us

+
+ +
+
+ +
+ +
+
+ +
+ +
+

123-456-7890

+
+
+ +
+ +
+

Colombia, Bogotá

+
+
+
+ + +
+
+ + + + + + \ No newline at end of file diff --git a/server/frontend/static/person.png b/server/frontend/static/person.png deleted file mode 100644 index 72ce98a9657ebb745f7fc19f56f4692e27154841..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 138137 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 z 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 LNIfR1`S$+-uE962 literal 0 HcmV?d00001 diff --git a/server/frontend/static/person3.png b/server/frontend/static/person3.png new file mode 100644 index 0000000000000000000000000000000000000000..6efcd3315b776a60937900355f11723764c33052 GIT binary patch literal 4869 zcmYjT2Q(Z^*WO*L2aD)}UAxGN-lE%8R|&!*O0-Cn=utPpB1)pJ8lr~ieX)ohJ&}Y& zCkS385kwF1%lm!jJO7=TJ9o}A^V~W2%-orasf$GbL{|%=1pop80N`Z-T+9L@0n`+f z3=jx}0m5+E{neN4(qLd@yazY}a z!ay1t8hSci15vU682_UG5Bh6fbO9Kt06jo5G9U~9Vg!;g z0x#YIxB&nVi0toH|0h5Y1sRx$E9(BBa`1v&ZO8Nkb>WKb}Z1Ubsso`MtP-ze|8U)FLzy%_y zsS7}8XElNWIS3=ohY=uv2?R~Bt|kV~h(s7@F$s<_f1XZ*;@D&g0A|8(F1k zAr0wJEN&O7$s#vrlHa>CRQZ_e-p=YQ{0_f*?J2{>~5A| z!mUNp2Lt6&Y_*Lx$VTgFccoL>=K1{o?4NB%4OjmyE^SY{o$V1@7IaEy+6RscK#5Uf z>7#}RO1%=P+<}xl%)Q|!g^j)f9yZlQFIwGwn+@^In}r((TFe|;wOLq~&s-xsliH7+ z8^qGZr^-`b&Jc4?J)L@|tOsh3VxWE(fCsssLS1~tGkeH=>5A`?Sy@~F_`7O@<}?%1 zCHQY8M2-m!!A%LMs{#b7)YNA>FjJ~KG_jiYUKTuG>KE&j_$EZqgJ?$o1GEb{{GI?L z3rJ;PBoN65iG+cnRA8t>p92RbvHaJS*8`?Oixc6PJ#tE+!w+M(t><$L=F?XzV&k{v zO7!#!@EfTwkU@lvpvs_%AYZgM^aAb$a%2OUYa^L&UJJ-u{m# zq9#8E#7W`q0)d7lGWC;hZ?cbLc=)4-a5nJu!Cpnh`vOaWX;zfU$A+6K!oJs2=X^&J zZ-`c`*F1Q_e*q}9%Q|{dqj4Z}Ou|oxE<sg8z} zLjH!0k40`~bZk@B$t+sEPRt3&nS?XE))(h>rn^G=*?g^7ruNv*9g|SLL~1Pnc2eZY zh-_2}Y^7&(d4Hwc`gBKuJnEhGaSERy!nD$0z-#yOS=xZZ%_V24%082xX#X(hEjLru zM|5oTw|2)TyC*_^4wz4y;-DVbLUYxrc0{FZS|&cmj$iJM=Kf2;2x2C<+g$f}j@a5; zB&M9ZP%+t-;cdJz%44y;I=soj6N-4eVTdu%e`oi40vPayG?*knk--=E6zyI6Q{{Q{ z)q15rg(IQg+#J3c(CoX#yO@@kpV~<5*qWG>a!<6pwp`>Mf6EAcoUOBY)39c}BW<1M z#>6y9E=QAfTf(*k?LSHky zyf5H)URdq!@x4DpYNa8igm?DC^wr?u{VC7KqbFw>p3{n=Il6YN)MWK`I@XS_MB~iG zKW+Ja5pv(IW}g;S+0rW6yQ|{%$9VsVtm3!UbDWHYX8@3f%PDV(R=%fO zMm=~S0y|(vsrFz#C&bO%&3%GX`K~#e!n7JZ;=S+eo4yryk?@&)cY`KytZ1D$hDUwK zXQrCyrF!>y^^)v(>A1+F#+sJ}pI*E{_*~0}y^2~qVh~hd3lVNk`TVW=eKb*}qq+J5 z@I3-z)4)0Qpu7T`%gp!K{KGqiz{hL>hvGkXWVHW`{PU(RWzVK0BSUO86b)&;8JQGG z4IfhzdVSm2Sm!CM&`J!(oMdgNG3{z_BRqFUzH((FG3qgoU|HpG z8$LRK`8)$VwJ$VzZ^4eqa+zB`T$ByworD{1+ZS_Ih`BePa<0^tk)6j=oO}1HUT)RE zW{slMl}&dX(xDDedx%u80Eq#AfC8<(?le7>4YT>}&dkc;l^|m~{UQv$FsIDAsw7^@ zd8nAlm!$1YOD{%da-AL*qhuW-QT~r)*0%E9h0}5YnKY#GcA1$AF}<$J*(FrYPA0;TQ)rA7Vio9VtlSlL5%jKUFpl_J5u9O@1V>X)|M})Zj)0 zK#_?~Vd3rTMMfwpAyjK7255?*7Qh!!X-LDffYeMxw`J-vwUvlK5}nR3i?24XelTE{ z+Bozs6EY@8+d06}UcJgKRwR@<0_hRby!*9JZf5nN2Qu5)e&@g@+OgrYuaDj!>-SM- zrT|}SbH->tDFzpp_88%ftjHX}&Do6D#$YKu*4_z;{2{&=QI}87_%6;fJ^kGbR(xzE zJsvne$nU;iy8_Fm4uS}xR+@H6;+~u}qD_Mx4${_6=fRb}`o6iR34Un3Sj5|(mcPpD z+|M&Dmlx^2go?e#d5w7gk{53fKvL`u+&b_&^lOabb+&h9zJfc=I5Pcio8;|shRiP5 zwF-RD-4t~;WA^>GPye|}JvqjQC-%2)`9ys>oTkc6UDH_EWhpz6da~V5B!_r?(hf%j z?a{i7Tf3{7sDcL+jvT~LX;MSs)UeA;42eb4z3ss~H5$iIT|U$>P9_728^+&{l2}AL z`T8dF{WH zzB)rGL>sN#n!L478r`dLs-j~v>G?dW!wMKE+}pjG)?9B5;8EQZ9*IB2Ne)y^R%pI| zw-(>6m0QgtRHiSR@Acat@tNaSuN9h!7p~vxp4j}bdxOl@u95@wqsI@QoyIxA1|ZyL z)d>zGwy#Kf(k~=9NV#%%>SnL$9CCmYxLJcMA94jC%;_xx<3~ApCke?ueHmQka}C!? zJO2Hwd8T_yff8R^eAp5`D@+%^U!%wS+q9{*rgTjTC&u0JK5y2dQ{C_R*?qhhTsAS| z>GY?%*r3STwHS5MCb+<}@ong#WFDULETecir+&#bHaeoJ8?QX@tn(3r$Cm;dQox(m zG{Yr=e&Z)q$oSVZBU-qvvB$yYcij(8u3-Pd(lDJEHkcz`#d&spPJmCzBbk|}Lb7Jx zjTOm6VV{;{xu~9X&*JIND$;bh3zP~Ei%cTdNF9zvv7cUqWETus^**gKj>nEFyBxe|KBR3Tx^bh&hX9$|oe3(H1QYpSPS%85WEw9cOuQ z(Sup(R^r(T>Sb|dw>?6G5p&PxdzUOHTUOQq&Xdx36KL*S3*cVein=iASRlC;>jlE z+PaVcylO<;+ADpkH&n-xDd3M1Dk%Q+ny+!_a6Py?x zf~f7C1@42{J67*w4W64f>*tDqJT$^#r><3cjoyPF30LnyucM4$g_qAgGKTOJ6v?%z z3l%qJLZf8V(U^P$l};+XSwYvQ_jzT-nJ?ZaHz?g_?M8x2%fIUQ;|%l{fiFQ1#VD2n zkK=B}HBG+px69d_Czh=_D=~Dr=S02u&0GOhOJYzKG0yopL#+};qtQ`vMsD% z6vB_6A2n0ZEVR&BmRsH3T`Nhao1b^1!yE@AjO!_y=5E{%5sKpCUeS@0q;Ey461%0H zO=0`HSBQfoFFvomx$1Mf7`}zE`*Is4GIutrDJy%-yu;P481sQ$DGLsd!!vpY;Ikwt z-L_c>U4JXfT3xewNY-L(adb5*!vwg;XG?_5Se%r5l~CNQ#5(n=Oy6qeB^(@bT>u^r zcm;$+hB%oIMUx#kZGY!oroRAKSaewRO*ARiufo7ivYBj69Z(ym+p^w>g14F{B>al} zNk#TGJ|5vJ-=TD4q-3md1cq7&l)qf0+rM0j7cx%e+YfiWJ`6+28>6Xp5!W@!IW-D2 z(g3F1CJ59pk_8-ovwUKT=NlZfNyM*_H88G>ReC-G1%j|9ET%89eEQGa%Pb6`p3e zQx)eF?k`Nbkp>@K08EcXr00kA6-n`AW=0DNKF#@^goz%rcm0Ric6>QE=(j|ok_)^9 zCQ_sdnvaa`mC((zhRFpQq&UA|VcD z!Cq6ENvBvyZ52k)C@nJOE;6OL!rm|yAi?8W5$){v&_GYkkt0i|ea>;HlOEaE=&H^i zH#dYmqm%f8y$m%|MGFCNMQ+^4YsH*8V?c)+-8amUDoIdH;| zYp*`Vnv;*9ShDrIPzqQX+#UXSAG3C(*#85UDm7Hc*9F(fe*~IeeLyKyRv5);j)$tx>|K@{JPK2*#kg z@#TtZVqNl6u8EHnuTx6EG|wjzI5$ozr^j#I1J8!>A|4%DX?csN4i4}hrk}Q$X6uIw zhV7F-;=O;>p;)~qqayo6lxsd=%++!u_1Tn*W$N&>z0KX=VdgZ*%R&=`Mry2)HrTqoJx&=zG|u)i-rVQncH?LTfad)`n}rzqbC5iI_+>qU&%}X)_E=vEx)=d zUoHI|_H)ZpFxe}4j=;$ATtlA$w`L}|_0I(WLV&n1d;iI+t{C2+qGY(Mv5?;R7)t&4 zhRI&rP>IJ}g-*&B4M5g{N)IX>K28q01XeL)clZ@XoD~FUf NT6;u7HA63^{}1v_!bSi9 literal 0 HcmV?d00001 diff --git a/server/frontend/static/style.css b/server/frontend/static/style.css index 0543af014a..e7791eaf59 100644 --- a/server/frontend/static/style.css +++ b/server/frontend/static/style.css @@ -1,81 +1,82 @@ -img{ +img { width: 60%; align-self: center; } -.card{ +.card { border: rgb(103, 102, 105) 3px solid; - display: flex; + display: flex; flex-direction: column; - margin-left:5%; - margin-right:5%; + margin-left: 5%; + margin-right: 5%; margin-top: 1%; margin-bottom: 1%; } -.row{ - display: flex; +.row { + display: flex; flex: 1; flex-direction: row; margin: auto; margin-top: 1%; justify-content: center; - padding:20px; + padding: 20px; } -.container{ +.container { justify-content: center; } -.details{ + +.details { font-size: 20px; color: rgb(97, 64, 128); - padding:20px; + padding: 20px; } -.title{ +.title { font-size: 20px; background-color: rgb(97, 64, 128); color: white; text-align: center; - margin:20px; - padding:5px; + margin: 20px; + padding: 5px; } -.homepage_links{ - color: rgb(97, 64, 128); +.homepage_links { + color: rgb(97, 64, 128); padding: 25%; font-size: larger; - } +} -.loginlink{ +.loginlink { display: flex; flex-direction: row; justify-content: flex-end; } -.banner{ +.banner { display: flex; flex-direction: column; align-items: center; justify-content: center; - flex:1 + flex: 1 } .form_panel { - padding:2%; + padding: 2%; display: flex; flex-direction: column; border-radius: 50px; - text-align:center; + text-align: center; box-shadow: 2px 2px 2px 3px #999; margin: auto; min-width: 350px; width: 80%; - margin-top:3%; + margin-top: 3%; background-color: black; } -.navitems{ +.navitems { display: flex; flex-direction: row; padding: 20px; @@ -84,18 +85,20 @@ img{ justify-self: center; } -.nav_item{ - margin-left:15px; +.nav_item { + margin-left: 15px; font-size: 20px; color: black; align-self: center; } -.username{ + + +.username { font: 30px sans-serif; - color:black; + color: black; justify-content: 'flex-end'; - align-self:flex-end; + align-self: flex-end; vertical-align: middle; } @@ -104,23 +107,23 @@ img{ flex-direction: row; padding: 20px; flex: 1; - justify-content:flex-end; + justify-content: flex-end; align-items: flex-end; vertical-align: middle; } -.small_header{ +.small_header { font: 30px sans-serif; - color:black; + color: black; margin: .5cm; } .img_icon { align-self: center; - width:40px; - background-color:#0C9; - color:#FFF; - border-radius:50px; - text-align:center; - box-shadow: 2px 2px 3px #999; -} + width: 40px; + background-color: #0C9; + color: #FFF; + border-radius: 50px; + text-align: center; + box-shadow: 2px 2px 3px #999; +} \ No newline at end of file From 2a25a824fe74423ab527559bc5f76a82b8b73c18 Mon Sep 17 00:00:00 2001 From: 3p1c0w3nd <3p1c0w3nd@gmail.com> Date: Wed, 28 Jan 2026 13:25:23 -0500 Subject: [PATCH 2/6] se agrego el login y el register --- server/djangoapp/urls.py | 8 +- server/djangoapp/views.py | 53 ++++++-- server/djangoproj/settings.py | 6 +- server/djangoproj/urls.py | 2 + server/frontend/package-lock.json | 30 ++++- server/frontend/src/App.js | 2 + .../src/components/Register/Register.jsx | 101 ++++++++++++++ server/frontend/static/Home.html | 127 +++++++++++------- 8 files changed, 259 insertions(+), 70 deletions(-) create mode 100644 server/frontend/src/components/Register/Register.jsx diff --git a/server/djangoapp/urls.py b/server/djangoapp/urls.py index 0edc274f90..d91fcb033a 100644 --- a/server/djangoapp/urls.py +++ b/server/djangoapp/urls.py @@ -1,15 +1,17 @@ # Uncomment the imports before you add the code -# from django.urls import path +from django.urls import path from django.conf.urls.static import static from django.conf import settings -# from . import views +from . import views app_name = 'djangoapp' urlpatterns = [ # # path for registration # path for login - # path(route='login', view=views.login_user, name='login'), + path(route='login', view=views.login_user, name='login'), + path(route='logout', view=views.logout_request, name='logout'), + path(route='register', view=views.registration, name='register'), # path for dealer reviews view diff --git a/server/djangoapp/views.py b/server/djangoapp/views.py index b16409f419..88113bd974 100644 --- a/server/djangoapp/views.py +++ b/server/djangoapp/views.py @@ -1,12 +1,12 @@ # Uncomment the required imports before adding the code -# from django.shortcuts import render -# from django.http import HttpResponseRedirect, HttpResponse -# from django.contrib.auth.models import User -# from django.shortcuts import get_object_or_404, render, redirect -# from django.contrib.auth import logout -# from django.contrib import messages -# from datetime import datetime +from django.shortcuts import render +from django.http import HttpResponseRedirect, HttpResponse +from django.contrib.auth.models import User +from django.shortcuts import get_object_or_404, render, redirect +from django.contrib.auth import logout +from django.contrib import messages +from datetime import datetime from django.http import JsonResponse from django.contrib.auth import login, authenticate @@ -39,13 +39,42 @@ def login_user(request): return JsonResponse(data) # Create a `logout_request` view to handle sign out request -# def logout_request(request): -# ... +def logout_request(request): + logout(request) # Terminate user session + data = {"userName":""} # Return empty username + return JsonResponse(data) # Create a `registration` view to handle sign up request -# @csrf_exempt -# def registration(request): -# ... +@csrf_exempt +def registration(request): + context = {} + # Load JSON data from the request body + data = json.loads(request.body) + username = data['userName'] + password = data['password'] + first_name = data['firstName'] + last_name = data['lastName'] + email = data['email'] + username_exist = False + email_exist = False + try: + # Check if user already exists + User.objects.get(username=username) + username_exist = True + except: + # If not, simply log this is a new user + logger.debug("{} is new user".format(username)) + # If it is a new user + if not username_exist: + # Create user in auth_user table + user = User.objects.create_user(username=username, first_name=first_name, last_name=last_name,password=password, email=email) + # Login the user and redirect to list page + login(request, user) + data = {"userName":username,"status":"Authenticated"} + return JsonResponse(data) + else : + data = {"userName":username,"error":"Already Registered"} + return JsonResponse(data) # # Update the `get_dealerships` view to render the index page with # a list of dealerships diff --git a/server/djangoproj/settings.py b/server/djangoproj/settings.py index 9aa08599d1..9ecd2b7421 100644 --- a/server/djangoproj/settings.py +++ b/server/djangoproj/settings.py @@ -63,6 +63,8 @@ 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [ os.path.join(BASE_DIR, 'frontend/static'),#Para que reconosca los archivos estaticos de la aplicacion + os.path.join(BASE_DIR, 'frontend/build'), + os.path.join(BASE_DIR, 'frontend/build/static'), ], 'APP_DIRS': True, 'OPTIONS': { @@ -137,6 +139,8 @@ DEFAULT_AUTO_FIELD = 'django.db.models.BigAutoField' STATICFILES_DIRS = [ - os.path.join(BASE_DIR, 'frontend/static') + os.path.join(BASE_DIR, 'frontend/static'), + os.path.join(BASE_DIR, 'frontend/build'), + os.path.join(BASE_DIR, 'frontend/build/static'), ] diff --git a/server/djangoproj/urls.py b/server/djangoproj/urls.py index 6c38c938cf..04db02a7ff 100644 --- a/server/djangoproj/urls.py +++ b/server/djangoproj/urls.py @@ -21,6 +21,8 @@ urlpatterns = [ path('admin/', admin.site.urls), + path('login/', TemplateView.as_view(template_name="index.html")), + path('register/', TemplateView.as_view(template_name="index.html")), path('djangoapp/', include('djangoapp.urls')), path('', TemplateView.as_view(template_name="Home.html")), path('about', TemplateView.as_view(template_name="About.html")), diff --git a/server/frontend/package-lock.json b/server/frontend/package-lock.json index 0797425307..bdb21fad35 100644 --- a/server/frontend/package-lock.json +++ b/server/frontend/package-lock.json @@ -16,6 +16,9 @@ "react-router-dom": "^6.19.0", "react-scripts": "5.0.1", "web-vitals": "^2.1.4" + }, + "devDependencies": { + "@babel/plugin-proposal-private-property-in-object": "^7.21.11" } }, "node_modules/@aashutoshrathi/word-wrap": { @@ -646,9 +649,18 @@ } }, "node_modules/@babel/plugin-proposal-private-property-in-object": { - "version": "7.21.0-placeholder-for-preset-env.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz", - "integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==", + "version": "7.21.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.11.tgz", + "integrity": "sha512-0QZ8qP/3RLDVBwBFoWAwCtgcDZJVwA5LUJRZU8x2YFfKNuFq161wK3cuGrALu5yiPu+vzwTAg/sMWVNeWeNyaw==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-private-property-in-object instead.", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.18.6", + "@babel/helper-create-class-features-plugin": "^7.21.0", + "@babel/helper-plugin-utils": "^7.20.2", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + }, "engines": { "node": ">=6.9.0" }, @@ -1891,6 +1903,18 @@ "@babel/core": "^7.0.0-0" } }, + "node_modules/@babel/preset-env/node_modules/@babel/plugin-proposal-private-property-in-object": { + "version": "7.21.0-placeholder-for-preset-env.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz", + "integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, "node_modules/@babel/preset-env/node_modules/semver": { "version": "6.3.1", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", diff --git a/server/frontend/src/App.js b/server/frontend/src/App.js index aceac6974d..647d0afd42 100644 --- a/server/frontend/src/App.js +++ b/server/frontend/src/App.js @@ -1,10 +1,12 @@ import LoginPanel from "./components/Login/Login" +import Register from "./components/Register/Register" import { Routes, Route } from "react-router-dom"; function App() { return ( } /> + } /> ); } diff --git a/server/frontend/src/components/Register/Register.jsx b/server/frontend/src/components/Register/Register.jsx new file mode 100644 index 0000000000..a38f37a42d --- /dev/null +++ b/server/frontend/src/components/Register/Register.jsx @@ -0,0 +1,101 @@ +import React, { useState } from "react"; +import "./Register.css"; +import user_icon from "../assets/person.png" +import email_icon from "../assets/email.png" +import password_icon from "../assets/password.png" +import close_icon from "../assets/close.png" + +const Register = () => { + // State variables for form inputs + const [userName, setUserName] = useState(""); + const [password, setPassword] = useState(""); + const [email, setEmail] = useState(""); + const [firstName, setFirstName] = useState(""); + const [lastName, setlastName] = useState(""); + + // Redirect to home + const gohome = () => { + window.location.href = window.location.origin; + } + + // Handle form submission + const register = async (e) => { + e.preventDefault(); + + let register_url = window.location.origin + "/djangoapp/register"; + + // Send POST request to register endpoint + const res = await fetch(register_url, { + method: "POST", + headers: { + "Content-Type": "application/json", + }, + body: JSON.stringify({ + "userName": userName, + "password": password, + "firstName": firstName, + "lastName": lastName, + "email": email + }), + }); + + const json = await res.json(); + if (json.status) { + // Save username in session and reload home + sessionStorage.setItem('username', json.userName); + window.location.href = window.location.origin; + } + else if (json.error === "Already Registered") { + alert("The user with same username is already registered"); + window.location.href = window.location.origin; + } + }; + + return ( +

+ + +
+
+
+ Username + setUserName(e.target.value)} /> +
+
+ First Name + setFirstName(e.target.value)} /> +
+ +
+ Last Name + setlastName(e.target.value)} /> +
+ +
+ Email + setEmail(e.target.value)} /> +
+ +
+ password + setPassword(e.target.value)} /> +
+ +
+
+ +
+
+
+ ) +} + +export default Register; \ No newline at end of file diff --git a/server/frontend/static/Home.html b/server/frontend/static/Home.html index fb0c3fb617..ade699e4d9 100644 --- a/server/frontend/static/Home.html +++ b/server/frontend/static/Home.html @@ -1,64 +1,89 @@ + - - + + - + if (curr_user && curr_user !== "") { + document.getElementById("loginlogout").innerHTML = + '' + curr_user + '' + + 'Logout' + } else { + document.getElementById("loginlogout").innerHTML = + 'Login' + + 'Register' + } + } + + - -
-
- ... - -
-
- + + \ No newline at end of file From 6f28e9dcbb133a1778c7f3ab90f9ae92f20a38f9 Mon Sep 17 00:00:00 2001 From: 3p1c0w3nd <3p1c0w3nd@gmail.com> Date: Thu, 29 Jan 2026 10:10:08 -0500 Subject: [PATCH 3/6] se agregarons algunas rutas para la database --- server/database/app.js | 64 +++++++++++++++++++++++++++--------------- 1 file changed, 41 insertions(+), 23 deletions(-) diff --git a/server/database/app.js b/server/database/app.js index 00f52b2008..c73a8ea32b 100644 --- a/server/database/app.js +++ b/server/database/app.js @@ -1,7 +1,7 @@ const express = require('express'); const mongoose = require('mongoose'); const fs = require('fs'); -const cors = require('cors') +const cors = require('cors') const app = express() const port = 3030; @@ -11,7 +11,7 @@ app.use(require('body-parser').urlencoded({ extended: false })); const reviews_data = JSON.parse(fs.readFileSync("reviews.json", 'utf8')); const dealerships_data = JSON.parse(fs.readFileSync("dealerships.json", 'utf8')); -mongoose.connect("mongodb://mongo_db:27017/",{'dbName':'dealershipsDB'}); +mongoose.connect("mongodb://mongo_db:27017/", { 'dbName': 'dealershipsDB' }); const Reviews = require('./review'); @@ -19,13 +19,13 @@ const Reviews = require('./review'); const Dealerships = require('./dealership'); try { - Reviews.deleteMany({}).then(()=>{ + Reviews.deleteMany({}).then(() => { Reviews.insertMany(reviews_data['reviews']); }); - Dealerships.deleteMany({}).then(()=>{ + Dealerships.deleteMany({}).then(() => { Dealerships.insertMany(dealerships_data['dealerships']); }); - + } catch (error) { res.status(500).json({ error: 'Error fetching documents' }); } @@ -33,7 +33,7 @@ try { // Express route to home app.get('/', async (req, res) => { - res.send("Welcome to the Mongoose API") + res.send("Welcome to the Mongoose API") }); // Express route to fetch all reviews @@ -49,7 +49,7 @@ app.get('/fetchReviews', async (req, res) => { // Express route to fetch reviews by a particular dealer app.get('/fetchReviews/dealer/:id', async (req, res) => { try { - const documents = await Reviews.find({dealership: req.params.id}); + const documents = await Reviews.find({ dealership: req.params.id }); res.json(documents); } catch (error) { res.status(500).json({ error: 'Error fetching documents' }); @@ -58,42 +58,60 @@ app.get('/fetchReviews/dealer/:id', async (req, res) => { // Express route to fetch all dealerships app.get('/fetchDealers', async (req, res) => { -//Write your code here + //Write your code here + try { + const documents = await Dealerships.find(); + res.json(documents); + } catch (error) { + res.status(500).json({ error: 'Error fetching documents' }); + } }); // Express route to fetch Dealers by a particular state app.get('/fetchDealers/:state', async (req, res) => { -//Write your code here + //Write your code here + try { + const documents = await Dealerships.find({ state: req.params.state }); + res.json(documents); + } catch (error) { + res.status(500).json({ error: 'Error fetching documents' }); + } }); // Express route to fetch dealer by a particular id app.get('/fetchDealer/:id', async (req, res) => { -//Write your code here + //Write your code here + try { + const documents = await Dealerships.find({ id: req.params.id }); + res.json(documents); + } catch (error) { + res.status(500).json({ error: 'Error fetching documents' }); + } }); //Express route to insert review app.post('/insert_review', express.raw({ type: '*/*' }), async (req, res) => { data = JSON.parse(req.body); - const documents = await Reviews.find().sort( { id: -1 } ) - let new_id = documents[0]['id']+1 + const documents = await Reviews.find().sort({ id: -1 }) + let new_id = documents[0]['id'] + 1 const review = new Reviews({ - "id": new_id, - "name": data['name'], - "dealership": data['dealership'], - "review": data['review'], - "purchase": data['purchase'], - "purchase_date": data['purchase_date'], - "car_make": data['car_make'], - "car_model": data['car_model'], - "car_year": data['car_year'], - }); + "id": new_id, + "name": data['name'], + "dealership": data['dealership'], + "review": data['review'], + "purchase": data['purchase'], + "purchase_date": data['purchase_date'], + "car_make": data['car_make'], + "car_model": data['car_model'], + "car_year": data['car_year'], + }); try { const savedReview = await review.save(); res.json(savedReview); } catch (error) { - console.log(error); + console.log(error); res.status(500).json({ error: 'Error inserting review' }); } }); From f678e7a136d6e393370094242a8751e4c8a89be2 Mon Sep 17 00:00:00 2001 From: 3p1c0w3nd <3p1c0w3nd@gmail.com> Date: Fri, 30 Jan 2026 08:49:16 -0500 Subject: [PATCH 4/6] agregamos los carros --- server/djangoapp/admin.py | 6 ++++-- server/djangoapp/models.py | 33 ++++++++++++++++++++++++++++--- server/djangoapp/populate.py | 38 +++++++++++++++++++++++++++++++++++- server/djangoapp/urls.py | 1 + server/djangoapp/views.py | 16 ++++++++++++++- 5 files changed, 87 insertions(+), 7 deletions(-) diff --git a/server/djangoapp/admin.py b/server/djangoapp/admin.py index 433657fc64..91a2edcb4b 100644 --- a/server/djangoapp/admin.py +++ b/server/djangoapp/admin.py @@ -1,10 +1,12 @@ -# from django.contrib import admin -# from .models import related models +from django.contrib import admin +from .models import CarMake, CarModel # Register your models here. # CarModelInline class +admin.site.register(CarModel) +admin.site.register(CarMake) # CarModelAdmin class diff --git a/server/djangoapp/models.py b/server/djangoapp/models.py index eb101a68c8..052a210575 100644 --- a/server/djangoapp/models.py +++ b/server/djangoapp/models.py @@ -1,8 +1,8 @@ # Uncomment the following imports before adding the Model code -# from django.db import models -# from django.utils.timezone import now -# from django.core.validators import MaxValueValidator, MinValueValidator +from django.db import models +from django.utils.timezone import now +from django.core.validators import MaxValueValidator, MinValueValidator # Create your models here. @@ -23,3 +23,30 @@ # - Year (IntegerField) with min value 2015 and max value 2023 # - Any other fields you would like to include in car model # - __str__ method to print a car make object + +class CarMake(models.Model): + name = models.CharField(max_length=100) + description = models.TextField() + #otros campos que se necesiten despues agregar + + def __str__(self): + return self.name + +class CarModel(models.Model): + car_make = models.ForeignKey(CarMake, on_delete=models.CASCADE) + name = models.CharField(max_length=100) + CAR_TYPES = [ + ('SEDAN', 'Sedan'), + ('SUV', 'SUV'), + ('WAGON', 'Wagon'), + ] + typeModel = models.CharField(max_length=100, choices=CAR_TYPES) + year = models.IntegerField(default=2023, + validators=[ + MaxValueValidator(2023), + MinValueValidator(2015) + ]) + #otros campos que se necesiten despues agregar + + def __str__(self): + return self.name diff --git a/server/djangoapp/populate.py b/server/djangoapp/populate.py index 1927e09e18..09cc361f5e 100644 --- a/server/djangoapp/populate.py +++ b/server/djangoapp/populate.py @@ -1,2 +1,38 @@ +from .models import CarMake, CarModel + def initiate(): - print("Populate not implemented. Add data manually") + car_make_data = [ + {"name":"NISSAN", "description":"Great cars. Japanese technology"}, + {"name":"Mercedes", "description":"Great cars. German technology"}, + {"name":"Audi", "description":"Great cars. German technology"}, + {"name":"Kia", "description":"Great cars. Korean technology"}, + {"name":"Toyota", "description":"Great cars. Japanese technology"}, + ] + + car_make_instances = [] + for data in car_make_data: + car_make_instances.append(CarMake.objects.create(name=data['name'], description=data['description'])) + + + # Create CarModel instances with the corresponding CarMake instances + car_model_data = [ + {"name":"Pathfinder", "type":"SUV", "year": 2023, "car_make":car_make_instances[0]}, + {"name":"Qashqai", "type":"SUV", "year": 2023, "car_make":car_make_instances[0]}, + {"name":"XTRAIL", "type":"SUV", "year": 2023, "car_make":car_make_instances[0]}, + {"name":"A-Class", "type":"SUV", "year": 2023, "car_make":car_make_instances[1]}, + {"name":"C-Class", "type":"SUV", "year": 2023, "car_make":car_make_instances[1]}, + {"name":"E-Class", "type":"SUV", "year": 2023, "car_make":car_make_instances[1]}, + {"name":"A4", "type":"SUV", "year": 2023, "car_make":car_make_instances[2]}, + {"name":"A5", "type":"SUV", "year": 2023, "car_make":car_make_instances[2]}, + {"name":"A6", "type":"SUV", "year": 2023, "car_make":car_make_instances[2]}, + {"name":"Sorrento", "type":"SUV", "year": 2023, "car_make":car_make_instances[3]}, + {"name":"Carnival", "type":"SUV", "year": 2023, "car_make":car_make_instances[3]}, + {"name":"Cerato", "type":"Sedan", "year": 2023, "car_make":car_make_instances[3]}, + {"name":"Corolla", "type":"Sedan", "year": 2023, "car_make":car_make_instances[4]}, + {"name":"Camry", "type":"Sedan", "year": 2023, "car_make":car_make_instances[4]}, + {"name":"Kluger", "type":"SUV", "year": 2023, "car_make":car_make_instances[4]}, + # Add more CarModel instances as needed + ] + + for data in car_model_data: + CarModel.objects.create(name=data['name'], car_make=data['car_make'], type=data['type'], year=data['year']) \ No newline at end of file diff --git a/server/djangoapp/urls.py b/server/djangoapp/urls.py index d91fcb033a..e5f2dc7523 100644 --- a/server/djangoapp/urls.py +++ b/server/djangoapp/urls.py @@ -12,6 +12,7 @@ path(route='login', view=views.login_user, name='login'), path(route='logout', view=views.logout_request, name='logout'), path(route='register', view=views.registration, name='register'), + path(route='get_cars', view=views.get_cars, name ='getcars'), # path for dealer reviews view diff --git a/server/djangoapp/views.py b/server/djangoapp/views.py index 88113bd974..801bf5f39f 100644 --- a/server/djangoapp/views.py +++ b/server/djangoapp/views.py @@ -13,7 +13,8 @@ import logging import json from django.views.decorators.csrf import csrf_exempt -# from .populate import initiate +from .models import CarMake, CarModel +from .populate import initiate # Get an instance of a logger @@ -76,6 +77,19 @@ def registration(request): data = {"userName":username,"error":"Already Registered"} return JsonResponse(data) + + +def get_cars(request): + count = CarMake.objects.filter().count() + print(count) + if(count == 0): + initiate() + car_models = CarModel.objects.select_related('car_make') + cars = [] + for car_model in car_models: + cars.append({"CarModel": car_model.name, "CarMake": car_model.car_make.name}) + return JsonResponse({"CarModels":cars}) + # # Update the `get_dealerships` view to render the index page with # a list of dealerships # def get_dealerships(request): From e07a67a0d678cd569d818a1641875ad4db848076 Mon Sep 17 00:00:00 2001 From: 3p1c0w3nd <3p1c0w3nd@gmail.com> Date: Sat, 31 Jan 2026 20:41:08 -0500 Subject: [PATCH 5/6] ultimos cambios --- server/djangoapp/.env | 4 +-- server/djangoapp/microservices/Dockerfile | 1 + server/djangoapp/restapis.py | 43 +++++++++++++++++++---- server/djangoapp/urls.py | 5 +++ server/djangoapp/views.py | 43 +++++++++++++++++++---- server/djangoproj/urls.py | 3 ++ server/frontend/src/App.js | 7 ++++ 7 files changed, 91 insertions(+), 15 deletions(-) diff --git a/server/djangoapp/.env b/server/djangoapp/.env index 01822e542a..9f8e6c7ab9 100644 --- a/server/djangoapp/.env +++ b/server/djangoapp/.env @@ -1,2 +1,2 @@ -backend_url =your backend url -sentiment_analyzer_url=your code engine deployment url +backend_url =http://localhost:3030/ +sentiment_analyzer_url=http://127.0.0.1:5000/ diff --git a/server/djangoapp/microservices/Dockerfile b/server/djangoapp/microservices/Dockerfile index 5847b04b5e..d2b6d46673 100644 --- a/server/djangoapp/microservices/Dockerfile +++ b/server/djangoapp/microservices/Dockerfile @@ -7,4 +7,5 @@ COPY requirements.txt requirements.txt RUN pip3 install -r requirements.txt COPY . . RUN ls +EXPOSE 5000 CMD [ "python3", "-m" , "flask", "run", "--host=0.0.0.0"] diff --git a/server/djangoapp/restapis.py b/server/djangoapp/restapis.py index 90709d9e3b..8a2229c953 100644 --- a/server/djangoapp/restapis.py +++ b/server/djangoapp/restapis.py @@ -1,5 +1,5 @@ # Uncomment the imports below before you add the function code -# import requests +import requests import os from dotenv import load_dotenv @@ -11,12 +11,41 @@ 'sentiment_analyzer_url', default="http://localhost:5050/") -# def get_request(endpoint, **kwargs): +def get_request(endpoint, **kwargs): + params = "" + if(kwargs): + for key,value in kwargs.items(): + params=params+key+"="+value+"&" + + request_url = backend_url+endpoint+"?"+params + + print("GET from {} ".format(request_url)) + try: + # Call get method of requests library with URL and parameters + response = requests.get(request_url) + return response.json() + except: + # If any error occurs + print("Network exception occurred") # Add code for get requests to back end -# def analyze_review_sentiments(text): -# request_url = sentiment_analyzer_url+"analyze/"+text -# Add code for retrieving sentiments +def analyze_review_sentiments(text): + request_url = sentiment_analyzer_url+"analyze/"+text + try: + # Call get method of requests library with URL and parameters + response = requests.get(request_url) + return response.json() + except Exception as err: + print(f"Unexpected {err=}, {type(err)=}") + print("Network exception occurred") + + -# def post_review(data_dict): -# Add code for posting review +def post_review(data_dict): + request_url = backend_url+"/insert_review" + try: + response = requests.post(request_url,json=data_dict) + print(response.json()) + return response.json() + except: + print("Network exception occurred") diff --git a/server/djangoapp/urls.py b/server/djangoapp/urls.py index e5f2dc7523..bd1c6273c3 100644 --- a/server/djangoapp/urls.py +++ b/server/djangoapp/urls.py @@ -13,6 +13,11 @@ path(route='logout', view=views.logout_request, name='logout'), path(route='register', view=views.registration, name='register'), path(route='get_cars', view=views.get_cars, name ='getcars'), + path(route='get_dealers', view=views.get_dealerships, name='get_dealers'), + path(route='get_dealers/', view=views.get_dealerships, name='get_dealers_by_state'), + path(route='dealer/', view=views.get_dealer_details, name='dealer_details'), + path(route='reviews/dealer/', view=views.get_dealer_reviews, name='dealer_details'), + path(route='add_review', view=views.add_review, name='add_review'), # path for dealer reviews view diff --git a/server/djangoapp/views.py b/server/djangoapp/views.py index 801bf5f39f..f5e3ae755c 100644 --- a/server/djangoapp/views.py +++ b/server/djangoapp/views.py @@ -15,7 +15,7 @@ from django.views.decorators.csrf import csrf_exempt from .models import CarMake, CarModel from .populate import initiate - +from .restapis import get_request, analyze_review_sentiments, post_review # Get an instance of a logger logger = logging.getLogger(__name__) @@ -92,17 +92,48 @@ def get_cars(request): # # Update the `get_dealerships` view to render the index page with # a list of dealerships -# def get_dealerships(request): +def get_dealerships(request, state="All"): + if(state == "All"): + endpoint = "/fetchDealers" + else: + endpoint = "/fetchDealers/"+state + dealerships = get_request(endpoint) + return JsonResponse({"status":200,"dealers":dealerships}) # ... # Create a `get_dealer_reviews` view to render the reviews of a dealer -# def get_dealer_reviews(request,dealer_id): +def get_dealer_reviews(request, dealer_id): + # if dealer id has been provided + if(dealer_id): + endpoint = "/fetchReviews/dealer/"+str(dealer_id) + reviews = get_request(endpoint) + for review_detail in reviews: + response = analyze_review_sentiments(review_detail['review']) + print(response) + review_detail['sentiment'] = response['sentiment'] + return JsonResponse({"status":200,"reviews":reviews}) + else: + return JsonResponse({"status":400,"message":"Bad Request"}) # ... # Create a `get_dealer_details` view to render the dealer details -# def get_dealer_details(request, dealer_id): +def get_dealer_details(request, dealer_id): + if(dealer_id): + endpoint = "/fetchDealer/"+str(dealer_id) + dealership = get_request(endpoint) + return JsonResponse({"status":200,"dealer":dealership}) + else: + return JsonResponse({"status":400,"message":"Bad Request"}) # ... # Create a `add_review` view to submit a review -# def add_review(request): -# ... +def add_review(request): + if(request.user.is_anonymous == False): + data = json.loads(request.body) + try: + response = post_review(data) + return JsonResponse({"status":200}) + except: + return JsonResponse({"status":401,"message":"Error in posting review"}) + else: + return JsonResponse({"status":403,"message":"Unauthorized"}) diff --git a/server/djangoproj/urls.py b/server/djangoproj/urls.py index 04db02a7ff..41165289ac 100644 --- a/server/djangoproj/urls.py +++ b/server/djangoproj/urls.py @@ -23,6 +23,9 @@ path('admin/', admin.site.urls), path('login/', TemplateView.as_view(template_name="index.html")), path('register/', TemplateView.as_view(template_name="index.html")), + path('dealers/', TemplateView.as_view(template_name="index.html")), + path('dealer/', TemplateView.as_view(template_name="index.html")), + path('postreview/', TemplateView.as_view(template_name="index.html")), path('djangoapp/', include('djangoapp.urls')), path('', TemplateView.as_view(template_name="Home.html")), path('about', TemplateView.as_view(template_name="About.html")), diff --git a/server/frontend/src/App.js b/server/frontend/src/App.js index 647d0afd42..88aab7282b 100644 --- a/server/frontend/src/App.js +++ b/server/frontend/src/App.js @@ -1,12 +1,19 @@ import LoginPanel from "./components/Login/Login" import Register from "./components/Register/Register" +import Dealers from './components/Dealers/Dealers' +import Dealer from './components/Dealers/Dealer' +import PostReview from './components/Dealers/PostReview' import { Routes, Route } from "react-router-dom"; + function App() { return ( } /> } /> + } /> + } /> + } /> ); } From a6d4795ff0d08d575b588e7dbadafa3ace24248f Mon Sep 17 00:00:00 2001 From: 3p1c0w3nd <3p1c0w3nd@gmail.com> Date: Sun, 1 Feb 2026 06:43:14 -0500 Subject: [PATCH 6/6] =?UTF-8?q?Correcci=C3=B3n=20de=20a=C3=B1o=20en=20pie?= =?UTF-8?q?=20de=20p=C3=A1gina:=202022=20=E2=86=92=202023?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 5884e26a5b..f6b6ebeccb 100644 --- a/README.md +++ b/README.md @@ -1 +1,12 @@ -# coding-project-template \ No newline at end of file +# coding-project-template + +https://github.com/3p1c0w3nd/fullstack_developer_capstone + + +http://127.0.0.1:8000/about + +http://127.0.0.1:8000/contact + + + +http://127.0.0.1:8000/register/ \ No newline at end of file