aboutsummaryrefslogtreecommitdiffstats
path: root/wedding.py
diff options
context:
space:
mode:
Diffstat (limited to 'wedding.py')
-rw-r--r--wedding.py44
1 files changed, 20 insertions, 24 deletions
diff --git a/wedding.py b/wedding.py
index 249c940..c480491 100644
--- a/wedding.py
+++ b/wedding.py
@@ -66,21 +66,20 @@ def rsvp():
form=r)
if request.method == 'POST':
db = get_db()
- args = (request.form["fullname"],
- int(request.form["answer"]),
- request.form["email"],
- request.form["mailing"],
- int(request.form["plusone"]),
- request.form["plusonename"],
- int(request.form["kids"]),
- request.form["kidsnames"],
- request.form["comments"],
- session["user_name"])
- cur = db.execute("""UPDATE guests set full_name=?,
- rsvp=?, email=?, mailing=?, plusone=?, plusonename=?, kids=?,
- kidsnames=?, comments=? WHERE user_name=?""", args)
- db.commit()
- cur.close()
+ f = defaultdict(str)
+ update_string = []
+ args = []
+ for k, v in request.form.items():
+ update_string.append("{0}=?".format(k))
+ if k in ["rsvp", "plusone", "kids"]:
+ ## convert to integer
+ args.append(int(v))
+ else:
+ args.append(v)
+ update_string = ",".join(update_string)
+ query = "UPDATE guests set %s WHERE user_name=?" % update_string
+ with db:
+ db.execute(query, tuple(args+[session['user_name']]))
flash("We have updated your information!")
return redirect(url_for('rsvp'))
@@ -106,15 +105,12 @@ def login():
error = None
if request.method == 'POST':
db = get_db()
- c = db.cursor()
- c.execute("SELECT * from guests where user_name=?",
- (request.form['username'],))
- if not c.fetchone():
- c.close()
- flash(wn[request.form['language']])
- return redirect(url_for('login'))
- else:
- c.close()
+ with db:
+ db.execute("SELECT * from guests where user_name=?",
+ (request.form['username'],))
+ if not db.fetchone():
+ flash(wn[request.form['language']])
+ return redirect(url_for('login'))
if request.form['password'] != app.config['PASSWORD']:
flash(wp[request.form['language']])
return redirect(url_for('login'))