From 6681c6a4afdfe139cd4bf0da0580cefea7fa6b58 Mon Sep 17 00:00:00 2001
From: Allie Bopp <aebopp@umich.edu>
Date: Mon, 15 Jun 2020 02:58:09 -0400
Subject: [PATCH] create account, login, logout

---
 .../views/__pycache__/accounts.cpython-36.pyc | Bin 2550 -> 2907 bytes
 servicePoints/views/accounts.py               |  19 ++++++++++++++----
 var/servicePoints.sqlite3                     | Bin 12288 -> 12288 bytes
 3 files changed, 15 insertions(+), 4 deletions(-)

diff --git a/servicePoints/views/__pycache__/accounts.cpython-36.pyc b/servicePoints/views/__pycache__/accounts.cpython-36.pyc
index 242555ca6dea79a6e43a25c9c027d5ba21f10fe6..5fba22d061eb399d26ed5f24624065c794a7dfca 100644
GIT binary patch
delta 1026
zcmZWoOKTHR7`?A~rFl%#)>qR<w6;yf(rRm46j4NRQKX<C%)&6qohBL5B;1);DHF0t
zmkPq&_&2%|`~~8|A24nN1##ojwcnjS40<o$xsUVBH*?Ot^Ly;ex&F;eCUrFV<He4R
z&^I*H7|icM1Rnr6;<$;N;}JVJSrdmOBXuZ@q)GRf!|-vA=4c-Eb<Y@J$K=%0e5;&N
z=#Oy5HLlkPH{KB5H@S6)ASr!9rUsag@N}}5IoZn$J&@(Ogv*|A_7FG9^9h&ZV|@G&
zIX1^nQEB2Q2tZFtIL-;L#XV6Dy}eG;4ZUCr9sSDFLTuLEpk8iQ{5aQfgJ8cccsX#J
zp~qucV3+W`++fdeTE1qt@uK|5DuCCt;?g`67Jp#@ma*P!*V^513Fd+F5YZGCOY)^Q
zlQm$aK|Fv69?5OIz}{l9DL-rPGr17?m>U<tiyoDS`s}TU?rJ?28oudU1Ju(Z%}?`8
z#0CT-NG1@JlK~!p$Oh`^q0MuVF2CyE^<{WLX;gkPcJi^6Xj8HTQQL+rn&T^^vmZ0=
zhHgx&T_LUl^PiBa@W7;1^|5QxHRmQs7TeHuoPyAaO&AvI@}1c+7gc2}Hl%G8?SG5O
z`_^>7iXlZcWrFf0F<~1f9QUviKLAZV5>lT<ps7bA5~1^`$0F)$5%cw9tr)@DP=0Xg
zn-PXAtwteVk90U}c944vXE}R%jKOlO2X%M7zk1_9>xR46H-!c7ELkz@b{jm_6t2az
z?!6L|K!}2ZDFxFCW&mR5w;QdJ;f$PCEjL<XR?$TTmla%5FbCk|&$4)>9E76Ls)_k6
zMJG2!T@tYZP=N^GuR{oYOhGrnTNMdg8a@7=Em^f5K3Dz<b*03*0_9<nHFRcY#bfi%
fUYmED-d$yRZ~?%Cx~iukQq&}c>2ae_Dwux&Iy2cg

delta 681
zcmZWl&ui2`6rMMkOnz*#iEb&ZE|uDrWvfW3C#e)cq&E@jDT+(l7h6Ntlt~sZyLgC*
z7ojlM{so@&<Wc-5L{{)n1^)x_=u8^uqBFejdvCrsGraHH;_uGOo4)V9@BVu7rA^2W
zGPjt@@2Du=DL{gdk?4#eg1V*=RZKHFG9m-cG#0Uhre?w`h%7V`mfAx{W9lM96Zru}
z>n%kaomWKl?6w-wtpHo-)rVel=FeSdV^C{;qlI(Y1-w{mZG>Gi=zKW6Ve}&VFfI;<
z`Cb|YM{!ZS$OR6II4cv3<aKrlR^$$Q2rYTSwqQ+uWqS&@%;ohJHLf^^RaMS-mLKHf
za-i+dz7WF&(U-5yD{ZbS9d}g}+ww8=*)fO>`Q7~Zh@^nfC8cK8FmKpw*y@s}=F})H
zWsy^nDVwm=Lw{ma6!cB1!a!O<rDl6Zre+ynFfrvH{*zx*e-1)<YCYHyROehQDw?t9
z@hFLSnGa*c8N;}YXU6_mh^tEdZ?=7r#AULfq+(OPu~$1Rgb+M%fdi)@WqO>?_L04&
zzW}i*Z#m21zfZ~3Sz?1gT$Z2Qd-rv#=xfmL3QNPer*&2vYu_H_IL?x7P#wjB0vq)9
ORJevsdrJ#eZ~ZT4i;M#R

diff --git a/servicePoints/views/accounts.py b/servicePoints/views/accounts.py
index 45154ad..b3960bc 100644
--- a/servicePoints/views/accounts.py
+++ b/servicePoints/views/accounts.py
@@ -1,4 +1,5 @@
 import hashlib
+import uuid
 import os
 import flask
 from flask import render_template
@@ -73,11 +74,10 @@ def create():
         if flask.session['password'] == '':
             flask.abort(400)
 
-
-        # pw = hash_pass(flask.session['password'])
+        pw = hash_pass(flask.session['password'])
         data = (flask.session['username'], flask.session['fullname'],
                 flask.session['email'], flask.session['orgName'],
-                flask.session['password'])
+                pw)
         cur = servicePoints.model.get_db()
         cur.execute("INSERT INTO users(username, fullname, email, orgName, "
                     "password) VALUES (?, ?, ?, ?, ?)", data)
@@ -93,4 +93,15 @@ def index():
     if 'username' in flask.session:
         context = {}
         return render_template('index.html', **context)
-    return flask.redirect(flask.url_for('login'))
\ No newline at end of file
+    return flask.redirect(flask.url_for('login'))
+
+def hash_pass(password_in):
+    """Hash passwords."""
+    algorithm = 'sha512'
+    salt = uuid.uuid4().hex
+    hash_obj = hashlib.new(algorithm)
+    password_salted = salt + password_in
+    hash_obj.update(password_salted.encode('utf-8'))
+    password_hash = hash_obj.hexdigest()
+    password_db_string = "$".join([algorithm, salt, password_hash])
+    return password_db_string
diff --git a/var/servicePoints.sqlite3 b/var/servicePoints.sqlite3
index bff9d49cf56fd47864011e5adf386daed54d4018..8c0b335ad8cf3043d2bba7171a82254b229827b0 100644
GIT binary patch
delta 273
zcmX|+txf|$6h^xt?4tH=QV9t(sb}uYou3T?!3!X2Np@!LOh|Abkd!_Fn<jk%90pQ_
zudKxL0(dN=`10v<a+bq#csZ_`@#Ly%K89E5>UJ}MZ}@}}?qJbwwzF>4K0RO5&9rQF
z^O)}c|8VOy%DF}>nX)p%B1P?bGyz?((hJn=agJFF645g1#3>ldOd>_LK}e~UcTzZ_
zOe#B4=w(1l<Xk3$)<osgCCW&_d4;Y|oRbn!=U(fOSYXON7b6$6$QE+}U_!xOdBc70
nREq1x>3dhhZUVpX1N+kV1-tF+><z~2!=vV4T9u}Hy+5ZvZx2rV

delta 68
zcmZojXh@hK&B!)U#+i|AW5N=CK34t^2LAi}JNYN_XY+?_R#b4}pBy5;0VsZkf&V-I
W8~!su*(*Tt#rzW+#3!H8Hvs^->J|L}

-- 
GitLab