changeset 2896:76187487acb2

merge
author RogerHaase <haaserd@gmail.com>
date Thu, 12 Feb 2015 10:40:20 -0700
parents a0101a36a5a5 (current diff) ffea4cf5a8f7 (diff)
children 4f890d39e606
files MoinMoin/themes/basic/templates/delete.html MoinMoin/themes/basic/templates/destroy.html MoinMoin/themes/basic/templates/diff.html MoinMoin/themes/basic/templates/diff_text.html MoinMoin/themes/basic/templates/register.html MoinMoin/themes/basic/templates/rename.html MoinMoin/themes/basic/templates/usersettings.html MoinMoin/themes/basic/templates/usersettings_ajax.html MoinMoin/themes/basic/templates/usersettings_forms.html
diffstat 18 files changed, 43 insertions(+), 564 deletions(-) [+]
line wrap: on
line diff
--- a/MoinMoin/forms.py	Thu Feb 12 10:38:36 2015 -0700
+++ b/MoinMoin/forms.py	Thu Feb 12 10:40:20 2015 -0700
@@ -241,7 +241,8 @@
         subscriptions = []
         for child in self:
             if child.u.startswith(ITEMID):
-                value = re.sub(r"\(.*\)", "", child.u)
+                # itemid:67155f195938426d82502540493e8acf (creole)
+                value = child.u.split(" ", 1)[0]
                 item = flaskg.storage.document(**{ITEMID: value.split(":")[1]})
                 try:
                     name_ = item.meta['name'][0]
@@ -249,6 +250,7 @@
                     name_ = "This item doesn't exist"
                 value = u"{0} ({1})".format(value, name_)
             else:
+                # name::ExampleItem | tags::demo | nameprefix::jp | namere::.* | name:MyNamespace:ExampleItem
                 value = child.u
             subscriptions.append(value)
         return self.separator.join(subscriptions)
--- a/MoinMoin/static/css/common.css	Thu Feb 12 10:38:36 2015 -0700
+++ b/MoinMoin/static/css/common.css	Thu Feb 12 10:40:20 2015 -0700
@@ -341,3 +341,28 @@
 .upload-form { display: none; }
 .moin-drag { font-size: .7em; color: #737373; }
 .file_name { word-break:  break-all; word-wrap:  break-word; max-width:  10em; }
+
+/* Forms - User Settings, rename, delete, destroy, register, diff... */
+
+.moin-tabs .moin-tab-titles a{ color: #00008b; }
+.moin-tab-titles{ margin: 0; padding: -10px 0 0; list-style: none; border-bottom: 3px solid #4e7da9; }
+.moin-tab-titles li { display: inline-block; *display: inline; zoom: 1; margin: 10px 0 -3px; padding: 0 5px; border-bottom: 3px solid #4e7da9; }
+.moin-tab-titles a { display: inline-block; padding: 4px; background-color: #eef1f6; border-width: 1px 1px 0; border-style: solid; border-color: #4e7da9; color: #00008b; border-top-left-radius: 7px; border-top-right-radius: 7px; }
+.moin-tab-titles a: hover { background-color: #d8dfe9; text-decoration: none; }
+.moin-tab-titles a.moin-current-tab { background: #d8dfe9; padding-top: 8px; margin-top: -4px; }
+.moin-tab-titles .moin-change-indicator { font-weight: bold; color: #1f9ae0; }
+.moin-current-form h2 { display: none; }
+.moin-settings-head a { color: #000; text-decoration: none; }
+
+.moin-form dd { float: left; width: 70%; margin: .3em 0 .1em 0; }
+.moin-form dd input { width: 75%; }
+.moin-form dt { clear: both; float: left; width: 25%; text-align: right; margin-top: .3em; padding-right: 1%; }
+.moin-form dt label.required: after { content: '*'; color: #000; }
+.moin-form button,
+.moin-form input[type="submit"] { clear: both; display: block; margin: auto; }
+.moin-form dl  { margin-bottom: 2em; }
+.moin-float-fix { clear: both; padding-top: .75em; }
+
+#options dd { width: 10%; }
+#options dt { width: 60%; max-width: 40em; }
+#subscriptions textarea { width: 80%; max-width: 40em; }
--- a/MoinMoin/static/js/basic.js	Thu Feb 12 10:38:36 2015 -0700
+++ b/MoinMoin/static/js/basic.js	Thu Feb 12 10:40:20 2015 -0700
@@ -5,7 +5,6 @@
     // this depends on the id's used for different tab-panes in modify.html and usersettings.html (Basic Theme)
     "use strict";
     $('#meta, #help').removeClass('active');
-    $('#password, #notification, #personal, #navigation, #options, #acl, #subscriptions').removeClass('active');
     $('textarea').autosize();
     $('div.dropup').removeClass('menu');
     $('ul.dropdown-menu').removeClass('submenu');
--- a/MoinMoin/templates/destroy.html	Thu Feb 12 10:38:36 2015 -0700
+++ b/MoinMoin/templates/destroy.html	Thu Feb 12 10:40:20 2015 -0700
@@ -17,7 +17,7 @@
             {{ gen.form.close() }}
         </div>
     {% else %}
-        <h1>{{ _("DESTROY REVISION '%(item_name)s' (rev %(rev_id)s)", item_name=item.name, rev_id=rev_id | shorten_id) }}</h1>
+        <h1>{{ _("DESTROY REVISION '%(item_name)s' (rev %(rev_id)s)", item_name=fqname.value, rev_id=rev_id | shorten_id) }}</h1>
         <div class="moin-form">
             {{ gen.form.open(form, method="post", action=url_for('frontend.destroy_item', item_name=fqname.fullname, rev=rev_id)) }}
                 {{ forms.render_errors(form) }}
--- a/MoinMoin/templates/diff.html	Thu Feb 12 10:38:36 2015 -0700
+++ b/MoinMoin/templates/diff.html	Thu Feb 12 10:40:20 2015 -0700
@@ -2,7 +2,6 @@
 {% block content %}
     {% block headline %}
         <h1>{{ _("Diff for '%(item_name)s'", item_name=newrev.item.name) }}</h1>
-        <br>
     {% endblock %}
     {{ diff_html }}
 {% endblock %}
--- a/MoinMoin/templates/forms.html	Thu Feb 12 10:38:36 2015 -0700
+++ b/MoinMoin/templates/forms.html	Thu Feb 12 10:40:20 2015 -0700
@@ -15,12 +15,13 @@
   {% endif %}
 {% endmacro %}
 
-{% macro render_hidden(name, value) %}
-  <input type="hidden" name="{{ name }}" value="{{ value }}" />
-{% endmacro %}
-
-{% macro render_submit(form) %}
-  {{ gen.input(type='submit', value=form.submit_label, class='moin-button', **kwargs) }}
+{% macro render_submit(form, name=None, value=None) %}
+    <div class="moin-float-fix"> {# needed to add vertical whitespace below floated element #}
+        {% if name and value %}
+            <input type="hidden" name="{{ name }}" value="{{ value }}" />
+        {% endif %}
+        {{ gen.input(type='submit', value=form.submit_label, class='moin-button', **kwargs) }}
+    </div>
 {% endmacro %}
 
 {% macro render_textcha(gen, form) %}
--- a/MoinMoin/templates/usersettings_forms.html	Thu Feb 12 10:38:36 2015 -0700
+++ b/MoinMoin/templates/usersettings_forms.html	Thu Feb 12 10:40:20 2015 -0700
@@ -10,12 +10,10 @@
             {{ forms.render(form['timezone']) }}
             {{ forms.render(form['locale']) }}
         </dl>
-        {{ forms.render_hidden('part', 'personal') }}
-        {{ forms.render_submit(form) }}
+        {{ forms.render_submit(form, 'part', 'personal') }}
     {{ gen.form.close() }}
 {% endmacro %}
 
-
 {% macro password(form) %}
     {{ gen.form.open(form, method="post", action=url_for('frontend.usersettings')) }}
         {{ forms.render_errors(form) }}
@@ -24,8 +22,7 @@
             {{ forms.render(form['password1']) }}
             {{ forms.render(form['password2']) }}
         </dl>
-        {{ forms.render_hidden('part', 'password') }}
-        {{ forms.render_submit(form) }}
+        {{ forms.render_submit(form, 'part', 'password') }}
     {{ gen.form.close() }}
 {% endmacro %}
 
@@ -38,8 +35,7 @@
         <dl>
             {{ forms.render(form['email']) }}
         </dl>
-        {{ forms.render_hidden('part', 'notification') }}
-        {{ forms.render_submit(form) }}
+        {{ forms.render_submit(form, 'part', 'notification') }}
     {{ gen.form.close() }}
 {% endmacro %}
 
@@ -52,8 +48,7 @@
             {{ forms.render(form['edit_rows']) }}
             {{ forms.render(form['results_per_page']) }}
         </dl>
-        {{ forms.render_hidden('part', 'ui') }}
-        {{ forms.render_submit(form) }}
+        {{ forms.render_submit(form, 'part', 'ui') }}
     {{ gen.form.close() }}
 {% endmacro %}
 
@@ -63,8 +58,7 @@
         <dl>
             {# TODO: find a good way to handle quicklinks #}
         </dl>
-        {{ forms.render_hidden('part', 'navigation') }}
-        {{ forms.render_submit(form) }}
+        {{ forms.render_submit(form, 'part', 'navigation') }}
     {{ gen.form.close() }}
 {% endmacro %}
 
@@ -78,8 +72,7 @@
             {{ forms.render(form['show_comments']) }}
             {{ forms.render(form['disabled']) }}
         </dl>
-        {{ forms.render_hidden('part', 'options') }}
-        {{ forms.render_submit(form) }}
+        {{ forms.render_submit(form, 'part', 'options') }}
     {{ gen.form.close() }}
 {% endmacro %}
 
@@ -89,8 +82,7 @@
         <dl>
             {{ forms.render(form['subscriptions']) }}
         </dl>
-        {{ forms.render_hidden('part', 'subscriptions') }}
-        {{ forms.render_submit(form) }}
+        {{ forms.render_submit(form, 'part', 'subscriptions') }}
     {{ gen.form.close() }}
 {% endmacro %}
 
--- a/MoinMoin/themes/basic/templates/delete.html	Thu Feb 12 10:38:36 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,24 +0,0 @@
-{% import "forms.html" as forms %}
-{% extends theme("show.html") %}
-
-{% set title = _("Delete '%(item_name)s'", item_name=item.name) %}
-
-{% block content %}
-    <h2>{{ title }}</h2>
-    <div class="row">
-        <div class="col-md-5">
-            {{ gen.form.open(form, method="post", action=url_for('frontend.delete_item', item_name=item.name)) }}
-                {{ forms.render_errors(form) }}
-
-                <div class="form-group">
-                    {{ forms.render_textcha(gen, form) }}
-                    {{ gen.input(form['comment'], type="text", class="form-control") }}
-                </div>
-
-                <div class="form-group">
-                    {{ forms.render_submit(form, class='btn btn-primary') }}
-                </div>
-            {{ gen.form.close() }}
-        </div>
-    </div>
-{% endblock %}
--- a/MoinMoin/themes/basic/templates/destroy.html	Thu Feb 12 10:38:36 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,46 +0,0 @@
-{% import "forms.html" as forms %}
-{% extends theme("show.html") %}
-
-{% set title = _("DESTROY COMPLETE ITEM '%(item_name)s'", item_name=item.name) %}
-
-{% block content %}
-    {% if rev_id == None %}
-        <h2>{{ title }}</h2>
-        <div class="row">
-            <div class="col-md-5">
-
-                {{ gen.form.open(form, method="post", action=url_for('frontend.destroy_item', item_name=item.name)) }}
-                    {{ forms.render_errors(form) }}
-
-                    <div class="form-group">
-                        {{ forms.render_textcha(gen, form) }}
-                        {{ gen.input(form['comment'], type="text", class="form-control") }}
-                    </div>
-
-                    <div class="form-group">
-                        {{ forms.render_submit(form, class='btn btn-primary') }}
-                    </div>
-                {{ gen.form.close() }}
-            </div>
-        </div>
-    {% else %}
-        <h2>{{ _("DESTROY REVISION '%(item_name)s' (rev %(rev_id)s)", item_name=item.name, rev_id=rev_id | shorten_id) }}</h2>
-        <div class="row">
-            <div class="col-md-5">
-                {{ gen.form.open(form, method="post", action=url_for('frontend.destroy_item', item_name=item.name, rev=rev_id)) }}
-                    {{ forms.render_errors(form) }}
-
-                    <div class="form-group">
-                        {{ gen.label(form['comment']) }}
-                        {{ gen.textarea(form['comment'], rows='1', class='form-control') }}
-                    </div>
-                    {{ forms.render_textcha(gen, form) }}
-
-                    <div class="form-group">
-                        {{ forms.render_submit(form, class='btn btn-primary') }}
-                    </div>
-                {{ gen.form.close() }}
-            </div>
-        </div>
-    {% endif %}
-{% endblock %}
--- a/MoinMoin/themes/basic/templates/diff.html	Thu Feb 12 10:38:36 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,16 +0,0 @@
-{% extends theme("layout.html") %}
-{% import theme("itemviews.html") as itemviews with context %}
-
-{% block views %}
-    {{ itemviews }}
-{% endblock %}
-
-{% block content %}
-    {% block headline %}
-        <i class="fa fa-chevron-left">
-            <a href="{{ url_for('frontend.history', item_name=item_name) }}"> {{ _("Back") }} </a>
-        </i>
-        <h2>{{ _("Diff for '%(item_name)s'", item_name=newrev.item.name) }}</h2>
-    {% endblock %}
-    {{ diff_html }}
-{% endblock %}
--- a/MoinMoin/themes/basic/templates/diff_text.html	Thu Feb 12 10:38:36 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,47 +0,0 @@
-{% import "utils.html" as utils %}
-
-{% macro show_meta(rev) %}
-    <div class="moin-diff-info moin-diff-info-rev-id">
-        <span class="moin-diff-info-caption">Revision:</span>
-        <span class="moin-diff-info-value">{{ rev.meta['revid'] | shorten_id }}</span>
-    </div>
-    <div class="moin-diff-info moin-diff-info-rev-author">
-        <span class="moin-diff-info-caption">Editor:</span>
-        <span class="moin-diff-info-value">
-            {{ utils.editor_info(rev.meta) }}
-        </span>
-    </div>
-    <div class="moin-diff-info moin-diff-info-rev-size">
-        <span class="moin-diff-info-caption">Size:</span>
-        <span class="moin-diff-info-value">{{ rev.meta['size'] }}</span>
-    </div>
-    <div class="moin-diff-info moin-diff-info-rev-comment">
-        <span class="moin-diff-info-caption">Comment:</span>
-        <span class="moin-diff-info-value">{{ rev.meta['comment'] }}</span>
-    </div>
-{% endmacro %}
-
-<table class="table table-condensed">
-    <tr>
-        <td class="moin-diff-header">
-            {{ show_meta(oldrev) }}
-        </td>
-        <td class="moin-diff-header">
-            {{ show_meta(newrev) }}
-        </td>
-    </tr>
-    <tr>
-        <td class="moin-diff-removed"><span>{{ _('Deletions are marked like this.') }}</span></td>
-        <td class="moin-diff-added"><span>{{ _('Additions are marked like this.') }}</span></td>
-    </tr>
-    {% for llineno, lcontent, rlineno, rcontent in diffs %}
-        <tr class="moin-diff-line-number">
-            <td><a href="#{{ llineno }}">{{ _('Line') }} {{ llineno }}:</a></td>
-            <td><a href="#{{ rlineno }}">{{ _('Line') }} {{ rlineno }}:</a></td>
-        </tr>
-        <tr>
-            <td class="moin-diff-removed">{{ lcontent }}</td>
-            <td class="moin-diff-added">{{ rcontent }}</td>
-        </tr>
-    {% endfor %}
-</table>
--- a/MoinMoin/themes/basic/templates/register.html	Thu Feb 12 10:38:36 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,41 +0,0 @@
-{% extends theme("layout.html") %}
-{% import "forms.html" as forms %}
-
-{% block content %}
-    <h2>{{ _('Create Account') }}</h2>
-    <div class="row">
-        <div class="col-md-4">
-
-            {{ gen.form.open(form, method="post", action=url_for('frontend.register')) }}
-
-                {% if form.errors %}
-                    <div class="moin-flash moin-flash-error">
-                        {% for error in form.errors %}
-                            {{ error }}
-                            <button type="button" class="close" data-dismiss="alert" aria-hidden="true">&times;</button>
-                        {% endfor %}
-                    </div>
-                {% endif %}
-
-                {% for field, fieldtype in [
-                        ('username', 'text'),
-                        ('password1', 'password'),
-                        ('password2', 'password'),
-                        ('email', 'text'),
-                        ('openid', 'text'),
-                        ] %}
-                    <div class="form-group">
-                        {{ gen.label(form[field]) }}
-                        {{ gen.input(form[field], type=fieldtype, class="form-control") }}
-                    </div>
-                {% endfor %}
-                {{ forms.render_textcha(gen, form) }}
-
-                <div class="form-group">
-                    {{ forms.render_submit(form, class='btn btn-primary') }}
-                </div>
-
-            {{ gen.form.close() }}
-        </div>
-    </div>
-{% endblock %}
--- a/MoinMoin/themes/basic/templates/rename.html	Thu Feb 12 10:38:36 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,28 +0,0 @@
-{% import "forms.html" as forms %}
-{% extends theme("show.html") %}
-
-{% set title = _("Rename '%(item_name)s'", item_name=item.name) %}
-
-{% block content %}
-    <h2>{{ title }}</h2>
-    <div class="row">
-        <div class="col-md-5">
-            {{ gen.form.open(form, method="post", action=url_for('frontend.rename_item', item_name=item.name)) }}
-                {{ forms.render_errors(form) }}
-                <div class="form-group">
-                    {{ gen.label(form['target']) }}
-                    {{ gen.input(form['target'], type="text", class="form-control") }}
-                </div>
-
-                <div class="form-group">
-                    {{ forms.render_textcha(gen, form) }}
-                    {{ gen.input(form['comment'], type="text", class="form-control") }}
-                </div>
-
-                <div class="form-group">
-                    {{ forms.render_submit(form, class='btn btn-primary') }}
-                </div>
-            {{ gen.form.close() }}
-        </div>
-    </div>
-{% endblock %}
--- a/MoinMoin/themes/basic/templates/usersettings.html	Thu Feb 12 10:38:36 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,16 +0,0 @@
-{% extends theme("layout.html") %}
-{% import theme("usersettings_forms.html") as user_forms %}
-
-{% block content %}
-    <h1>{{ _("User Settings") }}</h1>
-    <ul class="moin-nav nav-tabs moin-shadow">
-        <li class="active"><a href="#ui" data-toggle="tab">{{ _("Appearance") }}</a></li>
-        <li><a href="#password" data-toggle="tab">{{ _("Change Password") }}</a></li>
-        <li><a href="#navigation" data-toggle="tab">{{ _("Navigation") }}</a></li>
-        <li><a href="#notification" data-toggle="tab">{{ _("Notifications") }}</a></li>
-        <li><a href="#options" data-toggle="tab">{{ _("Options") }}</a></li>
-        <li><a href="#personal" data-toggle="tab">{{ _("Personal") }}</a></li>
-        <li><a href="#subscriptions" data-toggle="tab">{{ _("Subscriptions") }}</a></li>
-    </ul>
-    {{ user_forms.all_usersettings_forms(form_objs) }}
-{% endblock %}
--- a/MoinMoin/themes/basic/templates/usersettings_ajax.html	Thu Feb 12 10:38:36 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,17 +0,0 @@
-{% import theme("usersettings_forms.html") as user_forms %}
-
-{% if part == 'personal' %}
-    {{ user_forms.personal(form) }}
-{% elif part == 'password' %}
-    {{ user_forms.password(form) }}
-{% elif part == 'notification' %}
-    {{ user_forms.notification(form) }}
-{% elif part == 'ui' %}
-    {{ user_forms.ui(form) }}
-{% elif part == 'navigation' %}
-    {{ user_forms.navigation(form) }}
-{% elif part == 'options' %}
-    {{ user_forms.options(form) }}
-{% elif part == 'subscriptions' %}
-    {{ user_forms.subscriptions(form) }}
-{% endif %}
--- a/MoinMoin/themes/basic/templates/usersettings_forms.html	Thu Feb 12 10:38:36 2015 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,202 +0,0 @@
-{% import "forms.html" as forms %}
-
-{% macro personal(form) %}
-    {{ gen.form.open(form, method="post", action=url_for('frontend.usersettings'), role="form") }}
-        {{ forms.render_errors(form) }}
-            {% for e in [
-                    'name',
-                    'display_name',
-                    'openid',
-                    ] %}
-                <div class="form-group">
-                    {{ gen.label(form[e]) }}
-                    {{ gen.input(form[e], type="text", class="form-control") }}
-                </div>
-            {% endfor %}
-
-            {% for e in [
-                    'timezone',
-                    'locale',
-                    ] %}
-                <div class="form-group">
-                    <dl>
-                        <dt>
-                            {{ gen.label(form[e]) }}
-                        </dt>
-                        <dd>
-                            {{ gen.select.open(form[e], class="btn") }}
-                                {% for value, label in form[e].properties['choice_specs'] %}
-                                    {{ gen.option(form[e], value=value, contents=label or value) }}
-                                {% endfor %}
-                            {{ gen.select.close() }}
-                        </dd>
-                    </dl>
-                </div>
-            {% endfor %}
-        {{ forms.render_hidden('part', 'personal') }}
-        <div class="form-group">
-            {{ forms.render_submit(form, class='btn btn-primary') }}
-        </div>
-    {{ gen.form.close() }}
-{% endmacro %}
-
-
-{% macro password(form) %}
-    {{ gen.form.open(form, method="post", action=url_for('frontend.usersettings')) }}
-        {{ forms.render_errors(form) }}
-            {% for e in [
-                    'password_current',
-                    'password1',
-                    'password2',
-                    ] %}
-                <div class="form-group">
-                    {{ gen.label(form[e]) }}
-                    {{ gen.input(form[e], type="password", class="form-control") }}
-                </div>
-            {% endfor %}
-        {{ forms.render_hidden('part', 'password') }}
-        <div class="form-group">
-            {{ forms.render_submit(form, class='btn btn-primary') }}
-        </div>
-    {{ gen.form.close() }}
-{% endmacro %}
-
-{% macro notification(form) %}
-    {{ gen.form.open(form, method="post", action=url_for('frontend.usersettings')) }}
-        {% if cfg.user_email_verification %}
-            <p>{{ _("Changing your email address requires you to verify it. A link will be sent to you.") }}</p>
-        {% endif %}
-        {{ forms.render_errors(form) }}
-        <div class="form-group">
-            {{ gen.label(form['email']) }}
-            <div class="input-group">
-                {{ gen.input(form['email'], type="email", class="form-control") }}
-                <span class="input-group-addon"><i class="fa fa-envelope"></i></span>
-            </div>
-        </div>
-        {{ forms.render_hidden('part', 'notification') }}
-        <div class="form-group">
-            {{ forms.render_submit(form, class='btn btn-primary') }}
-        </div>
-    {{ gen.form.close() }}
-{% endmacro %}
-
-{% macro ui(form) %}
-    {{ gen.form.open(form, method="post", action=url_for('frontend.usersettings')) }}
-        {{ forms.render_errors(form) }}
-            <div class="form-group">
-                <dl>
-                    <dt>
-                        {{ gen.label(form['theme_name']) }}
-                    </dt>
-                    <dd>
-                        {{ gen.select.open(form['theme_name'], class="btn") }}
-                            {% for value, label in form['theme_name'].properties['choice_specs'] %}
-                                {{ gen.option(form['theme_name'], value=value, contents=label or value) }}
-                            {% endfor %}
-                        {{ gen.select.close() }}
-                    </dd>
-                </dl>
-            </div>
-            {% for e in [
-                    'css_url',
-                    'edit_rows',
-                    'results_per_page'
-                    ] %}
-                <div class="form-group">
-                    {{ gen.label(form[e]) }}
-                    {{ gen.input(form[e], type="text", class="form-control") }}
-                </div>
-            {% endfor %}
-        {{ forms.render_hidden('part', 'ui') }}
-        <div class="form-group">
-            {{ forms.render_submit(form, class='btn btn-primary') }}
-        </div>
-    {{ gen.form.close() }}
-{% endmacro %}
-
-{% macro navigation(form) %}
-    {{ gen.form.open(form, method="post", action=url_for('frontend.usersettings')) }}
-        {{ forms.render_errors(form) }}
-        <dl>
-            {# TODO: find a good way to handle quicklinks #}
-        </dl>
-        {{ forms.render_hidden('part', 'navigation') }}
-        <div class="form-group">
-            {{ forms.render_submit(form, class='btn btn-primary') }}
-        </div>
-    {{ gen.form.close() }}
-{% endmacro %}
-
-{% macro options(form) %}
-    {{ gen.form.open(form, method="post", action=url_for('frontend.usersettings')) }}
-        {{ forms.render_errors(form) }}
-            {% for e in [
-                    'mailto_author',
-                    'edit_on_doubleclick',
-                    'scroll_page_after_edit',
-                    'show_comments',
-                    'disabled'
-                    ] %}
-                <div class="checkbox">
-                    <label>
-                        {{ gen.input(form[e], type="checkbox") }}
-                        {{ form[e].label }}
-                    </label>
-                </div>
-            {% endfor %}
-        {{ forms.render_hidden('part', 'options') }}
-        <div class="form-group">
-            {{ forms.render_submit(form, class='btn btn-primary') }}
-        </div>
-    {{ gen.form.close() }}
-{% endmacro %}
-
-{% macro subscriptions(form) %}
-    {{ gen.form.open(form, method="post", action=url_for('frontend.usersettings')) }}
-        {{ forms.render_errors(form) }}
-        <div class="form-group">
-            {{ gen.label(form['subscriptions']) }}
-            <div class="input-group">
-                {{ gen.textarea(form['subscriptions'], cols="60", rows="10", class="form-control") }}
-            </div>
-        </div>
-        {{ forms.render_hidden('part', 'subscriptions') }}
-        <div class="form-group">
-            {{ forms.render_submit(form, class='btn btn-primary') }}
-        </div>
-    {{ gen.form.close() }}
-{% endmacro %}
-
-{# javascript functions within basic.js are dependent upon the structure, classes and ids defined here #}
-{% macro all_usersettings_forms(form_objs) %}
-    <div id="moin-usersettings">
-        <div class="row">
-            <div class="col-md-4">
-                <div class="tab-content">
-                    <div id="ui" class="tab-pane active">
-                        {{ ui(form_objs.ui) }}
-                    </div>
-                    <div id="password" class="tab-pane active">
-                        {{ password(form_objs.password) }}
-                    </div>
-                    <div id="navigation" class="tab-pane active">
-                        {{ navigation(form_objs.navigation) }}
-                    </div>
-                    <div id="notification" class="tab-pane active">
-                        {{ notification(form_objs.notification) }}
-                    </div>
-                    <div id="options" class="tab-pane active">
-                        {{ options(form_objs.options) }}
-                    </div>
-                    <div id="personal" class="tab-pane active">
-                        {{ personal(form_objs.personal) }}
-                    </div>
-                    <div id="subscriptions" class="tab-pane active">
-                        {{ subscriptions(form_objs.subscriptions) }}
-                    </div>
-                </div>
-            </div>
-        </div>
-    </div>
-{% endmacro %}
--- a/MoinMoin/themes/modernized/static/css/stylus/theme.styl	Thu Feb 12 10:38:36 2015 -0700
+++ b/MoinMoin/themes/modernized/static/css/stylus/theme.styl	Thu Feb 12 10:40:20 2015 -0700
@@ -152,31 +152,6 @@
     border-color border_color
     border-width 2px
 
-.moin-form
-    dd
-        float left
-        width 70%
-        margin-bottom 1em
-        margin-left 0
-        input
-            width 75%
-    dt
-        clear both
-        float left
-        width 25%
-        text-align right
-        margin-top .3em
-        padding-right 1%
-        label
-            &.required:after
-                content '*'
-                color font_color
-    button,
-    input[type="submit"]
-        clear both
-        display block
-        margin auto
-
 form[name="delete_item"], form[name="rename_item"], form[name="destroy_item"]
     dd
         input
@@ -201,67 +176,6 @@
 .moin-textcha
     padding-top .2em
 
-#options
-    dd
-        float none
-        width 38%
-        display table-cell
-        padding 1.2em
-    dt
-        margin-left 10%
-        text-align left
-        width 61%
-        margin-top 1.3em
-
-.moin-tabs .moin-tab-titles
-    a
-        color link_color
-
-.moin-tab-titles
-    margin 0
-    padding -10px 0 0
-    list-style none
-    border-bottom 3px solid border_color
-
-.moin-tab-titles li
-    display inline-block
-    *display: inline; // IE7 hack to display title tabs in a row ...
-    zoom: 1; // IE7 hack ... rather than a column
-    margin 10px 0 -3px
-    padding 0 5px
-    border-bottom 3px solid border_color
-
-.moin-tab-titles a
-    display inline-block
-    padding 4px
-    background-color table_bg_color
-    border-width 1px 1px 0
-    border-style solid
-    border-color border_color
-    color link_color
-    border-top-left-radius 7px
-    border-top-right-radius 7px
-
-.moin-tab-titles a:hover
-    background-color table_row_color
-    text-decoration none
-
-.moin-tab-titles a.moin-current-tab
-    background table_row_color
-    padding-top 8px
-    margin-top -4px
-
-.moin-tab-titles .moin-change-indicator
-    font-weight bold
-    color hover_color
-
-.moin-current-form h2
-    display none // bold tab at top of user setting page makes h2 redundant
-
-.moin-settings-head a
-    color font_color
-    text-decoration none
-
 .searchresults dt
     margin-top 1em
     font-weight normal
--- a/MoinMoin/themes/modernized/static/css/theme.css	Thu Feb 12 10:38:36 2015 -0700
+++ b/MoinMoin/themes/modernized/static/css/theme.css	Thu Feb 12 10:40:20 2015 -0700
@@ -319,11 +319,6 @@
 input,select{padding:3px;background:#fff;border:1px solid #4e7da9;border-radius:2px}
 input[type="text"]{width:96%}
 input.blank{border-color:#4e7da9;border-width:2px}
-.moin-form dd{float:left;width:70%;margin-bottom:1em;margin-left:0;}
-.moin-form dd input{width:75%}
-.moin-form dt{clear:both;float:left;width:25%;text-align:right;margin-top:.3em;padding-right:1%;}
-.moin-form dt label.required:after{content:'*';color:#000}
-.moin-form button,.moin-form input[type="submit"]{clear:both;display:block;margin:auto}
 form[name="delete_item"] dd input,form[name="rename_item"] dd input,form[name="destroy_item"] dd input{width:100%}
 form[name="delete_item"] dt,form[name="rename_item"] dt,form[name="destroy_item"] dt{width:20%}
 #moin-modify dd{width:100%;float:none;}
@@ -332,17 +327,6 @@
 #moin-modify textarea{width:99.5%}
 #moin-modify input[type="submit"]{margin-left:0}
 .moin-textcha{padding-top:.2em}
-#options dd{float:none;width:38%;display:table-cell;padding:1.2em}
-#options dt{margin-left:10%;text-align:left;width:61%;margin-top:1.3em}
-.moin-tabs .moin-tab-titles a{color:#00008b}
-.moin-tab-titles{margin:0;padding:-10px 0 0;list-style:none;border-bottom:3px solid #4e7da9}
-.moin-tab-titles li{display:inline-block;*display:inline;zoom:1;margin:10px 0 -3px;padding:0 5px;border-bottom:3px solid #4e7da9}
-.moin-tab-titles a{display:inline-block;padding:4px;background-color:#eef1f6;border-width:1px 1px 0;border-style:solid;border-color:#4e7da9;color:#00008b;border-top-left-radius:7px;border-top-right-radius:7px}
-.moin-tab-titles a:hover{background-color:#d8dfe9;text-decoration:none}
-.moin-tab-titles a.moin-current-tab{background:#d8dfe9;padding-top:8px;margin-top:-4px}
-.moin-tab-titles .moin-change-indicator{font-weight:bold;color:#1f9ae0}
-.moin-current-form h2{display:none}
-.moin-settings-head a{color:#000;text-decoration:none}
 .searchresults dt{margin-top:1em;font-weight:normal}
 .searchresults dd,.searchresults p{font-size:.85em}
 .searchresults td{border-width:0}