Просмотр исходного кода

Merge pull request #1 from RJacksonm1/master

Some template and admin changes
sh4nks 11 лет назад
Родитель
Сommit
39106772ec

+ 76 - 38
flaskbb/admin/forms.py

@@ -39,11 +39,11 @@ def select_primary_group():
 
 class UserForm(Form):
     username = TextField("Username", validators=[
-        Optional(),
+        Required(),
         is_username])
 
     email = TextField("E-Mail", validators=[
-        Optional(),
+        Required(),
         Email(message="This email is invalid")])
 
     password = PasswordField("Password", validators=[
@@ -77,33 +77,54 @@ class UserForm(Form):
                                      query_factory=select_primary_group,
                                      get_label="name")
 
-    secondary_groups = QuerySelectMultipleField(
-        "Secondary Groups", allow_blank=True, get_label="name")
-
-    def __init__(self, user, *args, **kwargs):
-        self.user = user
-        kwargs['obj'] = self.user
-        super(UserForm, self).__init__(*args, **kwargs)
+    secondary_groups = QuerySelectMultipleField("Secondary Groups",
+                                                query_factory=select_primary_group,  # TODO: Template rendering errors "NoneType is not callable" without this, figure out why.
+                                                allow_blank=True,
+                                                get_label="name")
 
     def validate_username(self, field):
-        user = User.query.filter(db.and_(
-                                 User.username.like(field.data),
-                                 db.not_(User.id == self.user.id))).first()
+        if hasattr(self, "user"):
+            user = User.query.filter(
+                db.and_(User.username.like(field.data),
+                        db.not_(User.id == self.user.id)
+                        )
+            ).first()
+        else:
+            user = User.query.filter(User.username.like(field.data)).first()
+
         if user:
             raise ValidationError("This username is taken")
 
     def validate_email(self, field):
-        user = User.query.filter(db.and_(
-                                 User.email.like(field.data),
-                                 db.not_(User.id == self.user.id))).first()
+        if hasattr(self, "user"):
+            user = User.query.filter(
+                db.and_(User.email.like(field.data),
+                        db.not_(User.id == self.user.id)
+                        )
+            ).first()
+        else:
+            user = User.query.filter(User.email.like(field.data)).first()
+
         if user:
             raise ValidationError("This email is taken")
 
+
     def save(self):
         user = User(**self.data)
         return user.save()
 
 
+class AddUserForm(UserForm):
+    pass
+
+
+class EditUserForm(UserForm):
+    def __init__(self, user, *args, **kwargs):
+        self.user = user
+        kwargs['obj'] = self.user
+        super(UserForm, self).__init__(*args, **kwargs)
+
+
 class GroupForm(Form):
     name = TextField("Group Name", validators=[
         Required(message="Group name required")])
@@ -141,6 +162,45 @@ class GroupForm(Form):
                              description="Check this is the users in this \
                                          group can post replies")
 
+    def validate_name(self, field):
+        if hasattr(self, "group"):
+            group = Group.query.filter(
+                db.and_(Group.name.like(field.data),
+                        db.not_(Group.id == self.group.id)
+                        )
+            ).first()
+        else:
+            group = Group.query.filter(Group.name.like(field.data)).first()
+
+        if group:
+            raise ValidationError("This name is taken")
+
+    def validate_banned(self, field):
+        if hasattr(self, "group"):
+            group = Group.query.filter(
+                db.and_(Group.banned == True,
+                        db.not_(Group.id == self.group.id)
+                        )
+            ).count()
+        else:
+            group = Group.query.filter_by(banned=True).count()
+
+        if field.data and group > 0:
+            raise ValidationError("There is already a Banned group")
+
+    def validate_guest(self, field):
+        if hasattr(self, "group"):
+            group = Group.query.filter(
+                db.and_(Group.guest == True,
+                        db.not_(Group.id == self.group.id)
+                        )
+            ).count()
+        else:
+            group = Group.query.filter_by(guest=True).count()
+
+        if field.data and group > 0:
+            raise ValidationError("There is already a Guest group")
+
     def save(self):
         group = Group(**self.data)
         return group.save()
@@ -152,31 +212,9 @@ class EditGroupForm(GroupForm):
         kwargs['obj'] = self.group
         super(GroupForm, self).__init__(*args, **kwargs)
 
-    def validate_banned(self, field):
-        group = Group.query.filter(
-            db.and_(Group.banned == True,
-                    db.not_(Group.id == self.group.id))).count()
-        if field.data and group > 0:
-            raise ValidationError("There is already a Banned group")
-
-    def validate_guest(self, field):
-        group = Group.query.filter(
-            db.and_(Group.guest == True,
-                    db.not_(Group.id == self.group.id))).count()
-        if field.data and group > 0:
-            raise ValidationError("There is already a Guest group")
-
 
 class AddGroupForm(GroupForm):
-    def validate_banned(self, field):
-        group = Group.query.filter_by(banned=True).count()
-        if field.data and group > 0:
-            raise ValidationError("There is already a Banned group")
-
-    def validate_guest(self, field):
-        group = Group.query.filter_by(guest=True).count()
-        if field.data and group > 0:
-            raise ValidationError("There is already a Guest group")
+    pass
 
 
 class ForumForm(Form):

+ 8 - 8
flaskbb/admin/views.py

@@ -9,7 +9,7 @@ from flaskbb.decorators import admin_required
 from flaskbb.extensions import db
 from flaskbb.user.models import User, Group
 from flaskbb.forum.models import Post, Topic, Forum, Category
-from flaskbb.admin.forms import UserForm, AddGroupForm, EditGroupForm, ForumForm, CategoryForm
+from flaskbb.admin.forms import AddUserForm, EditUserForm, AddGroupForm, EditGroupForm, ForumForm, CategoryForm
 
 
 admin = Blueprint("admin", __name__)
@@ -81,7 +81,7 @@ def edit_user(user_id):
         db.not_(Group.banned == True),
         db.not_(Group.guest == True))
 
-    form = UserForm(user)
+    form = EditUserForm(user)
     form.secondary_groups.query = secondary_group_query
     if form.validate_on_submit():
         user.username = form.username.data
@@ -131,13 +131,13 @@ def delete_user(user_id):
 @admin.route("/users/add", methods=["GET", "POST"])
 @admin_required
 def add_user():
-    form = UserForm()
+    form = AddUserForm()
     if form.validate_on_submit():
         form.save()
         flash("User successfully added.", "success")
         return redirect(url_for("admin.users"))
 
-    return render_template("admin/add_user.html", form=form)
+    return render_template("admin/edit_user.html", form=form)
 
 
 @admin.route("/groups/<int:group_id>/edit", methods=["GET", "POST"])
@@ -185,9 +185,9 @@ def add_group():
     if form.validate_on_submit():
         form.save()
         flash("Group successfully added.", "success")
-        return redirect(url_for("admin.users"))
+        return redirect(url_for("admin.groups"))
 
-    return render_template("admin/add_group.html", form=form)
+    return render_template("admin/edit_group.html", form=form)
 
 
 @admin.route("/forums/<int:forum_id>/edit", methods=["GET", "POST"])
@@ -234,7 +234,7 @@ def add_forum():
         flash("Forum successfully added.", "success")
         return redirect(url_for("admin.forums"))
 
-    return render_template("admin/add_forum.html", form=form)
+    return render_template("admin/edit_forum.html", form=form)
 
 
 @admin.route("/categories/<int:category_id>/edit", methods=["GET", "POST"])
@@ -275,4 +275,4 @@ def add_category():
         flash("Category successfully added.", "success")
         return redirect(url_for("admin.categories"))
 
-    return render_template("admin/add_category.html", form=form)
+    return render_template("admin/edit_category.html", form=form)

+ 1 - 4
flaskbb/static/css/flaskbb.css

@@ -17,14 +17,11 @@ body {
   height: 60px;
   background-color: #f5f5f5;
 }
-#wrap > .container {
-  padding: 60px 15px 0;
-}
 .container .credit {
   margin: 20px 0;
 }
 #footer > .container {
-  margin-top: 15px;
+  margin: 0 auto 15px;
   padding-left: 15px;
   padding-right: 15px;
 }

+ 0 - 22
flaskbb/templates/admin/add_category.html

@@ -1,22 +0,0 @@
-{% set page_title = "Add Category" %}
-{% set active_forum_nav=True %}
-
-{% extends "admin/admin_layout.html" %}
-{% block admin_content %}
-{% from "macros.html" import render_field %}
-
-<form class="form-horizontal" role="form" method="post">
-    {{ form.hidden_tag() }}
-    <legend class="">Add Forum</legend>
-        {{ render_field(form.title) }}
-        {{ render_field(form.position) }}
-        {{ render_field(form.description, rows=5, div_class="col-lg-9") }}
-
-        <div class="form-group">
-            <div class="col-lg-offset-0 col-lg-9">
-                <button type="submit" class="btn btn-success">Save</button>
-            </div>
-        </div>
-</form>
-
-{% endblock %}

+ 0 - 23
flaskbb/templates/admin/add_forum.html

@@ -1,23 +0,0 @@
-{% set page_title = "Add Forum" %}
-{% set active_forum_nav=True %}
-
-{% extends "admin/admin_layout.html" %}
-{% block admin_content %}
-{% from "macros.html" import render_field, render_select_field %}
-
-<form class="form-horizontal" role="form" method="post">
-    {{ form.hidden_tag() }}
-    <legend class="">Add Forum</legend>
-        {{ render_field(form.title) }}
-        {{ render_field(form.position) }}
-        {{ render_select_field(form.category) }}
-        {{ render_field(form.description, rows=5, div_class="col-lg-9") }}
-
-        <div class="form-group">
-            <div class="col-lg-offset-0 col-lg-9">
-                <button type="submit" class="btn btn-success">Save</button>
-            </div>
-        </div>
-</form>
-
-{% endblock %}

+ 0 - 35
flaskbb/templates/admin/add_group.html

@@ -1,35 +0,0 @@
-{% set page_title = "Add Group" %}
-{% set active_forum_nav=True %}
-
-{% extends "admin/admin_layout.html" %}
-{% block admin_content %}
-{% from "macros.html" import render_field, render_boolean_field %}
-
-<form class="form-horizontal" role="form" method="post">
-    {{ form.hidden_tag() }}
-    <legend class="">Add Group</legend>
-        {{ render_field(form.name) }}
-        {{ render_field(form.description) }}
-
-        {{ render_boolean_field(form.admin) }}
-        {{ render_boolean_field(form.super_mod) }}
-
-
-        {{ render_boolean_field(form.mod) }}
-        {{ render_boolean_field(form.banned) }}
-        {{ render_boolean_field(form.guest) }}
-
-        {{ render_boolean_field(form.editpost) }}
-        {{ render_boolean_field(form.deletepost) }}
-        {{ render_boolean_field(form.deletetopic) }}
-        {{ render_boolean_field(form.posttopic) }}
-        {{ render_boolean_field(form.postreply) }}
-
-        <div class="form-group">
-            <div class="col-lg-offset-0 col-lg-9">
-                <button type="submit" class="btn btn-success">Save</button>
-            </div>
-        </div>
-</form>
-
-{% endblock %}

+ 0 - 32
flaskbb/templates/admin/add_user.html

@@ -1,32 +0,0 @@
-{% set page_title = "Add User" %}
-{% set active_forum_nav=True %}
-
-{% extends "admin/admin_layout.html" %}
-{% block admin_content %}
-{% from "macros.html" import render_field, render_select_field %}
-
-<form class="form-horizontal" role="form" method="post">
-    {{ form.hidden_tag() }}
-    <legend class="">Add User</legend>
-        {{ render_field(form.username) }}
-        {{ render_field(form.email) }}
-        {{ render_field(form.password) }}
-        {{ render_field(form.birthday) }}
-        {{ render_select_field(form.gender) }}
-        {{ render_field(form.location) }}
-        {{ render_field(form.website) }}
-        {{ render_field(form.avatar) }}
-        {{ render_select_field(form.primary_group) }}
-        {{ render_select_field(form.secondary_groups) }}
-        {{ render_field(form.signature, rows=5, div_class="col-lg-9") }}
-        {{ render_field(form.notes, rows=12, div_class="col-lg-9") }}
-
-
-        <div class="form-group">
-            <div class="col-lg-offset-0 col-lg-9">
-                <button type="submit" class="btn btn-success">Save</button>
-            </div>
-        </div>
-</form>
-
-{% endblock %}

+ 4 - 4
flaskbb/templates/admin/admin_layout.html

@@ -3,7 +3,7 @@
 {%- from 'macros.html' import navlink with context-%}
 
 <div class="row">
-    <div class="col-md-3">
+    <div class="col-sm-3">
         <div class="sidebar">
             <ul class="nav sidenav">
                 <li class="nav-header">Options</li>
@@ -14,9 +14,9 @@
                 {{ navlink('admin.forums', 'Forums') }}
             </ul>
         </div><!--/.sidebar -->
-    </div><!--/.col-md-3 -->
-    <div class="col-md-9">
+    </div><!--/.col-sm-3 -->
+    <div class="col-sm-9">
         {% block admin_content %}{% endblock %}
-    </div><!--/.col-md-9 -->
+    </div><!--/.col-sm-9 -->
 </div><!--/.row -->
 {% endblock %}

+ 6 - 6
flaskbb/templates/admin/edit_category.html

@@ -1,16 +1,16 @@
-{% set page_title = "Add Category" %}
+{% set page_title = "Edit Category" %}
 {% set active_forum_nav=True %}
 
 {% extends "admin/admin_layout.html" %}
 {% block admin_content %}
-{% from "macros.html" import render_field %}
+{% from "macros.html" import horizontal_field %}
 
 <form class="form-horizontal" role="form" method="post">
     {{ form.hidden_tag() }}
-    <legend class="">Add Forum</legend>
-        {{ render_field(form.title) }}
-        {{ render_field(form.position) }}
-        {{ render_field(form.description, rows=5, div_class="col-lg-9") }}
+    <legend class="">Edit Forum</legend>
+        {{ horizontal_field(form.title) }}
+        {{ horizontal_field(form.position) }}
+        {{ horizontal_field(form.description, rows=5, div_class="col-lg-9") }}
 
         <div class="form-group">
             <div class="col-lg-offset-0 col-lg-9">

+ 7 - 7
flaskbb/templates/admin/edit_forum.html

@@ -1,17 +1,17 @@
-{% set page_title = "Add Forum" %}
+{% set page_title = "Edit Forum" %}
 {% set active_forum_nav=True %}
 
 {% extends "admin/admin_layout.html" %}
 {% block admin_content %}
-{% from "macros.html" import render_field, render_select_field %}
+{% from "macros.html" import horizontal_field %}
 
 <form class="form-horizontal" role="form" method="post">
     {{ form.hidden_tag() }}
-    <legend class="">Add Forum</legend>
-        {{ render_field(form.title) }}
-        {{ render_field(form.position) }}
-        {{ render_select_field(form.category) }}
-        {{ render_field(form.description, rows=5, div_class="col-lg-9") }}
+    <legend class="">Edit Forum</legend>
+        {{ horizontal_field(form.title) }}
+        {{ horizontal_field(form.position) }}
+        {{ horizontal_field(form.category) }}
+        {{ horizontal_field(form.description, rows=5, div_class="col-lg-9") }}
 
         <div class="form-group">
             <div class="col-lg-offset-0 col-lg-9">

+ 5 - 5
flaskbb/templates/admin/edit_group.html

@@ -1,15 +1,15 @@
-{% set page_title = "Add Group" %}
+{% set page_title = "Edit Group" %}
 {% set active_forum_nav=True %}
 
 {% extends "admin/admin_layout.html" %}
 {% block admin_content %}
-{% from "macros.html" import render_field, render_boolean_field %}
+{% from "macros.html" import horizontal_field, render_boolean_field %}
 
 <form class="form-horizontal" role="form" method="post">
     {{ form.hidden_tag() }}
-    <legend class="">Add Group</legend>
-        {{ render_field(form.name) }}
-        {{ render_field(form.description) }}
+    <legend class="">Edit Group</legend>
+        {{ horizontal_field(form.name) }}
+        {{ horizontal_field(form.description) }}
 
         {{ render_boolean_field(form.admin) }}
         {{ render_boolean_field(form.super_mod) }}

+ 16 - 16
flaskbb/templates/admin/edit_user.html

@@ -1,29 +1,29 @@
-{% set page_title = "Add User" %}
+{% set page_title = "Edit User" %}
 {% set active_forum_nav=True %}
 
 {% extends "admin/admin_layout.html" %}
 {% block admin_content %}
-{% from "macros.html" import render_field, render_select_field %}
+{% from "macros.html" import horizontal_field %}
 
 <form class="form-horizontal" role="form" method="post">
     {{ form.hidden_tag() }}
-    <legend class="">Add User</legend>
-        {{ render_field(form.username) }}
-        {{ render_field(form.email) }}
-        {{ render_field(form.password) }}
-        {{ render_field(form.birthday) }}
-        {{ render_select_field(form.gender) }}
-        {{ render_field(form.location) }}
-        {{ render_field(form.website) }}
-        {{ render_field(form.avatar) }}
-        {{ render_select_field(form.primary_group) }}
-        {{ render_select_field(form.secondary_groups) }}
-        {{ render_field(form.signature, rows=5, div_class="col-lg-9") }}
-        {{ render_field(form.notes, rows=12, div_class="col-lg-9") }}
+    <legend class="">Edit User</legend>
+        {{ horizontal_field(form.username) }}
+        {{ horizontal_field(form.email) }}
+        {{ horizontal_field(form.password) }}
+        {{ horizontal_field(form.birthday) }}
+        {{ horizontal_field(form.gender) }}
+        {{ horizontal_field(form.location) }}
+        {{ horizontal_field(form.website) }}
+        {{ horizontal_field(form.avatar) }}
+        {{ horizontal_field(form.primary_group) }}
+        {{ horizontal_field(form.secondary_groups) }}
+        {{ horizontal_field(form.signature, rows=5, div_class="col-sm-9") }}
+        {{ horizontal_field(form.notes, rows=12, div_class="col-sm-9") }}
 
 
         <div class="form-group">
-            <div class="col-lg-offset-0 col-lg-9">
+            <div class="col-sm-offset-3 col-sm-9">
                 <button type="submit" class="btn btn-success">Save</button>
             </div>
         </div>

+ 1 - 1
flaskbb/templates/auth/forgot_password.html

@@ -11,7 +11,7 @@
         {{ wtf.horizontal_field(form.email) }}
 
     <div class="form-group">
-        <div class="col-lg-offset-2 col-lg-10">
+        <div class="col-sm-offset-3 col-sm-9">
             <button type="submit" class="btn btn-primary">Reset Password</button>
         </div>
     </div>

+ 2 - 2
flaskbb/templates/auth/login.html

@@ -12,7 +12,7 @@
     {{ horizontal_field(form.password)}}
 
     <div class="form-group">
-        <div class="col-lg-offset-2 col-lg-3">
+        <div class="col-sm-offset-3 col-sm-3">
             <div class="checkbox">
                 <label>
                     {{ form.remember_me }} Remember Me
@@ -22,7 +22,7 @@
     </div>
 
     <div class="form-group">
-        <div class="col-lg-offset-2 col-lg-10">
+        <div class="col-sm-offset-3 col-sm-9">
             <button type="submit" class="btn btn-success">Login</button>
         </div>
     </div>

+ 1 - 1
flaskbb/templates/forum/memberlist.html

@@ -11,7 +11,7 @@
 
   <div class="pull-left" style="padding-bottom: 10px">
     {{ render_pagination(users, url_for('forum.memberlist')) }}
-  </div><!-- /.col-lg-6 -->
+  </div><!-- /.col-pull-left -->
   <div class="pull-right" style="padding-bottom: 10px">
     <div class="input-group">
       <input type="text" class="form-control" placeholder="Search">

+ 1 - 1
flaskbb/templates/layout.html

@@ -21,7 +21,7 @@
         {% block navigation %}
         {%- from "macros.html" import topnav with context -%}
         <!-- Navigation -->
-            <nav class="navbar navbar-default navbar-fixed-top">
+            <nav class="navbar navbar-default navbar-static-top">
                 <div class="container">
                     <div class="navbar-header">
                         <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-ex1-collapse">

+ 6 - 6
flaskbb/templates/macros.html

@@ -33,7 +33,7 @@
     {% if div_class %}
     <div class="{{ div_class }}">
     {% else %}
-    <div class="col-lg-5">
+    <div class="col-sm-5">
     {% endif %}
         <label>{{ field.label.text }}</label>
         {% if field.type == 'QuerySelectMultipleField' or field.type == 'SelectMultipleField' %}
@@ -53,7 +53,7 @@
     {% if div_class %}
     <div class="{{ div_class }}">
     {% else %}
-    <div class="col-lg-5">
+    <div class="col-sm-5">
     {% endif %}
         <label>{{ field.label.text }}</label>
         {%- if kwargs['required'] or field.flags.required -%}
@@ -81,7 +81,7 @@
 <div class="form-group {%- if field.errors %} has-error{%- endif %}">
     {{field.label(class="sr-only")}}
 
-    <div class="col-lg-4">
+    <div class="col-sm-4">
     {%- if kwargs['required'] or field.flags.required -%}
         {% if label_text %}
             {{field(class='form-control', placeholder=label_text, required="required", **kwargs)}}
@@ -103,14 +103,14 @@
 
 
 {%- macro horizontal_field(field, label_text='', label_class='') -%}
-<div class="form-group {%- if field.errors %} has-error{%- endif %}">
+<div class="form-group row {%- if field.errors %} has-error{%- endif %}">
 
     {% if class %}
         {{ field.label(class=class) }}
     {% else %}
-        {{ field.label(class="col-lg-2 control-label") }}
+        {{ field.label(class="col-sm-3 control-label") }}
     {% endif %}
-    <div class="col-lg-3">
+    <div class="col-sm-9">
 
     {%- if kwargs['required'] or field.flags.required -%}
         {% if label_text %}

+ 2 - 2
flaskbb/templates/pms/new_message.html

@@ -8,8 +8,8 @@
     {{ wtf.horizontal_field(form.subject)}}
     {{ wtf.horizontal_field(form.message)}}
 
-    <div class="form-group">
-        <div class="col-lg-offset-1 col-lg-8">
+    <div class="form-group row">
+        <div class="col-sm-offset-3 col-lg-9">
             <button class="btn btn-success" type="submit" name="send_message">Send Message</button>
             <button class="btn btn-info" type="submit" name="save_message">Save as Draft</button>
         </div>

+ 4 - 4
flaskbb/templates/pms/pm_layout.html

@@ -9,7 +9,7 @@
 </ul>
 
 <div class="row">
-    <div class="col-md-3">
+    <div class="col-sm-3">
         <div class="sidebar">
             <ul class="nav sidenav">
                 <li class="nav-header">Options | <small><a href="{{ url_for('pms.new_message') }}">New PM</a></small></li>
@@ -19,9 +19,9 @@
                 {{ navlink('pms.trash', 'Trash') }}
             </ul>
         </div><!--/.sidebar -->
-    </div><!--/.col-md-3 -->
-    <div class="col-md-9">
+    </div><!--/.col-sm-3 -->
+    <div class="col-sm-9">
         {% block pm_content %}{% endblock %}
-    </div><!--/.col-md-9 -->
+    </div><!--/.col-sm-9 -->
 </div><!--/.row -->
 {% endblock %}

+ 2 - 2
flaskbb/templates/user/change_email.html

@@ -9,8 +9,8 @@
     {{ horizontal_field(form.new_email)}}
     {{ horizontal_field(form.confirm_new_email)}}
 
-    <div class="form-group">
-        <div class="col-lg-offset-3 col-lg-9">
+    <div class="form-group row">
+        <div class="col-sm-offset-3 col-sm-9">
             <button type="submit" class="btn btn-success">Save</button>
         </div>
     </div>

+ 2 - 2
flaskbb/templates/user/change_password.html

@@ -9,8 +9,8 @@
     {{ horizontal_field(form.new_password)}}
     {{ horizontal_field(form.confirm_new_password)}}
 
-    <div class="form-group">
-        <div class="col-lg-offset-3 col-lg-9">
+    <div class="form-group row">
+        <div class="col-sm-offset-3 col-sm-9">
             <button type="submit" class="btn btn-success">Save</button>
         </div>
     </div>

+ 9 - 9
flaskbb/templates/user/change_user_details.html

@@ -5,16 +5,16 @@
 <form class="form-horizontal" role="form" method="POST">
     <legend class="">Change User Details</legend>
     {{ form.hidden_tag() }}
-    {{ horizontal_field(form.birthday)}}
-    {{ horizontal_field(form.gender)}}
-    {{ horizontal_field(form.location)}}
-    {{ horizontal_field(form.website)}}
-    {{ horizontal_field(form.avatar)}}
-    {{ horizontal_field(form.signature, rows=5, div_class="col-lg-9")}}
-    {{ horizontal_field(form.notes, rows=12, div_class="col-lg-9")}}
+    {{ horizontal_field(form.birthday) }}
+    {{ horizontal_field(form.gender) }}
+    {{ horizontal_field(form.location) }}
+    {{ horizontal_field(form.website) }}
+    {{ horizontal_field(form.avatar) }}
+    {{ horizontal_field(form.signature, rows=5, div_class="col-sm-9") }}
+    {{ horizontal_field(form.notes, rows=12, div_class="col-sm-9") }}
 
-    <div class="form-group">
-        <div class="col-lg-offset-3 col-lg-9">
+    <div class="form-group row">
+        <div class="col-sm-offset-3 col-sm-9">
             <button type="submit" class="btn btn-success">Save</button>
         </div>
     </div>

+ 4 - 4
flaskbb/templates/user/settings_layout.html

@@ -9,7 +9,7 @@
 </ul>
 
 <div class="row">
-    <div class="col-md-3">
+    <div class="col-sm-3">
         <div class="sidebar">
             <ul class="nav sidenav">
                 <li class="nav-header">Account Settings</li>
@@ -24,10 +24,10 @@
                 <li><a href="#">Link</a></li>
             </ul>
         </div> <!--/.sidebar -->
-    </div><!--/.col-md-3 -->
-    <div class="col-md-9">
+    </div><!--/.col-sm-3 -->
+    <div class="col-sm-9">
         {% block settings_content %}{% endblock %}
-    </div><!--/.col-md-9 -->
+    </div><!--/.col-sm-9 -->
 </div><!--/row-->
 
 {% endblock %}