From 3c6c9b2be5a8180916c7d92f15281d0b1aef2ad9 Mon Sep 17 00:00:00 2001
From: MaximeOLIVA <maxime.oliva@etu.univ-cotedazur.fr>
Date: Sun, 5 Feb 2023 21:00:11 +0100
Subject: [PATCH] change password v1

---
 .../database_helper.cpython-310.pyc           | Bin 2775 -> 3041 bytes
 Lab2/__pycache__/server.cpython-310.pyc       | Bin 3154 -> 3234 bytes
 Lab2/database.db                              | Bin 20480 -> 20480 bytes
 Lab2/database_helper.py                       |  10 ++++++++++
 Lab2/server.py                                |  16 ++++++++++------
 5 files changed, 20 insertions(+), 6 deletions(-)

diff --git a/Lab2/__pycache__/database_helper.cpython-310.pyc b/Lab2/__pycache__/database_helper.cpython-310.pyc
index adb1fc481d008e3961a353b6de73c0183b481ad2..3550a2af235fb8d1abfe683389d03be3c07d2c65 100644
GIT binary patch
delta 580
zcmcaE`cRxNpO=@5fq{WxDc6JK&D<0DWEe{(YUl7uq)4_fMDe9C1~X_%ZJhIqk@42#
z=}dNvqLZ&N9bpuoJezq2qu68<mTE?Y$s1UfiHk8XFx=uuOD##x$j?jFWGRwlU|=Yc
znw-n(&ZshZD{DQ!1Oo$uCetm}lKkw{ydufT&TIyZYLhEDWGDM@YE9nFHbVwvMv)Ro
zp8!ZLbCD{D%?l!wC+D+UGipp;&7Q5I&cML%k`W}T2vWv^P<D&0D7CmWr=&=7vK5Ej
zWIay7$(<a*k{}HsZbe|#$cAc7{>ov=s54ogbG1C&?pth$1qG>jDVnShFMzGrn*5W~
zpG}{Efgzb`avg_+h#mt2LzO@ZV=Yq&Lo>qy#u}!DjFWFLE7kjj2DmtexGIDOy9Na-
z1iOYP6eJcGm**FyDA+2f=cSgzxQ6Nq;U2C*t_rESiJ3Vd$>gMz^x~A_6hlLhh+cAj
zuDW%ITM;<in8A*T;zlx{NCXrFoNxjZi?{UnlQR<Y(o^GM)|4<XFckAKFfcGNvM};6
zaxt=jVUYnS==dl5amnb3f{YLc5egte1w^QU2n`US4I*?v1jzeE29qaqsWHk--o+)&
J!okDC4*>J&g?9h|

delta 386
zcmaDTeqEF=pO=@5fq{X+<=_3}&0G`tWEgWMYUi*r1~X_%Y+Uk-kuhrWd?q_ak;(U%
zjxdT%Ud%j$QFO8mOEshX<Q*)_#6=kx7;bT-rIsXT<maVovJ^=$FfbHJPA+A2XH=fN
zm$jZ>oPmKslj#;~Nq%-}UXjFPZ#Dx))ya(<vXf`B9g+d*FH!{Q5df)UE>Z!pc|nBI
z<Z^avHgyIDhGfRcds!qVUtsrBQDb0Wc*zKoRsgAIL8!mQR+L&?np09FG1-a3j!|oJ
zBS*3%NO_1`5m+s<*_xC8a#%8IPd4XVEf06XEw;phg4DbeO;(66z^>4o%*f@>rU$Z&
zZ*m~FjHU?4axoAg4<eL7ger&txwJ?N#L@;4dXr~!tI0_*Ffed1@G!D4aWHYPb8vBR
Ra&U6+aBy<)aq#l+005ORP6z-1

diff --git a/Lab2/__pycache__/server.cpython-310.pyc b/Lab2/__pycache__/server.cpython-310.pyc
index 6c064d338417cf4b6e71c129cd25d4444cad19d5..82e18c8df79c6d8b9169717568d9d4daa15f5fab 100644
GIT binary patch
delta 589
zcmca4u}G3HpO=@5fq{WxBG-dtEB=jq{_KpJljGP;88s$PVb`x`VqjokWnf@%W?*0_
zj$vS6C}CK@xR9ZiA%(Gqp^TwOCxr=0GehVSrUlG33@MC~3=0{Hv`Uy3u)uh=j3rD9
zSZf$-7*d!e85S}XX{4|OGo&yCGo-KvGo-KuGib8=6{#^WFhp_Z=cEKA78jRK=Hn0u
z)nqE-Wnf@<d4_?3p-2Tp$TBc6XtEVCgV=H)f}eqb;TC6RaeRJWPG(-}EuND6?9{xF
zeAnE>%$!^N$r*`x>8bGrAS3gOQZ$*0lqUb>5LYkKWnf?k1bIz}fq{X8NrI7&k&jV;
ziG`8nKMOMp6Ii}Va<U_*<m5IETRyPun#@HY>xy(H3vvoi{=#7@oB%R`gMop8i;0Di
zi;;z?NPn^or@1OSEa1YR0apVG6wMNb1xz)J3mI#fYM6@DC(qzikx5~n!&b{&!d%1L
z%$UNF#uUtu!Wqnv!WGP*$vycVr@WIUTahTpqhcUJ97ITf2uTnj3?e|*Ljx*v3L`Y2
zG+7`{)n;H|nC#DGtEtDpz>o=YtrXa`T#PJ?Y)ov7aQKUdgN2EOsYq|~cCNLIHIq}h
n^8_?N#)AT?NFT(~oBWtNPLPj_k&lCmkwb`sg^iJik>wu%kLz+z

delta 478
zcmZ1^c}apVpO=@5fq{YHD8qx~Xugen{_Kn^C&#gyGHOnq!mdBroryO|gMopegkb^W
zLWWv~6vi5cGKM0d6ecLm45e9u8B$n-88q4aiqsew7^1lIb5a5li;K(ii&CPv^HR%U
zoRA_}1_lOArXpqr28JRz5TP+SkzH7sKRF{YFFiHB0IDmHfq|izgMop8gGqvsg^`81
zNPF@Fj%dY|Ohvp53=El*85tNfnTz;Aw(*qYXQ$?c<h$l3X68)x;dB*_hUw;FVqxTB
zWML}Oo4kb6Toq)XGe|B5>Z=-tg^WcyB@7FgY8V$X)-u&F6=_Z4Qc<d5N@15|Na2{n
zUdvp<T*KVVn8KOH6wHvq70i&r9n7G~GueSlp8X{o$T#eh6S?GdL_nSaS)d7Z;uJ;(
zh9Vu10v3onIWvpn^Yd~t^HL`-<g(S)Wnf@P0Xas7fq{XGiHnhik&TIs5efd};bdWA
zVJgy{%+9@*v10O8?mPiakTu#MLJvgfPB!L=6XfJ#<m2FC<PhdyVPoWBWcddGP)cCc

diff --git a/Lab2/database.db b/Lab2/database.db
index 54ebaacbed664a2c1e4e273e1e464e8ab799fc61..200ab061884f9664250abd85b76ba217a03f11f5 100644
GIT binary patch
delta 99
zcmZozz}T>Wae_3X-b5K^M!k&*3;DVE4>B<Edo%NU^S5sn6tL&#vSQ?r<QJ6`HdLKF
sQC@WNU3o#Cywvi7#Ny)e{Gt@Y$?fvyybNGq3|1x#RVK3ei#(430P_+VhyVZp

delta 67
zcmZozz}T>Wae_3X_Cy(HM(vFW3;DSj7#NuN+Zp)x@waalRH){k+%9j<X~M`M$uBA?
YY&dy>yx8Oi@*<OW%X4o2CC_F609v{dF#rGn

diff --git a/Lab2/database_helper.py b/Lab2/database_helper.py
index 9c81217..0cac71e 100644
--- a/Lab2/database_helper.py
+++ b/Lab2/database_helper.py
@@ -111,3 +111,13 @@ def get_data_email(email):
         return None
     except:
         return None
+
+
+def change_password(email, newpassword):
+    try:
+        sql = "UPDATE USERS SET password = 'newpassword1' WHERE email = 'cbdgsdsd11mail.com';"
+        get_db().execute(sql)
+        get_db().commit()
+        return True
+    except:
+        return False
diff --git a/Lab2/server.py b/Lab2/server.py
index bc7ad65..c718b1c 100644
--- a/Lab2/server.py
+++ b/Lab2/server.py
@@ -82,8 +82,13 @@ def sign_out():
 def change_password():
     data = request.get_json()
     if('token' in data and 'oldPassword' in data and 'newPassword' in data):
-        return True
-        #return "", 204
+        if database_helper.is_online(data['token']):
+            email = database_helper.tokenToEmail(data['token'])
+            #check old password is good
+            if database_helper.change_password(email, data['newPassword']):
+                return "", 204
+        else:
+            return "", 401
     else:
         return "", 400
 
@@ -94,7 +99,7 @@ def get_user_data_token(token):
     if email:
         return get_user_data_email(token, email)
     else:
-        return "", 403
+        return "", 401
 
 
 @app.route("/account/get/data/<token>/<email>", methods = ['GET'])
@@ -108,14 +113,13 @@ def get_user_data_email(token, email):
                 "gender": data[2],
                 "city": data[3],
                 "country": data[4],
-                "email": data[5],
-                "password": data[6],
+                "email": data[5]
             }
             return jsonify(value), 200
         else:
             return "", 404
     else:
-        return "", 403
+        return "", 401
 
 def generate_token():
     characters = string.ascii_letters + string.digits
-- 
GitLab