From bb89d429e6dcabc3fda780d6f87049ff7377e453 Mon Sep 17 00:00:00 2001
From: kaiyou <pierre@jaury.eu>
Date: Sun, 2 Aug 2020 14:23:57 +0200
Subject: [PATCH] List user contact info in details page

---
 hiboo/account/settings.py              | 6 +++++-
 hiboo/user/templates/user_details.html | 5 +++++
 2 files changed, 10 insertions(+), 1 deletion(-)

diff --git a/hiboo/account/settings.py b/hiboo/account/settings.py
index cf0a4275..39fd0aaa 100644
--- a/hiboo/account/settings.py
+++ b/hiboo/account/settings.py
@@ -1,5 +1,6 @@
 from hiboo.account import blueprint, forms
 from hiboo import models, security
+from wtforms import fields
 from flask_babel import lazy_gettext as _
 
 import flask
@@ -30,7 +31,10 @@ def contact():
     user = flask_login.current_user
     form = forms.ContactForm()
     if form.validate_on_submit():
-        user.contact = form.data
+        user.contact = {
+            field.name: form.data[field.name] for field in form
+            if type(field) is fields.StringField
+        }
         models.db.session.add(user)
         models.db.session.commit()
         flask.flash(_("Successfully updated your contact info"), "success")
diff --git a/hiboo/user/templates/user_details.html b/hiboo/user/templates/user_details.html
index c0c97a09..45d760b6 100644
--- a/hiboo/user/templates/user_details.html
+++ b/hiboo/user/templates/user_details.html
@@ -17,6 +17,11 @@
 
           <dt>{% trans %}Created at{% endtrans %}</dt>
           <dd>{{ user.created_at }}</dd>
+
+          {% for name, value in user.contact.items() %}
+          <dt>{{ name | capitalize }}</dt>
+          <dd>{{ value }}</dd>
+          {% endfor %}
         </dl>
       </div>
       </div>
-- 
GitLab