[RFC PATCH 01/19] templates: Use standard indentation

Stephen Finucane stephen at that.guru
Thu Aug 12 07:36:47 AEST 2021


Use a standard two space indentation across files, rewrapping some stuff
as we go along.

Signed-off-by: Stephen Finucane <stephen at that.guru>
---
 patchwork/templates/patchwork/about.html      |   6 +-
 patchwork/templates/patchwork/bundle.html     |  37 +-
 patchwork/templates/patchwork/bundles.html    |  84 +--
 .../templates/patchwork/confirm-error.html    |  12 +-
 patchwork/templates/patchwork/list.html       |  12 +-
 patchwork/templates/patchwork/login.html      |  40 +-
 .../templates/patchwork/mail-settings.html    |  47 +-
 patchwork/templates/patchwork/mail.html       |  45 +-
 .../templates/patchwork/optin-request.html    |  50 +-
 patchwork/templates/patchwork/optin.html      |  21 +-
 .../templates/patchwork/optout-request.html   |  52 +-
 patchwork/templates/patchwork/optout.html     |  28 +-
 .../patchwork/partials/download-buttons.html  |  34 +-
 .../templates/patchwork/partials/filters.html |  83 +--
 .../patchwork/partials/pagination.html        |  42 +-
 .../patchwork/partials/patch-list.html        | 479 +++++++++---------
 patchwork/templates/patchwork/profile.html    | 271 +++++-----
 patchwork/templates/patchwork/project.html    |  98 ++--
 patchwork/templates/patchwork/projects.html   |  16 +-
 .../patchwork/registration-confirm.html       |   9 +-
 .../templates/patchwork/registration.html     | 160 +++---
 patchwork/templates/patchwork/submission.html | 445 ++++++++--------
 patchwork/templates/patchwork/todo-list.html  |   8 +-
 patchwork/templates/patchwork/todo-lists.html |  31 +-
 .../patchwork/user-link-confirm.html          |  11 +-
 patchwork/templates/patchwork/user-link.html  |  36 +-
 templates/404.html                            |   2 -
 templates/base.html                           | 224 ++++----
 .../registration/password_change_done.html    |   2 -
 .../registration/password_change_form.html    |  52 +-
 .../registration/password_reset_complete.html |   3 +-
 .../registration/password_reset_confirm.html  |  62 ++-
 .../registration/password_reset_done.html     |  14 +-
 .../registration/password_reset_email.html    |   2 +-
 .../registration/password_reset_form.html     |  52 +-
 35 files changed, 1290 insertions(+), 1280 deletions(-)

diff --git patchwork/templates/patchwork/about.html patchwork/templates/patchwork/about.html
index 210e9513..43f3110b 100644
--- patchwork/templates/patchwork/about.html
+++ patchwork/templates/patchwork/about.html
@@ -48,8 +48,7 @@
     <ul class="list-group">
       <li class="list-group-item">
         REST
-        <span class="glyphicon glyphicon-question-sign" title="The REST
-          API"></span>
+        <span class="glyphicon glyphicon-question-sign" title="The REST API"></span>
         {% if enabled_apis.rest %}
         <span class="label label-success pull-right">enabled</span>
         {% else %}
@@ -58,8 +57,7 @@
       </li>
       <li class="list-group-item">
         XML-RPC
-        <span class="glyphicon glyphicon-question-sign" title="The XML-RPC
-          API"></span>
+        <span class="glyphicon glyphicon-question-sign" title="The XML-RPC API"></span>
         {% if enabled_apis.xmlrpc %}
         <span class="label label-success pull-right">enabled</span>
         {% else %}
diff --git patchwork/templates/patchwork/bundle.html patchwork/templates/patchwork/bundle.html
index 411c18b5..fc87eac4 100644
--- patchwork/templates/patchwork/bundle.html
+++ patchwork/templates/patchwork/bundle.html
@@ -4,37 +4,34 @@
 {% load static %}
 
 {% block headers %}
-  <script src="{% static "js/jquery.tablednd.js" %}"></script>
-  <script src="{% static "js/bundle.js" %}"></script>
+    <script src="{% static "js/jquery.tablednd.js" %}"></script>
+    <script src="{% static "js/bundle.js" %}"></script>
 {% endblock %}
-{% block title %}{{project.name}}{% endblock %}
+{% block title %}{{ project.name }}{% endblock %}
 
 {% block body %}
 <h1>Bundle</h1>
 
-<p>This bundle contains patches for the {{ bundle.project.linkname }}
-project.</p>
+<p>This bundle contains patches for the {{ bundle.project.linkname }} project.</p>
 
 <p><a href="{% url 'bundle-mbox' username=bundle.owner.username bundlename=bundle.name %}">Download bundle as mbox</a></p>
 
 {% if bundleform %}
 <form method="post">
- {% csrf_token %}
- <input type="hidden" name="form" value="bundle"/>
-<table class="form">
-
- <tr>
-  <th colspan="2" class="headerrow">Bundle settings</th>
- </tr>
-
+  {% csrf_token %}
+  <input type="hidden" name="form" value="bundle"/>
+  <table class="form">
+    <tr>
+      <th colspan="2" class="headerrow">Bundle settings</th>
+    </tr>
 {{ bundleform }}
- <tr>
-  <td colspan="2" class="submitrow">
-   <input type="submit" name="action" value="Update"/>
-   <input type="submit" name="action" value="Delete"/>
-  </td>
- </tr>
-</table>
+    <tr>
+      <td colspan="2" class="submitrow">
+        <input type="submit" name="action" value="Update"/>
+        <input type="submit" name="action" value="Delete"/>
+      </td>
+    </tr>
+  </table>
 </form>
 
 <div style="clear: both; padding: 1em;"></div>
diff --git patchwork/templates/patchwork/bundles.html patchwork/templates/patchwork/bundles.html
index 1bb3b0da..cc2ebf90 100644
--- patchwork/templates/patchwork/bundles.html
+++ patchwork/templates/patchwork/bundles.html
@@ -10,53 +10,55 @@
 
 {% if bundles %}
 <table class="bundlelist">
- <tr>
-  <th>Bundle</th>
-  <th>Project</th>
-  <th>Public</th>
-  <th>Patches</th>
-  <th>Download</th>
-  <th>Delete</th>
- </tr>
+  <tr>
+    <th>Bundle</th>
+    <th>Project</th>
+    <th>Public</th>
+    <th>Patches</th>
+    <th>Download</th>
+    <th>Delete</th>
+  </tr>
 {% for bundle in bundles %}
- <tr>
-  <td><a href="{{ bundle.get_absolute_url }}">{{ bundle.name }}</a></td>
-  <td>
-   <a href="{% url 'project-detail' project_id=bundle.project.linkname %}">
-    {{ bundle.project.linkname }}
-   </a>
-  </td>
-  <td style="text-align: center;">
-   {% if bundle.public %}
-    <span class="glyphicon glyphicon-ok"></span>
-   {% else %}
-    <span class="glyphicon glyphicon-remove"></span>
-   {% endif %}
-  </td>
-  <td style="text-align: right">{{ bundle.patches.count }}</td>
-  <td style="text-align: center;"><a href="{{ bundle.get_mbox_url }}"
-   ><span class="glyphicon glyphicon-download-alt"></span></a></td>
-  <td style="text-align: center;">
-   <form method="post"
-    onsubmit="return confirm_delete('bundle', '{{bundle.name|escapejs}}');">
-    {% csrf_token %}
-    {{ bundle.delete_form.as_p }}
-    <button type="submit" style="background: transparent; border: 0px; padding: 0; outline: 0;">
-     <span class="glyphicon glyphicon-remove"></span>
-    </button>
-   </form>
-  </td>
+  <tr>
+    <td><a href="{{ bundle.get_absolute_url }}">{{ bundle.name }}</a></td>
+    <td>
+      <a href="{% url 'project-detail' project_id=bundle.project.linkname %}">
+        {{ bundle.project.linkname }}
+      </a>
+    </td>
+    <td style="text-align: center;">
+      {% if bundle.public %}
+        <span class="glyphicon glyphicon-ok"></span>
+      {% else %}
+        <span class="glyphicon glyphicon-remove"></span>
+      {% endif %}
+    </td>
+    <td style="text-align: right">{{ bundle.patches.count }}</td>
+    <td style="text-align: center;"><a href="{{ bundle.get_mbox_url }}"
+      ><span class="glyphicon glyphicon-download-alt"></span></a></td>
+    <td style="text-align: center;">
+      <form method="post"
+        onsubmit="return confirm_delete('bundle', '{{ bundle.name|escapejs }}');">
+        {% csrf_token %}
+        {{ bundle.delete_form.as_p }}
+        <button type="submit" style="background: transparent; border: 0px; padding: 0; outline: 0;">
+          <span class="glyphicon glyphicon-remove"></span>
+        </button>
+      </form>
+    </td>
 
- </tr>
+  </tr>
 {% endfor %}
 </table>
 {% endif %}
 
-<p>Bundles are groups of related patches. You can create bundles by
-selecting patches from a project, then using the 'create bundle' form
-to give your bundle a name. Each bundle can be public or private; public
-bundles are given a persistent URL, based you your username and the name
-of the bundle. Private bundles are only visible to you.</p>
+<p>
+  Bundles are groups of related patches. You can create bundles by
+  selecting patches from a project, then using the 'create bundle' form
+  to give your bundle a name. Each bundle can be public or private; public
+  bundles are given a persistent URL, based you your username and the name
+  of the bundle. Private bundles are only visible to you.
+</p>
 
 {% if not bundles %}
 <p>You have no bundles.</p>
diff --git patchwork/templates/patchwork/confirm-error.html patchwork/templates/patchwork/confirm-error.html
index 81292e27..b1ce42ee 100644
--- patchwork/templates/patchwork/confirm-error.html
+++ patchwork/templates/patchwork/confirm-error.html
@@ -7,13 +7,17 @@
 {% block body %}
 
 {% if error == 'inactive' %}
-<p>This confirmation has already been processed; you've probably visited this
-page before.</p>
+<p>
+  This confirmation has already been processed; you've probably visited this
+  page before.
+</p>
 {% endif %}
 
 {% if error == 'expired' %}
-<p>The confirmation has expired. If you'd still like to perform the
-{{conf.get_type_display}} process, you'll need to resubmit the request.</p>
+<p>
+  The confirmation has expired. If you'd still like to perform the
+  {{ conf.get_type_display }} process, you'll need to resubmit the request.
+</p>
 {% endif %}
 
 {% endblock %}
diff --git patchwork/templates/patchwork/list.html patchwork/templates/patchwork/list.html
index 5d3d82aa..5a9d9702 100644
--- patchwork/templates/patchwork/list.html
+++ patchwork/templates/patchwork/list.html
@@ -3,17 +3,19 @@
 {% load person %}
 {% load static %}
 
-{% block title %}{{project.name}}{% endblock %}
+{% block title %}{{ project.name }}{% endblock %}
 {% block patch_active %}active{% endblock %}
 
 {% block body %}
-
 {% if errors %}
-<p>The following error{{ errors|length|pluralize:" was,s were" }} encountered
-while updating patches:</p>
+<p>
+  The following error{{ errors|length|pluralize:" was,s were" }} encountered
+  while updating patches:
+</p>
+
 <ul class="errorlist">
 {% for error in errors %}
- <li>{{ error }}</li>
+  <li>{{ error }}</li>
 {% endfor %}
 </ul>
 {% endif %}
diff --git patchwork/templates/patchwork/login.html patchwork/templates/patchwork/login.html
index 46f77edf..86111342 100644
--- patchwork/templates/patchwork/login.html
+++ patchwork/templates/patchwork/login.html
@@ -14,26 +14,24 @@
 {% block body %}
 <form method="post">
 {% csrf_token %}
-<table class="form loginform">
- <tr>
-  <th colspan="2" class="headerrow">login</th>
- </tr>
- {% if error %}
-  <tr>
-   <td colspan="2">{{ error }}</td>
-  </tr>
- {% endif %}
- {{ form }}
- <tr>
-  <td class="submitrow">
-   <input type="submit" value="Login"/>
-  </td>
-  <td class="submitrow">
-   <a href="{% url 'password_reset' %}">
-     Forgot password?
-   </a>
-  </td>
- </tr>
-</table>
+  <table class="form loginform">
+    <tr>
+      <th colspan="2" class="headerrow">login</th>
+    </tr>
+{% if error %}
+    <tr>
+      <td colspan="2">{{ error }}</td>
+    </tr>
+{% endif %}
+{{ form }}
+    <tr>
+      <td class="submitrow">
+        <input type="submit" value="Login"/>
+      </td>
+      <td class="submitrow">
+        <a href="{% url 'password_reset' %}">Forgot password?</a>
+      </td>
+    </tr>
+  </table>
 </form>
 {% endblock %}
diff --git patchwork/templates/patchwork/mail-settings.html patchwork/templates/patchwork/mail-settings.html
index e35fa871..58f567ac 100644
--- patchwork/templates/patchwork/mail-settings.html
+++ patchwork/templates/patchwork/mail-settings.html
@@ -4,33 +4,34 @@
 {% block heading %}Mail settings{% endblock %}
 
 {% block body %}
-<p>Settings for <strong>{{email}}</strong>:</p>
+<p>Settings for <strong>{{ email }}</strong>:</p>
 
 <table class="horizontal">
- <tr>
-  <th>Opt-out list</th>
+  <tr>
+    <th>Opt-out list</th>
 {% if is_optout %}
-  <td>Patchwork <strong>may not</strong> send automated notifications to
-   this address.</td>
-  <td>
-   <form method="post" action="{% url 'mail-optin' %}">
-    {% csrf_token %}
-    <input type="hidden" name="email" value="{{email}}"/>
-    <input type="submit" value="Opt-in"/>
-   </form>
-  </td>
+    <td>
+      Patchwork <strong>may not</strong> send automated notifications to this address.
+    </td>
+    <td>
+      <form method="post" action="{% url 'mail-optin' %}">
+        {% csrf_token %}
+        <input type="hidden" name="email" value="{{ email }}"/>
+        <input type="submit" value="Opt-in"/>
+      </form>
+    </td>
 {% else %}
-  <td>Patchwork <strong>may</strong> send automated notifications to
-   this address.</td>
-  <td>
-   <form method="post" action="{% url 'mail-optout' %}">
-    {% csrf_token %}
-    <input type="hidden" name="email" value="{{email}}"/>
-    <input type="submit" value="Opt-out"/>
-   </form>
-  </td>
+    <td>
+      Patchwork <strong>may</strong> send automated notifications to this address.
+    </td>
+    <td>
+      <form method="post" action="{% url 'mail-optout' %}">
+        {% csrf_token %}
+        <input type="hidden" name="email" value="{{ email }}"/>
+        <input type="submit" value="Opt-out"/>
+      </form>
+    </td>
 {% endif %}
- </tr>
+  </tr>
 </table>
-
 {% endblock %}
diff --git patchwork/templates/patchwork/mail.html patchwork/templates/patchwork/mail.html
index 1c6c0493..a2ad23d1 100644
--- patchwork/templates/patchwork/mail.html
+++ patchwork/templates/patchwork/mail.html
@@ -4,35 +4,34 @@
 {% block heading %}Mail settings{% endblock %}
 
 {% block body %}
-
-<p>You can configure Patchwork to send you mail on certain events,
-or block automated mail altogether. Enter your email address to
-view or change your email settings.</p>
+<p>
+  You can configure Patchwork to send you mail on certain events,
+  or block automated mail altogether. Enter your email address to
+  view or change your email settings.
+</p>
 
 <form method="post">
 {% csrf_token %}
 <table class="form registerform">
 {% if form.errors %}
- <tr>
-  <td colspan="2" class="error">
-   There was an error accessing your mail settings:
-  </td>
- </tr>
+  <tr>
+    <td colspan="2" class="error">
+      There was an error accessing your mail settings:
+    </td>
+  </tr>
 {% endif %}
- <tr>
-  <th>{{ form.email.label_tag }}</th>
-  <td>
-   {{form.email}}
-   {{form.email.errors}}
-  </td>
- </tr>
- <tr>
-  <td colspan="2" class="submitrow">
-   <input type="submit" value="Access mail settings"/>
-  </td>
- </tr>
+  <tr>
+    <th>{{ form.email.label_tag }}</th>
+    <td>
+      {{ form.email }}
+      {{ form.email.errors }}
+    </td>
+  </tr>
+  <tr>
+    <td colspan="2" class="submitrow">
+      <input type="submit" value="Access mail settings"/>
+    </td>
+  </tr>
 </table>
 </form>
-
-
 {% endblock %}
diff --git patchwork/templates/patchwork/optin-request.html patchwork/templates/patchwork/optin-request.html
index 90963e65..3384c462 100644
--- patchwork/templates/patchwork/optin-request.html
+++ patchwork/templates/patchwork/optin-request.html
@@ -6,44 +6,50 @@
 {% block body %}
 {% if confirmation %}
 <p><strong>Opt-in confirmation email sent</strong></p>
-<p>An opt-in confirmation mail has been sent to
-<strong>{{confirmation.email}}</strong>, containing a link. Please click on
-that link to confirm your opt-in.</p>
+<p>
+  An opt-in confirmation mail has been sent to
+  <strong>{{ confirmation.email }}</strong>, containing a link. Please click on
+  that link to confirm your opt-in.
+</p>
 {% else %}
 {% if error %}
-<p class="error">{{error}}</p>
+<p class="error">{{ error }}</p>
 {% endif %}
 
 {% if form %}
-<p>This form allows you to opt-in to automated email from Patchwork. Use
-this if you have previously opted-out of Patchwork mail, but now want to
-received notifications from Patchwork.</p>
-When you submit it, an email will be sent to your address with a link to click
-to finalise the opt-in. Patchwork does this to prevent someone opting you in
-without your consent.</p>
+<p>
+  This form allows you to opt-in to automated email from Patchwork. Use
+  this if you have previously opted-out of Patchwork mail, but now want to
+  received notifications from Patchwork.
+</p>
+<p>
+  When you submit it, an email will be sent to your address with a link to
+  click to finalise the opt-in. Patchwork does this to prevent someone opting
+  you in without your consent.
+</p>
+
 <form method="post" action="">
-{% csrf_token %}
-{{form.email.errors}}
-<div style="padding: 0.5em 1em 2em;">
-{{form.email.label_tag}}: {{form.email}}
-</div>
-<input type="submit" value="Send me an opt-in link">
+  {% csrf_token %}
+  {{ form.email.errors }}
+  <div style="padding: 0.5em 1em 2em;">
+    {{ form.email.label_tag }}: {{ form.email }}
+  </div>
+  <input type="submit" value="Send me an opt-in link">
 </form>
 {% endif %}
 
 {% if error and admins %}
-<p>If you are having trouble opting in, please email
+<p>
+  If you are having trouble opting in, please email
 {% for admin in admins %}
 {% if admins|length > 1 and forloop.last %} or {% endif %}
-{{admin.0}} <<a href="mailto:{{admin.1}}">{{admin.1}}</a
->>{% if admins|length > 2 and not forloop.last %}, {% endif %}
+{{ admin.0 }} <<a href="mailto:{{ admin.1 }}">{{ admin.1 }}</a>>{% if admins|length > 2 and not forloop.last %}, {% endif %}
 {% endfor %}
+</p>
 {% endif %}
 {% endif %}
 
 {% if user.is_authenticated %}
-<p>Return to your <a href="{% url 'user-profile' %}">user
-profile</a>.</p>
+<p>Return to your <a href="{% url 'user-profile' %}">user profile</a>.</p>
 {% endif %}
-
 {% endblock %}
diff --git patchwork/templates/patchwork/optin.html patchwork/templates/patchwork/optin.html
index 37a2198f..659bfccb 100644
--- patchwork/templates/patchwork/optin.html
+++ patchwork/templates/patchwork/optin.html
@@ -4,15 +4,18 @@
 {% block heading %}Opt-in{% endblock %}
 
 {% block body %}
-<p><strong>Opt-in complete</strong>. You have successfully opted back in to
-automated email from this Patchwork system, using the address
-<strong>{{email}}</strong>.</p>
-<p>If you later decide that you no longer want to receive automated mail from
-Patchwork, just visit <a href="{% url 'mail-settings' %}"
->http://{{site.domain}}{% url 'mail-settings' %}</a>, or
-visit the main Patchwork page and navigate from there.</p>
+<p>
+  <strong>Opt-in complete</strong>. You have successfully opted back in to
+  automated email from this Patchwork system, using the address
+  <strong>{{ email }}</strong>.
+</p>
+<p>
+  If you later decide that you no longer want to receive automated mail from
+  Patchwork, just visit
+  <a href="{% url 'mail-settings' %}">http://{{ site.domain }}{% url 'mail-settings' %}</a>,
+  or visit the main Patchwork page and navigate from there.
+</p>
 {% if user.is_authenticated %}
-<p>Return to your <a href="{% url 'user-profile' %}">user
-profile</a>.</p>
+<p>Return to your <a href="{% url 'user-profile' %}">user profile</a>.</p>
 {% endif %}
 {% endblock %}
diff --git patchwork/templates/patchwork/optout-request.html patchwork/templates/patchwork/optout-request.html
index 659af773..7396fd36 100644
--- patchwork/templates/patchwork/optout-request.html
+++ patchwork/templates/patchwork/optout-request.html
@@ -6,45 +6,53 @@
 {% block body %}
 {% if confirmation %}
 <p><strong>Opt-out confirmation email sent</strong></p>
-<p>An opt-out confirmation mail has been sent to
-<strong>{{confirmation.email}}</strong>, containing a link. Please click on
-that link to confirm your opt-out.</p>
+<p>
+  An opt-out confirmation mail has been sent to
+  <strong>{{ confirmation.email }}</strong>, containing a link. Please click on
+  that link to confirm your opt-out.
+</p>
 {% else %}
 {% if error %}
-<p class="error">{{error}}</p>
+<p class="error">{{ error }}</p>
 {% endif %}
 
 {% if form %}
-<p>This form allows you to opt-out of automated email from Patchwork.</p>
-<p>If you opt-out of email, Patchwork may still email you if you do certain
-actions yourself (such as create a new Patchwork account), but will not send
-you unsolicited email.</p>
-When you submit it, one email will be sent to your address with a link to click
-to finalise the opt-out. Patchwork does this to prevent someone opting you out
-without your consent.</p>
+<p>
+  This form allows you to opt-out of automated email from Patchwork.
+</p>
+<p>
+  If you opt-out of email, Patchwork may still email you if you do certain
+  actions yourself (such as create a new Patchwork account), but will not
+  send you unsolicited email.
+</p>
+<p>
+  When you submit it, one email will be sent to your address with a link to
+  click to finalise the opt-out. Patchwork does this to prevent someone
+  opting you out without your consent.
+</p>
 <form method="post" action="">
-{% csrf_token %}
-{{form.email.errors}}
-<div style="padding: 0.5em 1em 2em;">
-{{form.email.label_tag}}: {{form.email}}
-</div>
-<input type="submit" value="Send me an opt-out link">
+  {% csrf_token %}
+  {{ form.email.errors }}
+  <div style="padding: 0.5em 1em 2em;">
+    {{ form.email.label_tag }}: {{ form.email }}
+  </div>
+  <input type="submit" value="Send me an opt-out link">
 </form>
 {% endif %}
 
 {% if error and admins %}
-<p>If you are having trouble opting out, please email
+<p>
+  If you are having trouble opting out, please email
 {% for admin in admins %}
 {% if admins|length > 1 and forloop.last %} or {% endif %}
-{{admin.0}} <<a href="mailto:{{admin.1}}">{{admin.1}}</a
->>{% if admins|length > 2 and not forloop.last %}, {% endif %}
+{{ admin.0 }} <<a href="mailto:{{ admin.1 }}">{{ admin.1 }}</a>>{% if admins|length > 2 and not forloop.last %}, {% endif %}
 {% endfor %}
+</p>
 {% endif %}
 {% endif %}
 
 {% if user.is_authenticated %}
-<p>Return to your <a href="{% url 'user-profile' %}">user
-profile</a>.</p>
+<p>Return to your <a href="{% url 'user-profile' %}">user profile</a>.</p>
 {% endif %}
 
 {% endblock %}
diff --git patchwork/templates/patchwork/optout.html patchwork/templates/patchwork/optout.html
index f3b75ce6..2d7e67e5 100644
--- patchwork/templates/patchwork/optout.html
+++ patchwork/templates/patchwork/optout.html
@@ -4,18 +4,22 @@
 {% block heading %}Opt-out{% endblock %}
 
 {% block body %}
-<p><strong>Opt-out complete</strong>. You have successfully opted-out of
-automated notifications from this Patchwork system, from the address
-<strong>{{email}}</strong></p>
-<p>Please note that you may still receive email from other Patchwork setups at
-different sites, as they are run independently. You may need to opt-out of
-those separately.</p>
-<p>If you later decide to receive mail from Patchwork, just visit
-<a href="{% url 'mail-settings' %}"
->http://{{site.domain}}{% url 'mail-settings' %}</a>, or
-visit the main Patchwork page and navigate from there.</p>
+<p>
+  <strong>Opt-out complete</strong>. You have successfully opted-out of
+  automated notifications from this Patchwork system, from the address
+  <strong>{{ email }}</strong>
+</p>
+<p>
+  Please note that you may still receive email from other Patchwork setups at
+  different sites, as they are run independently. You may need to opt-out of
+  those separately.
+</p>
+<p>
+  If you later decide to receive mail from Patchwork, just visit
+  <a href="{% url 'mail-settings' %}">http://{{ site.domain }}{% url 'mail-settings' %}</a>,
+  or visit the main Patchwork page and navigate from there.
+</p>
 {% if user.is_authenticated %}
-<p>Return to your <a href="{% url 'user-profile' %}">user
-profile</a>.</p>
+<p>Return to your <a href="{% url 'user-profile' %}">user profile</a>.</p>
 {% endif %}
 {% endblock %}
diff --git patchwork/templates/patchwork/partials/download-buttons.html patchwork/templates/patchwork/partials/download-buttons.html
index e75a25ce..149bbc62 100644
--- patchwork/templates/patchwork/partials/download-buttons.html
+++ patchwork/templates/patchwork/partials/download-buttons.html
@@ -1,23 +1,27 @@
 <div class="btn-group pull-right">
   <button type="button" class="btn btn-default btn-copy"
-     data-clipboard-text="{{ submission.id }}" title="Copy to Clipboard">
-      {{ submission.id }}
+      data-clipboard-text="{{ submission.id }}" title="Copy to Clipboard">
+    {{ submission.id }}
   </button>
-  {% if submission.diff %}
+{% if submission.diff %}
   <a href="{% url 'patch-raw' project_id=project.linkname msgid=submission.url_msgid %}"
-   class="btn btn-default" role="button" title="Download patch diff"
-   >diff</a>
+      class="btn btn-default" role="button" title="Download patch diff">
+    diff
+  </a>
   <a href="{% url 'patch-mbox' project_id=project.linkname msgid=submission.url_msgid %}"
-   class="btn btn-default" role="button" title="Download patch mbox"
-   >mbox</a>
-  {% else %}
+      class="btn btn-default" role="button" title="Download patch mbox">
+    mbox
+  </a>
+{% else %}
   <a href="{% url 'cover-mbox' project_id=project.linkname msgid=submission.url_msgid %}"
-   class="btn btn-default" role="button" title="Download cover mbox"
-   >mbox</a>
-  {% endif %}
-  {% if submission.series %}
+      class="btn btn-default" role="button" title="Download cover mbox">
+    mbox
+  </a>
+{% endif %}
+{% if submission.series %}
   <a href="{% url 'series-mbox' series_id=submission.series.id %}"
-   class="btn btn-default" role="button"
-   title="Download patch mbox with dependencies">series</a>
-  {% endif %}
+      class="btn btn-default" role="button" title="Download patch mbox with dependencies">
+    series
+  </a>
+{% endif %}
 </div>
diff --git patchwork/templates/patchwork/partials/filters.html patchwork/templates/patchwork/partials/filters.html
index e89c4d0f..1175af14 100644
--- patchwork/templates/patchwork/partials/filters.html
+++ patchwork/templates/patchwork/partials/filters.html
@@ -80,45 +80,46 @@ $(document).ready(function() {
 </script>
 
 <div class="filters">
- <div id="filtersummary">
-  <a href="javascript:filter_click()">Show patches with</a>:
- {% if filters.applied_filters %}
-  {% for filter in filters.applied_filters.values %}
-   {{ filter.name }} = <strong>{{ filter.condition }}</strong>
-    {% if not filter.forced %}
-     <a class="filter-action"
-        href="{{ filter.url_without_me }}">  <span
-        class="glyphicon glyphicon-minus-sign"></span></a>
-    {% endif %}
-   {% if not forloop.last %}   |   {% endif %}
-  {% endfor %}
- {% else %}
-  none  <a class="filter-action"
-   href="javascript:filter_click()"><span
-   class="glyphicon glyphicon-plus-sign"></span></a>
- {% endif %}
- {% with patch_count=page.paginator.count %}
-      |   {{ patch_count }}
-   patch{{ patch_count | pluralize:"es" }}
- {% endwith %}
- </div>
- <div id="filterform" style="padding-top: 1em; display: none">
-  <form class="form-horizontal" method="get">
-   {% for filter in filters.available_filters %}
-   {% if not filter.forced %}
-   <div class="form-group">
-    <label class="col-sm-2 control-label">{{ filter.name }}</label>
-    <div class="col-sm-5">
-      {{ filter.form }}
-    </div>
-   </div>
-   {% endif %}
-   {% endfor %}
-   <div class="form-group">
-    <div class="col-sm-offset-2 col-sm-5">
-     <button type="submit" class="btn btn-default">Apply</button>
-    </div>
-   </div>
-  </form>
- </div>
+  <div id="filtersummary">
+    <a href="javascript:filter_click()">Show patches with</a>:
+{% if filters.applied_filters %}
+{% for filter in filters.applied_filters.values %}
+    {{ filter.name }} = <strong>{{ filter.condition }}</strong>
+{% if not filter.forced %}
+    <a class="filter-action" href="{{ filter.url_without_me }}">
+        <span class="glyphicon glyphicon-minus-sign"></span>
+    </a>
+{% endif %}
+{% if not forloop.last %}
+       |   
+{% endif %}
+{% endfor %}
+{% else %}
+    none  <a class="filter-action" href="javascript:filter_click()"><span class="glyphicon glyphicon-plus-sign"></span></a>
+{% endif %}
+{% with patch_count=page.paginator.count %}
+       |   {{ patch_count }}
+    patch{{ patch_count | pluralize:"es" }}
+{% endwith %}
+  </div>
+
+  <div id="filterform" style="padding-top: 1em; display: none">
+    <form class="form-horizontal" method="get">
+{% for filter in filters.available_filters %}
+{% if not filter.forced %}
+      <div class="form-group">
+        <label class="col-sm-2 control-label">{{ filter.name }}</label>
+        <div class="col-sm-5">
+          {{ filter.form }}
+        </div>
+      </div>
+{% endif %}
+{% endfor %}
+      <div class="form-group">
+        <div class="col-sm-offset-2 col-sm-5">
+          <button type="submit" class="btn btn-default">Apply</button>
+        </div>
+      </div>
+    </form>
+  </div>
 </div>
diff --git patchwork/templates/patchwork/partials/pagination.html patchwork/templates/patchwork/partials/pagination.html
index ee4b555d..0767d385 100644
--- patchwork/templates/patchwork/partials/pagination.html
+++ patchwork/templates/patchwork/partials/pagination.html
@@ -3,43 +3,41 @@
 {% if page.paginator.num_pages != 1 %}
 <div class="paginator">
 {% if page.has_previous %}
- <span class="prev">
-  <a href="{% listurl page=page.previous_page_number %}"
-     title="Previous Page">«</a></span>
+  <span class="prev">
+    <a href="{% listurl page=page.previous_page_number %}" title="Previous Page">«</a>
+  </span>
 {% else %}
- <span class="prev-na">«</span>
+  <span class="prev-na">«</span>
 {% endif %}
 
 {% if page.paginator.trailing_set %}
- {% for p in page.paginator.trailing_set %}
- <span class="page"><a href="{% listurl page=p %}" >{{ p }}</a></span>
- {% endfor %}
-        ...
+{% for p in page.paginator.trailing_set %}
+  <span class="page"><a href="{% listurl page=p %}" >{{ p }}</a></span>
+{% endfor %}
+  …
 {% endif %}
 
 {% for p in page.paginator.adjacent_set %}
-  {% if p == page.number %}
-    <span class="curr" title="Current Page">{{ p }}</span>
-  {% else %}
-    <span class="page"><a href="{% listurl page=p %}"
-     title="Page {{ p }}">{{ p }}</a></span>
-  {% endif %}
+{% if p == page.number %}
+  <span class="curr" title="Current Page">{{ p }}</span>
+{% else %}
+  <span class="page"><a href="{% listurl page=p %}" title="Page {{ p }}">{{ p }}</a></span>
+{% endif %}
 {% endfor %}
 
 {% if page.paginator.leading_set %}
-        …
- {% for p in page.paginator.leading_set %}
-    <span class="page"><a href="{% listurl page=p %}">{{ p }}</a></span>
- {% endfor %}
+  …
+{% for p in page.paginator.leading_set %}
+  <span class="page"><a href="{% listurl page=p %}">{{ p }}</a></span>
+{% endfor %}
 {% endif %}
 
 {% if page.has_next %}
- <span class="next">
-  <a href="{% listurl page=page.next_page_number %}"
-   title="Next Page">»</a>
+  <span class="next">
+    <a href="{% listurl page=page.next_page_number %}" title="Next Page">»</a>
   </span>
 {% else %}
- <span class="next-na">»</span>
+  <span class="next-na">»</span>
 {% endif %}
 </div>
 {% endif %}
diff --git patchwork/templates/patchwork/partials/patch-list.html patchwork/templates/patchwork/partials/patch-list.html
index 02d6dff8..93d1e867 100644
--- patchwork/templates/patchwork/partials/patch-list.html
+++ patchwork/templates/patchwork/partials/patch-list.html
@@ -5,33 +5,30 @@
 {% load static %}
 
 {% include "patchwork/partials/filters.html" %}
-
 {% include "patchwork/partials/pagination.html" %}
 
 {% if order.editable %}
 <table class="patchlist">
- <tr>
-  <td class="patchlistreorder">
-   <form method="post" id="reorderform">
-    {% csrf_token %}
-    <input type="hidden" name="form" value="reorderform"/>
-    <input type="hidden" name="order_start" value="0"/>
-    <span id="reorderhelp"></span>
-    <input id="reorder-cancel" type="button" value="Cancel"
-     onClick="order_cancel_click(this)"/>
-    <input id="reorder-change" type="button" value="Change order"
-     onClick="order_button_click(this)"/>
-    </form>
-  </td>
- </tr>
+  <tr>
+    <td class="patchlistreorder">
+      <form method="post" id="reorderform">
+        {% csrf_token %}
+        <input type="hidden" name="form" value="reorderform"/>
+        <input type="hidden" name="order_start" value="0"/>
+        <span id="reorderhelp"></span>
+        <input id="reorder-cancel" type="button" value="Cancel" onClick="order_cancel_click(this)"/>
+        <input id="reorder-change" type="button" value="Change order" onClick="order_button_click(this)"/>
+      </form>
+    </td>
+  </tr>
 </table>
 {% endif %}
 
 {% if page.paginator.long_page and user.is_authenticated %}
 <div class="floaty">
- <a title="jump to form" href="#patchforms">
-  <span style="font-size: 120%">▾</span>
- </a>
+  <a title="jump to form" href="#patchforms">
+    <span style="font-size: 120%">▾</span>
+  </a>
 </div>
 {% endif %}
 
@@ -51,252 +48,246 @@ $(document).ready(function() {
 </script>
 
 <form method="post">
-{% csrf_token %}
-<input type="hidden" name="form" value="patchlistform"/>
-<input type="hidden" name="project" value="{{project.id}}"/>
-<table id="patchlist" class="table table-hover table-extra-condensed table-striped pw-list"
-       data-toggle="checkboxes" data-range="true">
- <thead>
-  <tr>
-   {% if user.is_authenticated %}
-   <th style="text-align: center;">
-    <input type="checkbox" id="check-all"/>
-   </th>
-   {% endif %}
+  {% csrf_token %}
+  <input type="hidden" name="form" value="patchlistform"/>
+  <input type="hidden" name="project" value="{{project.id}}"/>
+  <table id="patchlist" class="table table-hover table-extra-condensed table-striped pw-list" data-toggle="checkboxes" data-range="true">
+    <thead>
+      <tr>
+{% if user.is_authenticated %}
+        <th style="text-align: center;">
+         <input type="checkbox" id="check-all"/>
+        </th>
+{% endif %}
 
-   {% if user.is_authenticated and user.profile.show_ids %}
-   <th>
-     ID
-   </th>
-   {% endif %}
+{% if user.is_authenticated and user.profile.show_ids %}
+        <th>
+          ID
+        </th>
+{% endif %}
 
-   <th>
-    {% if order.name == "name" %}
-     <a class="colactive" href="{% listurl order=order.reversed_name %}">
-      <span class="glyphicon glyphicon-chevron-{{ order.updown }}"></span>
-     </a>
-     <a class="colactive" href="{% listurl order=order.reversed_name %}">
-      Patch
-     </a>
-    {% else %}
-     {% if not order.editable %}
-     <a class="colinactive" href="{% listurl order="name" %}">Patch</a>
-     {% else %}
-     <span class="colinactive">Patch</span>
-     {% endif %}
-    {% endif %}
-   </th>
+        <th>
+{% if order.name == "name" %}
+          <a class="colactive" href="{% listurl order=order.reversed_name %}">
+            <span class="glyphicon glyphicon-chevron-{{ order.updown }}"></span>
+          </a>
+          <a class="colactive" href="{% listurl order=order.reversed_name %}">
+           Patch
+          </a>
+{% else %}
+{% if not order.editable %}
+          <a class="colinactive" href="{% listurl order="name" %}">Patch</a>
+{% else %}
+          <span class="colinactive">Patch</span>
+{% endif %}
+{% endif %}
+        </th>
 
-   <th>
-    <span class="colinactive">Series</span>
-   </th>
+        <th>
+          <span class="colinactive">Series</span>
+        </th>
 
-   <th>
-    {% project_tags %}
-   </th>
+        <th>
+          {% project_tags %}
+        </th>
 
-   <th>
-    <span title="Success / Warning / Fail">S/W/F</span>
-   </th>
+        <th>
+          <span title="Success / Warning / Fail">S/W/F</span>
+        </th>
 
-   <th>
-    {% if order.name == "date" %}
-     <a class="colactive" href="{% listurl order=order.reversed_name %}">
-      <span class="glyphicon glyphicon-chevron-{{ order.updown }}"></span>
-     </a>
-     <a class="colactive" href="{% listurl order=order.reversed_name %}">
-      Date
-     </a>
-    {% else %}
-     {% if not order.editable %}
-     <a class="colinactive" href="{% listurl order="date" %}">Date</a>
-     {% else %}
-     <span class="colinactive">Date</span>
-     {% endif %}
-    {% endif %}
-   </th>
+        <th>
+{% if order.name == "date" %}
+          <a class="colactive" href="{% listurl order=order.reversed_name %}">
+            <span class="glyphicon glyphicon-chevron-{{ order.updown }}"></span>
+          </a>
+          <a class="colactive" href="{% listurl order=order.reversed_name %}">
+            Date
+          </a>
+{% else %}
+{% if not order.editable %}
+          <a class="colinactive" href="{% listurl order="date" %}">Date</a>
+{% else %}
+          <span class="colinactive">Date</span>
+{% endif %}
+{% endif %}
+        </th>
 
-   <th>
-    {% if order.name == "submitter" %}
-     <a class="colactive" href="{% listurl order=order.reversed_name %}">
-      <span class="glyphicon glyphicon-chevron-{{ order.updown }}"></span>
-     </a>
-     <a class="colactive" href="{% listurl order=order.reversed_name %}">
-      Submitter
-     </a>
-    {% else %}
-     {% if not order.editable %}
-     <a class="colinactive" href="{% listurl order="submitter" %}">
-      Submitter
-     </a>
-     {% else %}
-     <span class="colinactive">Submitter</span>
-     {% endif %}
-    {% endif %}
-   </th>
+        <th>
+{% if order.name == "submitter" %}
+          <a class="colactive" href="{% listurl order=order.reversed_name %}">
+            <span class="glyphicon glyphicon-chevron-{{ order.updown }}"></span>
+          </a>
+          <a class="colactive" href="{% listurl order=order.reversed_name %}">
+            Submitter
+          </a>
+{% else %}
+{% if not order.editable %}
+          <a class="colinactive" href="{% listurl order="submitter" %}">
+            Submitter
+          </a>
+{% else %}
+          <span class="colinactive">Submitter</span>
+{% endif %}
+{% endif %}
+        </th>
 
-   <th>
-    {% if order.name == "delegate" %}
-     <a class="colactive" href="{% listurl order=order.reversed_name %}">
-      <span class="glyphicon glyphicon-chevron-{{ order.updown }}"></span>
-     </a>
-     <a class="colactive" href="{% listurl order=order.reversed_name %}">
-      Delegate
-     </a>
-    {% else %}
-     {% if not order.editable %}
-     <a class="colinactive" href="{% listurl order="delegate" %}">Delegate</a>
-     {% else %}
-     <span class="colinactive">Delegate</span>
-     {% endif %}
-    {% endif %}
-   </th>
+        <th>
+{% if order.name == "delegate" %}
+          <a class="colactive" href="{% listurl order=order.reversed_name %}">
+            <span class="glyphicon glyphicon-chevron-{{ order.updown }}"></span>
+          </a>
+          <a class="colactive" href="{% listurl order=order.reversed_name %}">
+            Delegate
+          </a>
+{% else %}
+{% if not order.editable %}
+          <a class="colinactive" href="{% listurl order="delegate" %}">Delegate</a>
+{% else %}
+          <span class="colinactive">Delegate</span>
+{% endif %}
+{% endif %}
+        </th>
 
-   <th>
-    {% if order.name == "state" %}
-     <a class="colactive" href="{% listurl order=order.reversed_name %}">
-      <span class="glyphicon glyphicon-chevron-{{ order.updown }}"></span>
-     </a>
-     <a class="colactive" href="{% listurl order=order.reversed_name %}">
-      State
-     </a>
-    {% else %}
-     {% if not order.editable %}
-     <a class="colinactive" href="{% listurl order="state" %}">State</a>
-     {% else %}
-     <span class="colinactive">State</span>
-     {% endif %}
-    {% endif %}
-   </th>
+        <th>
+{% if order.name == "state" %}
+          <a class="colactive" href="{% listurl order=order.reversed_name %}">
+            <span class="glyphicon glyphicon-chevron-{{ order.updown }}"></span>
+          </a>
+          <a class="colactive" href="{% listurl order=order.reversed_name %}">
+            State
+          </a>
+{% else %}
+{% if not order.editable %}
+          <a class="colinactive" href="{% listurl order="state" %}">State</a>
+{% else %}
+          <span class="colinactive">State</span>
+{% endif %}
+{% endif %}
+        </th>
 
-  </tr>
- </thead>
+      </tr>
+    </thead>
 
- <tbody>
- {% for patch in page.object_list %}
-  <tr id="patch_row:{{patch.id}}">
-   {% if user.is_authenticated %}
-   <td style="text-align: center;">
-    <input type="checkbox" name="patch_id:{{patch.id}}"/>
-   </td>
-   {% endif %}
-   {% if user.is_authenticated and user.profile.show_ids %}
-   <td>
-    <button type="button" class="btn btn-xs btn-copy"
-     data-clipboard-text="{{ patch.id }}" title="Copy to Clipboard">
-      {{ patch.id }}
-    </button>
-   </td>
-   {% endif %}
-   <td>
-    <a href="{% url 'patch-detail' project_id=project.linkname msgid=patch.url_msgid %}">
-     {{ patch.name|default:"[no subject]"|truncatechars:100 }}
-    </a>
-   </td>
-   <td>
-    {% if patch.series %}
-    <a href="?series={{patch.series.id}}">
-     {{ patch.series|truncatechars:100 }}
-    </a>
-    {% endif %}
-   </td>
-   <td class="text-nowrap">{{ patch|patch_tags }}</td>
-   <td class="text-nowrap">{{ patch|patch_checks }}</td>
-   <td class="text-nowrap">{{ patch.date|date:"Y-m-d" }}</td>
-   <td>{{ patch.submitter|personify:project }}</td>
-   <td>{{ patch.delegate.username }}</td>
-   <td>{{ patch.state }}</td>
-  </tr>
- {% empty %}
-  <tr>
-   <td colspan="8">No patches to display</td>
-  </tr>
- {% endfor %}
- </tbody>
-</table>
+    <tbody>
+{% for patch in page.object_list %}
+      <tr id="patch_row:{{patch.id}}">
+{% if user.is_authenticated %}
+        <td style="text-align: center;">
+          <input type="checkbox" name="patch_id:{{patch.id}}"/>
+        </td>
+{% endif %}
+{% if user.is_authenticated and user.profile.show_ids %}
+        <td>
+          <button type="button" class="btn btn-xs btn-copy" data-clipboard-text="{{ patch.id }}" title="Copy to Clipboard">
+            {{ patch.id }}
+          </button>
+        </td>
+{% endif %}
+        <td>
+          <a href="{% url 'patch-detail' project_id=project.linkname msgid=patch.url_msgid %}">
+            {{ patch.name|default:"[no subject]"|truncatechars:100 }}
+          </a>
+        </td>
+        <td>
+{% if patch.series %}
+          <a href="?series={{patch.series.id}}">
+            {{ patch.series|truncatechars:100 }}
+          </a>
+{% endif %}
+        </td>
+        <td class="text-nowrap">{{ patch|patch_tags }}</td>
+        <td class="text-nowrap">{{ patch|patch_checks }}</td>
+        <td class="text-nowrap">{{ patch.date|date:"Y-m-d" }}</td>
+        <td>{{ patch.submitter|personify:project }}</td>
+        <td>{{ patch.delegate.username }}</td>
+        <td>{{ patch.state }}</td>
+       </tr>
+{% empty %}
+      <tr>
+        <td colspan="8">No patches to display</td>
+      </tr>
+{% endfor %}
+    </tbody>
+  </table>
 
 {% if page.paginator.count %}
 {% include "patchwork/partials/pagination.html" %}
 
-<div class="patchforms" id="patchforms">
+  <div class="patchforms" id="patchforms">
 
 {% if patchform %}
- <div class="patchform patchform-properties">
-  <h3>Properties</h3>
-    <table class="form">
-     <tr>
-      <th>Change state:</th>
-      <td>
-       {{ patchform.state }}
-       {{ patchform.state.errors }}
-      </td>
-     </tr>
-     <tr>
-      <th>Delegate to:</th>
-      <td>
-       {{ patchform.delegate }}
-       {{ patchform.delegate.errors }}
-      </td>
-     </tr>
-     <tr>
-      <th>Archive:</th>
-      <td>
-       {{ patchform.archived }}
-       {{ patchform.archived.errors }}
-      </td>
-     </tr>
-     <tr>
-      <td></td>
-      <td>
-       <input type="submit" name="action" value="{{patchform.action}}"/>
-      </td>
-     </tr>
-    </table>
- </div>
-
+     <div class="patchform patchform-properties">
+       <h3>Properties</h3>
+       <table class="form">
+         <tr>
+           <th>Change state:</th>
+           <td>
+             {{ patchform.state }}
+             {{ patchform.state.errors }}
+           </td>
+         </tr>
+         <tr>
+           <th>Delegate to:</th>
+           <td>
+             {{ patchform.delegate }}
+             {{ patchform.delegate.errors }}
+           </td>
+         </tr>
+         <tr>
+           <th>Archive:</th>
+           <td>
+             {{ patchform.archived }}
+             {{ patchform.archived.errors }}
+           </td>
+         </tr>
+         <tr>
+           <td></td>
+           <td>
+             <input type="submit" name="action" value="{{patchform.action}}"/>
+           </td>
+         </tr>
+       </table>
+     </div>
 {% endif %}
 
 {% if user.is_authenticated %}
- <div class="patchform patchform-bundle">
-  <h3>Bundling</h3>
-   <table class="form">
-    <tr>
-     <td>Create bundle:</td>
-     <td>
-      <input type="text" name="bundle_name"/>
-      <input name="action" value="Create" type="submit"/>
-      </td>
-    </tr>
-  {% if bundles %}
-    <tr>
-     <td>Add to bundle:</td>
-     <td>
-       <select name="bundle_id">
-        {% for bundle in bundles %}
-         <option value="{{bundle.id}}">{{bundle.name}}</option>
-        {% endfor %}
-        </select>
-       <input name="action" value="Add" type="submit"/>
-     </td>
-    </tr>
-  {% endif %}
-  {% if bundle %}
-   <tr>
-     <td>Remove from bundle:</td>
-     <td>
-       <input type="hidden" name="removed_bundle_id" value="{{bundle.id}}"/>
-       <input name="action" value="Remove" type="submit"/>
-     </td>
-    </tr>
-  {% endif %}
-  </table>
- </div>
+    <div class="patchform patchform-bundle">
+      <h3>Bundling</h3>
+      <table class="form">
+        <tr>
+         <td>Create bundle:</td>
+         <td>
+           <input type="text" name="bundle_name"/>
+           <input name="action" value="Create" type="submit"/>
+         </td>
+        </tr>
+{% if bundles %}
+        <tr>
+          <td>Add to bundle:</td>
+          <td>
+            <select name="bundle_id">
+{% for bundle in bundles %}
+              <option value="{{bundle.id}}">{{bundle.name}}</option>
+{% endfor %}
+            </select>
+            <input name="action" value="Add" type="submit"/>
+          </td>
+        </tr>
 {% endif %}
-
- <div style="clear: both;">
- </div>
-</div>
-
+{% if bundle %}
+        <tr>
+          <td>Remove from bundle:</td>
+          <td>
+            <input type="hidden" name="removed_bundle_id" value="{{bundle.id}}"/>
+            <input name="action" value="Remove" type="submit"/>
+          </td>
+        </tr>
+{% endif %}
+      </table>
+    </div>
+{% endif %}
+    <div style="clear: both;">
+    </div>
+  </div>
 {% endif %}
-
 </form>
diff --git patchwork/templates/patchwork/profile.html patchwork/templates/patchwork/profile.html
index 4a4b5582..552dde47 100644
--- patchwork/templates/patchwork/profile.html
+++ patchwork/templates/patchwork/profile.html
@@ -6,169 +6,168 @@
 {% block body %}
 <h1>Your Profile</h1>
 
-<p>
 {% if user.profile.maintainer_projects.count %}
-Maintainer of
+<p>
+  Maintainer of
 {% for project in user.profile.maintainer_projects.all %}
-<a href="{% url 'patch-list' project_id=project.linkname %}"
->{{ project.linkname }}</a>{% if not forloop.last %},{% endif %}{% endfor %}.
+  <a href="{% url 'patch-list' project_id=project.linkname %}">{{ project.linkname }}</a>{% if not forloop.last %},{% endif %}
+{% endfor %}.
+</p>
 {% endif %}
 
 {% if user.profile.contributor_projects.count %}
-Contributor to
+<p>
+  Contributor to
 {% for project in user.profile.contributor_projects.all %}
-<a href="{% url 'patch-list' project_id=project.linkname %}"
->{{ project.linkname }}</a>{% if not forloop.last %},{% endif %}{% endfor %}.
-{% endif %}
+  <a href="{% url 'patch-list' project_id=project.linkname %}">{{ project.linkname }}</a>{% if not forloop.last %},{% endif %}
+{% endfor %}.
 </p>
+{% endif %}
 
 <div class="leftcol">
-<div class="box">
- <h2>Todo</h2>
+  <div class="box">
+    <h2>Todo</h2>
+    <p>
+      Your <a href="{% url 'user-todos' %}">todo list</a> contains patches that
+      have been delegated to you.
 {% if user.profile.n_todo_patches %}
- <p>Your <a href="{% url 'user-todos' %}">todo
-  list</a> contains {{ user.profile.n_todo_patches }}
-  patch{{ user.profile.n_todo_patches|pluralize:"es" }}.</p>
+      Your have {{ user.profile.n_todo_patches }}
+      patch{{ user.profile.n_todo_patches|pluralize:"es" }} in your todo list.
 {% else %}
- <p>Your todo list contains patches that have been delegated to you. You
-  have no items in your todo list at present.</p>
+      You have no patches in your todo list at present.
 {% endif %}
-</div>
-
-<div class="box">
-<h2>Linked email addresses</h2>
-<p>The following email addresses are associated with this Patchwork account.
-Adding alternative addresses allows Patchwork to group contributions that
-you have made under different addresses.</p>
-<p>The "notify?" column allows you to opt-in or -out of automated
-Patchwork notification emails. Setting it to "no" will disable automated
-notifications for that address.</p>
-<p>Adding a new email address will send a confirmation email to that
-address.</p>
-<table class="vertical">
- <tr>
-  <th>email</th>
-  <th>action</th>
-  <th>notify?</th>
- </tr>
+    </p>
+  </div>
+
+  <div class="box">
+    <h2>Linked email addresses</h2>
+    <p>
+      The following email addresses are associated with this Patchwork account.
+      Adding alternative addresses allows Patchwork to group contributions that
+      you have made under different addresses.
+    </p>
+    <p>
+      The "notify?" column allows you to opt-in or opt-out of automated
+      Patchwork notification emails. Setting it to "no" will disable automated
+      notifications for that address.
+    </p>
+    <p>
+      Adding a new email address will send a confirmation email to that address.
+    </p>
+    <table class="vertical">
+      <tr>
+        <th>email</th>
+        <th>action</th>
+        <th>notify?</th>
+      </tr>
 {% for email in linked_emails %}
- <tr>
-  <td>{{ email.email }}</td>
-  <td>
-  {% if user.email != email.email %}
-   <form action="{% url 'user-unlink' person_id=email.id %}"
-    method="post">
-    {% csrf_token %}
-    <input type="submit" value="Unlink"/>
-   </form>
-    {% endif %}
-  </td>
-  <td>
-   {% if email.is_optout %}
-   <form method="post" action="{% url 'mail-optin' %}">
-    No,
-     {% csrf_token %}
-     <input type="hidden" name="email" value="{{email.email}}"/>
-     <input type="submit" value="Opt-in"/>
-    </form>
-   {% else %}
-    <form method="post" action="{% url 'mail-optout' %}">
-    Yes,
-     {% csrf_token %}
-     <input type="hidden" name="email" value="{{email.email}}"/>
-     <input type="submit" value="Opt-out"/>
-    </form>
-   {% endif %}
-  </td>
- </tr>
+      <tr>
+        <td>{{ email.email }}</td>
+        <td>
+{% if user.email != email.email %}
+          <form action="{% url 'user-unlink' person_id=email.id %}" method="post">
+            {% csrf_token %}
+            <input type="submit" value="Unlink"/>
+          </form>
+{% endif %}
+        </td>
+        <td>
+{% if email.is_optout %}
+          <form method="post" action="{% url 'mail-optin' %}">
+            {% csrf_token %}
+            No,
+            <input type="hidden" name="email" value="{{ email.email }}"/>
+            <input type="submit" value="Opt-in"/>
+          </form>
+{% else %}
+          <form method="post" action="{% url 'mail-optout' %}">
+            {% csrf_token %}
+            Yes,
+            <input type="hidden" name="email" value="{{ email.email }}"/>
+            <input type="submit" value="Opt-out"/>
+          </form>
+{% endif %}
+        </td>
+      </tr>
 {% endfor %}
- <tr>
-  <td colspan="3">
-   <form action="{% url 'user-link' %}" method="post">
-    {% csrf_token %}
-    {{ linkform.email }}
-    <input type="submit" value="Add"/>
-   </form>
-  </td>
- </tr>
-</table>
-</div>
+      <tr>
+        <td colspan="3">
+          <form action="{% url 'user-link' %}" method="post">
+            {% csrf_token %}
+            {{ linkform.email }}
+            <input type="submit" value="Add"/>
+          </form>
+        </td>
+      </tr>
+    </table>
+  </div>
 </div>
 
 <div class="rightcol">
-
-<div class="box">
-<h2>Bundles</h2>
-
+  <div class="box">
+    <h2>Bundles</h2>
 {% if bundles %}
-<p>You have the following bundle{{ bundles|length|pluralize }}:</p>
-<ul>
+    <p>You have the following bundle{{ bundles|length|pluralize }}:</p>
+    <ul>
 {% for bundle in bundles %}
- <li><a href="{{ bundle.get_absolute_url }}">{{ bundle.name }}</a></li>
+      <li><a href="{{ bundle.get_absolute_url }}">{{ bundle.name }}</a></li>
 {% endfor %}
-</ul>
-<p>Visit the <a href="{%url 'user-bundles' %}">bundles
- page</a> to manage your bundles.</p>
+    </ul>
+    <p>Visit the <a href="{%url 'user-bundles' %}">bundles page</a> to manage your bundles.</p>
 {% else %}
-<p>You have no bundles.</p>
+    <p>You have no bundles.</p>
 {% endif %}
-</div>
-
-
-<div class="box">
-<h2>Settings</h2>
-
-<form method="post">
- {% csrf_token %}
- <table class="form">
-{{ profileform }}
-  <tr>
-   <td></td>
-   <td>
-    <input type="submit" value="Apply"/>
-   </td>
-  </tr>
- </table>
-</form>
-</div>
+  </div>
+
+  <div class="box">
+    <h2>Settings</h2>
+
+    <form method="post">
+      {% csrf_token %}
+      <table class="form">
+        {{ profileform }}
+        <tr>
+          <td></td>
+          <td><input type="submit" value="Apply"/></td>
+        </tr>
+      </table>
+    </form>
+  </div>
 
-<div class="box">
-<h2>Authentication</h2>
+  <div class="box">
+    <h2>Authentication</h2>
 
-<table class="form">
- <tr>
-  <th>Password:</th>
-  <td><a href="{% url 'password_change' %}">Change password</a>
- </tr>
+    <table class="form">
+      <tr>
+        <th>Password:</th>
+        <td><a href="{% url 'password_change' %}">Change password</a>
+      </tr>
 {% if rest_api_enabled %}
- <tr>
-  <th>API Token:</th>
-  <td>
-   {% if api_token %}
-   <input id="token" style="width: 25em;" readonly value="{{ api_token }}">
-   <button type="button" class="btn-copy" title="Copy to clipboard"
-    data-clipboard-target="#token">Copy</button>
-   {% endif %}
-  </td>
- <tr>
-  <th></th>
-  <td>
-   <form method="post" action="{% url 'generate_token' %}">
-    {% csrf_token %}
-    {% if api_token %}
-    <input type="submit" value="Regenerate token"/>
-    {% else %}
-    <input type="submit" value="Generate token"/>
-    {% endif %}
-   </form>
-  </td>
- </tr>
+      <tr>
+        <th>API Token:</th>
+        <td>
+{% if api_token %}
+          <input id="token" style="width: 25em;" readonly value="{{ api_token }}">
+          <button type="button" class="btn-copy" title="Copy to clipboard" data-clipboard-target="#token">Copy</button>
 {% endif %}
-</table>
-</div>
-
+        </td>
+      <tr>
+        <th></th>
+        <td>
+          <form method="post" action="{% url 'generate_token' %}">
+            {% csrf_token %}
+{% if api_token %}
+            <input type="submit" value="Regenerate token"/>
+{% else %}
+            <input type="submit" value="Generate token"/>
+{% endif %}
+          </form>
+        </td>
+      </tr>
+{% endif %}
+    </table>
+  </div>
 </div>
 
 <p style="clear: both"></p>
-
 {% endblock %}
diff --git patchwork/templates/patchwork/project.html patchwork/templates/patchwork/project.html
index bd9d20e2..cad372f7 100644
--- patchwork/templates/patchwork/project.html
+++ patchwork/templates/patchwork/project.html
@@ -4,70 +4,76 @@
 {% block info_active %}active{% endblock %}
 
 {% block body %}
-<h1>About {{project.name}}</h1>
+<h1>About {{ project.name }}</h1>
 
 <table class="horizontal">
- <tr>
-  <th>Name</th>
-  <td>{{project.name}}
- </tr>
- <tr>
-  <th>List address</th>
-  <td>{{project.listemail}}</td>
- </tr>
+  <tr>
+    <th>Name</th>
+    <td>{{ project.name }}
+  </tr>
+  <tr>
+    <th>List address</th>
+    <td>{{ project.listemail }}</td>
+  </tr>
 {% if project.list_archive_url %}
- <tr>
-  <th>List archive</th>
-  <td><a href="{{ project.list_archive_url }}">{{ project.list_archive_url }}</a></td>
- </tr>
+  <tr>
+    <th>List archive</th>
+    <td><a href="{{ project.list_archive_url }}">{{ project.list_archive_url }}</a></td>
+  </tr>
 {% endif %}
- <tr>
-  <th>Maintainer{{maintainers|length|pluralize}}</th>
-  <td>
-   {% for maintainer in maintainers %}
-    {{ maintainer.profile.name }}
-     <<a href="mailto:{{maintainer.email}}">{{maintainer.email}}</a>>
-     <br />
-   {% endfor %}
-  </td>
- </tr>
- <tr>
-  <th>Patches </th>
-  <td>{{n_patches}} (+ {{n_archived_patches}} archived)</td>
- </tr>
+  <tr>
+    <th>Maintainer{{ maintainers|length|pluralize }}</th>
+    <td>
+      {% for maintainer in maintainers %}
+        {{ maintainer.profile.name }}
+          <<a href="mailto:{{ maintainer.email }}">{{ maintainer.email }}</a>>
+          <br />
+      {% endfor %}
+    </td>
+  </tr>
+  <tr>
+    <th>Patches </th>
+    <td>{{ n_patches }} (+ {{ n_archived_patches }} archived)</td>
+  </tr>
 {% if project.web_url %}
- <tr>
-  <th>Website</th>
-  <td><a href="{{project.web_url}}">{{project.web_url}}</a></td>
- </tr>
+  <tr>
+    <th>Website</th>
+    <td><a href="{{ project.web_url }}">{{ project.web_url }}</a></td>
+  </tr>
 {% endif %}
 {% if project.webscm_url %}
- <tr>
-  <th>Source Code Web Interface</th>
-  <td><a href="{{project.webscm_url}}">{{project.webscm_url}}</a></td>
- </tr>
+  <tr>
+    <th>Source Code Web Interface</th>
+    <td><a href="{{ project.webscm_url }}">{{ project.webscm_url }}</a></td>
+  </tr>
 {% endif %}
 {% if project.scm_url %}
- <tr>
-  <th>Source Code Manager URL</th>
-  <td><a href="{{project.scm_url}}">{{project.scm_url}}</a></td>
- </tr>
+  <tr>
+    <th>Source Code Manager URL</th>
+    <td><a href="{{ project.scm_url }}">{{ project.scm_url }}</a></td>
+  </tr>
 {% endif %}
 </table>
 
 {% if enable_xmlrpc %}
 <h2>pwclient</h2>
 
-<p><code>pwclient</code> is the command-line client for Patchwork. Currently,
-it provides access to some read-only features of Patchwork, such as downloading
-and applying patches.</p>
+<p>
+  <code>pwclient</code> is the command-line client for Patchwork. Currently,
+  it provides access to some read-only features of Patchwork, such as
+  downloading and applying patches.
+</p>
 
 <p>To use pwclient, you will need:</p>
 <ul>
- <li>The <a href="https://github.com/getpatchwork/pwclient">pwclient</a> program</li>
- <li>(optional) A <code><a href="{% url 'pwclientrc' project.linkname %}"
- >.pwclientrc</a></code> file for this project, which should be stored in your
- home directory.</li>
+  <li>
+    The <a href="https://github.com/getpatchwork/pwclient">pwclient</a>
+    program.
+  </li>
+  <li>
+    (Optional) A <code><a href="{% url 'pwclientrc' project.linkname %}">.pwclientrc</a></code>
+    file for this project, which should be stored in your home directory.
+  </li>
 </ul>
 {% endif %}
 {% endblock %}
diff --git patchwork/templates/patchwork/projects.html patchwork/templates/patchwork/projects.html
index 9ce1918c..16b1bc5d 100644
--- patchwork/templates/patchwork/projects.html
+++ patchwork/templates/patchwork/projects.html
@@ -9,19 +9,19 @@
   <div class="col-sm-6 col-md-4">
     <div class="thumbnail">
       <div class="caption">
-        <h3>{{p.name}}</h3>
+        <h3>{{ p.name }}</h3>
         <p class="core-info">
-         <span>
-          <a href="{% url 'patch-list' project_id=p.linkname %}">
-           View patches
-          </a>
-        </span>
+          <span>
+            <a href="{% url 'patch-list' project_id=p.linkname %}">
+              View patches
+            </a>
+          </span>
         </p>
 {% if p.web_url %}
-      <p><a href="{{p.web_url}}">{{p.web_url}}</a></p>
+      <p><a href="{{ p.web_url }}">{{ p.web_url }}</a></p>
 {% endif %}
 {% if p.webscm_url %}
-      <p><a href="{{p.webscm_url}}">{{p.webscm_url}}</a></p>
+      <p><a href="{{ p.webscm_url }}">{{ p.webscm_url }}</a></p>
 {% endif %}
      </div>
    </div>
diff --git patchwork/templates/patchwork/registration-confirm.html patchwork/templates/patchwork/registration-confirm.html
index 3832139c..e9219a5a 100644
--- patchwork/templates/patchwork/registration-confirm.html
+++ patchwork/templates/patchwork/registration-confirm.html
@@ -6,8 +6,9 @@
 {% block body %}
 <p>Registration confirmed!</p>
 
-<p>Your Patchwork registration is complete. Head over to your <a
- href="{% url 'user-profile' %}">profile</a> to start using
-Patchwork's extra features.</p>
-
+<p>
+  Your Patchwork registration is complete. Head over to your
+  <a href="{% url 'user-profile' %}">profile</a> to start using
+  Patchwork's extra features.
+</p>
 {% endblock %}
diff --git patchwork/templates/patchwork/registration.html patchwork/templates/patchwork/registration.html
index 5280b660..8e2a3511 100644
--- patchwork/templates/patchwork/registration.html
+++ patchwork/templates/patchwork/registration.html
@@ -4,116 +4,110 @@
 {% block heading %}Registration{% endblock %}
 
 {% block body %}
-
 {% if confirmation and not error %}
- <p>Registration successful!</p>
- <p>A confirmation email has been sent to {{ confirmation.email }}. You'll
- need to visit the link provided in that email to confirm your
- registration.</p>
+<p>
+  Registration successful!
+</p>
+<p>
+  A confirmation email has been sent to {{ confirmation.email }}.
+  You'll need to visit the link provided in that email to confirm your
+  registration.
 </p>
 {% else %}
 <p>By creating a Patchwork account, you can:<p>
 <ul>
- <li>create "bundles" of patches</li>
- <li>update the state of your own patches</li>
+  <li>create "bundles" of patches</li>
+  <li>update the state of your own patches</li>
 </ul>
 <form method="post">
-{% csrf_token %}
-<table class="form registerform">
- <tr>
-  <th colspan="2" class="headerrow">register</th>
- </tr>
- {% if error %}
-  <tr>
-   <td colspan="2">{{ error }}</td>
-  </tr>
- {% endif %}
-
-  <tr>
-   <td>{{ form.first_name.label_tag }}</td>
-   <td>
+  {% csrf_token %}
+  <table class="form registerform">
+    <tr>
+      <th colspan="2" class="headerrow">register</th>
+    </tr>
+{% if error %}
+    <tr>
+      <td colspan="2">{{ error }}</td>
+    </tr>
+{% endif %}
+    <tr>
+      <td>{{ form.first_name.label_tag }}</td>
+      <td>
 {% if form.first_name.errors %}
-    {{ form.first_name.errors }}
+        {{ form.first_name.errors }}
 {% endif %}
-    {{ form.first_name }}
+        {{ form.first_name }}
 {% if form.first_name.help_text %}
-    <div class="help_text"/>{{ form.first_name.help_text }}</div>
+        <div class="help_text"/>{{ form.first_name.help_text }}</div>
 {% endif %}
-   </td>
-  </tr>
-
-  <tr>
-   <td>{{ form.last_name.label_tag }}</td>
-   <td>
+      </td>
+    </tr>
+    <tr>
+      <td>{{ form.last_name.label_tag }}</td>
+      <td>
 {% if form.last_name.errors %}
-    {{ form.last_name.errors }}
+        {{ form.last_name.errors }}
 {% endif %}
-    {{ form.last_name }}
+        {{ form.last_name }}
 {% if form.last_name.help_text %}
-    <div class="help_text"/>{{ form.last_name.help_text }}</div>
+        <div class="help_text"/>{{ form.last_name.help_text }}</div>
 {% endif %}
-   </td>
-  </tr>
-
-  <tr>
-   <td></td>
-   <td class="form-help">
-    Your name is used to identify you on the site
-   </td>
-  </tr>
-
-  <tr>
-   <td>{{ form.email.label_tag }}</td>
-   <td>
+      </td>
+    </tr>
+    <tr>
+      <td></td>
+      <td class="form-help">
+        Your name is used to identify you on the site
+      </td>
+    </tr>
+    <tr>
+      <td>{{ form.email.label_tag }}</td>
+      <td>
 {% if form.email.errors %}
-    {{ form.email.errors }}
+        {{ form.email.errors }}
 {% endif %}
-    {{ form.email }}
+        {{ form.email }}
 {% if form.email.help_text %}
-    <div class="help_text"/>{{ form.email.help_text }}</div>
+        <div class="help_text"/>{{ form.email.help_text }}</div>
 {% endif %}
-   </td>
-  </tr>
-
-  <tr>
-   <td></td>
-   <td class="form-help">
-    Patchwork will send a confirmation email to this address
-   </td>
-  </tr>
-
-  <tr>
-   <td>{{ form.username.label_tag }}</td>
-   <td>
+      </td>
+    </tr>
+    <tr>
+      <td></td>
+      <td class="form-help">
+        Patchwork will send a confirmation email to this address
+      </td>
+    </tr>
+    <tr>
+      <td>{{ form.username.label_tag }}</td>
+      <td>
 {% if form.username.errors %}
-    {{ form.username.errors }}
+        {{ form.username.errors }}
 {% endif %}
-    {{ form.username }}
+        {{ form.username }}
 {% if form.username.help_text %}
-    <div class="help_text"/>{{ form.username.help_text }}</div>
+        <div class="help_text"/>{{ form.username.help_text }}</div>
 {% endif %}
-   </td>
-  </tr>
-
-  <tr>
-   <td>{{ form.password.label_tag }}</td>
-   <td>
+      </td>
+    </tr>
+    <tr>
+      <td>{{ form.password.label_tag }}</td>
+      <td>
 {% if form.password.errors %}
-    {{ form.password.errors }}
+        {{ form.password.errors }}
 {% endif %}
-    {{ form.password }}
+        {{ form.password }}
 {% if form.password.help_text %}
-    <div class="help_text"/>{{ form.password.help_text }}</div>
+        <div class="help_text"/>{{ form.password.help_text }}</div>
 {% endif %}
-   </td>
-  </tr>
-
-   <tr>
-  <td colspan="2" class="submitrow">
-   <input type="submit" value="Register"/>
-  </td>
- </tr>
-</table>
+      </td>
+    </tr>
+    <tr>
+      <td colspan="2" class="submitrow">
+        <input type="submit" value="Register"/>
+      </td>
+    </tr>
+  </table>
 </form>
 {% endif %}
 {% endblock %}
diff --git patchwork/templates/patchwork/submission.html patchwork/templates/patchwork/submission.html
index 978559b8..03a3ae58 100644
--- patchwork/templates/patchwork/submission.html
+++ patchwork/templates/patchwork/submission.html
@@ -5,7 +5,7 @@
 {% load person %}
 {% load patch %}
 
-{% block title %}{{submission.name}}{% endblock %}
+{% block title %}{{ submission.name }}{% endblock %}
 
 {% block body %}
 <script>
@@ -33,241 +33,244 @@ function toggle_div(link_id, headers_id, label_show, label_hide)
 </div>
 
 <table class="patchmeta">
- <tr>
-  <th>Message ID</th>
-  {% if submission.list_archive_url %}
-  <td>{{ submission.url_msgid }} (<a href="{{ submission.list_archive_url }}">mailing list archive</a>)</td>
-  {% else %}
-  <td>{{ submission.url_msgid }}</td>
-  {% endif %}
- </tr>
+  <tr>
+    <th>Message ID</th>
+    {% if submission.list_archive_url %}
+    <td>{{ submission.url_msgid }} (<a href="{{ submission.list_archive_url }}">mailing list archive</a>)</td>
+    {% else %}
+    <td>{{ submission.url_msgid }}</td>
+    {% endif %}
+  </tr>
 {% if submission.state %}
- <tr>
-  <th>State</th>
-  <td>{{ submission.state.name }}{% if submission.archived %}, archived{% endif %}</td>
- </tr>
+  <tr>
+    <th>State</th>
+    <td>{{ submission.state.name }}{% if submission.archived %}, archived{% endif %}</td>
+  </tr>
 {% endif %}
 {% if submission.commit_ref %}
- <tr>
-  <th>Commit</th>
-  <td>{{ submission|patch_commit_display }}</td>
- </tr>
+  <tr>
+    <th>Commit</th>
+    <td>{{ submission|patch_commit_display }}</td>
+  </tr>
 {% endif %}
 {% if submission.delegate %}
- <tr>
-  <th>Delegated to:</th>
-  <td>{{ submission.delegate.profile.name }}</td>
- </tr>
+  <tr>
+    <th>Delegated to:</th>
+    <td>{{ submission.delegate.profile.name }}</td>
+  </tr>
 {% endif %}
- <tr>
-  <th>Headers</th>
-  <td><a id="togglepatchheaders"
-   href="javascript:toggle_div('togglepatchheaders', 'patchheaders')"
-   >show</a>
-   <div id="patchheaders" class="patchheaders" style="display:none;">
-    <pre>{{submission.headers}}</pre>
-   </div>
-  </td>
- </tr>
+  <tr>
+    <th>Headers</th>
+    <td>
+      <a id="togglepatchheaders" href="javascript:toggle_div('togglepatchheaders', 'patchheaders')">
+        show
+      </a>
+      <div id="patchheaders" class="patchheaders" style="display:none;">
+        <pre>{{ submission.headers }}</pre>
+      </div>
+    </td>
+  </tr>
 {% if submission.series %}
- <tr>
-  <th>Series</th>
-  <td>
-   <a href="{% url 'patch-list' project_id=project.linkname %}?series={{ submission.series.id }}">
-    {{ submission.series.name }}
-   </a> |
-   <a id="togglepatchseries"
-      href="javascript:toggle_div('togglepatchseries', 'patchseries', 'expand', 'collapse')"
-   >expand</a>
-   <div id="patchseries" class="submissionlist" style="display:none;">
-    <ul>
-     {% with submission.series.cover_letter as cover %}
-      <li>
-      {% if cover %}
-       {% if cover == submission %}
-        {{ cover.name|default:"[no subject]"|truncatechars:100 }}
-       {% else %}
-       <a href="{% url 'cover-detail' project_id=project.linkname msgid=cover.url_msgid %}">
-        {{ cover.name|default:"[no subject]"|truncatechars:100 }}
-       </a>
-       {% endif %}
-      {% endif %}
-      </li>
-     {% endwith %}
-     {% for sibling in submission.series.patches.all %}
-      <li>
-       {% if sibling == submission %}
-        {{ sibling.name|default:"[no subject]"|truncatechars:100 }}
-       {% else %}
-       <a href="{% url 'patch-detail' project_id=project.linkname msgid=sibling.url_msgid %}">
-        {{ sibling.name|default:"[no subject]"|truncatechars:100 }}
-       </a>
-       {% endif %}
-      </li>
-     {% endfor %}
-    </ul>
-   </div>
-  </td>
- </tr>
+  <tr>
+    <th>Series</th>
+    <td>
+      <a href="{% url 'patch-list' project_id=project.linkname %}?series={{ submission.series.id }}">
+        {{ submission.series.name }}
+      </a>
+      |
+      <a id="togglepatchseries" href="javascript:toggle_div('togglepatchseries', 'patchseries', 'expand', 'collapse')">
+        expand
+      </a>
+      <div id="patchseries" class="submissionlist" style="display:none;">
+        <ul>
+{% with submission.series.cover_letter as cover %}
+            <li>
+{% if cover %}
+{% if cover == submission %}
+                {{ cover.name|default:"[no subject]"|truncatechars:100 }}
+{% else %}
+              <a href="{% url 'cover-detail' project_id=project.linkname msgid=cover.url_msgid %}">
+                {{ cover.name|default:"[no subject]"|truncatechars:100 }}
+              </a>
+{% endif %}
+{% endif %}
+            </li>
+{% endwith %}
+{% for sibling in submission.series.patches.all %}
+            <li>
+{% if sibling == submission %}
+                {{ sibling.name|default:"[no subject]"|truncatechars:100 }}
+{% else %}
+              <a href="{% url 'patch-detail' project_id=project.linkname msgid=sibling.url_msgid %}">
+                {{ sibling.name|default:"[no subject]"|truncatechars:100 }}
+              </a>
+{% endif %}
+            </li>
+{% endfor %}
+        </ul>
+      </div>
+    </td>
+  </tr>
 {% endif %}
 {% if submission.related %}
- <tr>
-  <th>Related</th>
-  <td>
-   <a id="togglerelated"
-      href="javascript:toggle_div('togglerelated', 'related')"
-   >show</a>
-   <div id="related" class="submissionlist" style="display:none;">
-    <ul>
-     {% for sibling in related_same_project %}
-      <li>
-       {% if sibling.id != submission.id %}
-        <a href="{% url 'patch-detail' project_id=project.linkname msgid=sibling.url_msgid %}">
-         {{ sibling.name|default:"[no subject]"|truncatechars:100 }}
-        </a>
-       {% endif %}
-      </li>
-     {% endfor %}
-     {% if related_different_project %}
-      <a id="togglerelatedoutside"
-         href="javascript:toggle_div('togglerelatedoutside', 'relatedoutside', 'show from other projects')"
-      >show from other projects</a>
-      <div id="relatedoutside" class="submissionlist" style="display:none;">
-       {% for sibling in related_outside %}
-        <li>
-         <a href="{% url 'patch-detail' project_id=sibling.project.linkname msgid=sibling.url_msgid %}">
-          {{ sibling.name|default:"[no subject]"|truncatechars:100 }}
-         </a> (in {{ sibling.project }})
-        </li>
-       {% endfor %}
+  <tr>
+    <th>Related</th>
+    <td>
+      <a id="togglerelated" href="javascript:toggle_div('togglerelated', 'related')">
+        show
+      </a>
+      <div id="related" class="submissionlist" style="display:none;">
+        <ul>
+{% for sibling in related_same_project %}
+            <li>
+{% if sibling.id != submission.id %}
+                <a href="{% url 'patch-detail' project_id=project.linkname msgid=sibling.url_msgid %}">
+                  {{ sibling.name|default:"[no subject]"|truncatechars:100 }}
+                </a>
+{% endif %}
+            </li>
+{% endfor %}
+{% if related_different_project %}
+            <a id="togglerelatedoutside" href="javascript:toggle_div('togglerelatedoutside', 'relatedoutside', 'show from other projects')">
+              show from other projects
+            </a>
+            <div id="relatedoutside" class="submissionlist" style="display:none;">
+{% for sibling in related_outside %}
+                <li>
+                  <a href="{% url 'patch-detail' project_id=sibling.project.linkname msgid=sibling.url_msgid %}">
+                    {{ sibling.name|default:"[no subject]"|truncatechars:100 }}
+                  </a> (in {{ sibling.project }})
+                </li>
+{% endfor %}
+            </div>
+{% endif %}
+        </ul>
       </div>
-     {% endif %}
-    </ul>
-   </div>
-  </td>
- </tr>
+    </td>
+  </tr>
 {% endif %}
 </table>
 
 <div class="patchforms">
 {% if patchform %}
- <div class="patchform patchform-properties">
-  <h3>Patch Properties</h3>
-   <form method="post">
-    {% csrf_token %}
-    <table class="form">
-     <tr>
-      <th>Change state:</th>
-      <td>
-       {{ patchform.state }}
-       {{ patchform.state.errors }}
-      </td>
-     </tr>
-     <tr>
-      <th>Delegate to:</th>
-      <td>
-       {{ patchform.delegate }}
-       {{ patchform.delegate.errors }}
-      </td>
-     </tr>
-     <tr>
-      <th>Archived:</th>
-      <td>
-       {{ patchform.archived }}
-       {{ patchform.archived.errors }}
-      </td>
-     </tr>
-     <tr>
-      <td></td>
-      <td>
-       <input type="submit" value="Update">
-      </td>
-     </tr>
-    </table>
-  </form>
- </div>
+  <div class="patchform patchform-properties">
+    <h3>Patch Properties</h3>
+
+    <form method="post">
+      {% csrf_token %}
+      <table class="form">
+        <tr>
+          <th>Change state:</th>
+          <td>
+            {{ patchform.state }}
+            {{ patchform.state.errors }}
+          </td>
+        </tr>
+        <tr>
+          <th>Delegate to:</th>
+          <td>
+            {{ patchform.delegate }}
+            {{ patchform.delegate.errors }}
+          </td>
+        </tr>
+        <tr>
+          <th>Archived:</th>
+          <td>
+            {{ patchform.archived }}
+            {{ patchform.archived.errors }}
+          </td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>
+            <input type="submit" value="Update">
+          </td>
+        </tr>
+      </table>
+    </form>
+  </div>
 {% endif %}
 
 {% if createbundleform %}
- <div class="patchform patchform-bundle">
-  <h3>Bundling</h3>
-   <table class="form">
-    <tr>
-     <td>Create bundle:</td>
-     <td>
-       {% if createbundleform.non_field_errors %}
-       <dd class="errors">{{createbundleform.non_field_errors}}</dd>
-       {% endif %}
-      <form method="post">
-       {% csrf_token %}
-       <input type="hidden" name="action" value="createbundle"/>
-       {% if createbundleform.name.errors %}
-       <dd class="errors">{{createbundleform.name.errors}}</dd>
-       {% endif %}
-        {{ createbundleform.name }}
-       <input value="Create" type="submit"/>
-      </form>
-      </td>
-    </tr>
+  <div class="patchform patchform-bundle">
+    <h3>Bundling</h3>
+
+    <table class="form">
+      <tr>
+        <td>Create bundle:</td>
+        <td>
+{% if createbundleform.non_field_errors %}
+          <dd class="errors">{{ createbundleform.non_field_errors }}</dd>
+{% endif %}
+          <form method="post">
+            {% csrf_token %}
+            <input type="hidden" name="action" value="createbundle"/>
+{% if createbundleform.name.errors %}
+            <dd class="errors">{{ createbundleform.name.errors }}</dd>
+{% endif %}
+              {{ createbundleform.name }}
+            <input value="Create" type="submit"/>
+          </form>
+          </td>
+      </tr>
 {% if bundles %}
-    <tr>
-     <td>Add to bundle:</td>
-     <td>
-      <form method="post">
-       {% csrf_token %}
-       <input type="hidden" name="action" value="addtobundle"/>
-       <select name="bundle_id"/>
-        {% for bundle in bundles %}
-         <option value="{{bundle.id}}">{{bundle.name}}</option>
-        {% endfor %}
-        </select>
-       <input value="Add" type="submit"/>
-      </form>
-     </td>
-    </tr>
+      <tr>
+        <td>Add to bundle:</td>
+        <td>
+          <form method="post">
+            {% csrf_token %}
+            <input type="hidden" name="action" value="addtobundle"/>
+            <select name="bundle_id"/>
+{% for bundle in bundles %}
+                <option value="{{ bundle.id }}">{{ bundle.name }}</option>
+{% endfor %}
+              </select>
+            <input value="Add" type="submit"/>
+          </form>
+        </td>
+      </tr>
 {% endif %}
-   </table>
-
- </div>
+    </table>
+  </div>
 {% endif %}
 
- <div style="clear: both;">
- </div>
+  <div style="clear: both;"></div>
 </div>
 
 {% if submission.pull_url %}
 <h2>Pull-request</h2>
-<a class="patch-pull-url" href="{{submission.pull_url}}"
- >{{ submission.pull_url }}</a>
+
+<a class="patch-pull-url" href="{{ submission.pull_url }}">{{ submission.pull_url }}</a>
 {% endif %}
 
 {% if checks %}
 <h2>Checks</h2>
+
 <table class="checks">
-<tr>
-  <th>Context</th>
-  <th>Check</th>
-  <th>Description</th>
-</tr>
+  <tr>
+    <th>Context</th>
+    <th>Check</th>
+    <th>Description</th>
+  </tr>
 {% for check in checks %}
-<tr>
-  <td>{{ check.user }}/{{ check.context }}</td>
-  <td>
-    <span title="Updated {{ check.date|naturaltime }}"
-        class="state {{ check.get_state_display }}">
-      {{ check.get_state_display }}
-    </span>
-  </td>
-  <td>
-    {% if check.target_url %}
-    <a href="{{ check.target_url }}">
-    {% endif %}
-      {{ check.description }}
-    {% if check.target_url %}
-    </a>
-    {% endif %}
-  </td>
-</tr>
+  <tr>
+    <td>{{ check.user }}/{{ check.context }}</td>
+    <td>
+        <span title="Updated {{ check.date|naturaltime }}"
+                class="state {{ check.get_state_display }}">
+            {{ check.get_state_display }}
+        </span>
+    </td>
+    <td>
+        {% if check.target_url %}
+        <a href="{{ check.target_url }}">
+        {% endif %}
+            {{ check.description }}
+        {% if check.target_url %}
+        </a>
+        {% endif %}
+    </td>
+  </tr>
 {% endfor %}
 </table>
 {% endif %}
@@ -277,14 +280,15 @@ function toggle_div(link_id, headers_id, label_show, label_hide)
 {% else %}
 <h2>Message</h2>
 {% endif %}
+
 <div class="comment">
-<div class="meta">
- <span>{{ submission.submitter|personify:project }}</span>
- <span class="pull-right">{{ submission.date }} UTC</span>
-</div>
-<pre class="content">
-{{ submission|commentsyntax }}
-</pre>
+  <div class="meta">
+    <span>{{ submission.submitter|personify:project }}</span>
+    <span class="pull-right">{{ submission.date }} UTC</span>
+  </div>
+  <pre class="content">
+  {{ submission|commentsyntax }}
+  </pre>
 </div>
 
 {% for item in comments %}
@@ -294,14 +298,12 @@ function toggle_div(link_id, headers_id, label_show, label_hide)
 
 <a name="{{ item.id }}"></a>
 <div class="comment">
-<div class="meta">
- <span>{{ item.submitter|personify:project }}</span>
- <span class="pull-right">{{ item.date }} UTC | <a href="{% url 'comment-redirect' comment_id=item.id %}"
-   >#{{ forloop.counter }}</a></span>
-</div>
-<pre class="content">
-{{ item|commentsyntax }}
-</pre>
+  <div class="meta">
+    <span>{{ item.submitter|personify:project }}</span>
+    <span class="pull-right">{{ item.date }} UTC | <a href="{% url 'comment-redirect' comment_id=item.id %}"
+        >#{{ forloop.counter }}</a></span>
+  </div>
+  <pre class="content">{{ item|commentsyntax }}</pre>
 </div>
 {% endfor %}
 
@@ -311,10 +313,7 @@ function toggle_div(link_id, headers_id, label_show, label_hide)
   <h2>Patch</h2>
 </div>
 <div id="patch" class="patch">
-<pre class="content">
-{{ submission|patchsyntax }}
-</pre>
+  <pre class="content">{{ submission|patchsyntax }}</pre>
 </div>
 {% endif %}
-
 {% endblock %}
diff --git patchwork/templates/patchwork/todo-list.html patchwork/templates/patchwork/todo-list.html
index 1ec2713d..6c656b10 100644
--- patchwork/templates/patchwork/todo-list.html
+++ patchwork/templates/patchwork/todo-list.html
@@ -7,11 +7,11 @@
 {% block body %}
 <h1>TODO</h1>
 
-<p>A Patchwork todo-list contains patches that are assigned to you, and
-are in an "action required" state
-({% for state in action_required_states %}{% if forloop.last and not forloop.first %} or {% endif %}{{ state }}{% if not forloop.last and not forloop.first %}, {%endif %}{% endfor %}), and are not archived.
+<p>
+  A Patchwork todo-list contains patches that are assigned to you, are in an
+  "action required" state ({{ action_required_states|join:", " }}), and are
+  not archived.
 </p>
 
 {% include "patchwork/partials/patch-list.html" %}
-
 {% endblock %}
diff --git patchwork/templates/patchwork/todo-lists.html patchwork/templates/patchwork/todo-lists.html
index ea65ea05..2f57bdb7 100644
--- patchwork/templates/patchwork/todo-lists.html
+++ patchwork/templates/patchwork/todo-lists.html
@@ -7,24 +7,27 @@
 <h1>TODO</h1>
 
 {% if todo_lists %}
-<p>You have multiple todo lists. Each todo list contains patches for a single
- project.</p>
+<p>
+  You have multiple todo lists. Each todo list contains patches for a single
+  project.
+</p>
 <table class="vertical">
- <tr>
-  <th>project</th>
-  <th>patches</th>
- </tr>
+  <tr>
+    <th>project</th>
+    <th>patches</th>
+  </tr>
 {% for todo_list in todo_lists %}
- <tr>
-  <td><a
-   href="{% url 'user-todo' project_id=todo_list.project.linkname %}"
-    >{{ todo_list.project.name }}</a></td>
-  <td class="numberformat">{{ todo_list.n_patches }}</td>
- </tr>
+  <tr>
+    <td>
+      <a href="{% url 'user-todo' project_id=todo_list.project.linkname %}">
+        {{ todo_list.project.name }}
+      </a>
+    </td>
+    <td class="numberformat">{{ todo_list.n_patches }}</td>
+  </tr>
 {% endfor %}
 </table>
-
 {% else %}
- No todo lists
+No todo lists
 {% endif %}
 {% endblock %}
diff --git patchwork/templates/patchwork/user-link-confirm.html patchwork/templates/patchwork/user-link-confirm.html
index 79678f64..aa91fcbd 100644
--- patchwork/templates/patchwork/user-link-confirm.html
+++ patchwork/templates/patchwork/user-link-confirm.html
@@ -8,11 +8,10 @@
 {% if errors %}
 <p>{{ errors }}</p>
 {% else %}
- <p>You have successfully linked the email address {{ person.email }} to
-  your Patchwork account</p>
-
+<p>
+  You have successfully linked the email address {{ person.email }} to your
+  Patchwork account
+</p>
 {% endif %}
-<p>Back to <a href="{% url 'user-profile' %}">your
- profile</a>.</p>
-
+<p>Back to <a href="{% url 'user-profile' %}">your profile</a>.</p>
 {% endblock %}
diff --git patchwork/templates/patchwork/user-link.html patchwork/templates/patchwork/user-link.html
index bf331520..8b3fe8f6 100644
--- patchwork/templates/patchwork/user-link.html
+++ patchwork/templates/patchwork/user-link.html
@@ -5,22 +5,28 @@
 
 {% block body %}
 {% if confirmation and not error %}
-<p>A confirmation email has been sent to {{ confirmation.email }}. Click
-on the link provided in the email to confirm that this address belongs to
-you.</p>
+<p>
+  A confirmation email has been sent to {{ confirmation.email }}.
+  Click on the link provided in the email to confirm that this address
+  belongs to you.
+</p>
 {% else %}
-   {% if form.errors %}
-   <p>There was an error submitting your link request.</p>
-    {{ form.non_field_errors }}
-   {% endif %}
-   {% if error %}
-    <ul class="errorlist"><li>{{error}}</li></ul>
-   {% endif %}
+{% if form.errors %}
+<p>
+  There was an error submitting your link request.
+</p>
+{{ form.non_field_errors }}
+{% endif %}
+{% if error %}
+<ul class="errorlist">
+  <li>{{ error }}</li>
+</ul>
+{% endif %}
 
-   <form action="{% url 'user-link' %}" method="post">
-    {% csrf_token %}
-    {{linkform.email.errors}}
-    Link an email address: {{ linkform.email }}
-   </form>
+<form action="{% url 'user-link' %}" method="post">
+  {% csrf_token %}
+  {{ linkform.email.errors }}
+  Link an email address: {{ linkform.email }}
+</form>
 {% endif %}
 {% endblock %}
diff --git templates/404.html templates/404.html
index fe2b0e4e..dd95e2ec 100644
--- templates/404.html
+++ templates/404.html
@@ -4,7 +4,5 @@
 {% block heading %}404: File not found{% endblock %}
 
 {% block body %}
-
 <p>The page URL requested (<code>{{ request_path }}</code>) does not exist.</p>
-
 {% endblock %}
diff --git templates/base.html templates/base.html
index 8accb4c3..92022fd8 100644
--- templates/base.html
+++ templates/base.html
@@ -1,126 +1,130 @@
 {% load static %}
 <!DOCTYPE html>
-<html xmlns="http://www.w3.org/1999/xhtml" lang="en">
- <head>
-  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
-  <title>{% block title %}Patchwork{% endblock %} - Patchwork</title>
-  <link rel="stylesheet" type="text/css" href="{% static "css/bootstrap.min.css" %}"/>
-  <link rel="stylesheet" type="text/css" href="{% static "css/selectize.bootstrap3.css" %}"/>
-  <link rel="stylesheet" type="text/css" href="{% static "css/style.css" %}"/>
-  <script src="{% static "js/jquery-1.10.1.min.js" %}"></script>
-  <script src="{% static "js/jquery.stickytableheaders.min.js" %}"></script>
-  <script src="{% static "js/jquery.checkboxes-1.0.6.min.js" %}"></script>
-  <!-- IE8 support of HTML5 elements and media queries -->
-  <!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
-  <!--[if lt IE 9]>
-    <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js">
+<html lang="en">
+  <head>
+    <meta charset="utf-8">
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+    <title>{% block title %}Patchwork{% endblock %} - Patchwork</title>
+    <link rel="stylesheet" href="{% static "css/bootstrap.min.css" %}"/>
+    <link rel="stylesheet" href="{% static "css/selectize.bootstrap3.css" %}"/>
+    <link rel="stylesheet" href="{% static "css/style.css" %}"/>
+    <script src="{% static "js/jquery-1.10.1.min.js" %}"></script>
+    <script src="{% static "js/jquery.stickytableheaders.min.js" %}"></script>
+    <script src="{% static "js/jquery.checkboxes-1.0.6.min.js" %}"></script>
+    <!-- IE8 support of HTML5 elements and media queries -->
+    <!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
+    <!--[if lt IE 9]>
+        <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js">
+        </script>
+        <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
+        <script src="http://cdnjs.cloudflare.com/ajax/libs/es5-shim/2.0.8/es5-shim.min.js"></script>
+    <![endif]-->
+    <script src="{% static "js/bootstrap.min.js" %}"></script>
+    <script src="{% static "js/selectize.min.js" %}"></script>
+    <script src="{% static "js/clipboard.min.js" %}"></script>
+    <script>
+      $(document).ready(function() {
+        new Clipboard(document.querySelectorAll('button.btn-copy'));
+      });
     </script>
-    <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
-    <script src="http://cdnjs.cloudflare.com/ajax/libs/es5-shim/2.0.8/es5-shim.min.js"></script>
-  <![endif]-->
-  <script src="{% static "js/bootstrap.min.js" %}"></script>
-  <script src="{% static "js/selectize.min.js" %}"></script>
-  <script src="{% static "js/clipboard.min.js" %}"></script>
-  <script>
-   $(document).ready(function() {
-       new Clipboard(document.querySelectorAll('button.btn-copy'));
-   });
-  </script>
 {% block headers %}{% endblock %}
- </head>
- <body>
-  <nav class="navbar navbar-inverse navbar-static-top">
-   <div class="container-fluid">
-    <div class="navbar-header">
-      <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar-collapse">
-        <span class="sr-only">Toggle navigation</span>
-        <span class="icon-bar"></span>
-        <span class="icon-bar"></span>
-        <span class="icon-bar"></span>
-      </button>
-      <a class="navbar-brand" href="{% url 'project-list' %}">Patchwork</a>
-      <span class="navbar-subbrand">
-        {% block heading %}{% if project %} {{project.name}}{% endif %}{% endblock %}
-      </span>
-    </div>
-    <div class="collapse navbar-collapse" id="navbar-collapse">
+  </head>
+  <body>
+    <nav class="navbar navbar-inverse navbar-static-top">
+      <div class="container-fluid">
+        <div class="navbar-header">
+          <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar-collapse">
+            <span class="sr-only">Toggle navigation</span>
+            <span class="icon-bar"></span>
+            <span class="icon-bar"></span>
+            <span class="icon-bar"></span>
+          </button>
+          <a class="navbar-brand" href="{% url 'project-list' %}">Patchwork</a>
+          <span class="navbar-subbrand">
+{% block heading %}
+{% if project %}
+            {{ project.name }}
+{% endif %}
+{% endblock %}
+          </span>
+        </div>
+        <div class="collapse navbar-collapse" id="navbar-collapse">
 {% block navbarmenu %}
 {% if project %}
-      <ul class="nav navbar-nav">
-        <li class="{% block patch_active %}{% endblock %}">
-          <a href="{% url 'patch-list' project_id=project.linkname %}">
-            <span class="glyphicon glyphicon-file"></span>
-            Patches
-          </a>
-        </li>
-        <li class="{% block bundle_active %}{% endblock %}">
-          <a href="{% url 'bundle-list' project_id=project.linkname %}">
-            <span class="glyphicon glyphicon-gift"></span>
-            Bundles
-          </a>
-        </li>
-        <li class="{% block info_active %}{% endblock %}">
-          <a href="{% url 'project-detail' project_id=project.linkname %}">
-            <span class="glyphicon glyphicon-info-sign"></span>
-            About this project
-          </a>
-        </li>
-      </ul>
+          <ul class="nav navbar-nav">
+            <li class="{% block patch_active %}{% endblock %}">
+              <a href="{% url 'patch-list' project_id=project.linkname %}">
+                <span class="glyphicon glyphicon-file"></span>
+                Patches
+              </a>
+            </li>
+            <li class="{% block bundle_active %}{% endblock %}">
+              <a href="{% url 'bundle-list' project_id=project.linkname %}">
+                <span class="glyphicon glyphicon-gift"></span>
+                Bundles
+              </a>
+            </li>
+            <li class="{% block info_active %}{% endblock %}">
+              <a href="{% url 'project-detail' project_id=project.linkname %}">
+                <span class="glyphicon glyphicon-info-sign"></span>
+                About this project
+              </a>
+            </li>
+          </ul>
 {% endif %}
 {% endblock %}
-     <ul class="nav navbar-nav navbar-right">
+          <ul class="nav navbar-nav navbar-right">
 {% if user.is_authenticated %}
-     <li class="dropdown">
-       <a href="#" class="dropdown-toggle" data-toggle="dropdown">
-         <span class="badge">{{ user.profile.n_todo_patches }}</span>
-         <strong>{{ user.username }}</strong> <span class="caret"></span>
-       </a>
-       <ul class="dropdown-menu" role="menu">
-         <li>
-           <a href="{% url 'user-todos' %}">
-             Reviews pending
-             <span class="badge">{{ user.profile.n_todo_patches }}</span>
-           </a>
-         </li>
-         <li>
-           <a href="{% url 'user-bundles' %}">
-             Bundles
-           </a>
-         </li>
-         <li role="separator" class="divider"></li>
+          <li class="dropdown">
+            <a href="#" class="dropdown-toggle" data-toggle="dropdown">
+              <span class="badge">{{ user.profile.n_todo_patches }}</span>
+              <strong>{{ user.username }}</strong> <span class="caret"></span>
+            </a>
+            <ul class="dropdown-menu" role="menu">
+              <li>
+                <a href="{% url 'user-todos' %}">
+                  Reviews pending
+                  <span class="badge">{{ user.profile.n_todo_patches }}</span>
+                </a>
+              </li>
+              <li>
+                <a href="{% url 'user-bundles' %}">
+                  Bundles
+                </a>
+              </li>
+              <li role="separator" class="divider"></li>
 {% if user.is_staff %}
-         <li><a href="{% url 'admin:index' %}">Administration</a></li>
+              <li><a href="{% url 'admin:index' %}">Administration</a></li>
 {% endif %}
-         <li><a href="{% url 'user-profile' %}">View profile</a></li>
-         <li><a href="{% url 'auth_logout' %}">Logout</a></li>
-       </ul>
-     </li>
+              <li><a href="{% url 'user-profile' %}">View profile</a></li>
+              <li><a href="{% url 'auth_logout' %}">Logout</a></li>
+            </ul>
+          </li>
 {% else %}
-     <li><a href="{% url 'auth_login' %}">Login</a></li>
-     <li><a href="{% url 'user-register' %}">Register</a></li>
-     <li><a href="{% url 'mail-settings' %}">Mail settings</a></li>
+          <li><a href="{% url 'auth_login' %}">Login</a></li>
+          <li><a href="{% url 'user-register' %}">Register</a></li>
+          <li><a href="{% url 'mail-settings' %}">Mail settings</a></li>
 {% endif %}
-     </ul>
-    </div>
-   </div>
-  </nav>
+          </ul>
+        </div>
+      </div>
+    </nav>
 {% if messages %}
-  <div id="messages">
-  {% for message in messages %}
-  {# TODO(stephenfin): Make use of message.tags when completely #}
-  {# converted to django.contrib.messages #}
-   <div class="message">{{ message }}</div>
-  {% endfor %}
-  </div>
+    <div id="messages">
+{% for message in messages %}
+{# TODO(stephenfin): Make use of message.tags when completely #}
+{# converted to django.contrib.messages #}
+      <div class="message">{{ message }}</div>
+{% endfor %}
+    </div>
 {% endif %}
-  <div class="container-fluid">
-{% block body %}
-{% endblock %}
-  </div>
-  <div id="footer">
-   <a href="http://jk.ozlabs.org/projects/patchwork/">patchwork</a>
-   patch tracking system | version {{version}} | <a
-   href="{% url 'about' %}">about patchwork</a>
-  </div>
- </body>
+    <div class="container-fluid">
+{% block body %}{% endblock %}
+    </div>
+    <div id="footer">
+      <a href="http://jk.ozlabs.org/projects/patchwork/">patchwork</a>
+      patch tracking system | version {{ version }} |
+      <a href="{% url 'about' %}">about patchwork</a>
+    </div>
+  </body>
 </html>
diff --git templates/registration/password_change_done.html templates/registration/password_change_done.html
index 65d89ef6..88b7d26d 100644
--- templates/registration/password_change_done.html
+++ templates/registration/password_change_done.html
@@ -4,7 +4,5 @@
 {% block heading %}Password Change Complete{% endblock %}
 
 {% block body %}
-
 <p>Your password has been changed successfully.</p>
-
 {% endblock %}
diff --git templates/registration/password_change_form.html templates/registration/password_change_form.html
index 8abe55ef..3e9a0788 100644
--- templates/registration/password_change_form.html
+++ templates/registration/password_change_form.html
@@ -4,42 +4,36 @@
 {% block heading %}Password Change{% endblock %}
 
 {% block body %}
-
-<p>Please enter your old password, for security's sake, and then enter your new
-password twice so we can verify you typed it in correctly.</p>
+<p>
+  Please enter your old password, for security's sake, and then enter your new
+  password twice so we can verify you typed it in correctly.
+</p>
 
 <form method="post">
-{% csrf_token %}
-
-<table class="form passwordform">
-
+  {% csrf_token %}
+  <table class="form passwordform">
 {% if form.errors %}
- <tr>
-  <td colspan="2" class="error">Please correct the errors below.</p>
- </tr>
+    <tr>
+      <td colspan="2" class="error">Please correct the errors below.</p>
+    </tr>
 {% endif %}
-
-
 {% for field in form %}
-  <tr>
-   <td>{{ field.label_tag }}</td>
-   <td>
-    {{ field.errors }}
-    {{ field }}
+    <tr>
+      <td>{{ field.label_tag }}</td>
+      <td>
+        {{ field.errors }}
+        {{ field }}
 {% if field.help_text %}
-    <div class="help_text"/>{{ field.help_text }}</div>
+        <div class="help_text"/>{{ field.help_text }}</div>
 {% endif %}
-   </td>
-  </tr>
+      </td>
+    </tr>
 {% endfor %}
-
- <tr>
-  <td colspan="2" class="error">
-   <input type="submit" value="Change my password" class="default" />
-  </td>
- </tr>
-
-</table>
-
+    <tr>
+      <td colspan="2" class="error">
+        <input type="submit" value="Change my password" class="default" />
+      </td>
+    </tr>
+  </table>
 </form>
 {% endblock %}
diff --git templates/registration/password_reset_complete.html templates/registration/password_reset_complete.html
index 1d88fdff..8678ee89 100644
--- templates/registration/password_reset_complete.html
+++ templates/registration/password_reset_complete.html
@@ -4,6 +4,5 @@
 {% block heading %}Password reset completed{% endblock %}
 
 {% block body %}
-
-<p>Your password has been set.  You may go ahead and log in now.</p>
+<p>Your password has been set. You may go ahead and log in now.</p>
 {% endblock %}
diff --git templates/registration/password_reset_confirm.html templates/registration/password_reset_confirm.html
index 7e1e2f1e..4ab2357f 100644
--- templates/registration/password_reset_confirm.html
+++ templates/registration/password_reset_confirm.html
@@ -4,48 +4,46 @@
 {% block heading %}Password reset confirmation{% endblock %}
 
 {% block body %}
-
 {% if validlink %}
-<p>Your username, in case you've forgotten: {{ form.user.get_username }}</p>
-<p>Please enter your new password twice so we can verify you typed it in
-correctly</p>
+<p>
+  Your username, in case you've forgotten: {{ form.user.get_username }}
+</p>
+<p>
+  Please enter your new password twice so we can verify you typed it in
+  correctly.
+</p>
 
 <form method="post">
-{% csrf_token %}
-
-<table class="form passwordform">
-
+  {% csrf_token %}
+  <table class="form passwordform">
 {% if form.errors %}
- <tr>
-  <td colspan="2" class="error">Please correct the errors below.</p>
- </tr>
+    <tr>
+      <td colspan="2" class="error">Please correct the errors below.</p>
+    </tr>
 {% endif %}
-
-
 {% for field in form %}
-  <tr>
-   <td>{{ field.label_tag }}</td>
-   <td>
-    {{ field.errors }}
-    {{ field }}
+    <tr>
+      <td>{{ field.label_tag }}</td>
+      <td>
+        {{ field.errors }}
+        {{ field }}
 {% if field.help_text %}
-    <div class="help_text"/>{{ field.help_text }}</div>
+        <div class="help_text"/>{{ field.help_text }}</div>
 {% endif %}
-   </td>
-  </tr>
+      </td>
+    </tr>
 {% endfor %}
-
- <tr>
-  <td colspan="2">
-   <input type="submit" value="Set my password" class="default" />
-  </td>
- </tr>
-
-</table>
-
+    <tr>
+      <td colspan="2">
+        <input type="submit" value="Set my password" class="default" />
+      </td>
+    </tr>
+  </table>
 </form>
 {% else %}
-<p>The password reset link was invalid, possibly because it has already
-been used.  Please request a new password reset.</p>
+<p>
+  The password reset link was invalid, possibly because it has already
+  been used. Please request a new password reset.
+</p>
 {% endif %}
 {% endblock %}
diff --git templates/registration/password_reset_done.html templates/registration/password_reset_done.html
index fe9e551a..6070f767 100644
--- templates/registration/password_reset_done.html
+++ templates/registration/password_reset_done.html
@@ -4,10 +4,12 @@
 {% block heading %}Password reset{% endblock %}
 
 {% block body %}
-
-<p>We have emailed you instructions for setting your password.
-You should be receiving them shortly.</p>
-<p>If you don't receive an email, please make sure you've entered the
-address you registered with, and check your spam folder</p>
-
+<p>
+  We have emailed you instructions for setting your password.
+  You should be receiving them shortly.
+</p>
+<p>
+  If you don't receive an email, please make sure you've entered the
+  address you registered with, and check your spam folder.
+</p>
 {% endblock %}
diff --git templates/registration/password_reset_email.html templates/registration/password_reset_email.html
index bdc28518..b90c13af 100644
--- templates/registration/password_reset_email.html
+++ templates/registration/password_reset_email.html
@@ -5,7 +5,7 @@ your user account on the Patchwork patch-tracking system.
 Please visit the following url and choose a new password:
 
 {% block reset_link %}
-{{ protocol }}://{{domain}}{% url 'password_reset_confirm' uidb64=uid token=token %}
+{{ protocol }}://{{ domain }}{% url 'password_reset_confirm' uidb64=uid token=token %}
 {% endblock %}
 
 Happy patchworking.
diff --git templates/registration/password_reset_form.html templates/registration/password_reset_form.html
index 4718f436..fa6f3f1a 100644
--- templates/registration/password_reset_form.html
+++ templates/registration/password_reset_form.html
@@ -4,42 +4,36 @@
 {% block heading %}Password reset{% endblock %}
 
 {% block body %}
-
-<p>Forgotten your password? Enter your email address below, and we will
-email instructions for setting a new one.</p>
+<p>
+  Forgotten your password? Enter your email address below, and we will
+  email instructions for setting a new one.
+</p>
 
 <form method="post">
-{% csrf_token %}
-
-<table class="form passwordform">
-
+  {% csrf_token %}
+  <table class="form passwordform">
 {% if form.errors %}
- <tr>
-  <td colspan="2" class="error">Please correct the errors below.</p>
- </tr>
+    <tr>
+      <td colspan="2" class="error">Please correct the errors below.</p>
+    </tr>
 {% endif %}
-
-
 {% for field in form %}
-  <tr>
-   <td>{{ field.label_tag }}</td>
-   <td>
-    {{ field.errors }}
-    {{ field }}
+    <tr>
+      <td>{{ field.label_tag }}</td>
+      <td>
+        {{ field.errors }}
+        {{ field }}
 {% if field.help_text %}
-    <div class="help_text"/>{{ field.help_text }}</div>
+        <div class="help_text"/>{{ field.help_text }}</div>
 {% endif %}
-   </td>
-  </tr>
+      </td>
+    </tr>
 {% endfor %}
-
- <tr>
-  <td colspan="2">
-   <input type="submit" value="Reset my password" class="default" />
-  </td>
- </tr>
-
-</table>
-
+    <tr>
+      <td colspan="2">
+        <input type="submit" value="Reset my password" class="default" />
+      </td>
+    </tr>
+  </table>
 </form>
 {% endblock %}
-- 
2.31.1



More information about the Patchwork mailing list