From e43bc7e892cc63b2574114722ff8df169bc2e5a0 Mon Sep 17 00:00:00 2001
From: Allie Bopp <aebopp@umich.edu>
Date: Wed, 22 Jul 2020 19:00:10 -0400
Subject: [PATCH] edit tutor info

---
 servicePoints/templates/tutor.html            |  27 +++++++--
 .../views/__pycache__/accounts.cpython-36.pyc | Bin 17154 -> 17340 bytes
 servicePoints/views/accounts.py               |  53 +++++++++++-------
 var/servicePoints.sqlite3                     | Bin 40960 -> 40960 bytes
 4 files changed, 53 insertions(+), 27 deletions(-)

diff --git a/servicePoints/templates/tutor.html b/servicePoints/templates/tutor.html
index 158dd1c..963aac2 100644
--- a/servicePoints/templates/tutor.html
+++ b/servicePoints/templates/tutor.html
@@ -58,7 +58,7 @@
     }
 
     .su {
-        float: right;
+        text-align:center;
     }
 
     /* Clear floats */
@@ -74,10 +74,6 @@
     <a href="/">Home</a>
     <title>ServicePoints</title>
 
-    <div class="su">
-        <button onclick="document.getElementById('id01').style.display='block'" style="width:auto; right: 35px">Sign Up</button>
-    </div>
-
     <div id="id01" class="modal">
         <span onclick="document.getElementById('id01').style.display='none'" class="close" title="Close Modal">&times;</span>
         <form class="modal-content" action="/accounts/tutorsu/" method="post">
@@ -95,8 +91,11 @@
                 <input type="text" placeholder="Enter Times" name="time" required>
 
                 <div class="clearfix">
+
                     <button type="button" onclick="document.getElementById('id01').style.display='none'" class="cancelbtn">Cancel</button>
-                    <button type="submit" class="signup">Sign Up</button>
+                    <form action="/accounts/tutor/" method="post">
+                        <input type="submit" class="signup" name="sign" value="Sign Up" />
+                    </form>
                 </div>
             </div>
         </form>
@@ -106,8 +105,24 @@
 
     <h1>Welcome to the Service Points Tutoring page!</h1>
 
+    {% if registered == 0 %}
+
     <p>Search through our database of current tutors or sign up to have your name and information listed.</p>
 
+    <div class="su">
+        <button onclick="document.getElementById('id01').style.display='block'" style="width:auto; right: 35px">Sign Up</button>
+    </div>
+
+    {% endif %}
+
+    {% if registered == 1 %}
+    <p>Search through our database of current tutors or edit your listed information.</p>
+    <div class="su">
+        <button onclick="document.getElementById('id01').style.display='block'" style="width:auto; right: 35px">Edit Information</button>
+        <button value='delete' type="submit" class="signup">Delete Profile</button>
+    </div>
+    {% endif %}
+
     <h3>Name, Subject(s), Time, Email</h3>
     <p>
         {% for tutor, user in zip(tutors, tutorsN) %}
diff --git a/servicePoints/views/__pycache__/accounts.cpython-36.pyc b/servicePoints/views/__pycache__/accounts.cpython-36.pyc
index 13c2c31e5423a4b2afbad9734437419e5b288607..57b6e372af7265460e6b3531d1e6299db79c7aff 100644
GIT binary patch
delta 945
zcmZ`%O-vI(6y7(x-L^|xT4=E-NWFnEh0>s;p|<=TK?xWPG4Y2f*j6gcZV!^JBvv74
z{L4fL;=wa9F{XMkUc7np!a;k`qn<r_^1ZfjFd>uq-kWc}dEeWay|)gZHo%B`y~dA^
z;j4Qq?~MK43x=X74xFPn%{QPZmXd=U<B(_1K!iD~t<}6vt9s7Wc2a3v9jdEUt~D4<
zcJ&=wbF?dEC_znwJ6z8*aTiwx&L-~UF7AHJ$}rui(onoUQi1hqwGMo-=7L&cHY`9%
zwUwNQ8@5_zpkVGTE2CV=yTu>Nk<)X|vQpA)4JA!BBT1p{Ki*U456xX=z}94>ukGMF
zj`ATJyp=ibEjbDr_mv!nrKuASZ^m07b00RL*BC!CPTN^yT()kzYzGg#QcG^MZ{|VU
z&08&h7Pi?Fyq$PYXi{kSE>+FUE*9ooX7NTYGjEwy&B`uigic$Eh+_~d2t6QTayE84
zz8br9acp>IJYp5C+ro@YkIzJkW=0gQFJ&UhNa{?aQ7MTjl}e`MPAsK+s1nHUu{(om
zRj(heI_q(=YKY8Y*0eGr!~YsJGJ4Zmx>Z$Iv&(3`P8|f~sjiTe{U`MR)oPJz!EkJY
zb_@|FCP^?taGoGd@PMF<FsIEIMZdT&ubl{Aq%V4p|D!pEiK6<z2Q4@-Vjjd8WPb3d
zI(Tpx;9~}On4gi3I7Fr)XMhXQrFtq;ab1OnmCI+Z0Q{04&P~8pMI8(=*p{C=Lo%9}
zfEUtEL>-&x7m{xiy|7vNnfR^2OZg>b!j2qD$Dvm)r{`f;?x(*FJVhaA*do1zg4PBI
x;(EG8CkC-dFiX%(@SNb0{5HH7+M<+v#4Z6H65TS;-YWM-rkwGPXvgu6fqz%D+(`fc

delta 756
zcmZ`#&u<bz6rMM`?7{*IB2B^4lO~oLsRe0K`~mINa`DjEm}q2LWwD{oE(gt$Caj7c
zsK%+OB*w&(i8sShP4pkoiznhA(7(WgC*MHfW;XA8Z@%~Dd*AGr4z!<wkqd{73*Pjt
z4~<X8uZ41e5aPpF#jq<th(j!}D1$nE37ig33ZqHMtBhV6^%bTZF^V{QZhBWu5)WG7
z!WOisODu!=T<TFESO-1ANIk$^R0v^&ndX59*GGz|!}L1k?<QS83oxTgClk1PIPvYj
z6YB2R-q=)<Y$+|p@mZRsd!(hhDq0G<inKJ52_4xOPf4=|3*$rNyovXGL&ii#bG0F(
zyFOQEk+-zvN1X_Zxqf!cIT@|N0o}tlrH@y*iobHhZ#VB)n^ngis7`HrlWXF~;(UVJ
z*c%X@!^9sTq=7GD5@)hkK^HsOho|X4bDB<r+XH=+D}Rk)k-6t=-ybNCYCCx8u}I|#
z;{9@bX+}y>2~VV6fG1>qS;7?wD-uc)+6WtJwaK&G6Srp);&U#L&mu__lg1zhCYV%%
z5Png`ggBn#G>Rt!LNrPZYJgvcV)TROH3gpaW6L)Iev3w74fgwA3sV$ci|?~j;_%`c
z2(eVm_&TU=h+1(0I{jYpP=z<5U9#ao{3+$&l$bA9p(pmrKl5E2yn)ZKHED>NxRgsS
qJ;!G;@w*b%B}62=knmi*TKO2=m!;gpdlI_h+G<UoOJ!0gQu%+%^{adU

diff --git a/servicePoints/views/accounts.py b/servicePoints/views/accounts.py
index 85ebb15..0a345c3 100644
--- a/servicePoints/views/accounts.py
+++ b/servicePoints/views/accounts.py
@@ -437,32 +437,43 @@ def images(filename):
 def tutorsu():
 
     if flask.request.method == 'POST':
-      
-        flask.session['subjects'] = flask.request.form['subjects']
-        flask.session['time'] = flask.request.form['time']
-        cursor = servicePoints.model.get_db().cursor()
-        name = str(flask.session['username'])
+        if 'sign' in flask.request.form:
+            flask.session['subjects'] = flask.request.form['subjects']
+            flask.session['time'] = flask.request.form['time']
+            cursor = servicePoints.model.get_db().cursor()
+            name = str(flask.session['username'])
 
-        to_add = (name,)
-        cursor.execute('SELECT * FROM tutors WHERE username=?', to_add)
-        if cursor.fetchone() is not None:
-            return flask.redirect(flask.url_for('duplicateTutor'))
+            # If a user tries to sign up with any empty fields
+            if flask.session['time'] == '':
+                return flask.redirect(flask.url_for('incompleteForm', prev="tutorsu")) 
+            if flask.session['subjects'] == '':
+                return flask.redirect(flask.url_for('incompleteForm', prev="tutorsu")) 
 
-        # If a user tries to sign up with any empty fields
-        if flask.session['time'] == '':
-            return flask.redirect(flask.url_for('incompleteForm', prev="tutorsu")) 
-        if flask.session['subjects'] == '':
-            return flask.redirect(flask.url_for('incompleteForm', prev="tutorsu")) 
+            data = (flask.session['username'], flask.session['subjects'],
+                    flask.session['time'])
 
-        data = (flask.session['username'], flask.session['subjects'],
-                flask.session['time'])
-        cur = servicePoints.model.get_db()
-        cur.execute("INSERT INTO tutors(username, subject, time) VALUES (?, ?, ?)", data)
 
-        return flask.redirect(flask.url_for('index'))
+            to_add = (name,)
+            cursor.execute('SELECT * FROM tutors WHERE username=?', to_add)
+            if cursor.fetchone() is not None:
+                cur = servicePoints.model.get_db()
+                cur.execute("UPDATE tutors SET username = ?, subject=?, time=?", data)
+            else:
+                cur = servicePoints.model.get_db()
+                cur.execute("INSERT INTO tutors(username, subject, time) VALUES (?, ?, ?)", data)
 
-    cursor = servicePoints.model.get_db()
+            return flask.redirect(flask.url_for('tutorsu'))
 
+    cursor = servicePoints.model.get_db().cursor()
+    name = str(flask.session['username'])
+    to_add = (name,)
+    cursor.execute('SELECT * FROM tutors WHERE username=?', to_add)
+    if cursor.fetchone() is not None:
+        registered = 1
+    else:
+        registered = 0
+
+    cursor = servicePoints.model.get_db()
     cur = cursor.execute("SELECT subject, time FROM tutors")
     tutors = cur.fetchall()
 
@@ -470,7 +481,7 @@ def tutorsu():
     tutorsN = cur2.fetchall()
 
     # Add database info to context
-    context = {"tutors": tutors, "tutorsN": tutorsN}
+    context = {"tutors": tutors, "tutorsN": tutorsN, "registered": registered}
     return flask.render_template("tutor.html", **context,zip=zip)
 
 @servicePoints.app.route('/accounts/submitPoints/', methods=['GET', 'POST'])
diff --git a/var/servicePoints.sqlite3 b/var/servicePoints.sqlite3
index 6783b9ce0615ff90dab41579c79b0393d4f22b88..3e4b0e87de5e2fe100d435fa76bb2e40a3a408f1 100644
GIT binary patch
delta 502
zcmXw#zi!k(5XNnvkGq(JAxI%o5{OSql!5~9+Phvug9J?~o&bscdzVY_Il0S4u5$1K
z9O4O}LZU)`0MhdSfr5qt>8dD^QlK=fQJ7+8G@5Vp`(|?DO-{V&s=N7a?Ww!@<>d!h
zavY}>oV&sKt+xx`Z+>35Ki`GzsuOmCDqXqLJbs<D+F;|&i*{jS*y9A@4XkKvOo9|8
zX~GgE2#->UGLfJtA&hKbNvMu88mB7aDT^4QDb7e{vV_OPa7?g}hM_n%)DT7$K@#hf
zW+c%>NE&G_F*fKK;|g)xF;1wmS44~`V-jgitc+`6F$59{OCgzxViGZJL872G2B!|3
z!D$tQ-{3~G0dCQH|MTHi+k*=S{=h}G_~bXNG`$8uQ8Zm!%CZ)EaOuD$Tvdz3>{{qm
zSI_6dc^{?@{DQCW38wZ-6F9!>`*3evE7R@uclRDkGwzDITWa{QzPhiB?2db)pI?`b
z=fi`o;;6?*;m$A|9*Vw}qkN!v`6$c>qn%fJ&Gi8-m)qfPJ~*<o|4YMMkM%*#=fli_
fnI${}*Fr`=V7Ydu{W|YA{yFvh2F#Tor?>wCjV_89

delta 166
zcmZoTz|?SnX@WGP!bBNoMum+D3;BilJsH@zJ~DEB<m>0X!M&PSjwgMyqJlElW^*Ya
zRu%>ZhV2s@H*;|T8EpJ_8Tj9C=21A!KQVw~@?Cv(4o3c;4E#U&KW!FFc+M}$z`zbv
z#>&Xd&tF*y(!t38n}Po~|5vc|!~j-iHU@^xzx_ECm>2{gViSbfKnfAuMH2)7);uj(

-- 
GitLab