From a9b3cb9309863048351b3416006d9fad52874e6c Mon Sep 17 00:00:00 2001
From: "J.-S. Caux" <J.S.Caux@uva.nl>
Date: Sun, 18 Dec 2016 15:10:16 +0100
Subject: [PATCH] Installation of documentation via sphinx, django-sphinx
 (sphinxdoc). Haystack search facility was required and is installed, with
 Whoosh engine.

Requirements updated.

Instructions for setting things up:
haystack: http://django-haystack.readthedocs.io/en/v2.5.0/ (choice: Whoosh engine)
sphinx: http://www.sphinx-doc.org/en/1.5.1/
sphinxdoc: http://django-sphinxdoc.readthedocs.io/en/latest/

In particular, a Project has to be defined in app sphinxdoc in order for docs to be displayed (starting at /docs/).

New host_settings needed:
HAYSTACK_PATH (for the location of the Whoosh index (suggestion: project's root); make sure this is not readable by site visitors)
---
 docs/_build/doctrees/environment.pickle       | Bin 362911 -> 378954 bytes
 docs/_build/doctrees/index.doctree            | Bin 4839 -> 4861 bytes
 docs/_build/doctrees/modules/models.doctree   | Bin 94743 -> 92365 bytes
 docs/_build/doctrees/modules/views.doctree    | Bin 97884 -> 95782 bytes
 .../html/_modules/commentaries/models.html    |  30 +--
 .../html/_modules/commentaries/views.html     |  85 ++++----
 .../_build/html/_modules/comments/models.html |   2 +
 docs/_build/html/_modules/index.html          |   2 +
 .../_build/html/_modules/journals/models.html |  16 +-
 docs/_build/html/_modules/journals/views.html |  11 +-
 docs/_build/html/_modules/scipost/models.html | 197 ++++++------------
 docs/_build/html/_modules/scipost/views.html  | 133 +++++++++++-
 .../html/_modules/submissions/models.html     |  68 ++++--
 .../html/_modules/submissions/views.html      |  27 +++
 docs/_build/html/_modules/theses/models.html  |   2 +
 docs/_build/html/genindex.html                |  14 +-
 docs/_build/html/index.html                   |  18 +-
 docs/_build/html/modules/models.html          |  12 +-
 docs/_build/html/modules/views.html           |  15 +-
 docs/_build/html/objects.inv                  | Bin 1191 -> 1260 bytes
 docs/_build/html/py-modindex.html             |   2 +
 docs/_build/html/search.html                  |   2 +
 docs/_build/html/searchindex.js               |   2 +-
 docs/contributors/contributors.rst            |   8 +
 .../editorial_administrators/#production.rst# |   8 +
 .../editorial_administrators/.#production.rst |   1 +
 .../editorial_administrators.rst              |   8 +
 .../editorial_administrators/production.rst   |   6 +
 docs/developers/codebase/codebase.rst         |   9 +
 .../codebase}/modules/models.rst              |   0
 .../codebase}/modules/views.rst               |   0
 docs/developers/developers.rst                |   9 +
 docs/developers/maintenance/docs.rst          |  22 ++
 docs/developers/maintenance/maintenance.rst   |   8 +
 docs/index.rst                                |   6 +-
 scipost/templates/scipost/howto.html          |  25 +++
 .../templates/scipost/howto_production.html   | 135 ++++++++++++
 37 files changed, 649 insertions(+), 234 deletions(-)
 create mode 100644 docs/contributors/contributors.rst
 create mode 100644 docs/contributors/editorial_administrators/#production.rst#
 create mode 120000 docs/contributors/editorial_administrators/.#production.rst
 create mode 100644 docs/contributors/editorial_administrators/editorial_administrators.rst
 create mode 100644 docs/contributors/editorial_administrators/production.rst
 create mode 100644 docs/developers/codebase/codebase.rst
 rename docs/{ => developers/codebase}/modules/models.rst (100%)
 rename docs/{ => developers/codebase}/modules/views.rst (100%)
 create mode 100644 docs/developers/developers.rst
 create mode 100644 docs/developers/maintenance/docs.rst
 create mode 100644 docs/developers/maintenance/maintenance.rst
 create mode 100644 scipost/templates/scipost/howto.html
 create mode 100644 scipost/templates/scipost/howto_production.html

diff --git a/docs/_build/doctrees/environment.pickle b/docs/_build/doctrees/environment.pickle
index 5ff5e6a9ea55399cf327919913699348eee34d57..2b504017332c5958842ce6f5e385ed68f60371fa 100644
GIT binary patch
delta 27997
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
CxccY-

delta 18865
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

diff --git a/docs/_build/doctrees/index.doctree b/docs/_build/doctrees/index.doctree
index 82cc964c8abcdb3c95596212e56f62622823670f..9de7c0f38e1f089efb45c39a7e8824b3827a63e1 100644
GIT binary patch
literal 4861
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

literal 4839
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
R(%L#?+@zI|mdSgE{{iqOHah?S

diff --git a/docs/_build/doctrees/modules/models.doctree b/docs/_build/doctrees/modules/models.doctree
index 5357f423e252b5f59617dc9480bc463237ec1177..e20433445773022400c62eea6b976307ff0c7dbd 100644
GIT binary patch
literal 92365
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
BX2t*j

literal 94743
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

diff --git a/docs/_build/doctrees/modules/views.doctree b/docs/_build/doctrees/modules/views.doctree
index e0a3eca4d13f53f5d925e889ef7f91a0154777ae..f261a7ae45fbaa86aa5294b8eb331d7ddd4ca64d 100644
GIT binary patch
literal 95782
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

literal 97884
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
B>cs#6

diff --git a/docs/_build/html/_modules/commentaries/models.html b/docs/_build/html/_modules/commentaries/models.html
index 3941d4f3c..96dd6588b 100644
--- a/docs/_build/html/_modules/commentaries/models.html
+++ b/docs/_build/html/_modules/commentaries/models.html
@@ -84,8 +84,10 @@
             
             
                 <ul>
+<li class="toctree-l1"><a class="reference internal" href="../../howto/production.html">Production of SciPost Publications</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../../modules/models.html">Models</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../../modules/views.html">Views</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../dev/maintenance/docs.html">Maintenance of SciPost documentation</a></li>
 </ul>
 
             
@@ -194,7 +196,7 @@
         <span class="n">verbose_name_plural</span> <span class="o">=</span> <span class="s1">&#39;Commentaries&#39;</span>
 
 
-    <span class="k">def</span> <span class="nf">__str__</span> <span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+    <span class="k">def</span> <span class="nf">__str__</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
         <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">pub_title</span>
 
 
@@ -239,7 +241,7 @@
         <span class="k">return</span> <span class="n">template</span><span class="o">.</span><span class="n">render</span><span class="p">(</span><span class="n">context</span><span class="p">)</span>
 
 
-    <span class="k">def</span> <span class="nf">header_as_li</span> <span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+    <span class="k">def</span> <span class="nf">header_as_li</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
         <span class="c1"># for display in search lists</span>
         <span class="n">context</span> <span class="o">=</span> <span class="n">Context</span><span class="p">({</span><span class="s1">&#39;scipost_url&#39;</span><span class="p">:</span> <span class="bp">self</span><span class="o">.</span><span class="n">scipost_url</span><span class="p">(),</span> <span class="s1">&#39;pub_title&#39;</span><span class="p">:</span> <span class="bp">self</span><span class="o">.</span><span class="n">pub_title</span><span class="p">,</span>
                            <span class="s1">&#39;author_list&#39;</span><span class="p">:</span> <span class="bp">self</span><span class="o">.</span><span class="n">author_list</span><span class="p">,</span>
@@ -270,13 +272,11 @@
         <span class="k">return</span> <span class="n">template</span><span class="o">.</span><span class="n">render</span><span class="p">(</span><span class="n">context</span><span class="p">)</span>
 
 
-    <span class="k">def</span> <span class="nf">simple_header_as_li</span> <span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+    <span class="k">def</span> <span class="nf">simple_header_as_li</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
         <span class="c1"># for display in Lists</span>
         <span class="n">context</span> <span class="o">=</span> <span class="n">Context</span><span class="p">({</span><span class="s1">&#39;scipost_url&#39;</span><span class="p">:</span> <span class="bp">self</span><span class="o">.</span><span class="n">scipost_url</span><span class="p">(),</span> <span class="s1">&#39;pub_title&#39;</span><span class="p">:</span> <span class="bp">self</span><span class="o">.</span><span class="n">pub_title</span><span class="p">,</span>
                            <span class="s1">&#39;author_list&#39;</span><span class="p">:</span> <span class="bp">self</span><span class="o">.</span><span class="n">author_list</span><span class="p">})</span>
         <span class="n">header</span> <span class="o">=</span> <span class="p">(</span><span class="s1">&#39;&lt;li&gt;&#39;</span>
-                  <span class="c1">#&#39;&lt;div class=&quot;flex-container&quot;&gt;&#39;</span>
-                  <span class="c1">#&#39;&lt;div class=&quot;flex-whitebox0&quot;&gt;&#39;</span>
                   <span class="s1">&#39;&lt;p&gt;&lt;a href=&quot;{{ scipost_url }}&quot; &#39;</span>
                   <span class="s1">&#39;class=&quot;pubtitleli&quot;&gt;{{ pub_title }}&lt;/a&gt;&lt;/p&gt;&#39;</span>
                   <span class="s1">&#39;&lt;p&gt;by {{ author_list }}&#39;</span><span class="p">)</span>
@@ -289,40 +289,28 @@
             <span class="n">header</span> <span class="o">+=</span> <span class="s1">&#39;, &lt;a href=&quot;{{ arxiv_link }}&quot;&gt;{{ arxiv_link }}&lt;/a&gt;&#39;</span>
             <span class="n">context</span><span class="p">[</span><span class="s1">&#39;arxiv_link&#39;</span><span class="p">]</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">arxiv_link</span>
         <span class="n">header</span> <span class="o">+=</span> <span class="s1">&#39;&lt;/p&gt;&#39;</span>
-        <span class="n">header</span> <span class="o">+=</span> <span class="p">(</span><span class="c1">#&#39;&lt;/div&gt;&lt;/div&gt;&#39;</span>
-                   <span class="s1">&#39;&lt;/li&gt;&#39;</span><span class="p">)</span>
+        <span class="n">header</span> <span class="o">+=</span> <span class="s1">&#39;&lt;/li&gt;&#39;</span>
         <span class="n">template</span> <span class="o">=</span> <span class="n">Template</span><span class="p">(</span><span class="n">header</span><span class="p">)</span>
         <span class="k">return</span> <span class="n">template</span><span class="o">.</span><span class="n">render</span><span class="p">(</span><span class="n">context</span><span class="p">)</span>
 
 
-<div class="viewcode-block" id="Commentary.parse_links_into_urls"><a class="viewcode-back" href="../../modules/models.html#commentaries.models.Commentary.parse_links_into_urls">[docs]</a>    <span class="k">def</span> <span class="nf">parse_links_into_urls</span> <span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+<div class="viewcode-block" id="Commentary.parse_links_into_urls"><a class="viewcode-back" href="../../modules/models.html#commentaries.models.Commentary.parse_links_into_urls">[docs]</a>    <span class="k">def</span> <span class="nf">parse_links_into_urls</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
         <span class="sd">&quot;&quot;&quot; Takes the arXiv nr or DOI and turns it into the urls &quot;&quot;&quot;</span>
         <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">pub_DOI</span><span class="p">:</span>
             <span class="bp">self</span><span class="o">.</span><span class="n">arxiv_or_DOI_string</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">pub_DOI</span>
-<span class="c1">#            self.arxiv_or_DOI_string = self.arxiv_or_DOI_string.replace(&#39;http://dx.doi.org/&#39;, &#39;&#39;)</span>
             <span class="bp">self</span><span class="o">.</span><span class="n">pub_DOI_link</span> <span class="o">=</span> <span class="s1">&#39;http://dx.doi.org/&#39;</span> <span class="o">+</span> <span class="bp">self</span><span class="o">.</span><span class="n">pub_DOI</span>
         <span class="k">elif</span> <span class="bp">self</span><span class="o">.</span><span class="n">arxiv_identifier</span><span class="p">:</span>
-<span class="c1">#            self.arxiv_or_DOI_string = str(self.arxiv_link)</span>
-<span class="c1">#            # Format required: either identifier arXiv:1234.56789v10 or old-style arXiv:cond-mat/9712001v1</span>
-<span class="c1">#            # strip:</span>
-<span class="c1">#            self.arxiv_or_DOI_string = self.arxiv_or_DOI_string.replace(&#39;http://&#39;, &#39;&#39;)</span>
-<span class="c1">#            # Old style: from arxiv.org/abs/1234.5678 into arXiv:1234.5678 (new identifier style)</span>
-<span class="c1">#            self.arxiv_or_DOI_string = self.arxiv_or_DOI_string.replace(&#39;arxiv.org/&#39;, &#39;&#39;)</span>
-<span class="c1">#            self.arxiv_or_DOI_string = self.arxiv_or_DOI_string.replace(&#39;abs/&#39;, &#39;&#39;)</span>
-<span class="c1">#            self.arxiv_or_DOI_string = self.arxiv_or_DOI_string.replace(&#39;pdf/&#39;, &#39;&#39;)</span>
-<span class="c1">#            # make sure arXiv prefix is there:</span>
-<span class="c1">#            self.arxiv_or_DOI_string = &#39;arXiv:&#39; + self.arxiv_or_DOI_string</span>
             <span class="bp">self</span><span class="o">.</span><span class="n">arxiv_or_DOI_string</span> <span class="o">=</span> <span class="s1">&#39;arXiv:&#39;</span> <span class="o">+</span> <span class="bp">self</span><span class="o">.</span><span class="n">arxiv_identifier</span>
             <span class="bp">self</span><span class="o">.</span><span class="n">arxiv_link</span> <span class="o">=</span> <span class="s1">&#39;http://arxiv.org/abs/&#39;</span> <span class="o">+</span> <span class="bp">self</span><span class="o">.</span><span class="n">arxiv_identifier</span>
         <span class="k">else</span><span class="p">:</span> <span class="c1"># should never come here</span>
             <span class="k">pass</span>
         <span class="bp">self</span><span class="o">.</span><span class="n">save</span><span class="p">()</span></div>
 
-<div class="viewcode-block" id="Commentary.scipost_url"><a class="viewcode-back" href="../../modules/models.html#commentaries.models.Commentary.scipost_url">[docs]</a>    <span class="k">def</span> <span class="nf">scipost_url</span> <span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+<div class="viewcode-block" id="Commentary.scipost_url"><a class="viewcode-back" href="../../modules/models.html#commentaries.models.Commentary.scipost_url">[docs]</a>    <span class="k">def</span> <span class="nf">scipost_url</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
         <span class="sd">&quot;&quot;&quot; Returns the url of the SciPost Commentary Page &quot;&quot;&quot;</span>
         <span class="k">return</span> <span class="s1">&#39;/commentary/&#39;</span> <span class="o">+</span> <span class="bp">self</span><span class="o">.</span><span class="n">arxiv_or_DOI_string</span></div>
 
-<div class="viewcode-block" id="Commentary.scipost_url_full"><a class="viewcode-back" href="../../modules/models.html#commentaries.models.Commentary.scipost_url_full">[docs]</a>    <span class="k">def</span> <span class="nf">scipost_url_full</span> <span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+<div class="viewcode-block" id="Commentary.scipost_url_full"><a class="viewcode-back" href="../../modules/models.html#commentaries.models.Commentary.scipost_url_full">[docs]</a>    <span class="k">def</span> <span class="nf">scipost_url_full</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
         <span class="sd">&quot;&quot;&quot; Returns the url of the SciPost Commentary Page &quot;&quot;&quot;</span>
         <span class="k">return</span> <span class="s1">&#39;https://scipost.org/commentary/&#39;</span> <span class="o">+</span> <span class="bp">self</span><span class="o">.</span><span class="n">arxiv_or_DOI_string</span></div></div>
 </pre></div>
diff --git a/docs/_build/html/_modules/commentaries/views.html b/docs/_build/html/_modules/commentaries/views.html
index fc65e3fd7..05dcc5a85 100644
--- a/docs/_build/html/_modules/commentaries/views.html
+++ b/docs/_build/html/_modules/commentaries/views.html
@@ -84,8 +84,10 @@
             
             
                 <ul>
+<li class="toctree-l1"><a class="reference internal" href="../../howto/production.html">Production of SciPost Publications</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../../modules/models.html">Models</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../../modules/views.html">Views</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../dev/maintenance/docs.html">Maintenance of SciPost documentation</a></li>
 </ul>
 
             
@@ -171,38 +173,37 @@
     <span class="k">if</span> <span class="n">request</span><span class="o">.</span><span class="n">method</span> <span class="o">==</span> <span class="s1">&#39;POST&#39;</span><span class="p">:</span>
         <span class="n">form</span> <span class="o">=</span> <span class="n">RequestCommentaryForm</span><span class="p">(</span><span class="n">request</span><span class="o">.</span><span class="n">POST</span><span class="p">)</span>
         <span class="k">if</span> <span class="n">form</span><span class="o">.</span><span class="n">is_valid</span><span class="p">():</span>
-<span class="c1">#            if form.cleaned_data[&#39;arxiv_identifier&#39;] is None and form.cleaned_data[&#39;pub_DOI&#39;] is None:</span>
             <span class="n">errormessage</span> <span class="o">=</span> <span class="s1">&#39;&#39;</span>
             <span class="n">existing_commentary</span> <span class="o">=</span> <span class="kc">None</span>
-            <span class="k">if</span> <span class="n">form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;arxiv_identifier&#39;</span><span class="p">]</span> <span class="o">==</span><span class="s1">&#39;&#39;</span> <span class="ow">and</span> <span class="n">form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;pub_DOI&#39;</span><span class="p">]</span> <span class="o">==</span> <span class="s1">&#39;&#39;</span><span class="p">:</span>
+            <span class="k">if</span> <span class="ow">not</span> <span class="n">form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;arxiv_identifier&#39;</span><span class="p">]</span> <span class="ow">and</span> <span class="ow">not</span> <span class="n">form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;pub_DOI&#39;</span><span class="p">]:</span>
                 <span class="n">errormessage</span> <span class="o">=</span> <span class="p">(</span><span class="s1">&#39;You must provide either a DOI (for a published paper) &#39;</span>
                                 <span class="s1">&#39;or an arXiv identifier (for a preprint).&#39;</span><span class="p">)</span>
-            <span class="k">elif</span> <span class="p">(</span><span class="n">form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;arxiv_identifier&#39;</span><span class="p">]</span> <span class="o">!=</span><span class="s1">&#39;&#39;</span> <span class="ow">and</span>
+            <span class="k">elif</span> <span class="p">(</span><span class="n">form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;arxiv_identifier&#39;</span><span class="p">]</span> <span class="ow">and</span>
                   <span class="p">(</span><span class="n">Commentary</span><span class="o">.</span><span class="n">objects</span>
                    <span class="o">.</span><span class="n">filter</span><span class="p">(</span><span class="n">arxiv_identifier</span><span class="o">=</span><span class="n">form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;arxiv_identifier&#39;</span><span class="p">])</span><span class="o">.</span><span class="n">exists</span><span class="p">())):</span>
                 <span class="n">errormessage</span> <span class="o">=</span> <span class="s1">&#39;There already exists a Commentary Page on this preprint, see&#39;</span>
                 <span class="n">existing_commentary</span> <span class="o">=</span> <span class="n">get_object_or_404</span><span class="p">(</span>
                     <span class="n">Commentary</span><span class="p">,</span>
                     <span class="n">arxiv_identifier</span><span class="o">=</span><span class="n">form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;arxiv_identifier&#39;</span><span class="p">])</span>
-            <span class="k">elif</span> <span class="p">(</span><span class="n">form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;pub_DOI&#39;</span><span class="p">]</span> <span class="o">!=</span><span class="s1">&#39;&#39;</span> <span class="ow">and</span>
+            <span class="k">elif</span> <span class="p">(</span><span class="n">form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;pub_DOI&#39;</span><span class="p">]</span> <span class="ow">and</span>
                   <span class="n">Commentary</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span><span class="n">pub_DOI</span><span class="o">=</span><span class="n">form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;pub_DOI&#39;</span><span class="p">])</span><span class="o">.</span><span class="n">exists</span><span class="p">()):</span>
                 <span class="n">errormessage</span> <span class="o">=</span> <span class="s1">&#39;There already exists a Commentary Page on this publication, see&#39;</span>
                 <span class="n">existing_commentary</span> <span class="o">=</span> <span class="n">get_object_or_404</span><span class="p">(</span><span class="n">Commentary</span><span class="p">,</span> <span class="n">pub_DOI</span><span class="o">=</span><span class="n">form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;pub_DOI&#39;</span><span class="p">])</span>
-            <span class="k">if</span> <span class="n">errormessage</span> <span class="o">!=</span> <span class="s1">&#39;&#39;</span><span class="p">:</span>
+            <span class="k">if</span> <span class="n">errormessage</span><span class="p">:</span>
                 <span class="n">doiform</span> <span class="o">=</span> <span class="n">DOIToQueryForm</span><span class="p">()</span>
                 <span class="n">identifierform</span> <span class="o">=</span> <span class="n">IdentifierToQueryForm</span><span class="p">()</span>
                 <span class="n">context</span> <span class="o">=</span> <span class="p">{</span><span class="s1">&#39;form&#39;</span><span class="p">:</span> <span class="n">form</span><span class="p">,</span> <span class="s1">&#39;doiform&#39;</span><span class="p">:</span> <span class="n">doiform</span><span class="p">,</span> <span class="s1">&#39;identifierform&#39;</span><span class="p">:</span> <span class="n">identifierform</span><span class="p">,</span>
                            <span class="s1">&#39;errormessage&#39;</span><span class="p">:</span> <span class="n">errormessage</span><span class="p">,</span>
                            <span class="s1">&#39;existing_commentary&#39;</span><span class="p">:</span> <span class="n">existing_commentary</span><span class="p">}</span>
                 <span class="k">return</span> <span class="n">render</span><span class="p">(</span><span class="n">request</span><span class="p">,</span> <span class="s1">&#39;commentaries/request_commentary.html&#39;</span><span class="p">,</span> <span class="n">context</span><span class="p">)</span>
-            <span class="c1"># otherwise we can create the Commentary</span>
+            
+            <span class="c1"># Otherwise we can create the Commentary</span>
             <span class="n">contributor</span> <span class="o">=</span> <span class="n">Contributor</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">user</span><span class="o">=</span><span class="n">request</span><span class="o">.</span><span class="n">user</span><span class="p">)</span>
             <span class="n">commentary</span> <span class="o">=</span> <span class="n">Commentary</span> <span class="p">(</span>
                 <span class="n">requested_by</span> <span class="o">=</span> <span class="n">contributor</span><span class="p">,</span>
                 <span class="nb">type</span> <span class="o">=</span> <span class="n">form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;type&#39;</span><span class="p">],</span>
                 <span class="n">discipline</span> <span class="o">=</span> <span class="n">form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;discipline&#39;</span><span class="p">],</span>
                 <span class="n">domain</span> <span class="o">=</span> <span class="n">form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;domain&#39;</span><span class="p">],</span>
-<span class="c1">#                specialization = form.cleaned_data[&#39;specialization&#39;],</span>
                 <span class="n">subject_area</span> <span class="o">=</span> <span class="n">form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;subject_area&#39;</span><span class="p">],</span>
                 <span class="n">pub_title</span> <span class="o">=</span> <span class="n">form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;pub_title&#39;</span><span class="p">],</span>
                 <span class="n">arxiv_identifier</span> <span class="o">=</span> <span class="n">form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;arxiv_identifier&#39;</span><span class="p">],</span>
@@ -218,7 +219,7 @@
                 <span class="p">)</span>
             <span class="n">commentary</span><span class="o">.</span><span class="n">parse_links_into_urls</span><span class="p">()</span>
             <span class="n">commentary</span><span class="o">.</span><span class="n">save</span><span class="p">()</span>
-<span class="c1">#            return HttpResponseRedirect(&#39;request_commentary_ack&#39;)</span>
+            
             <span class="n">context</span> <span class="o">=</span> <span class="p">{</span><span class="s1">&#39;ack_header&#39;</span><span class="p">:</span> <span class="s1">&#39;Thank you for your request for a Commentary Page&#39;</span><span class="p">,</span>
                        <span class="s1">&#39;ack_message&#39;</span><span class="p">:</span> <span class="s1">&#39;Your request will soon be handled by an Editor. &#39;</span><span class="p">,</span>
                        <span class="s1">&#39;followup_message&#39;</span><span class="p">:</span> <span class="s1">&#39;Return to your &#39;</span><span class="p">,</span>
@@ -247,13 +248,14 @@
             <span class="k">elif</span> <span class="n">Commentary</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span><span class="n">pub_DOI</span><span class="o">=</span><span class="n">doiform</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;doi&#39;</span><span class="p">])</span><span class="o">.</span><span class="n">exists</span><span class="p">():</span>
                 <span class="n">errormessage</span> <span class="o">=</span> <span class="s1">&#39;There already exists a Commentary Page on this publication, see&#39;</span>
                 <span class="n">existing_commentary</span> <span class="o">=</span> <span class="n">get_object_or_404</span><span class="p">(</span><span class="n">Commentary</span><span class="p">,</span> <span class="n">pub_DOI</span><span class="o">=</span><span class="n">doiform</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;doi&#39;</span><span class="p">])</span>
-            <span class="k">if</span> <span class="n">errormessage</span> <span class="o">!=</span> <span class="s1">&#39;&#39;</span><span class="p">:</span>
+            <span class="k">if</span> <span class="n">errormessage</span><span class="p">:</span>
                 <span class="n">form</span> <span class="o">=</span> <span class="n">RequestCommentaryForm</span><span class="p">()</span>
                 <span class="n">identifierform</span> <span class="o">=</span> <span class="n">IdentifierToQueryForm</span><span class="p">()</span>
                 <span class="n">context</span> <span class="o">=</span> <span class="p">{</span><span class="s1">&#39;form&#39;</span><span class="p">:</span> <span class="n">form</span><span class="p">,</span> <span class="s1">&#39;doiform&#39;</span><span class="p">:</span> <span class="n">doiform</span><span class="p">,</span> <span class="s1">&#39;identifierform&#39;</span><span class="p">:</span> <span class="n">identifierform</span><span class="p">,</span>
                            <span class="s1">&#39;errormessage&#39;</span><span class="p">:</span> <span class="n">errormessage</span><span class="p">,</span>
                            <span class="s1">&#39;existing_commentary&#39;</span><span class="p">:</span> <span class="n">existing_commentary</span><span class="p">}</span>
                 <span class="k">return</span> <span class="n">render</span><span class="p">(</span><span class="n">request</span><span class="p">,</span> <span class="s1">&#39;commentaries/request_commentary.html&#39;</span><span class="p">,</span> <span class="n">context</span><span class="p">)</span>
+            
             <span class="c1"># Otherwise we query Crossref for the information:</span>
             <span class="k">try</span><span class="p">:</span>
                 <span class="n">queryurl</span> <span class="o">=</span> <span class="s1">&#39;http://api.crossref.org/works/</span><span class="si">%s</span><span class="s1">&#39;</span> <span class="o">%</span> <span class="n">doiform</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;doi&#39;</span><span class="p">]</span>
@@ -266,28 +268,31 @@
                 <span class="k">for</span> <span class="n">author</span> <span class="ow">in</span> <span class="n">doiqueryJSON</span><span class="p">[</span><span class="s1">&#39;message&#39;</span><span class="p">][</span><span class="s1">&#39;author&#39;</span><span class="p">][</span><span class="mi">1</span><span class="p">:]:</span>
                     <span class="n">authorlist</span> <span class="o">+=</span> <span class="s1">&#39;, &#39;</span> <span class="o">+</span> <span class="n">author</span><span class="p">[</span><span class="s1">&#39;given&#39;</span><span class="p">]</span> <span class="o">+</span> <span class="s1">&#39; &#39;</span> <span class="o">+</span> <span class="n">author</span><span class="p">[</span><span class="s1">&#39;family&#39;</span><span class="p">]</span>
                 <span class="n">journal</span> <span class="o">=</span> <span class="n">doiqueryJSON</span><span class="p">[</span><span class="s1">&#39;message&#39;</span><span class="p">][</span><span class="s1">&#39;container-title&#39;</span><span class="p">][</span><span class="mi">0</span><span class="p">]</span>
+                
                 <span class="k">try</span><span class="p">:</span>
                     <span class="n">volume</span> <span class="o">=</span> <span class="n">doiqueryJSON</span><span class="p">[</span><span class="s1">&#39;message&#39;</span><span class="p">][</span><span class="s1">&#39;volume&#39;</span><span class="p">]</span>
-                <span class="k">except</span><span class="p">:</span>
+                <span class="k">except</span> <span class="ne">KeyError</span><span class="p">:</span>
                     <span class="n">volume</span> <span class="o">=</span> <span class="s1">&#39;&#39;</span>
+                
                 <span class="n">pages</span> <span class="o">=</span> <span class="s1">&#39;&#39;</span>
                 <span class="k">try</span><span class="p">:</span>
                     <span class="n">pages</span> <span class="o">=</span> <span class="n">doiqueryJSON</span><span class="p">[</span><span class="s1">&#39;message&#39;</span><span class="p">][</span><span class="s1">&#39;article-number&#39;</span><span class="p">]</span> <span class="c1"># for Phys Rev</span>
-                <span class="k">except</span><span class="p">:</span>
+                <span class="k">except</span> <span class="ne">KeyError</span><span class="p">:</span>
                     <span class="k">pass</span>
                 <span class="k">try</span><span class="p">:</span>
                     <span class="n">pages</span> <span class="o">=</span> <span class="n">doiqueryJSON</span><span class="p">[</span><span class="s1">&#39;message&#39;</span><span class="p">][</span><span class="s1">&#39;page&#39;</span><span class="p">]</span>
-                <span class="k">except</span><span class="p">:</span>
+                <span class="k">except</span> <span class="ne">KeyError</span><span class="p">:</span>
                     <span class="k">pass</span>
+                
                 <span class="n">pub_date</span> <span class="o">=</span> <span class="s1">&#39;&#39;</span>
                 <span class="k">try</span><span class="p">:</span>
                     <span class="n">pub_date</span> <span class="o">=</span> <span class="p">(</span><span class="nb">str</span><span class="p">(</span><span class="n">doiqueryJSON</span><span class="p">[</span><span class="s1">&#39;message&#39;</span><span class="p">][</span><span class="s1">&#39;issued&#39;</span><span class="p">][</span><span class="s1">&#39;date-parts&#39;</span><span class="p">][</span><span class="mi">0</span><span class="p">][</span><span class="mi">0</span><span class="p">])</span> <span class="o">+</span> <span class="s1">&#39;-&#39;</span> <span class="o">+</span>
                                 <span class="nb">str</span><span class="p">(</span><span class="n">doiqueryJSON</span><span class="p">[</span><span class="s1">&#39;message&#39;</span><span class="p">][</span><span class="s1">&#39;issued&#39;</span><span class="p">][</span><span class="s1">&#39;date-parts&#39;</span><span class="p">][</span><span class="mi">0</span><span class="p">][</span><span class="mi">1</span><span class="p">]))</span>
                     <span class="k">try</span><span class="p">:</span>
                         <span class="n">pub_date</span> <span class="o">+=</span> <span class="s1">&#39;-&#39;</span> <span class="o">+</span> <span class="nb">str</span><span class="p">(</span><span class="n">doiqueryJSON</span><span class="p">[</span><span class="s1">&#39;message&#39;</span><span class="p">][</span><span class="s1">&#39;issued&#39;</span><span class="p">][</span><span class="s1">&#39;date-parts&#39;</span><span class="p">][</span><span class="mi">0</span><span class="p">][</span><span class="mi">2</span><span class="p">])</span>
-                    <span class="k">except</span><span class="p">:</span>
+                    <span class="k">except</span> <span class="p">(</span><span class="ne">IndexError</span><span class="p">,</span> <span class="ne">KeyError</span><span class="p">):</span>
                         <span class="k">pass</span>
-                <span class="k">except</span><span class="p">:</span>
+                <span class="k">except</span> <span class="p">(</span><span class="ne">IndexError</span><span class="p">,</span> <span class="ne">KeyError</span><span class="p">):</span>
                     <span class="k">pass</span>
                 <span class="n">pub_DOI</span> <span class="o">=</span> <span class="n">doiform</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;doi&#39;</span><span class="p">]</span>
                 <span class="n">form</span> <span class="o">=</span> <span class="n">RequestCommentaryForm</span><span class="p">(</span>
@@ -300,7 +305,7 @@
                 <span class="n">context</span> <span class="o">=</span> <span class="p">{</span><span class="s1">&#39;form&#39;</span><span class="p">:</span> <span class="n">form</span><span class="p">,</span> <span class="s1">&#39;doiform&#39;</span><span class="p">:</span> <span class="n">doiform</span><span class="p">,</span> <span class="s1">&#39;identifierform&#39;</span><span class="p">:</span> <span class="n">identifierform</span><span class="p">,}</span>
                 <span class="n">context</span><span class="p">[</span><span class="s1">&#39;title&#39;</span><span class="p">]</span> <span class="o">=</span> <span class="n">pub_title</span>
                 <span class="k">return</span> <span class="n">render</span><span class="p">(</span><span class="n">request</span><span class="p">,</span> <span class="s1">&#39;commentaries/request_commentary.html&#39;</span><span class="p">,</span> <span class="n">context</span><span class="p">)</span>
-            <span class="k">except</span><span class="p">:</span>
+            <span class="k">except</span> <span class="p">(</span><span class="ne">IndexError</span><span class="p">,</span> <span class="ne">KeyError</span><span class="p">,</span> <span class="ne">ValueError</span><span class="p">):</span>
                 <span class="k">pass</span>
         <span class="k">else</span><span class="p">:</span>
             <span class="k">pass</span>
@@ -327,7 +332,7 @@
                 <span class="n">errormessage</span> <span class="o">=</span> <span class="s1">&#39;There already exists a Commentary Page on this preprint, see&#39;</span>
                 <span class="n">existing_commentary</span> <span class="o">=</span> <span class="n">get_object_or_404</span><span class="p">(</span>
                     <span class="n">Commentary</span><span class="p">,</span> <span class="n">arxiv_identifier</span><span class="o">=</span><span class="n">identifierform</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;identifier&#39;</span><span class="p">])</span>
-            <span class="k">if</span> <span class="n">errormessage</span> <span class="o">!=</span> <span class="s1">&#39;&#39;</span><span class="p">:</span>
+            <span class="k">if</span> <span class="n">errormessage</span><span class="p">:</span>
                 <span class="n">form</span> <span class="o">=</span> <span class="n">RequestCommentaryForm</span><span class="p">()</span>
                 <span class="n">doiform</span> <span class="o">=</span> <span class="n">DOIToQueryForm</span><span class="p">()</span>
                 <span class="n">context</span> <span class="o">=</span> <span class="p">{</span><span class="s1">&#39;form&#39;</span><span class="p">:</span> <span class="n">form</span><span class="p">,</span> <span class="s1">&#39;doiform&#39;</span><span class="p">:</span> <span class="n">doiform</span><span class="p">,</span> <span class="s1">&#39;identifierform&#39;</span><span class="p">:</span> <span class="n">identifierform</span><span class="p">,</span>
@@ -339,26 +344,29 @@
                 <span class="n">queryurl</span> <span class="o">=</span> <span class="p">(</span><span class="s1">&#39;http://export.arxiv.org/api/query?id_list=</span><span class="si">%s</span><span class="s1">&#39;</span>
                             <span class="o">%</span> <span class="n">identifierform</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;identifier&#39;</span><span class="p">])</span>
                 <span class="n">arxivquery</span> <span class="o">=</span> <span class="n">feedparser</span><span class="o">.</span><span class="n">parse</span><span class="p">(</span><span class="n">queryurl</span><span class="p">)</span>
+                
                 <span class="c1"># If paper has been published, should comment on published version</span>
                 <span class="k">try</span><span class="p">:</span>
                     <span class="n">arxiv_journal_ref</span> <span class="o">=</span> <span class="n">arxivquery</span><span class="p">[</span><span class="s1">&#39;entries&#39;</span><span class="p">][</span><span class="mi">0</span><span class="p">][</span><span class="s1">&#39;arxiv_journal_ref&#39;</span><span class="p">]</span>
                     <span class="n">errormessage</span> <span class="o">=</span> <span class="p">(</span><span class="s1">&#39;This paper has been published as &#39;</span> <span class="o">+</span> <span class="n">arxiv_journal_ref</span>
                                     <span class="o">+</span> <span class="s1">&#39;. Please comment on the published version.&#39;</span><span class="p">)</span>
-                <span class="k">except</span><span class="p">:</span>
+                <span class="k">except</span> <span class="p">(</span><span class="ne">IndexError</span><span class="p">,</span> <span class="ne">KeyError</span><span class="p">):</span>
                     <span class="k">pass</span>
                 <span class="k">try</span><span class="p">:</span>
                     <span class="n">arxiv_doi</span> <span class="o">=</span> <span class="n">arxivquery</span><span class="p">[</span><span class="s1">&#39;entries&#39;</span><span class="p">][</span><span class="mi">0</span><span class="p">][</span><span class="s1">&#39;arxiv_doi&#39;</span><span class="p">]</span>
                     <span class="n">errormessage</span> <span class="o">=</span> <span class="p">(</span><span class="s1">&#39;This paper has been published under DOI &#39;</span> <span class="o">+</span> <span class="n">arxiv_DOI</span>
                                     <span class="o">+</span> <span class="s1">&#39;. Please comment on the published version.&#39;</span><span class="p">)</span>
-                <span class="k">except</span><span class="p">:</span>
+                <span class="k">except</span> <span class="p">(</span><span class="ne">IndexError</span><span class="p">,</span> <span class="ne">KeyError</span><span class="p">):</span>
                     <span class="k">pass</span>
-                <span class="k">if</span> <span class="n">errormessage</span> <span class="o">!=</span> <span class="s1">&#39;&#39;</span><span class="p">:</span>
+                
+                <span class="k">if</span> <span class="n">errormessage</span><span class="p">:</span>
                     <span class="n">form</span> <span class="o">=</span> <span class="n">RequestCommentaryForm</span><span class="p">()</span>
                     <span class="n">doiform</span> <span class="o">=</span> <span class="n">DOIToQueryForm</span><span class="p">()</span>
                     <span class="n">context</span> <span class="o">=</span> <span class="p">{</span><span class="s1">&#39;form&#39;</span><span class="p">:</span> <span class="n">form</span><span class="p">,</span> <span class="s1">&#39;doiform&#39;</span><span class="p">:</span> <span class="n">doiform</span><span class="p">,</span> <span class="s1">&#39;identifierform&#39;</span><span class="p">:</span> <span class="n">identifierform</span><span class="p">,</span>
                                <span class="s1">&#39;errormessage&#39;</span><span class="p">:</span> <span class="n">errormessage</span><span class="p">,</span>
                                <span class="s1">&#39;existing_commentary&#39;</span><span class="p">:</span> <span class="n">existing_commentary</span><span class="p">}</span>
                     <span class="k">return</span> <span class="n">render</span><span class="p">(</span><span class="n">request</span><span class="p">,</span> <span class="s1">&#39;commentaries/request_commentary.html&#39;</span><span class="p">,</span> <span class="n">context</span><span class="p">)</span>
+                
                 <span class="c1"># otherwise prefill the form:</span>
                 <span class="n">metadata</span> <span class="o">=</span> <span class="n">arxivquery</span>
                 <span class="n">pub_title</span> <span class="o">=</span> <span class="n">arxivquery</span><span class="p">[</span><span class="s1">&#39;entries&#39;</span><span class="p">][</span><span class="mi">0</span><span class="p">][</span><span class="s1">&#39;title&#39;</span><span class="p">]</span>
@@ -376,7 +384,7 @@
                 <span class="n">context</span> <span class="o">=</span> <span class="p">{</span><span class="s1">&#39;form&#39;</span><span class="p">:</span> <span class="n">form</span><span class="p">,</span> <span class="s1">&#39;doiform&#39;</span><span class="p">:</span> <span class="n">doiform</span><span class="p">,</span> <span class="s1">&#39;identifierform&#39;</span><span class="p">:</span> <span class="n">identifierform</span><span class="p">}</span>
                 <span class="n">context</span><span class="p">[</span><span class="s1">&#39;title&#39;</span><span class="p">]</span> <span class="o">=</span> <span class="n">pub_title</span>
                 <span class="k">return</span> <span class="n">render</span><span class="p">(</span><span class="n">request</span><span class="p">,</span> <span class="s1">&#39;commentaries/request_commentary.html&#39;</span><span class="p">,</span> <span class="n">context</span><span class="p">)</span>
-            <span class="k">except</span><span class="p">:</span> <span class="c1"># something went wrong with processing the arXiv data</span>
+            <span class="k">except</span> <span class="p">(</span><span class="ne">IndexError</span><span class="p">,</span> <span class="ne">KeyError</span><span class="p">,</span> <span class="ne">ValueError</span><span class="p">):</span> <span class="c1"># something went wrong with processing the arXiv data</span>
                 <span class="n">errormessage</span> <span class="o">=</span> <span class="s1">&#39;An error occurred while processing the arXiv data. Are you sure this identifier exists?&#39;</span>
                 <span class="n">form</span> <span class="o">=</span> <span class="n">RequestCommentaryForm</span><span class="p">()</span>
                 <span class="n">doiform</span> <span class="o">=</span> <span class="n">DOIToQueryForm</span><span class="p">()</span>
@@ -384,7 +392,6 @@
                            <span class="s1">&#39;errormessage&#39;</span><span class="p">:</span> <span class="n">errormessage</span><span class="p">,</span>
                            <span class="s1">&#39;existing_commentary&#39;</span><span class="p">:</span> <span class="n">existing_commentary</span><span class="p">}</span>
                 <span class="k">return</span> <span class="n">render</span><span class="p">(</span><span class="n">request</span><span class="p">,</span> <span class="s1">&#39;commentaries/request_commentary.html&#39;</span><span class="p">,</span> <span class="n">context</span><span class="p">)</span>
-<span class="c1">#                pass</span>
         <span class="k">else</span><span class="p">:</span>
             <span class="k">pass</span>
     <span class="k">return</span> <span class="n">redirect</span><span class="p">(</span><span class="n">reverse</span><span class="p">(</span><span class="s1">&#39;commentaries:request_commentary&#39;</span><span class="p">))</span></div>
@@ -470,8 +477,6 @@
                 <span class="n">emailmessage</span><span class="o">.</span><span class="n">send</span><span class="p">(</span><span class="n">fail_silently</span><span class="o">=</span><span class="kc">False</span><span class="p">)</span>
                 <span class="n">commentary</span><span class="o">.</span><span class="n">delete</span><span class="p">()</span>
 
-    <span class="c1">#context = {&#39;commentary_id&#39;: commentary_id }</span>
-    <span class="c1">#return render(request, &#39;commentaries/vet_commentary_request_ack.html&#39;, context)</span>
     <span class="n">context</span> <span class="o">=</span> <span class="p">{</span><span class="s1">&#39;ack_header&#39;</span><span class="p">:</span> <span class="s1">&#39;SciPost Commentary request vetted.&#39;</span><span class="p">,</span>
                <span class="s1">&#39;followup_message&#39;</span><span class="p">:</span> <span class="s1">&#39;Return to the &#39;</span><span class="p">,</span>
                <span class="s1">&#39;followup_link&#39;</span><span class="p">:</span> <span class="n">reverse</span><span class="p">(</span><span class="s1">&#39;commentaries:vet_commentary_requests&#39;</span><span class="p">),</span>
@@ -521,7 +526,7 @@
             <span class="n">commentary_search_list</span><span class="o">.</span><span class="n">order_by</span><span class="p">(</span><span class="s1">&#39;-pub_date&#39;</span><span class="p">)</span>
         <span class="k">else</span><span class="p">:</span>
             <span class="n">commentary_search_list</span> <span class="o">=</span> <span class="p">[]</span>
-        <span class="n">context</span> <span class="o">=</span> <span class="p">{</span><span class="s1">&#39;form&#39;</span><span class="p">:</span> <span class="n">form</span><span class="p">,</span> <span class="s1">&#39;commentary_search_list&#39;</span><span class="p">:</span> <span class="n">commentary_search_list</span> <span class="p">}</span>
+        <span class="n">context</span> <span class="o">=</span> <span class="p">{</span><span class="s1">&#39;form&#39;</span><span class="p">:</span> <span class="n">form</span><span class="p">,</span> <span class="s1">&#39;commentary_search_list&#39;</span><span class="p">:</span> <span class="n">commentary_search_list</span><span class="p">}</span>
         <span class="k">return</span> <span class="n">HttpResponseRedirect</span><span class="p">(</span><span class="n">request</span><span class="p">,</span> <span class="s1">&#39;commentaries/commentaries.html&#39;</span><span class="p">,</span> <span class="n">context</span><span class="p">)</span>
     <span class="k">else</span><span class="p">:</span>
         <span class="n">form</span> <span class="o">=</span> <span class="n">CommentarySearchForm</span><span class="p">()</span>
@@ -536,34 +541,27 @@
 
 <span class="k">def</span> <span class="nf">commentary_detail</span><span class="p">(</span><span class="n">request</span><span class="p">,</span> <span class="n">arxiv_or_DOI_string</span><span class="p">):</span>
     <span class="n">commentary</span> <span class="o">=</span> <span class="n">get_object_or_404</span><span class="p">(</span><span class="n">Commentary</span><span class="p">,</span> <span class="n">arxiv_or_DOI_string</span><span class="o">=</span><span class="n">arxiv_or_DOI_string</span><span class="p">)</span>
-<span class="c1">#    other_versions = Commentary.objects.filter(</span>
-<span class="c1">#        arxiv_identifier_wo_vn_nr=submission.arxiv_identifier_wo_vn_nr</span>
-<span class="c1">#    ).exclude(pk=submission.id)</span>
     <span class="n">comments</span> <span class="o">=</span> <span class="n">commentary</span><span class="o">.</span><span class="n">comment_set</span><span class="o">.</span><span class="n">all</span><span class="p">()</span>
     <span class="k">if</span> <span class="n">request</span><span class="o">.</span><span class="n">method</span> <span class="o">==</span> <span class="s1">&#39;POST&#39;</span><span class="p">:</span>
         <span class="n">form</span> <span class="o">=</span> <span class="n">CommentForm</span><span class="p">(</span><span class="n">request</span><span class="o">.</span><span class="n">POST</span><span class="p">)</span>
         <span class="k">if</span> <span class="n">form</span><span class="o">.</span><span class="n">is_valid</span><span class="p">():</span>
             <span class="n">author</span> <span class="o">=</span> <span class="n">Contributor</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="n">user</span><span class="o">=</span><span class="n">request</span><span class="o">.</span><span class="n">user</span><span class="p">)</span>
-            <span class="n">newcomment</span> <span class="o">=</span> <span class="n">Comment</span> <span class="p">(</span>
-                <span class="n">commentary</span> <span class="o">=</span> <span class="n">commentary</span><span class="p">,</span>
-                <span class="n">author</span> <span class="o">=</span> <span class="n">author</span><span class="p">,</span>
-                <span class="n">is_rem</span> <span class="o">=</span> <span class="n">form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;is_rem&#39;</span><span class="p">],</span>
-                <span class="n">is_que</span> <span class="o">=</span> <span class="n">form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;is_que&#39;</span><span class="p">],</span>
-                <span class="n">is_ans</span> <span class="o">=</span> <span class="n">form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;is_ans&#39;</span><span class="p">],</span>
-                <span class="n">is_obj</span> <span class="o">=</span> <span class="n">form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;is_obj&#39;</span><span class="p">],</span>
-                <span class="n">is_rep</span> <span class="o">=</span> <span class="n">form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;is_rep&#39;</span><span class="p">],</span>
-                <span class="n">is_val</span> <span class="o">=</span> <span class="n">form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;is_val&#39;</span><span class="p">],</span>
-                <span class="n">is_lit</span> <span class="o">=</span> <span class="n">form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;is_lit&#39;</span><span class="p">],</span>
-                <span class="n">is_sug</span> <span class="o">=</span> <span class="n">form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;is_sug&#39;</span><span class="p">],</span>
-                <span class="n">comment_text</span> <span class="o">=</span> <span class="n">form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;comment_text&#39;</span><span class="p">],</span>
-                <span class="n">remarks_for_editors</span> <span class="o">=</span> <span class="n">form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;remarks_for_editors&#39;</span><span class="p">],</span>
-                <span class="n">date_submitted</span> <span class="o">=</span> <span class="n">timezone</span><span class="o">.</span><span class="n">now</span><span class="p">(),</span>
+            <span class="n">newcomment</span> <span class="o">=</span> <span class="n">Comment</span><span class="p">(</span><span class="n">commentary</span><span class="o">=</span><span class="n">commentary</span><span class="p">,</span> <span class="n">author</span><span class="o">=</span><span class="n">author</span><span class="p">,</span>
+                <span class="n">is_rem</span><span class="o">=</span><span class="n">form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;is_rem&#39;</span><span class="p">],</span>
+                <span class="n">is_que</span><span class="o">=</span><span class="n">form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;is_que&#39;</span><span class="p">],</span>
+                <span class="n">is_ans</span><span class="o">=</span><span class="n">form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;is_ans&#39;</span><span class="p">],</span>
+                <span class="n">is_obj</span><span class="o">=</span><span class="n">form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;is_obj&#39;</span><span class="p">],</span>
+                <span class="n">is_rep</span><span class="o">=</span><span class="n">form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;is_rep&#39;</span><span class="p">],</span>
+                <span class="n">is_val</span><span class="o">=</span><span class="n">form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;is_val&#39;</span><span class="p">],</span>
+                <span class="n">is_lit</span><span class="o">=</span><span class="n">form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;is_lit&#39;</span><span class="p">],</span>
+                <span class="n">is_sug</span><span class="o">=</span><span class="n">form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;is_sug&#39;</span><span class="p">],</span>
+                <span class="n">comment_text</span><span class="o">=</span><span class="n">form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;comment_text&#39;</span><span class="p">],</span>
+                <span class="n">remarks_for_editors</span><span class="o">=</span><span class="n">form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;remarks_for_editors&#39;</span><span class="p">],</span>
+                <span class="n">date_submitted</span><span class="o">=</span><span class="n">timezone</span><span class="o">.</span><span class="n">now</span><span class="p">(),</span>
                 <span class="p">)</span>
             <span class="n">newcomment</span><span class="o">.</span><span class="n">save</span><span class="p">()</span>
             <span class="n">author</span><span class="o">.</span><span class="n">nr_comments</span> <span class="o">=</span> <span class="n">Comment</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span><span class="n">author</span><span class="o">=</span><span class="n">author</span><span class="p">)</span><span class="o">.</span><span class="n">count</span><span class="p">()</span>
             <span class="n">author</span><span class="o">.</span><span class="n">save</span><span class="p">()</span>
-            <span class="c1">#request.session[&#39;commentary_id&#39;] = commentary.id</span>
-            <span class="c1">#return HttpResponseRedirect(reverse(&#39;comments:comment_submission_ack&#39;))</span>
             <span class="n">context</span> <span class="o">=</span> <span class="p">{</span><span class="s1">&#39;ack_header&#39;</span><span class="p">:</span> <span class="s1">&#39;Thank you for contributing a Comment.&#39;</span><span class="p">,</span>
                        <span class="s1">&#39;ack_message&#39;</span><span class="p">:</span> <span class="s1">&#39;It will soon be vetted by an Editor.&#39;</span><span class="p">,</span>
                        <span class="s1">&#39;followup_message&#39;</span><span class="p">:</span> <span class="s1">&#39;Back to the &#39;</span><span class="p">,</span>
@@ -576,7 +574,6 @@
             <span class="k">return</span> <span class="n">render</span><span class="p">(</span><span class="n">request</span><span class="p">,</span> <span class="s1">&#39;scipost/acknowledgement.html&#39;</span><span class="p">,</span> <span class="n">context</span><span class="p">)</span>
     <span class="k">else</span><span class="p">:</span>
         <span class="n">form</span> <span class="o">=</span> <span class="n">CommentForm</span><span class="p">()</span>
-
     <span class="k">try</span><span class="p">:</span>
         <span class="n">author_replies</span> <span class="o">=</span> <span class="n">Comment</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span><span class="n">commentary</span><span class="o">=</span><span class="n">commentary</span><span class="p">,</span>
                                                 <span class="n">is_author_reply</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span>
diff --git a/docs/_build/html/_modules/comments/models.html b/docs/_build/html/_modules/comments/models.html
index 2bb4d6f39..910194b7f 100644
--- a/docs/_build/html/_modules/comments/models.html
+++ b/docs/_build/html/_modules/comments/models.html
@@ -84,8 +84,10 @@
             
             
                 <ul>
+<li class="toctree-l1"><a class="reference internal" href="../../howto/production.html">Production of SciPost Publications</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../../modules/models.html">Models</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../../modules/views.html">Views</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../dev/maintenance/docs.html">Maintenance of SciPost documentation</a></li>
 </ul>
 
             
diff --git a/docs/_build/html/_modules/index.html b/docs/_build/html/_modules/index.html
index d542b9137..b34147da7 100644
--- a/docs/_build/html/_modules/index.html
+++ b/docs/_build/html/_modules/index.html
@@ -83,8 +83,10 @@
             
             
                 <ul>
+<li class="toctree-l1"><a class="reference internal" href="../howto/production.html">Production of SciPost Publications</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../modules/models.html">Models</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../modules/views.html">Views</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../dev/maintenance/docs.html">Maintenance of SciPost documentation</a></li>
 </ul>
 
             
diff --git a/docs/_build/html/_modules/journals/models.html b/docs/_build/html/_modules/journals/models.html
index 19b366e31..aaba5cd54 100644
--- a/docs/_build/html/_modules/journals/models.html
+++ b/docs/_build/html/_modules/journals/models.html
@@ -84,8 +84,10 @@
             
             
                 <ul>
+<li class="toctree-l1"><a class="reference internal" href="../../howto/production.html">Production of SciPost Publications</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../../modules/models.html">Models</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../../modules/views.html">Views</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../dev/maintenance/docs.html">Maintenance of SciPost documentation</a></li>
 </ul>
 
             
@@ -332,13 +334,14 @@
     <span class="k">def</span> <span class="nf">citation</span> <span class="p">(</span><span class="bp">self</span><span class="p">):</span>
         <span class="k">return</span> <span class="p">(</span><span class="n">journal_name_abbrev_citation</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">in_issue</span><span class="o">.</span><span class="n">in_volume</span><span class="o">.</span><span class="n">in_journal</span><span class="o">.</span><span class="n">name</span><span class="p">)</span>
                 <span class="o">+</span> <span class="s1">&#39; &#39;</span> <span class="o">+</span> <span class="nb">str</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">in_issue</span><span class="o">.</span><span class="n">in_volume</span><span class="o">.</span><span class="n">number</span><span class="p">)</span>
-                <span class="o">+</span> <span class="s1">&#39;(&#39;</span> <span class="o">+</span> <span class="nb">str</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">in_issue</span><span class="o">.</span><span class="n">number</span><span class="p">)</span> <span class="o">+</span> <span class="s1">&#39;), &#39;</span>
-                <span class="o">+</span> <span class="n">paper_nr_string</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">paper_nr</span><span class="p">)</span>
+                <span class="c1">#+ &#39;(&#39; + str(self.in_issue.number) + &#39;)&#39;</span>
+                <span class="o">+</span> <span class="s1">&#39;, &#39;</span> <span class="o">+</span> <span class="n">paper_nr_string</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">paper_nr</span><span class="p">)</span>
                 <span class="o">+</span> <span class="s1">&#39; (&#39;</span> <span class="o">+</span> <span class="bp">self</span><span class="o">.</span><span class="n">publication_date</span><span class="o">.</span><span class="n">strftime</span><span class="p">(</span><span class="s1">&#39;%Y&#39;</span><span class="p">)</span> <span class="o">+</span> <span class="s1">&#39;)&#39;</span> <span class="p">)</span>
 
     <span class="k">def</span> <span class="nf">citation_for_web</span> <span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-        <span class="n">citation</span> <span class="o">=</span> <span class="p">(</span><span class="s1">&#39;{{ abbrev }} &lt;strong&gt;{{ volume_nr }}&lt;/strong&gt;({{ issue_nr }}), &#39;</span>
-                    <span class="s1">&#39;{{ paper_nr }} ({{ year }})&#39;</span><span class="p">)</span>
+        <span class="n">citation</span> <span class="o">=</span> <span class="p">(</span><span class="s1">&#39;{{ abbrev }} &lt;strong&gt;{{ volume_nr }}&lt;/strong&gt;&#39;</span>
+                    <span class="c1">#&#39;({{ issue_nr }})&#39;</span>
+                    <span class="s1">&#39;, {{ paper_nr }} ({{ year }})&#39;</span><span class="p">)</span>
         <span class="n">template</span> <span class="o">=</span> <span class="n">Template</span><span class="p">(</span><span class="n">citation</span><span class="p">)</span>
         <span class="n">context</span> <span class="o">=</span> <span class="n">Context</span><span class="p">(</span>
             <span class="p">{</span><span class="s1">&#39;abbrev&#39;</span><span class="p">:</span> <span class="n">journal_name_abbrev_citation</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">in_issue</span><span class="o">.</span><span class="n">in_volume</span><span class="o">.</span><span class="n">in_journal</span><span class="o">.</span><span class="n">name</span><span class="p">),</span>
@@ -350,8 +353,9 @@
 
     <span class="k">def</span> <span class="nf">citation_for_web_linked</span> <span class="p">(</span><span class="bp">self</span><span class="p">):</span>
         <span class="n">citation</span> <span class="o">=</span> <span class="p">(</span><span class="s1">&#39;&lt;a href=&quot;{</span><span class="si">% u</span><span class="s1">rl </span><span class="se">\&#39;</span><span class="s1">scipost:publication_detail</span><span class="se">\&#39;</span><span class="s1"> doi_string=doi_string %}&quot;&gt;&#39;</span>
-                    <span class="s1">&#39;{{ abbrev }} &lt;strong&gt;{{ volume_nr }}&lt;/strong&gt;({{ issue_nr }}), &#39;</span>
-                    <span class="s1">&#39;{{ paper_nr }} ({{ year }})&#39;</span><span class="p">)</span>
+                    <span class="s1">&#39;{{ abbrev }} &lt;strong&gt;{{ volume_nr }}&lt;/strong&gt;&#39;</span>
+                    <span class="c1">#&#39;({{ issue_nr }})&#39;</span>
+                    <span class="s1">&#39;, {{ paper_nr }} ({{ year }})&#39;</span><span class="p">)</span>
         <span class="n">template</span> <span class="o">=</span> <span class="n">Template</span><span class="p">(</span><span class="n">citation</span><span class="p">)</span>
         <span class="n">context</span> <span class="o">=</span> <span class="n">Context</span><span class="p">(</span>
             <span class="p">{</span><span class="s1">&#39;doi_string&#39;</span><span class="p">:</span> <span class="bp">self</span><span class="o">.</span><span class="n">doi_string</span><span class="p">,</span>
diff --git a/docs/_build/html/_modules/journals/views.html b/docs/_build/html/_modules/journals/views.html
index 489b7e15a..f72a240f8 100644
--- a/docs/_build/html/_modules/journals/views.html
+++ b/docs/_build/html/_modules/journals/views.html
@@ -84,8 +84,10 @@
             
             
                 <ul>
+<li class="toctree-l1"><a class="reference internal" href="../../howto/production.html">Production of SciPost Publications</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../../modules/models.html">Models</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../../modules/views.html">Views</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../dev/maintenance/docs.html">Maintenance of SciPost documentation</a></li>
 </ul>
 
             
@@ -337,9 +339,12 @@
             <span class="n">current_issue</span> <span class="o">=</span> <span class="n">get_object_or_404</span><span class="p">(</span><span class="n">Issue</span><span class="p">,</span>
                             <span class="n">pk</span><span class="o">=</span><span class="n">initiate_publication_form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;to_be_issued_in&#39;</span><span class="p">]</span><span class="o">.</span><span class="n">id</span><span class="p">)</span>
             <span class="c1"># Determine next available paper number:</span>
-            <span class="n">papers_in_current_issue</span> <span class="o">=</span> <span class="n">Publication</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span><span class="n">in_issue</span><span class="o">=</span><span class="n">current_issue</span><span class="p">)</span>
+            <span class="c1">#papers_in_current_issue = Publication.objects.filter(in_issue=current_issue)</span>
+            <span class="n">papers_in_current_volume</span> <span class="o">=</span> <span class="n">Publication</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span>
+                <span class="n">in_issue__in_volume</span><span class="o">=</span><span class="n">current_issue</span><span class="o">.</span><span class="n">in_volume</span><span class="p">)</span>
             <span class="n">paper_nr</span> <span class="o">=</span> <span class="mi">1</span>
-            <span class="k">while</span> <span class="n">papers_in_current_issue</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span><span class="n">paper_nr</span><span class="o">=</span><span class="n">paper_nr</span><span class="p">)</span><span class="o">.</span><span class="n">exists</span><span class="p">():</span>
+            <span class="c1">#while papers_in_current_issue.filter(paper_nr=paper_nr).exists():</span>
+            <span class="k">while</span> <span class="n">papers_in_current_volume</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span><span class="n">paper_nr</span><span class="o">=</span><span class="n">paper_nr</span><span class="p">)</span><span class="o">.</span><span class="n">exists</span><span class="p">():</span>
                 <span class="n">paper_nr</span> <span class="o">+=</span> <span class="mi">1</span>
                 <span class="k">if</span> <span class="n">paper_nr</span> <span class="o">&gt;</span> <span class="mi">999</span><span class="p">:</span>
                     <span class="k">raise</span> <span class="n">PaperNumberingError</span><span class="p">(</span><span class="n">paper_nr</span><span class="p">)</span>
@@ -422,7 +427,7 @@
             <span class="n">publication</span><span class="o">.</span><span class="n">save</span><span class="p">()</span>
             <span class="c1"># Move file to final location</span>
             <span class="n">initial_path</span> <span class="o">=</span> <span class="n">publication</span><span class="o">.</span><span class="n">pdf_file</span><span class="o">.</span><span class="n">path</span>
-            <span class="n">new_dir</span> <span class="o">=</span>  <span class="p">(</span><span class="n">publication</span><span class="o">.</span><span class="n">in_issue</span><span class="o">.</span><span class="n">path</span>
+            <span class="n">new_dir</span> <span class="o">=</span>  <span class="p">(</span><span class="n">publication</span><span class="o">.</span><span class="n">in_issue</span><span class="o">.</span><span class="n">path</span> <span class="o">+</span> <span class="s1">&#39;/&#39;</span>
                         <span class="o">+</span> <span class="n">paper_nr_string</span><span class="p">(</span><span class="n">publication</span><span class="o">.</span><span class="n">paper_nr</span><span class="p">))</span>
             <span class="n">new_path</span> <span class="o">=</span> <span class="n">new_dir</span> <span class="o">+</span> <span class="s1">&#39;/&#39;</span> <span class="o">+</span> <span class="n">publication</span><span class="o">.</span><span class="n">doi_label</span><span class="o">.</span><span class="n">replace</span><span class="p">(</span><span class="s1">&#39;.&#39;</span><span class="p">,</span> <span class="s1">&#39;_&#39;</span><span class="p">)</span> <span class="o">+</span> <span class="s1">&#39;.pdf&#39;</span>
             <span class="n">os</span><span class="o">.</span><span class="n">makedirs</span><span class="p">(</span><span class="n">new_dir</span><span class="p">)</span>
diff --git a/docs/_build/html/_modules/scipost/models.html b/docs/_build/html/_modules/scipost/models.html
index 8b24fabcf..6d747a991 100644
--- a/docs/_build/html/_modules/scipost/models.html
+++ b/docs/_build/html/_modules/scipost/models.html
@@ -84,8 +84,10 @@
             
             
                 <ul>
+<li class="toctree-l1"><a class="reference internal" href="../../howto/production.html">Production of SciPost Publications</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../../modules/models.html">Models</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../../modules/views.html">Views</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../dev/maintenance/docs.html">Maintenance of SciPost documentation</a></li>
 </ul>
 
             
@@ -143,7 +145,7 @@
 
 <span class="kn">from</span> <span class="nn">django_countries.fields</span> <span class="k">import</span> <span class="n">CountryField</span>
 
-<span class="kn">from</span> <span class="nn">.models</span> <span class="k">import</span> <span class="o">*</span>
+<span class="kn">from</span> <span class="nn">scipost.models</span> <span class="k">import</span> <span class="o">*</span>
 
 
 <span class="n">SCIPOST_DISCIPLINES</span> <span class="o">=</span> <span class="p">(</span>
@@ -261,7 +263,8 @@
      <span class="p">),</span>
 <span class="p">)</span>
 <span class="n">subject_areas_raw_dict</span> <span class="o">=</span> <span class="nb">dict</span><span class="p">(</span><span class="n">SCIPOST_SUBJECT_AREAS</span><span class="p">)</span>
-<span class="c1"># We want a dict of the form {&#39;Phys:AT&#39;: &#39;Atomic...&#39;, ...}</span>
+
+<span class="c1"># Make dict of the form {&#39;Phys:AT&#39;: &#39;Atomic...&#39;, ...}</span>
 <span class="n">subject_areas_dict</span> <span class="o">=</span> <span class="p">{}</span>
 <span class="k">for</span> <span class="n">k</span> <span class="ow">in</span> <span class="n">subject_areas_raw_dict</span><span class="o">.</span><span class="n">keys</span><span class="p">():</span>
     <span class="n">subject_areas_dict</span><span class="o">.</span><span class="n">update</span><span class="p">(</span><span class="nb">dict</span><span class="p">(</span><span class="n">subject_areas_raw_dict</span><span class="p">[</span><span class="n">k</span><span class="p">]))</span>
@@ -325,8 +328,7 @@
     <span class="n">status</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">SmallIntegerField</span><span class="p">(</span><span class="n">default</span><span class="o">=</span><span class="mi">0</span><span class="p">,</span> <span class="n">choices</span><span class="o">=</span><span class="n">CONTRIBUTOR_STATUS</span><span class="p">)</span>
     <span class="n">title</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">CharField</span><span class="p">(</span><span class="n">max_length</span><span class="o">=</span><span class="mi">4</span><span class="p">,</span> <span class="n">choices</span><span class="o">=</span><span class="n">TITLE_CHOICES</span><span class="p">)</span>
     <span class="n">discipline</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">CharField</span><span class="p">(</span><span class="n">max_length</span><span class="o">=</span><span class="mi">20</span><span class="p">,</span> <span class="n">choices</span><span class="o">=</span><span class="n">SCIPOST_DISCIPLINES</span><span class="p">,</span>
-                                  <span class="n">default</span><span class="o">=</span><span class="s1">&#39;physics&#39;</span><span class="p">,</span>
-                                  <span class="n">verbose_name</span><span class="o">=</span><span class="s1">&#39;Main discipline&#39;</span><span class="p">)</span>
+                                  <span class="n">default</span><span class="o">=</span><span class="s1">&#39;physics&#39;</span><span class="p">,</span> <span class="n">verbose_name</span><span class="o">=</span><span class="s1">&#39;Main discipline&#39;</span><span class="p">)</span>
     <span class="n">expertises</span> <span class="o">=</span> <span class="n">ChoiceArrayField</span><span class="p">(</span>
         <span class="n">models</span><span class="o">.</span><span class="n">CharField</span><span class="p">(</span><span class="n">max_length</span><span class="o">=</span><span class="mi">10</span><span class="p">,</span> <span class="n">choices</span><span class="o">=</span><span class="n">SCIPOST_SUBJECT_AREAS</span><span class="p">),</span>
         <span class="n">blank</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span> <span class="n">null</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
@@ -345,36 +347,34 @@
         <span class="n">default</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span>
         <span class="n">verbose_name</span><span class="o">=</span><span class="s2">&quot;I accept to receive SciPost emails&quot;</span><span class="p">)</span>
 
-    <span class="k">def</span> <span class="nf">__str__</span> <span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-        <span class="k">return</span> <span class="bp">self</span><span class="o">.</span><span class="n">user</span><span class="o">.</span><span class="n">last_name</span> <span class="o">+</span> <span class="s1">&#39;, &#39;</span> <span class="o">+</span> <span class="bp">self</span><span class="o">.</span><span class="n">user</span><span class="o">.</span><span class="n">first_name</span>
 
+    <span class="k">def</span> <span class="nf">__str__</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+        <span class="k">return</span> <span class="s1">&#39;</span><span class="si">%s</span><span class="s1">, </span><span class="si">%s</span><span class="s1">&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">user</span><span class="o">.</span><span class="n">last_name</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">user</span><span class="o">.</span><span class="n">first_name</span><span class="p">)</span>
 
     <span class="k">def</span> <span class="nf">is_currently_available</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-        <span class="n">unav_periods</span> <span class="o">=</span> <span class="n">UnavailabilityPeriod</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span>
-            <span class="n">contributor</span><span class="o">=</span><span class="bp">self</span><span class="p">)</span>
-        <span class="n">available</span> <span class="o">=</span> <span class="kc">True</span>
+        <span class="n">unav_periods</span> <span class="o">=</span> <span class="n">UnavailabilityPeriod</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span><span class="n">contributor</span><span class="o">=</span><span class="bp">self</span><span class="p">)</span>
+
         <span class="n">today</span> <span class="o">=</span> <span class="n">datetime</span><span class="o">.</span><span class="n">date</span><span class="o">.</span><span class="n">today</span><span class="p">()</span>
         <span class="k">for</span> <span class="n">unav</span> <span class="ow">in</span> <span class="n">unav_periods</span><span class="p">:</span>
             <span class="k">if</span> <span class="n">unav</span><span class="o">.</span><span class="n">start</span> <span class="o">&lt;</span> <span class="n">today</span> <span class="ow">and</span> <span class="n">unav</span><span class="o">.</span><span class="n">end</span> <span class="o">&gt;</span> <span class="n">today</span><span class="p">:</span>
-                <span class="n">available</span> <span class="o">=</span> <span class="kc">False</span>
-        <span class="k">return</span> <span class="n">available</span>
-
+                <span class="k">return</span> <span class="kc">False</span>
+        <span class="k">return</span> <span class="kc">True</span>
 
-    <span class="k">def</span> <span class="nf">private_info_as_table</span> <span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+    <span class="k">def</span> <span class="nf">private_info_as_table</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
         <span class="n">template</span> <span class="o">=</span> <span class="n">Template</span><span class="p">(</span><span class="s1">&#39;&#39;&#39;</span>
-<span class="s1">        &lt;table&gt;</span>
-<span class="s1">        &lt;tr&gt;&lt;td&gt;Title: &lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;{{ title }}&lt;/td&gt;&lt;/tr&gt;</span>
-<span class="s1">        &lt;tr&gt;&lt;td&gt;First name: &lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;{{ first_name }}&lt;/td&gt;&lt;/tr&gt;</span>
-<span class="s1">        &lt;tr&gt;&lt;td&gt;Last name: &lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;{{ last_name }}&lt;/td&gt;&lt;/tr&gt;</span>
-<span class="s1">        &lt;tr&gt;&lt;td&gt;Email: &lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;{{ email }}&lt;/td&gt;&lt;/tr&gt;</span>
-<span class="s1">        &lt;tr&gt;&lt;td&gt;ORCID id: &lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;{{ orcid_id }}&lt;/td&gt;&lt;/tr&gt;</span>
-<span class="s1">        &lt;tr&gt;&lt;td&gt;Country of employment: &lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;</span>
-<span class="s1">        &lt;td&gt;{{ country_of_employment }}&lt;/td&gt;&lt;/tr&gt;</span>
-<span class="s1">        &lt;tr&gt;&lt;td&gt;Affiliation: &lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;{{ affiliation }}&lt;/td&gt;&lt;/tr&gt;</span>
-<span class="s1">        &lt;tr&gt;&lt;td&gt;Address: &lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;{{ address }}&lt;/td&gt;&lt;/tr&gt;</span>
-<span class="s1">        &lt;tr&gt;&lt;td&gt;Personal web page: &lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;{{ personalwebpage }}&lt;/td&gt;&lt;/tr&gt;</span>
-<span class="s1">        &lt;tr&gt;&lt;td&gt;Accept SciPost emails: &lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;{{ accepts_SciPost_emails }}&lt;/td&gt;&lt;/tr&gt;</span>
-<span class="s1">        &lt;/table&gt;</span>
+<span class="s1">            &lt;table&gt;</span>
+<span class="s1">            &lt;tr&gt;&lt;td&gt;Title: &lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;{{ title }}&lt;/td&gt;&lt;/tr&gt;</span>
+<span class="s1">            &lt;tr&gt;&lt;td&gt;First name: &lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;{{ first_name }}&lt;/td&gt;&lt;/tr&gt;</span>
+<span class="s1">            &lt;tr&gt;&lt;td&gt;Last name: &lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;{{ last_name }}&lt;/td&gt;&lt;/tr&gt;</span>
+<span class="s1">            &lt;tr&gt;&lt;td&gt;Email: &lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;{{ email }}&lt;/td&gt;&lt;/tr&gt;</span>
+<span class="s1">            &lt;tr&gt;&lt;td&gt;ORCID id: &lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;{{ orcid_id }}&lt;/td&gt;&lt;/tr&gt;</span>
+<span class="s1">            &lt;tr&gt;&lt;td&gt;Country of employment: &lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;</span>
+<span class="s1">            &lt;td&gt;{{ country_of_employment }}&lt;/td&gt;&lt;/tr&gt;</span>
+<span class="s1">            &lt;tr&gt;&lt;td&gt;Affiliation: &lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;{{ affiliation }}&lt;/td&gt;&lt;/tr&gt;</span>
+<span class="s1">            &lt;tr&gt;&lt;td&gt;Address: &lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;{{ address }}&lt;/td&gt;&lt;/tr&gt;</span>
+<span class="s1">            &lt;tr&gt;&lt;td&gt;Personal web page: &lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;{{ personalwebpage }}&lt;/td&gt;&lt;/tr&gt;</span>
+<span class="s1">            &lt;tr&gt;&lt;td&gt;Accept SciPost emails: &lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;{{ accepts_SciPost_emails }}&lt;/td&gt;&lt;/tr&gt;</span>
+<span class="s1">            &lt;/table&gt;</span>
 <span class="s1">        &#39;&#39;&#39;</span><span class="p">)</span>
         <span class="n">context</span> <span class="o">=</span> <span class="n">Context</span><span class="p">({</span>
             <span class="s1">&#39;title&#39;</span><span class="p">:</span> <span class="n">title_dict</span><span class="p">[</span><span class="bp">self</span><span class="o">.</span><span class="n">title</span><span class="p">],</span>
@@ -391,21 +391,20 @@
         <span class="k">return</span> <span class="n">template</span><span class="o">.</span><span class="n">render</span><span class="p">(</span><span class="n">context</span><span class="p">)</span>
 
 
-<div class="viewcode-block" id="Contributor.public_info_as_table"><a class="viewcode-back" href="../../modules/models.html#scipost.models.Contributor.public_info_as_table">[docs]</a>    <span class="k">def</span> <span class="nf">public_info_as_table</span> <span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-        <span class="sd">&quot;&quot;&quot;</span>
-<span class="sd">        Prints out all publicly-accessible info as a table.</span>
-<span class="sd">        &quot;&quot;&quot;</span>
+<div class="viewcode-block" id="Contributor.public_info_as_table"><a class="viewcode-back" href="../../modules/models.html#scipost.models.Contributor.public_info_as_table">[docs]</a>    <span class="k">def</span> <span class="nf">public_info_as_table</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+        <span class="sd">&quot;&quot;&quot;Prints out all publicly-accessible info as a table.&quot;&quot;&quot;</span>
+        
         <span class="n">template</span> <span class="o">=</span> <span class="n">Template</span><span class="p">(</span><span class="s1">&#39;&#39;&#39;</span>
-<span class="s1">        &lt;table&gt;</span>
-<span class="s1">        &lt;tr&gt;&lt;td&gt;Title: &lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;{{ title }}&lt;/td&gt;&lt;/tr&gt;</span>
-<span class="s1">        &lt;tr&gt;&lt;td&gt;First name: &lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;{{ first_name }}&lt;/td&gt;&lt;/tr&gt;</span>
-<span class="s1">        &lt;tr&gt;&lt;td&gt;Last name: &lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;{{ last_name }}&lt;/td&gt;&lt;/tr&gt;</span>
-<span class="s1">        &lt;tr&gt;&lt;td&gt;ORCID id: &lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;{{ orcid_id }}&lt;/td&gt;&lt;/tr&gt;</span>
-<span class="s1">        &lt;tr&gt;&lt;td&gt;Country of employment: &lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;</span>
-<span class="s1">        &lt;td&gt;{{ country_of_employment }}&lt;/td&gt;&lt;/tr&gt;</span>
-<span class="s1">        &lt;tr&gt;&lt;td&gt;Affiliation: &lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;{{ affiliation }}&lt;/td&gt;&lt;/tr&gt;</span>
-<span class="s1">        &lt;tr&gt;&lt;td&gt;Personal web page: &lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;{{ personalwebpage }}&lt;/td&gt;&lt;/tr&gt;</span>
-<span class="s1">        &lt;/table&gt;</span>
+<span class="s1">            &lt;table&gt;</span>
+<span class="s1">            &lt;tr&gt;&lt;td&gt;Title: &lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;{{ title }}&lt;/td&gt;&lt;/tr&gt;</span>
+<span class="s1">            &lt;tr&gt;&lt;td&gt;First name: &lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;{{ first_name }}&lt;/td&gt;&lt;/tr&gt;</span>
+<span class="s1">            &lt;tr&gt;&lt;td&gt;Last name: &lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;{{ last_name }}&lt;/td&gt;&lt;/tr&gt;</span>
+<span class="s1">            &lt;tr&gt;&lt;td&gt;ORCID id: &lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;{{ orcid_id }}&lt;/td&gt;&lt;/tr&gt;</span>
+<span class="s1">            &lt;tr&gt;&lt;td&gt;Country of employment: &lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;</span>
+<span class="s1">            &lt;td&gt;{{ country_of_employment }}&lt;/td&gt;&lt;/tr&gt;</span>
+<span class="s1">            &lt;tr&gt;&lt;td&gt;Affiliation: &lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;{{ affiliation }}&lt;/td&gt;&lt;/tr&gt;</span>
+<span class="s1">            &lt;tr&gt;&lt;td&gt;Personal web page: &lt;/td&gt;&lt;td&gt;&amp;nbsp;&lt;/td&gt;&lt;td&gt;{{ personalwebpage }}&lt;/td&gt;&lt;/tr&gt;</span>
+<span class="s1">            &lt;/table&gt;</span>
 <span class="s1">        &#39;&#39;&#39;</span><span class="p">)</span>
         <span class="n">context</span> <span class="o">=</span> <span class="n">Context</span><span class="p">({</span>
                 <span class="s1">&#39;title&#39;</span><span class="p">:</span> <span class="n">title_dict</span><span class="p">[</span><span class="bp">self</span><span class="o">.</span><span class="n">title</span><span class="p">],</span>
@@ -426,7 +425,7 @@
     <span class="k">def</span> <span class="nf">expertises_as_ul</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
         <span class="n">output</span> <span class="o">=</span> <span class="s1">&#39;&lt;ul&gt;&#39;</span>
         <span class="k">for</span> <span class="n">exp</span> <span class="ow">in</span> <span class="bp">self</span><span class="o">.</span><span class="n">expertises</span><span class="p">:</span>
-            <span class="n">output</span> <span class="o">+=</span> <span class="s1">&#39;&lt;li&gt;&#39;</span> <span class="o">+</span> <span class="n">subject_areas_dict</span><span class="p">[</span><span class="n">exp</span><span class="p">]</span> <span class="o">+</span> <span class="s1">&#39;&lt;/li&gt;&#39;</span>
+            <span class="n">output</span> <span class="o">+=</span> <span class="s1">&#39;&lt;li&gt;</span><span class="si">%s</span><span class="s1">&lt;/li&gt;&#39;</span> <span class="o">%</span> <span class="n">subject_areas_dict</span><span class="p">[</span><span class="n">exp</span><span class="p">]</span>
         <span class="n">output</span> <span class="o">+=</span> <span class="s1">&#39;&lt;/ul&gt;&#39;</span>
         <span class="k">return</span> <span class="n">mark_safe</span><span class="p">(</span><span class="n">output</span><span class="p">)</span>
 
@@ -521,6 +520,31 @@
     <span class="p">(</span><span class="s1">&#39;P&#39;</span><span class="p">,</span> <span class="s1">&#39;personal&#39;</span><span class="p">),</span>
     <span class="p">)</span>
 
+<div class="viewcode-block" id="DraftInvitation"><a class="viewcode-back" href="../../modules/models.html#scipost.models.DraftInvitation">[docs]</a><span class="k">class</span> <span class="nc">DraftInvitation</span><span class="p">(</span><span class="n">models</span><span class="o">.</span><span class="n">Model</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;</span>
+<span class="sd">    Draft of an invitation, filled in by an officer.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="n">title</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">CharField</span><span class="p">(</span><span class="n">max_length</span><span class="o">=</span><span class="mi">4</span><span class="p">,</span> <span class="n">choices</span><span class="o">=</span><span class="n">TITLE_CHOICES</span><span class="p">)</span>
+    <span class="n">first_name</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">CharField</span><span class="p">(</span><span class="n">max_length</span><span class="o">=</span><span class="mi">30</span><span class="p">,</span> <span class="n">default</span><span class="o">=</span><span class="s1">&#39;&#39;</span><span class="p">)</span>
+    <span class="n">last_name</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">CharField</span><span class="p">(</span><span class="n">max_length</span><span class="o">=</span><span class="mi">30</span><span class="p">,</span> <span class="n">default</span><span class="o">=</span><span class="s1">&#39;&#39;</span><span class="p">)</span>
+    <span class="n">email</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">EmailField</span><span class="p">()</span>
+    <span class="n">invitation_type</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">CharField</span><span class="p">(</span><span class="n">max_length</span><span class="o">=</span><span class="mi">2</span><span class="p">,</span> <span class="n">choices</span><span class="o">=</span><span class="n">INVITATION_TYPE</span><span class="p">,</span> <span class="n">default</span><span class="o">=</span><span class="s1">&#39;C&#39;</span><span class="p">)</span>
+    <span class="n">cited_in_submission</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">ForeignKey</span><span class="p">(</span><span class="s1">&#39;submissions.Submission&#39;</span><span class="p">,</span>
+                                            <span class="n">on_delete</span><span class="o">=</span><span class="n">models</span><span class="o">.</span><span class="n">CASCADE</span><span class="p">,</span>
+                                            <span class="n">blank</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span> <span class="n">null</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
+    <span class="n">cited_in_publication</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">ForeignKey</span><span class="p">(</span><span class="s1">&#39;journals.Publication&#39;</span><span class="p">,</span>
+                                             <span class="n">on_delete</span><span class="o">=</span><span class="n">models</span><span class="o">.</span><span class="n">CASCADE</span><span class="p">,</span>
+                                             <span class="n">blank</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span> <span class="n">null</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
+    <span class="n">drafted_by</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">ForeignKey</span><span class="p">(</span><span class="n">Contributor</span><span class="p">,</span>
+                                   <span class="n">on_delete</span><span class="o">=</span><span class="n">models</span><span class="o">.</span><span class="n">CASCADE</span><span class="p">,</span>
+                                   <span class="n">blank</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span> <span class="n">null</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
+    <span class="n">date_drafted</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">DateTimeField</span><span class="p">(</span><span class="n">default</span><span class="o">=</span><span class="n">timezone</span><span class="o">.</span><span class="n">now</span><span class="p">)</span>
+    <span class="n">processed</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">BooleanField</span><span class="p">(</span><span class="n">default</span><span class="o">=</span><span class="kc">False</span><span class="p">)</span>
+
+    <span class="k">def</span> <span class="nf">__str__</span> <span class="p">(</span><span class="bp">self</span><span class="p">):</span>
+        <span class="k">return</span> <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">invitation_type</span> <span class="o">+</span> <span class="s1">&#39; &#39;</span> <span class="o">+</span> <span class="bp">self</span><span class="o">.</span><span class="n">first_name</span> <span class="o">+</span> <span class="s1">&#39; &#39;</span> <span class="o">+</span> <span class="bp">self</span><span class="o">.</span><span class="n">last_name</span><span class="p">)</span></div>
+
+
 <div class="viewcode-block" id="RegistrationInvitation"><a class="viewcode-back" href="../../modules/models.html#scipost.models.RegistrationInvitation">[docs]</a><span class="k">class</span> <span class="nc">RegistrationInvitation</span><span class="p">(</span><span class="n">models</span><span class="o">.</span><span class="n">Model</span><span class="p">):</span>
     <span class="sd">&quot;&quot;&quot;</span>
 <span class="sd">    Invitation to particular persons for registration</span>
@@ -580,88 +604,6 @@
     <span class="n">status</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">SmallIntegerField</span><span class="p">(</span><span class="n">choices</span><span class="o">=</span><span class="n">AUTHORSHIP_CLAIM_STATUS</span><span class="p">,</span> <span class="n">default</span><span class="o">=</span><span class="mi">0</span><span class="p">)</span></div>
 
 
-
-<span class="c1">#######################</span>
-<span class="c1">### Assessments objects</span>
-<span class="c1">#######################</span>
-
-
-<span class="c1">### Assessments</span>
-
-<span class="c1">#ASSESSMENT_CHOICES = (</span>
-<span class="c1">#    (101, &#39;-&#39;), # Only values between 0 and 100 are kept, anything outside limits is discarded.</span>
-<span class="c1">#    (100, &#39;top&#39;), (80, &#39;high&#39;), (60, &#39;good&#39;), (40, &#39;ok&#39;), (20, &#39;low&#39;), (0, &#39;poor&#39;)</span>
-<span class="c1">#    )</span>
-
-<span class="c1">#class Assessment(models.Model):</span>
-<span class="c1">#    &quot;&quot;&quot;</span>
-<span class="c1">#    Base class for all assessments.</span>
-<span class="c1">#    &quot;&quot;&quot;</span>
-<span class="c1">#    rater = models.ForeignKey(Contributor, on_delete=models.CASCADE)</span>
-<span class="c1">#    submission = models.ForeignKey(&#39;submissions.Submission&#39;, on_delete=models.CASCADE, blank=True, null=True)</span>
-<span class="c1">#    comment = models.ForeignKey(&#39;comments.Comment&#39;, on_delete=models.CASCADE, blank=True, null=True)</span>
-<span class="c1">#    relevance = models.PositiveSmallIntegerField(choices=ASSESSMENT_CHOICES, default=101)</span>
-<span class="c1">#    importance = models.PositiveSmallIntegerField(choices=ASSESSMENT_CHOICES, default=101)</span>
-<span class="c1">#    clarity = models.PositiveSmallIntegerField(choices=ASSESSMENT_CHOICES, default=101)</span>
-<span class="c1">#    validity = models.PositiveSmallIntegerField(choices=ASSESSMENT_CHOICES, default=101)</span>
-<span class="c1">#    rigour = models.PositiveSmallIntegerField(choices=ASSESSMENT_CHOICES, default=101)</span>
-<span class="c1">#    originality = models.PositiveSmallIntegerField(choices=ASSESSMENT_CHOICES, default=101)</span>
-<span class="c1">#    significance = models.PositiveSmallIntegerField(choices=ASSESSMENT_CHOICES, default=101)</span>
-
-
-<span class="c1">### Opinions</span>
-
-<span class="c1">#OPINION_CHOICES = (</span>
-<span class="c1">#    (&#39;ABS&#39;, &#39;-&#39;),</span>
-<span class="c1">#    (&#39;A&#39;, &#39;agree&#39;),</span>
-<span class="c1">#    (&#39;N&#39;, &#39;not sure&#39;),</span>
-<span class="c1">#    (&#39;D&#39;, &#39;disagree&#39;),</span>
-<span class="c1">#)</span>
-<span class="c1">#opinion_choices_dict = dict(OPINION_CHOICES)</span>
-
-<span class="c1">#class Opinion(models.Model):</span>
-<span class="c1">#    rater = models.ForeignKey(Contributor, on_delete=models.CASCADE)</span>
-<span class="c1">#    comment = models.ForeignKey(&#39;comments.Comment&#39;, on_delete=models.CASCADE)</span>
-<span class="c1">#    opinion = models.CharField(max_length=3, choices=OPINION_CHOICES, default=&#39;ABS&#39;)</span>
-
-
-<span class="c1">### AssessmentAggregates</span>
-
-<span class="c1">#class AssessmentAggregate(models.Model):</span>
-<span class="c1">#    &quot;&quot;&quot;</span>
-<span class="c1">#    Aggregated assessments for an object.</span>
-<span class="c1">#    &quot;&quot;&quot;</span>
-<span class="c1">#    nr = models.PositiveSmallIntegerField(default=0)</span>
-<span class="c1">#    nr_relevance_ratings = models.IntegerField(default=0)</span>
-<span class="c1">#    relevance_rating = models.DecimalField(default=0, max_digits=3, decimal_places=0)</span>
-<span class="c1">#    nr_importance_ratings = models.IntegerField(default=0)</span>
-<span class="c1">#    importance_rating = models.DecimalField(default=0, max_digits=3, decimal_places=0)</span>
-<span class="c1">#    nr_clarity_ratings = models.IntegerField(default=0)</span>
-<span class="c1">#    clarity_rating = models.DecimalField(default=0, max_digits=3, decimal_places=0)</span>
-<span class="c1">#    nr_validity_ratings = models.IntegerField(default=0)</span>
-<span class="c1">#    validity_rating = models.DecimalField(default=0, max_digits=3, decimal_places=0)</span>
-<span class="c1">#    nr_rigour_ratings = models.IntegerField(default=0)</span>
-<span class="c1">#    rigour_rating = models.DecimalField(default=0, max_digits=3, decimal_places=0)</span>
-<span class="c1">#    nr_originality_ratings = models.IntegerField(default=0)</span>
-<span class="c1">#    originality_rating = models.DecimalField(default=0, max_digits=3, decimal_places=0)</span>
-<span class="c1">#    nr_significance_ratings = models.IntegerField(default=0)</span>
-<span class="c1">#    significance_rating = models.DecimalField(default=0, max_digits=3, decimal_places=0)</span>
-
-
-<span class="c1">##########</span>
-<span class="c1"># Emails #</span>
-<span class="c1">##########</span>
-
-<span class="c1"># class EmailedTo(models.Model):</span>
-<span class="c1">#     &quot;&quot;&quot;</span>
-<span class="c1">#     An email address used for emailing.</span>
-<span class="c1">#     An instance is created by a method as send_precooked_email</span>
-<span class="c1">#     if the chosen message hasn&#39;t been sent to this address before.</span>
-<span class="c1">#     Helps prevent multiple emailing with same message.</span>
-<span class="c1">#     &quot;&quot;&quot;</span>
-<span class="c1">#     email = models.EmailField()</span>
-
-
 <span class="n">SCIPOST_FROM_ADDRESSES</span> <span class="o">=</span> <span class="p">(</span>
     <span class="p">(</span><span class="s1">&#39;Admin&#39;</span><span class="p">,</span> <span class="s1">&#39;SciPost Admin &lt;admin@scipost.org&gt;&#39;</span><span class="p">),</span>
     <span class="p">(</span><span class="s1">&#39;J.-S. Caux&#39;</span><span class="p">,</span> <span class="s1">&#39;J.-S. Caux &lt;jscaux@scipost.org&gt;&#39;</span><span class="p">),</span>
@@ -680,7 +622,6 @@
     <span class="n">email_text</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">TextField</span><span class="p">()</span>
     <span class="n">email_text_html</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">TextField</span><span class="p">()</span>
     <span class="n">date_created</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">DateField</span><span class="p">(</span><span class="n">default</span><span class="o">=</span><span class="n">timezone</span><span class="o">.</span><span class="n">now</span><span class="p">)</span>
-    <span class="c1">#emailed_to = models.ManyToManyField(EmailedTo, blank=True)</span>
     <span class="n">emailed_to</span> <span class="o">=</span> <span class="n">ArrayField</span><span class="p">(</span><span class="n">models</span><span class="o">.</span><span class="n">EmailField</span><span class="p">(</span><span class="n">blank</span><span class="o">=</span><span class="kc">True</span><span class="p">),</span> <span class="n">blank</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
     <span class="n">date_last_used</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">DateField</span><span class="p">(</span><span class="n">default</span><span class="o">=</span><span class="n">timezone</span><span class="o">.</span><span class="n">now</span><span class="p">)</span>
     <span class="n">deprecated</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">BooleanField</span><span class="p">(</span><span class="n">default</span><span class="o">=</span><span class="kc">False</span><span class="p">)</span>
@@ -769,8 +710,7 @@
 
 
     <span class="k">def</span> <span class="nf">__str__</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-        <span class="k">return</span> <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">title</span><span class="p">[:</span><span class="mi">30</span><span class="p">]</span> <span class="o">+</span> <span class="s1">&#39; (owner: &#39;</span> <span class="o">+</span> <span class="bp">self</span><span class="o">.</span><span class="n">owner</span><span class="o">.</span><span class="n">user</span><span class="o">.</span><span class="n">first_name</span> <span class="o">+</span> <span class="s1">&#39; &#39;</span>
-                <span class="o">+</span> <span class="bp">self</span><span class="o">.</span><span class="n">owner</span><span class="o">.</span><span class="n">user</span><span class="o">.</span><span class="n">last_name</span> <span class="o">+</span> <span class="s1">&#39;)&#39;</span><span class="p">)</span>
+        <span class="k">return</span> <span class="s1">&#39;</span><span class="si">%s</span><span class="s1"> (owner: </span><span class="si">%s</span><span class="s1"> </span><span class="si">%s</span><span class="s1">)&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">title</span><span class="p">[:</span><span class="mi">30</span><span class="p">],</span> <span class="bp">self</span><span class="o">.</span><span class="n">owner</span><span class="o">.</span><span class="n">user</span><span class="o">.</span><span class="n">first_name</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">owner</span><span class="o">.</span><span class="n">user</span><span class="o">.</span><span class="n">last_name</span><span class="p">)</span>
 
 
     <span class="k">def</span> <span class="nf">header</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
@@ -839,7 +779,7 @@
 <span class="sd">    Team of Contributors, to enable private collaborations.</span>
 <span class="sd">    &quot;&quot;&quot;</span>
     <span class="n">leader</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">ForeignKey</span><span class="p">(</span><span class="n">Contributor</span><span class="p">,</span> <span class="n">on_delete</span><span class="o">=</span><span class="n">models</span><span class="o">.</span><span class="n">CASCADE</span><span class="p">)</span>
-    <span class="n">members</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">ManyToManyField</span> <span class="p">(</span><span class="n">Contributor</span><span class="p">,</span> <span class="n">blank</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span> <span class="n">related_name</span><span class="o">=</span><span class="s1">&#39;team_members&#39;</span><span class="p">)</span>
+    <span class="n">members</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">ManyToManyField</span><span class="p">(</span><span class="n">Contributor</span><span class="p">,</span> <span class="n">blank</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span> <span class="n">related_name</span><span class="o">=</span><span class="s1">&#39;team_members&#39;</span><span class="p">)</span>
     <span class="n">name</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">CharField</span><span class="p">(</span><span class="n">max_length</span><span class="o">=</span><span class="mi">100</span><span class="p">)</span>
     <span class="n">established</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">DateField</span><span class="p">(</span><span class="n">default</span><span class="o">=</span><span class="n">timezone</span><span class="o">.</span><span class="n">now</span><span class="p">)</span>
 
@@ -888,8 +828,7 @@
 
 
     <span class="k">def</span> <span class="nf">__str__</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
-        <span class="k">return</span> <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">title</span><span class="p">[:</span><span class="mi">30</span><span class="p">]</span> <span class="o">+</span> <span class="s1">&#39; (owner: &#39;</span> <span class="o">+</span> <span class="bp">self</span><span class="o">.</span><span class="n">owner</span><span class="o">.</span><span class="n">user</span><span class="o">.</span><span class="n">first_name</span> <span class="o">+</span> <span class="s1">&#39; &#39;</span>
-                <span class="o">+</span> <span class="bp">self</span><span class="o">.</span><span class="n">owner</span><span class="o">.</span><span class="n">user</span><span class="o">.</span><span class="n">last_name</span> <span class="o">+</span> <span class="s1">&#39;)&#39;</span><span class="p">)</span>
+        <span class="k">return</span> <span class="s1">&#39;</span><span class="si">%s</span><span class="s1"> (owner: </span><span class="si">%s</span><span class="s1"> </span><span class="si">%s</span><span class="s1">)&#39;</span> <span class="o">%</span> <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">title</span><span class="p">[:</span><span class="mi">30</span><span class="p">],</span> <span class="bp">self</span><span class="o">.</span><span class="n">owner</span><span class="o">.</span><span class="n">user</span><span class="o">.</span><span class="n">first_name</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">owner</span><span class="o">.</span><span class="n">user</span><span class="o">.</span><span class="n">last_name</span><span class="p">)</span>
 
     <span class="k">def</span> <span class="nf">header_as_li</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
         <span class="n">context</span> <span class="o">=</span> <span class="n">Context</span><span class="p">({</span><span class="s1">&#39;id&#39;</span><span class="p">:</span> <span class="bp">self</span><span class="o">.</span><span class="n">id</span><span class="p">,</span> <span class="s1">&#39;title&#39;</span><span class="p">:</span> <span class="bp">self</span><span class="o">.</span><span class="n">title</span><span class="p">,</span>
diff --git a/docs/_build/html/_modules/scipost/views.html b/docs/_build/html/_modules/scipost/views.html
index c193238b0..4cca70f90 100644
--- a/docs/_build/html/_modules/scipost/views.html
+++ b/docs/_build/html/_modules/scipost/views.html
@@ -84,8 +84,10 @@
             
             
                 <ul>
+<li class="toctree-l1"><a class="reference internal" href="../../howto/production.html">Production of SciPost Publications</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../../modules/models.html">Models</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../../modules/views.html">Views</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../dev/maintenance/docs.html">Maintenance of SciPost documentation</a></li>
 </ul>
 
             
@@ -141,7 +143,6 @@
 <span class="kn">from</span> <span class="nn">django.shortcuts</span> <span class="k">import</span> <span class="n">get_object_or_404</span><span class="p">,</span> <span class="n">render</span>
 <span class="kn">from</span> <span class="nn">django.contrib.auth</span> <span class="k">import</span> <span class="n">authenticate</span><span class="p">,</span> <span class="n">login</span><span class="p">,</span> <span class="n">logout</span>
 <span class="kn">from</span> <span class="nn">django.contrib.auth.decorators</span> <span class="k">import</span> <span class="n">login_required</span>
-<span class="c1">#from django.contrib.auth.decorators import permission_required   # Superseded by guardian</span>
 <span class="kn">from</span> <span class="nn">django.contrib.auth.models</span> <span class="k">import</span> <span class="n">User</span><span class="p">,</span> <span class="n">Group</span><span class="p">,</span> <span class="n">Permission</span>
 <span class="kn">from</span> <span class="nn">django.contrib.auth.views</span> <span class="k">import</span> <span class="n">password_reset</span><span class="p">,</span> <span class="n">password_reset_confirm</span>
 <span class="kn">from</span> <span class="nn">django.core.exceptions</span> <span class="k">import</span> <span class="n">MultipleObjectsReturned</span><span class="p">,</span> <span class="n">ObjectDoesNotExist</span><span class="p">,</span> <span class="n">PermissionDenied</span>
@@ -609,8 +610,109 @@
     <span class="k">return</span> <span class="n">render</span><span class="p">(</span><span class="n">request</span><span class="p">,</span> <span class="s1">&#39;scipost/acknowledgement.html&#39;</span><span class="p">,</span> <span class="n">context</span><span class="p">)</span>
 
 
+<span class="nd">@permission_required</span><span class="p">(</span><span class="s1">&#39;scipost.can_draft_registration_invitations&#39;</span><span class="p">,</span> <span class="n">return_403</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
+<div class="viewcode-block" id="draft_registration_invitation"><a class="viewcode-back" href="../../modules/views.html#scipost.views.draft_registration_invitation">[docs]</a><span class="k">def</span> <span class="nf">draft_registration_invitation</span><span class="p">(</span><span class="n">request</span><span class="p">):</span>
+    <span class="sd">&quot;&quot;&quot;</span>
+<span class="sd">    For officers to prefill registration invitations.</span>
+<span class="sd">    This is similar to the registration_invitations method,</span>
+<span class="sd">    which is used to complete the invitation process.</span>
+<span class="sd">    &quot;&quot;&quot;</span>
+    <span class="n">errormessage</span> <span class="o">=</span> <span class="s1">&#39;&#39;</span>
+    <span class="k">if</span> <span class="n">request</span><span class="o">.</span><span class="n">method</span> <span class="o">==</span> <span class="s1">&#39;POST&#39;</span><span class="p">:</span>
+        <span class="n">draft_inv_form</span> <span class="o">=</span> <span class="n">DraftInvitationForm</span><span class="p">(</span><span class="n">request</span><span class="o">.</span><span class="n">POST</span><span class="p">)</span>
+        <span class="n">Utils</span><span class="o">.</span><span class="n">load</span><span class="p">({</span><span class="s1">&#39;contributor&#39;</span><span class="p">:</span> <span class="n">request</span><span class="o">.</span><span class="n">user</span><span class="o">.</span><span class="n">contributor</span><span class="p">,</span> <span class="s1">&#39;form&#39;</span><span class="p">:</span> <span class="n">draft_inv_form</span><span class="p">})</span>
+        <span class="k">if</span> <span class="n">draft_inv_form</span><span class="o">.</span><span class="n">is_valid</span><span class="p">():</span>
+            <span class="k">if</span> <span class="n">Utils</span><span class="o">.</span><span class="n">email_already_invited</span><span class="p">():</span>
+                <span class="n">errormessage</span> <span class="o">=</span> <span class="p">(</span><span class="s1">&#39;DUPLICATE ERROR: &#39;</span>
+                                <span class="s1">&#39;This email address has already been used for an invitation&#39;</span><span class="p">)</span>
+            <span class="k">elif</span> <span class="n">Utils</span><span class="o">.</span><span class="n">email_already_drafted</span><span class="p">():</span>
+                <span class="n">errormessage</span> <span class="o">=</span> <span class="p">(</span><span class="s1">&#39;DUPLICATE ERROR: &#39;</span>
+                                <span class="s1">&#39;This email address has already been used for a draft invitation&#39;</span><span class="p">)</span>
+            <span class="k">elif</span> <span class="n">Utils</span><span class="o">.</span><span class="n">email_already_taken</span><span class="p">():</span>
+                <span class="n">errormessage</span> <span class="o">=</span> <span class="p">(</span><span class="s1">&#39;DUPLICATE ERROR: &#39;</span>
+                                <span class="s1">&#39;This email address is already associated to a Contributor&#39;</span><span class="p">)</span>
+            <span class="k">elif</span> <span class="p">(</span><span class="n">draft_inv_form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;invitation_type&#39;</span><span class="p">]</span> <span class="o">==</span> <span class="s1">&#39;F&#39;</span>
+                  <span class="ow">and</span> <span class="ow">not</span> <span class="n">request</span><span class="o">.</span><span class="n">user</span><span class="o">.</span><span class="n">has_perm</span><span class="p">(</span><span class="s1">&#39;scipost.can_invite_Fellows&#39;</span><span class="p">)):</span>
+                <span class="n">errormessage</span> <span class="o">=</span> <span class="p">(</span><span class="s1">&#39;You do not have the authorization to send a Fellow-type &#39;</span>
+                                <span class="s1">&#39;invitation. Consider Contributor, or cited (sub/pub). &#39;</span><span class="p">)</span>
+            <span class="k">elif</span> <span class="p">(</span><span class="n">draft_inv_form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;invitation_type&#39;</span><span class="p">]</span> <span class="o">==</span> <span class="s1">&#39;R&#39;</span><span class="p">):</span>
+                <span class="n">errormessage</span> <span class="o">=</span> <span class="p">(</span><span class="s1">&#39;Referee-type invitations must be made by the Editor-in-charge &#39;</span>
+                                <span class="s1">&#39;at the relevant Submission</span><span class="se">\&#39;</span><span class="s1">s Editorial Page. &#39;</span><span class="p">)</span>
+            <span class="k">else</span><span class="p">:</span>
+                <span class="n">Utils</span><span class="o">.</span><span class="n">create_draft_invitation</span><span class="p">()</span>
+                <span class="n">context</span> <span class="o">=</span> <span class="p">{</span><span class="s1">&#39;ack_header&#39;</span><span class="p">:</span> <span class="s1">&#39;Draft invitation saved.&#39;</span><span class="p">,</span>
+                           <span class="s1">&#39;followup_message&#39;</span><span class="p">:</span> <span class="s1">&#39;Return to the &#39;</span><span class="p">,</span>
+                           <span class="s1">&#39;followup_link&#39;</span><span class="p">:</span> <span class="n">reverse</span><span class="p">(</span><span class="s1">&#39;scipost:draft_registration_invitation&#39;</span><span class="p">),</span>
+                           <span class="s1">&#39;followup_link_label&#39;</span><span class="p">:</span> <span class="s1">&#39;drafting page&#39;</span><span class="p">}</span>
+                <span class="k">return</span> <span class="n">render</span><span class="p">(</span><span class="n">request</span><span class="p">,</span> <span class="s1">&#39;scipost/acknowledgement.html&#39;</span><span class="p">,</span> <span class="n">context</span><span class="p">)</span>
+        <span class="k">else</span><span class="p">:</span>
+            <span class="n">errormessage</span> <span class="o">=</span> <span class="s1">&#39;The form was not filled validly.&#39;</span>
+
+    <span class="k">else</span><span class="p">:</span>
+        <span class="n">draft_inv_form</span> <span class="o">=</span> <span class="n">DraftInvitationForm</span><span class="p">()</span>
+
+    <span class="n">sent_reg_inv</span> <span class="o">=</span> <span class="n">RegistrationInvitation</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span><span class="n">responded</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span> <span class="n">declined</span><span class="o">=</span><span class="kc">False</span><span class="p">)</span>
+    <span class="n">sent_reg_inv_fellows</span> <span class="o">=</span> <span class="n">sent_reg_inv</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span><span class="n">invitation_type</span><span class="o">=</span><span class="s1">&#39;F&#39;</span><span class="p">)</span><span class="o">.</span><span class="n">order_by</span><span class="p">(</span><span class="s1">&#39;last_name&#39;</span><span class="p">)</span>
+    <span class="n">nr_sent_reg_inv_fellows</span> <span class="o">=</span> <span class="n">sent_reg_inv_fellows</span><span class="o">.</span><span class="n">count</span><span class="p">()</span>
+    <span class="n">sent_reg_inv_contrib</span> <span class="o">=</span> <span class="n">sent_reg_inv</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span><span class="n">invitation_type</span><span class="o">=</span><span class="s1">&#39;C&#39;</span><span class="p">)</span><span class="o">.</span><span class="n">order_by</span><span class="p">(</span><span class="s1">&#39;last_name&#39;</span><span class="p">)</span>
+    <span class="n">nr_sent_reg_inv_contrib</span> <span class="o">=</span> <span class="n">sent_reg_inv_contrib</span><span class="o">.</span><span class="n">count</span><span class="p">()</span>
+    <span class="n">sent_reg_inv_ref</span> <span class="o">=</span> <span class="n">sent_reg_inv</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span><span class="n">invitation_type</span><span class="o">=</span><span class="s1">&#39;R&#39;</span><span class="p">)</span><span class="o">.</span><span class="n">order_by</span><span class="p">(</span><span class="s1">&#39;last_name&#39;</span><span class="p">)</span>
+    <span class="n">nr_sent_reg_inv_ref</span> <span class="o">=</span> <span class="n">sent_reg_inv_ref</span><span class="o">.</span><span class="n">count</span><span class="p">()</span>
+    <span class="n">sent_reg_inv_cited_sub</span> <span class="o">=</span> <span class="n">sent_reg_inv</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span><span class="n">invitation_type</span><span class="o">=</span><span class="s1">&#39;ci&#39;</span><span class="p">)</span><span class="o">.</span><span class="n">order_by</span><span class="p">(</span><span class="s1">&#39;last_name&#39;</span><span class="p">)</span>
+    <span class="n">nr_sent_reg_inv_cited_sub</span> <span class="o">=</span> <span class="n">sent_reg_inv_cited_sub</span><span class="o">.</span><span class="n">count</span><span class="p">()</span>
+    <span class="n">sent_reg_inv_cited_pub</span> <span class="o">=</span> <span class="n">sent_reg_inv</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span><span class="n">invitation_type</span><span class="o">=</span><span class="s1">&#39;cp&#39;</span><span class="p">)</span><span class="o">.</span><span class="n">order_by</span><span class="p">(</span><span class="s1">&#39;last_name&#39;</span><span class="p">)</span>
+    <span class="n">nr_sent_reg_inv_cited_pub</span> <span class="o">=</span> <span class="n">sent_reg_inv_cited_pub</span><span class="o">.</span><span class="n">count</span><span class="p">()</span>
+
+    <span class="n">resp_reg_inv</span> <span class="o">=</span> <span class="n">RegistrationInvitation</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span><span class="n">responded</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span> <span class="n">declined</span><span class="o">=</span><span class="kc">False</span><span class="p">)</span>
+    <span class="n">resp_reg_inv_fellows</span> <span class="o">=</span> <span class="n">resp_reg_inv</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span><span class="n">invitation_type</span><span class="o">=</span><span class="s1">&#39;F&#39;</span><span class="p">)</span><span class="o">.</span><span class="n">order_by</span><span class="p">(</span><span class="s1">&#39;last_name&#39;</span><span class="p">)</span>
+    <span class="n">nr_resp_reg_inv_fellows</span> <span class="o">=</span> <span class="n">resp_reg_inv_fellows</span><span class="o">.</span><span class="n">count</span><span class="p">()</span>
+    <span class="n">resp_reg_inv_contrib</span> <span class="o">=</span> <span class="n">resp_reg_inv</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span><span class="n">invitation_type</span><span class="o">=</span><span class="s1">&#39;C&#39;</span><span class="p">)</span><span class="o">.</span><span class="n">order_by</span><span class="p">(</span><span class="s1">&#39;last_name&#39;</span><span class="p">)</span>
+    <span class="n">nr_resp_reg_inv_contrib</span> <span class="o">=</span> <span class="n">resp_reg_inv_contrib</span><span class="o">.</span><span class="n">count</span><span class="p">()</span>
+    <span class="n">resp_reg_inv_ref</span> <span class="o">=</span> <span class="n">resp_reg_inv</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span><span class="n">invitation_type</span><span class="o">=</span><span class="s1">&#39;R&#39;</span><span class="p">)</span><span class="o">.</span><span class="n">order_by</span><span class="p">(</span><span class="s1">&#39;last_name&#39;</span><span class="p">)</span>
+    <span class="n">nr_resp_reg_inv_ref</span> <span class="o">=</span> <span class="n">resp_reg_inv_ref</span><span class="o">.</span><span class="n">count</span><span class="p">()</span>
+    <span class="n">resp_reg_inv_cited_sub</span> <span class="o">=</span> <span class="n">resp_reg_inv</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span><span class="n">invitation_type</span><span class="o">=</span><span class="s1">&#39;ci&#39;</span><span class="p">)</span><span class="o">.</span><span class="n">order_by</span><span class="p">(</span><span class="s1">&#39;last_name&#39;</span><span class="p">)</span>
+    <span class="n">nr_resp_reg_inv_cited_sub</span> <span class="o">=</span> <span class="n">resp_reg_inv_cited_sub</span><span class="o">.</span><span class="n">count</span><span class="p">()</span>
+    <span class="n">resp_reg_inv_cited_pub</span> <span class="o">=</span> <span class="n">resp_reg_inv</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span><span class="n">invitation_type</span><span class="o">=</span><span class="s1">&#39;cp&#39;</span><span class="p">)</span><span class="o">.</span><span class="n">order_by</span><span class="p">(</span><span class="s1">&#39;last_name&#39;</span><span class="p">)</span>
+    <span class="n">nr_resp_reg_inv_cited_pub</span> <span class="o">=</span> <span class="n">resp_reg_inv_cited_pub</span><span class="o">.</span><span class="n">count</span><span class="p">()</span>
+
+    <span class="n">decl_reg_inv</span> <span class="o">=</span> <span class="n">RegistrationInvitation</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span>
+        <span class="n">responded</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span> <span class="n">declined</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span><span class="o">.</span><span class="n">order_by</span><span class="p">(</span><span class="s1">&#39;last_name&#39;</span><span class="p">)</span>
+
+    <span class="n">names_reg_contributors</span> <span class="o">=</span> <span class="n">Contributor</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span>
+        <span class="n">status</span><span class="o">=</span><span class="mi">1</span><span class="p">)</span><span class="o">.</span><span class="n">order_by</span><span class="p">(</span><span class="s1">&#39;user__last_name&#39;</span><span class="p">)</span><span class="o">.</span><span class="n">values_list</span><span class="p">(</span>
+        <span class="s1">&#39;user__first_name&#39;</span><span class="p">,</span> <span class="s1">&#39;user__last_name&#39;</span><span class="p">)</span>
+    <span class="n">existing_drafts</span> <span class="o">=</span> <span class="n">DraftInvitation</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span><span class="n">processed</span><span class="o">=</span><span class="kc">False</span><span class="p">)</span><span class="o">.</span><span class="n">order_by</span><span class="p">(</span><span class="s1">&#39;last_name&#39;</span><span class="p">)</span>
+
+    <span class="n">context</span> <span class="o">=</span> <span class="p">{</span><span class="s1">&#39;draft_inv_form&#39;</span><span class="p">:</span> <span class="n">draft_inv_form</span><span class="p">,</span> <span class="s1">&#39;errormessage&#39;</span><span class="p">:</span> <span class="n">errormessage</span><span class="p">,</span>
+               <span class="s1">&#39;sent_reg_inv_fellows&#39;</span><span class="p">:</span> <span class="n">sent_reg_inv_fellows</span><span class="p">,</span>
+               <span class="s1">&#39;nr_sent_reg_inv_fellows&#39;</span><span class="p">:</span> <span class="n">nr_sent_reg_inv_fellows</span><span class="p">,</span>
+               <span class="s1">&#39;sent_reg_inv_contrib&#39;</span><span class="p">:</span> <span class="n">sent_reg_inv_contrib</span><span class="p">,</span>
+               <span class="s1">&#39;nr_sent_reg_inv_contrib&#39;</span><span class="p">:</span> <span class="n">nr_sent_reg_inv_contrib</span><span class="p">,</span>
+               <span class="s1">&#39;sent_reg_inv_ref&#39;</span><span class="p">:</span> <span class="n">sent_reg_inv_ref</span><span class="p">,</span>
+               <span class="s1">&#39;nr_sent_reg_inv_ref&#39;</span><span class="p">:</span> <span class="n">nr_sent_reg_inv_ref</span><span class="p">,</span>
+               <span class="s1">&#39;sent_reg_inv_cited_sub&#39;</span><span class="p">:</span> <span class="n">sent_reg_inv_cited_sub</span><span class="p">,</span>
+               <span class="s1">&#39;nr_sent_reg_inv_cited_sub&#39;</span><span class="p">:</span> <span class="n">nr_sent_reg_inv_cited_sub</span><span class="p">,</span>
+               <span class="s1">&#39;sent_reg_inv_cited_pub&#39;</span><span class="p">:</span> <span class="n">sent_reg_inv_cited_pub</span><span class="p">,</span>
+               <span class="s1">&#39;nr_sent_reg_inv_cited_pub&#39;</span><span class="p">:</span> <span class="n">nr_sent_reg_inv_cited_pub</span><span class="p">,</span>
+               <span class="s1">&#39;resp_reg_inv_fellows&#39;</span><span class="p">:</span> <span class="n">resp_reg_inv_fellows</span><span class="p">,</span>
+               <span class="s1">&#39;nr_resp_reg_inv_fellows&#39;</span><span class="p">:</span> <span class="n">nr_resp_reg_inv_fellows</span><span class="p">,</span>
+               <span class="s1">&#39;resp_reg_inv_contrib&#39;</span><span class="p">:</span> <span class="n">resp_reg_inv_contrib</span><span class="p">,</span>
+               <span class="s1">&#39;nr_resp_reg_inv_contrib&#39;</span><span class="p">:</span> <span class="n">nr_resp_reg_inv_contrib</span><span class="p">,</span>
+               <span class="s1">&#39;resp_reg_inv_ref&#39;</span><span class="p">:</span> <span class="n">resp_reg_inv_ref</span><span class="p">,</span>
+               <span class="s1">&#39;nr_resp_reg_inv_ref&#39;</span><span class="p">:</span> <span class="n">nr_resp_reg_inv_ref</span><span class="p">,</span>
+               <span class="s1">&#39;resp_reg_inv_cited_sub&#39;</span><span class="p">:</span> <span class="n">resp_reg_inv_cited_sub</span><span class="p">,</span>
+               <span class="s1">&#39;nr_resp_reg_inv_cited_sub&#39;</span><span class="p">:</span> <span class="n">nr_resp_reg_inv_cited_sub</span><span class="p">,</span>
+               <span class="s1">&#39;resp_reg_inv_cited_pub&#39;</span><span class="p">:</span> <span class="n">resp_reg_inv_cited_pub</span><span class="p">,</span>
+               <span class="s1">&#39;nr_resp_reg_inv_cited_pub&#39;</span><span class="p">:</span> <span class="n">nr_resp_reg_inv_cited_pub</span><span class="p">,</span>
+               <span class="s1">&#39;decl_reg_inv&#39;</span><span class="p">:</span> <span class="n">decl_reg_inv</span><span class="p">,</span>
+               <span class="s1">&#39;names_reg_contributors&#39;</span><span class="p">:</span> <span class="n">names_reg_contributors</span><span class="p">,</span>
+               <span class="s1">&#39;existing_drafts&#39;</span><span class="p">:</span> <span class="n">existing_drafts</span><span class="p">,</span>
+    <span class="p">}</span>
+    <span class="k">return</span> <span class="n">render</span><span class="p">(</span><span class="n">request</span><span class="p">,</span> <span class="s1">&#39;scipost/draft_registration_invitation.html&#39;</span><span class="p">,</span> <span class="n">context</span><span class="p">)</span></div>
+
+
 <span class="nd">@permission_required</span><span class="p">(</span><span class="s1">&#39;scipost.can_manage_registration_invitations&#39;</span><span class="p">,</span> <span class="n">return_403</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
-<div class="viewcode-block" id="registration_invitations"><a class="viewcode-back" href="../../modules/views.html#scipost.views.registration_invitations">[docs]</a><span class="k">def</span> <span class="nf">registration_invitations</span><span class="p">(</span><span class="n">request</span><span class="p">):</span>
+<div class="viewcode-block" id="registration_invitations"><a class="viewcode-back" href="../../modules/views.html#scipost.views.registration_invitations">[docs]</a><span class="k">def</span> <span class="nf">registration_invitations</span><span class="p">(</span><span class="n">request</span><span class="p">,</span> <span class="n">draft_id</span><span class="o">=</span><span class="kc">None</span><span class="p">):</span>
     <span class="sd">&quot;&quot;&quot; Overview and tools for administrators &quot;&quot;&quot;</span>
     <span class="c1"># List invitations sent; send new ones</span>
     <span class="n">errormessage</span> <span class="o">=</span> <span class="s1">&#39;&#39;</span>
@@ -635,12 +737,35 @@
             <span class="k">else</span><span class="p">:</span>
                 <span class="n">Utils</span><span class="o">.</span><span class="n">create_invitation</span><span class="p">()</span>
                 <span class="n">Utils</span><span class="o">.</span><span class="n">send_registration_invitation_email</span><span class="p">()</span>
+                <span class="k">try</span><span class="p">:</span>
+                    <span class="n">draft</span> <span class="o">=</span> <span class="n">DraftInvitation</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">get</span><span class="p">(</span>
+                        <span class="n">email</span><span class="o">=</span><span class="n">reg_inv_form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;email&#39;</span><span class="p">])</span>
+                    <span class="n">draft</span><span class="o">.</span><span class="n">processed</span> <span class="o">=</span> <span class="kc">True</span>
+                    <span class="n">draft</span><span class="o">.</span><span class="n">save</span><span class="p">()</span>
+                <span class="k">except</span> <span class="n">ObjectDoesNotExist</span><span class="p">:</span>
+                    <span class="k">pass</span>
+                <span class="k">except</span> <span class="n">MultipleObjectsReturned</span><span class="p">:</span>
+                    <span class="c1"># Delete the first invitation</span>
+                    <span class="n">draft_to_delete</span> <span class="o">=</span> <span class="n">RegistrationInvitation</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span>
+                        <span class="n">email</span><span class="o">=</span><span class="n">reg_inv_form</span><span class="o">.</span><span class="n">cleaned_data</span><span class="p">[</span><span class="s1">&#39;email&#39;</span><span class="p">])</span><span class="o">.</span><span class="n">first</span><span class="p">()</span>
+                    <span class="n">draft_to_delete</span><span class="o">.</span><span class="n">delete</span><span class="p">()</span>
                 <span class="k">return</span> <span class="n">HttpResponseRedirect</span><span class="p">(</span><span class="s1">&#39;registration_invitation_sent&#39;</span><span class="p">)</span>
         <span class="k">else</span><span class="p">:</span>
             <span class="n">errormessage</span> <span class="o">=</span> <span class="s1">&#39;The form was not filled validly.&#39;</span>
 
     <span class="k">else</span><span class="p">:</span>
-        <span class="n">reg_inv_form</span> <span class="o">=</span> <span class="n">RegistrationInvitationForm</span><span class="p">()</span>
+        <span class="n">initial</span> <span class="o">=</span> <span class="p">{}</span>
+        <span class="k">if</span> <span class="n">draft_id</span><span class="p">:</span>
+            <span class="n">draft</span> <span class="o">=</span> <span class="n">get_object_or_404</span><span class="p">(</span><span class="n">DraftInvitation</span><span class="p">,</span> <span class="nb">id</span><span class="o">=</span><span class="n">draft_id</span><span class="p">)</span>
+            <span class="n">initial</span> <span class="o">=</span> <span class="p">{</span><span class="s1">&#39;title&#39;</span><span class="p">:</span> <span class="n">draft</span><span class="o">.</span><span class="n">title</span><span class="p">,</span>
+                       <span class="s1">&#39;first_name&#39;</span><span class="p">:</span> <span class="n">draft</span><span class="o">.</span><span class="n">first_name</span><span class="p">,</span>
+                       <span class="s1">&#39;last_name&#39;</span><span class="p">:</span> <span class="n">draft</span><span class="o">.</span><span class="n">last_name</span><span class="p">,</span>
+                       <span class="s1">&#39;email&#39;</span><span class="p">:</span> <span class="n">draft</span><span class="o">.</span><span class="n">email</span><span class="p">,</span>
+                       <span class="s1">&#39;invitation_type&#39;</span><span class="p">:</span> <span class="n">draft</span><span class="o">.</span><span class="n">invitation_type</span><span class="p">,</span>
+                       <span class="s1">&#39;cited_in_submission&#39;</span><span class="p">:</span> <span class="n">draft</span><span class="o">.</span><span class="n">cited_in_submission</span><span class="p">,</span>
+                       <span class="s1">&#39;cited_in_publication&#39;</span><span class="p">:</span> <span class="n">draft</span><span class="o">.</span><span class="n">cited_in_publication</span><span class="p">,</span>
+                   <span class="p">}</span>
+        <span class="n">reg_inv_form</span> <span class="o">=</span> <span class="n">RegistrationInvitationForm</span><span class="p">(</span><span class="n">initial</span><span class="o">=</span><span class="n">initial</span><span class="p">)</span>
 
     <span class="n">sent_reg_inv</span> <span class="o">=</span> <span class="n">RegistrationInvitation</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span><span class="n">responded</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span> <span class="n">declined</span><span class="o">=</span><span class="kc">False</span><span class="p">)</span>
     <span class="n">sent_reg_inv_fellows</span> <span class="o">=</span> <span class="n">sent_reg_inv</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span><span class="n">invitation_type</span><span class="o">=</span><span class="s1">&#39;F&#39;</span><span class="p">)</span><span class="o">.</span><span class="n">order_by</span><span class="p">(</span><span class="s1">&#39;last_name&#39;</span><span class="p">)</span>
@@ -671,6 +796,7 @@
     <span class="n">names_reg_contributors</span> <span class="o">=</span> <span class="n">Contributor</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span>
         <span class="n">status</span><span class="o">=</span><span class="mi">1</span><span class="p">)</span><span class="o">.</span><span class="n">order_by</span><span class="p">(</span><span class="s1">&#39;user__last_name&#39;</span><span class="p">)</span><span class="o">.</span><span class="n">values_list</span><span class="p">(</span>
         <span class="s1">&#39;user__first_name&#39;</span><span class="p">,</span> <span class="s1">&#39;user__last_name&#39;</span><span class="p">)</span>
+    <span class="n">existing_drafts</span> <span class="o">=</span> <span class="n">DraftInvitation</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span><span class="n">processed</span><span class="o">=</span><span class="kc">False</span><span class="p">)</span><span class="o">.</span><span class="n">order_by</span><span class="p">(</span><span class="s1">&#39;last_name&#39;</span><span class="p">)</span>
 
     <span class="n">context</span> <span class="o">=</span> <span class="p">{</span><span class="s1">&#39;reg_inv_form&#39;</span><span class="p">:</span> <span class="n">reg_inv_form</span><span class="p">,</span> <span class="s1">&#39;errormessage&#39;</span><span class="p">:</span> <span class="n">errormessage</span><span class="p">,</span>
                <span class="s1">&#39;sent_reg_inv_fellows&#39;</span><span class="p">:</span> <span class="n">sent_reg_inv_fellows</span><span class="p">,</span>
@@ -695,6 +821,7 @@
                <span class="s1">&#39;nr_resp_reg_inv_cited_pub&#39;</span><span class="p">:</span> <span class="n">nr_resp_reg_inv_cited_pub</span><span class="p">,</span>
                <span class="s1">&#39;decl_reg_inv&#39;</span><span class="p">:</span> <span class="n">decl_reg_inv</span><span class="p">,</span>
                <span class="s1">&#39;names_reg_contributors&#39;</span><span class="p">:</span> <span class="n">names_reg_contributors</span><span class="p">,</span>
+               <span class="s1">&#39;existing_drafts&#39;</span><span class="p">:</span> <span class="n">existing_drafts</span><span class="p">,</span>
     <span class="p">}</span>
     <span class="k">return</span> <span class="n">render</span><span class="p">(</span><span class="n">request</span><span class="p">,</span> <span class="s1">&#39;scipost/registration_invitations.html&#39;</span><span class="p">,</span> <span class="n">context</span><span class="p">)</span></div>
 
diff --git a/docs/_build/html/_modules/submissions/models.html b/docs/_build/html/_modules/submissions/models.html
index a2ff681c2..cc807b163 100644
--- a/docs/_build/html/_modules/submissions/models.html
+++ b/docs/_build/html/_modules/submissions/models.html
@@ -84,8 +84,10 @@
             
             
                 <ul>
+<li class="toctree-l1"><a class="reference internal" href="../../howto/production.html">Production of SciPost Publications</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../../modules/models.html">Models</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../../modules/views.html">Views</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../dev/maintenance/docs.html">Maintenance of SciPost documentation</a></li>
 </ul>
 
             
@@ -141,8 +143,10 @@
 <span class="kn">from</span> <span class="nn">.models</span> <span class="k">import</span> <span class="o">*</span>
 
 <span class="kn">from</span> <span class="nn">scipost.models</span> <span class="k">import</span> <span class="n">ChoiceArrayField</span><span class="p">,</span> <span class="n">Contributor</span><span class="p">,</span> <span class="n">title_dict</span><span class="p">,</span> <span class="n">Remark</span>
-<span class="kn">from</span> <span class="nn">scipost.models</span> <span class="k">import</span> <span class="n">SCIPOST_DISCIPLINES</span><span class="p">,</span> <span class="n">SCIPOST_SUBJECT_AREAS</span><span class="p">,</span> <span class="n">subject_areas_dict</span><span class="p">,</span> <span class="n">TITLE_CHOICES</span>
-<span class="kn">from</span> <span class="nn">journals.models</span> <span class="k">import</span> <span class="n">SCIPOST_JOURNALS_SUBMIT</span><span class="p">,</span> <span class="n">SCIPOST_JOURNALS_DOMAINS</span><span class="p">,</span> <span class="n">SCIPOST_JOURNALS_SPECIALIZATIONS</span>
+<span class="kn">from</span> <span class="nn">scipost.models</span> <span class="k">import</span> <span class="n">SCIPOST_DISCIPLINES</span><span class="p">,</span> <span class="n">SCIPOST_SUBJECT_AREAS</span>
+<span class="kn">from</span> <span class="nn">scipost.models</span> <span class="k">import</span> <span class="n">subject_areas_dict</span><span class="p">,</span> <span class="n">TITLE_CHOICES</span>
+<span class="kn">from</span> <span class="nn">journals.models</span> <span class="k">import</span> <span class="n">SCIPOST_JOURNALS_SUBMIT</span><span class="p">,</span> <span class="n">SCIPOST_JOURNALS_DOMAINS</span>
+<span class="kn">from</span> <span class="nn">journals.models</span> <span class="k">import</span> <span class="n">SCIPOST_JOURNALS_SPECIALIZATIONS</span>
 <span class="kn">from</span> <span class="nn">journals.models</span> <span class="k">import</span> <span class="n">journals_submit_dict</span><span class="p">,</span> <span class="n">journals_domains_dict</span><span class="p">,</span> <span class="n">journals_spec_dict</span>
 <span class="kn">from</span> <span class="nn">journals.models</span> <span class="k">import</span> <span class="n">Publication</span>
 
@@ -159,6 +163,9 @@
     <span class="c1"># If revisions required: resubmission creates a new Submission object</span>
     <span class="p">(</span><span class="s1">&#39;revision_requested&#39;</span><span class="p">,</span> <span class="s1">&#39;Editor-in-charge has requested revision&#39;</span><span class="p">),</span>
     <span class="p">(</span><span class="s1">&#39;resubmitted&#39;</span><span class="p">,</span> <span class="s1">&#39;Has been resubmitted&#39;</span><span class="p">),</span>
+    <span class="p">(</span><span class="s1">&#39;resubmitted_and_rejected&#39;</span><span class="p">,</span> <span class="s1">&#39;Has been resubmitted and subsequently rejected&#39;</span><span class="p">),</span>
+    <span class="p">(</span><span class="s1">&#39;resubmitted_and_rejected_visible&#39;</span><span class="p">,</span>
+     <span class="s1">&#39;Has been resubmitted and subsequently rejected (still publicly visible)&#39;</span><span class="p">),</span>
     <span class="c1"># If acceptance/rejection:</span>
     <span class="p">(</span><span class="s1">&#39;voting_in_preparation&#39;</span><span class="p">,</span> <span class="s1">&#39;Voting in preparation (eligible Fellows being selected)&#39;</span><span class="p">),</span>
     <span class="p">(</span><span class="s1">&#39;put_to_EC_voting&#39;</span><span class="p">,</span> <span class="s1">&#39;Undergoing voting at the Editorial College&#39;</span><span class="p">),</span>
@@ -179,22 +186,37 @@
     <span class="s1">&#39;withdrawn&#39;</span><span class="p">,</span>
 <span class="p">]</span>
 
+<span class="c1"># Submissions which should not appear in search lists</span>
 <span class="n">SUBMISSION_STATUS_PUBLICLY_UNLISTED</span> <span class="o">=</span> <span class="p">[</span>
     <span class="s1">&#39;unassigned&#39;</span><span class="p">,</span>
     <span class="s1">&#39;assignment_failed&#39;</span><span class="p">,</span>
     <span class="s1">&#39;resubmitted&#39;</span><span class="p">,</span>
+    <span class="s1">&#39;resubmitted_rejected&#39;</span><span class="p">,</span>
+    <span class="s1">&#39;resubmitted_rejected_visible&#39;</span><span class="p">,</span>
     <span class="s1">&#39;rejected&#39;</span><span class="p">,</span>
     <span class="s1">&#39;published&#39;</span><span class="p">,</span>
     <span class="s1">&#39;withdrawn&#39;</span><span class="p">,</span>
 <span class="p">]</span>
 
+<span class="c1"># Submissions which should not be viewable (except by admins, Fellows and authors)</span>
+<span class="n">SUBMISSION_STATUS_PUBLICLY_INVISIBLE</span> <span class="o">=</span> <span class="p">[</span>
+    <span class="s1">&#39;unassigned&#39;</span><span class="p">,</span>
+    <span class="s1">&#39;assignment_failed&#39;</span><span class="p">,</span>
+    <span class="s1">&#39;resubmitted_rejected&#39;</span><span class="p">,</span>
+    <span class="s1">&#39;rejected&#39;</span><span class="p">,</span>
+    <span class="s1">&#39;published&#39;</span><span class="p">,</span>
+    <span class="s1">&#39;withdrawn&#39;</span><span class="p">,</span>
+<span class="p">]</span>
+
+
 <span class="c1"># SUBMISSION_ACTION_REQUIRED = (</span>
 <span class="c1">#     (&#39;assign_EIC&#39;, &#39;Editor-in-charge to be assigned&#39;),</span>
 <span class="c1"># #    (&#39;Fellow_accepts_or_refuse_assignment&#39;, &#39;Fellow must accept or refuse assignment&#39;),</span>
 <span class="c1">#     (&#39;EIC_runs_refereeing_round&#39;, &#39;Editor-in-charge to run refereeing round (inviting referees)&#39;),</span>
 <span class="c1">#     (&#39;EIC_closes_refereeing_round&#39;, &#39;Editor-in-charge to close refereeing round&#39;),</span>
 <span class="c1">#     (&#39;EIC_invites_author_response&#39;, &#39;Editor-in-charge invites authors to complete their replies&#39;),</span>
-<span class="c1">#     (&#39;EIC_formulates_editorial_recommendation&#39;, &#39;Editor-in-charge to formulate editorial recommendation&#39;),</span>
+<span class="c1">#     (&#39;EIC_formulates_editorial_recommendation&#39;,</span>
+<span class="c1">#      &#39;Editor-in-charge to formulate editorial recommendation&#39;),</span>
 <span class="c1">#     (&#39;EC_ratification&#39;, &#39;Editorial College ratifies editorial recommendation&#39;),</span>
 <span class="c1">#     (&#39;Decision_to_authors&#39;, &#39;Editor-in-charge forwards decision to authors&#39;),</span>
 <span class="c1">#     )</span>
@@ -222,8 +244,9 @@
 <span class="c1">#    specialization = models.CharField(max_length=1, choices=SCIPOST_JOURNALS_SPECIALIZATIONS)</span>
     <span class="n">subject_area</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">CharField</span><span class="p">(</span><span class="n">max_length</span><span class="o">=</span><span class="mi">10</span><span class="p">,</span> <span class="n">choices</span><span class="o">=</span><span class="n">SCIPOST_SUBJECT_AREAS</span><span class="p">,</span>
                                     <span class="n">verbose_name</span><span class="o">=</span><span class="s1">&#39;Primary subject area&#39;</span><span class="p">,</span> <span class="n">default</span><span class="o">=</span><span class="s1">&#39;Phys:QP&#39;</span><span class="p">)</span>
-    <span class="n">secondary_areas</span> <span class="o">=</span> <span class="n">ChoiceArrayField</span><span class="p">(</span><span class="n">models</span><span class="o">.</span><span class="n">CharField</span><span class="p">(</span><span class="n">max_length</span><span class="o">=</span><span class="mi">10</span><span class="p">,</span> <span class="n">choices</span><span class="o">=</span><span class="n">SCIPOST_SUBJECT_AREAS</span><span class="p">),</span>
-                                       <span class="n">blank</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span> <span class="n">null</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
+    <span class="n">secondary_areas</span> <span class="o">=</span> <span class="n">ChoiceArrayField</span><span class="p">(</span>
+        <span class="n">models</span><span class="o">.</span><span class="n">CharField</span><span class="p">(</span><span class="n">max_length</span><span class="o">=</span><span class="mi">10</span><span class="p">,</span> <span class="n">choices</span><span class="o">=</span><span class="n">SCIPOST_SUBJECT_AREAS</span><span class="p">),</span>
+        <span class="n">blank</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span> <span class="n">null</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
     <span class="n">status</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">CharField</span><span class="p">(</span><span class="n">max_length</span><span class="o">=</span><span class="mi">30</span><span class="p">,</span> <span class="n">choices</span><span class="o">=</span><span class="n">SUBMISSION_STATUS</span><span class="p">)</span> <span class="c1"># set by Editors</span>
     <span class="n">author_comments</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">TextField</span><span class="p">(</span><span class="n">blank</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span> <span class="n">null</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
     <span class="n">list_of_changes</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">TextField</span><span class="p">(</span><span class="n">blank</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span> <span class="n">null</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
@@ -372,14 +395,17 @@
         <span class="n">nr_ref_invited</span> <span class="o">=</span> <span class="n">RefereeInvitation</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span><span class="n">submission</span><span class="o">=</span><span class="bp">self</span><span class="p">)</span><span class="o">.</span><span class="n">count</span><span class="p">()</span>
         <span class="n">nr_ref_accepted</span> <span class="o">=</span> <span class="n">RefereeInvitation</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span><span class="n">submission</span><span class="o">=</span><span class="bp">self</span><span class="p">,</span> <span class="n">accepted</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span><span class="o">.</span><span class="n">count</span><span class="p">()</span>
         <span class="n">nr_ref_declined</span> <span class="o">=</span> <span class="n">RefereeInvitation</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span><span class="n">submission</span><span class="o">=</span><span class="bp">self</span><span class="p">,</span> <span class="n">accepted</span><span class="o">=</span><span class="kc">False</span><span class="p">)</span><span class="o">.</span><span class="n">count</span><span class="p">()</span>
-        <span class="n">nr_invited_reports_in</span> <span class="o">=</span> <span class="n">Report</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span><span class="n">submission</span><span class="o">=</span><span class="bp">self</span><span class="p">,</span> <span class="n">status</span><span class="o">=</span><span class="mi">1</span><span class="p">,</span> <span class="n">invited</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span><span class="o">.</span><span class="n">count</span><span class="p">()</span>
-        <span class="n">nr_contrib_reports_in</span> <span class="o">=</span> <span class="n">Report</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span><span class="n">submission</span><span class="o">=</span><span class="bp">self</span><span class="p">,</span> <span class="n">status</span><span class="o">=</span><span class="mi">1</span><span class="p">,</span> <span class="n">invited</span><span class="o">=</span><span class="kc">False</span><span class="p">)</span><span class="o">.</span><span class="n">count</span><span class="p">()</span>
+        <span class="n">nr_invited_reports_in</span> <span class="o">=</span> <span class="n">Report</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span><span class="n">submission</span><span class="o">=</span><span class="bp">self</span><span class="p">,</span>
+                                                      <span class="n">status</span><span class="o">=</span><span class="mi">1</span><span class="p">,</span> <span class="n">invited</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span><span class="o">.</span><span class="n">count</span><span class="p">()</span>
+        <span class="n">nr_contrib_reports_in</span> <span class="o">=</span> <span class="n">Report</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span><span class="n">submission</span><span class="o">=</span><span class="bp">self</span><span class="p">,</span>
+                                                      <span class="n">status</span><span class="o">=</span><span class="mi">1</span><span class="p">,</span> <span class="n">invited</span><span class="o">=</span><span class="kc">False</span><span class="p">)</span><span class="o">.</span><span class="n">count</span><span class="p">()</span>
         <span class="n">nr_reports_awaiting_vetting</span> <span class="o">=</span> <span class="n">Report</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span><span class="n">submission</span><span class="o">=</span><span class="bp">self</span><span class="p">,</span> <span class="n">status</span><span class="o">=</span><span class="mi">0</span><span class="p">)</span><span class="o">.</span><span class="n">count</span><span class="p">()</span>
         <span class="n">nr_reports_refused</span> <span class="o">=</span> <span class="n">Report</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span><span class="n">submission</span><span class="o">=</span><span class="bp">self</span><span class="p">,</span> <span class="n">status__lte</span><span class="o">=-</span><span class="mi">1</span><span class="p">)</span><span class="o">.</span><span class="n">count</span><span class="p">()</span>
         <span class="n">header</span> <span class="o">=</span> <span class="p">(</span><span class="s1">&#39;&lt;p&gt;Nr referees invited: &#39;</span> <span class="o">+</span> <span class="nb">str</span><span class="p">(</span><span class="n">nr_ref_invited</span><span class="p">)</span> <span class="o">+</span>
                   <span class="s1">&#39; [&#39;</span> <span class="o">+</span> <span class="nb">str</span><span class="p">(</span><span class="n">nr_ref_accepted</span><span class="p">)</span> <span class="o">+</span> <span class="s1">&#39; accepted/ &#39;</span> <span class="o">+</span>
                   <span class="nb">str</span><span class="p">(</span><span class="n">nr_ref_declined</span><span class="p">)</span> <span class="o">+</span> <span class="s1">&#39; declined/ &#39;</span> <span class="o">+</span>
-                  <span class="nb">str</span><span class="p">(</span><span class="n">nr_ref_invited</span> <span class="o">-</span> <span class="n">nr_ref_accepted</span> <span class="o">-</span> <span class="n">nr_ref_declined</span><span class="p">)</span> <span class="o">+</span> <span class="s1">&#39; response pending]&lt;/p&gt;&#39;</span> <span class="o">+</span>
+                  <span class="nb">str</span><span class="p">(</span><span class="n">nr_ref_invited</span> <span class="o">-</span> <span class="n">nr_ref_accepted</span> <span class="o">-</span> <span class="n">nr_ref_declined</span><span class="p">)</span> <span class="o">+</span>
+                  <span class="s1">&#39; response pending]&lt;/p&gt;&#39;</span> <span class="o">+</span>
                   <span class="s1">&#39;&lt;p&gt;Nr reports obtained: &#39;</span> <span class="o">+</span>
                   <span class="nb">str</span><span class="p">(</span><span class="n">nr_invited_reports_in</span> <span class="o">+</span> <span class="n">nr_contrib_reports_in</span><span class="p">)</span> <span class="o">+</span> <span class="s1">&#39; [&#39;</span> <span class="o">+</span>
                   <span class="nb">str</span><span class="p">(</span><span class="n">nr_invited_reports_in</span><span class="p">)</span> <span class="o">+</span> <span class="s1">&#39; invited/ &#39;</span> <span class="o">+</span> <span class="nb">str</span><span class="p">(</span><span class="n">nr_contrib_reports_in</span><span class="p">)</span> <span class="o">+</span>
@@ -408,7 +434,8 @@
         <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">status</span> <span class="o">==</span> <span class="s1">&#39;unassigned&#39;</span><span class="p">:</span>
             <span class="n">header</span> <span class="o">+=</span> <span class="p">(</span><span class="s1">&#39;&lt;p style=&quot;color: red&quot;&gt;Status: {{ status }}.&#39;</span>
                        <span class="s1">&#39; You can volunteer to become Editor-in-charge by &#39;</span>
-                       <span class="s1">&#39;&lt;a href=&quot;/submissions/volunteer_as_EIC/{{ arxiv_identifier_w_vn_nr }}&quot;&gt;clicking here&lt;/a&gt;.&lt;/p&gt;&#39;</span><span class="p">)</span>
+                       <span class="s1">&#39;&lt;a href=&quot;/submissions/volunteer_as_EIC/{{ arxiv_identifier_w_vn_nr }}&quot;&gt;&#39;</span>
+                       <span class="s1">&#39;clicking here&lt;/a&gt;.&lt;/p&gt;&#39;</span><span class="p">)</span>
         <span class="k">else</span><span class="p">:</span>
             <span class="n">header</span> <span class="o">+=</span> <span class="s1">&#39;&lt;p&gt;Editor-in-charge: {{ EIC }}&lt;/p&gt;&lt;p&gt;Status: {{ status }}&lt;/p&gt;&#39;</span>
         <span class="n">header</span> <span class="o">+=</span> <span class="bp">self</span><span class="o">.</span><span class="n">refereeing_status_as_p</span><span class="p">()</span>
@@ -556,7 +583,8 @@
                   <span class="s1">&#39;&lt;p&gt;by {{ author_list }}&lt;/p&gt;&#39;</span>
                   <span class="s1">&#39;&lt;p&gt; (submitted {{ date }} to {{ to_journal }})&lt;/p&gt;&#39;</span>
                   <span class="s1">&#39;&lt;p&gt;Status: {{ status }}&lt;/p&gt;&lt;p&gt;Manage this Submission from its &#39;</span>
-                  <span class="s1">&#39;&lt;a href=&quot;/submissions/editorial_page/{{ arxiv_identifier_w_vn_nr }}&quot;&gt;Editorial Page&lt;/a&gt;.&#39;</span>
+                  <span class="s1">&#39;&lt;a href=&quot;/submissions/editorial_page/{{ arxiv_identifier_w_vn_nr }}&quot;&gt;&#39;</span>
+                  <span class="s1">&#39;Editorial Page&lt;/a&gt;.&#39;</span>
                   <span class="s1">&#39;&lt;/p&gt;&#39;</span>
                   <span class="c1">#&#39;&lt;/div&gt;&lt;/div&gt;&#39;</span>
                   <span class="s1">&#39;&lt;/li&gt;&#39;</span><span class="p">)</span>
@@ -640,7 +668,8 @@
     <span class="k">def</span> <span class="nf">summary_as_tds</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
         <span class="n">context</span> <span class="o">=</span> <span class="n">Context</span><span class="p">({</span><span class="s1">&#39;first_name&#39;</span><span class="p">:</span> <span class="bp">self</span><span class="o">.</span><span class="n">first_name</span><span class="p">,</span> <span class="s1">&#39;last_name&#39;</span><span class="p">:</span> <span class="bp">self</span><span class="o">.</span><span class="n">last_name</span><span class="p">,</span>
                            <span class="s1">&#39;date_invited&#39;</span><span class="p">:</span> <span class="bp">self</span><span class="o">.</span><span class="n">date_invited</span><span class="o">.</span><span class="n">strftime</span><span class="p">(</span><span class="s1">&#39;%Y-%m-</span><span class="si">%d</span><span class="s1"> %H:%M&#39;</span><span class="p">)})</span>
-        <span class="n">output</span> <span class="o">=</span> <span class="s1">&#39;&lt;td&gt;{{ first_name }} {{ last_name }}&lt;/td&gt;&lt;td&gt;invited &lt;br/&gt;{{ date_invited }}&lt;/td&gt;&lt;td&gt;&#39;</span>
+        <span class="n">output</span> <span class="o">=</span> <span class="p">(</span><span class="s1">&#39;&lt;td&gt;{{ first_name }} {{ last_name }}&lt;/td&gt;&lt;td&gt;invited &lt;br/&gt;&#39;</span>
+                  <span class="s1">&#39;{{ date_invited }}&lt;/td&gt;&lt;td&gt;&#39;</span><span class="p">)</span>
         <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">cancelled</span><span class="p">:</span>
             <span class="n">output</span> <span class="o">+=</span> <span class="s1">&#39;&lt;strong style=&quot;color: red;&quot;&gt;cancelled&lt;/strong&gt;&#39;</span>
         <span class="k">elif</span> <span class="bp">self</span><span class="o">.</span><span class="n">accepted</span> <span class="ow">is</span> <span class="ow">not</span> <span class="kc">None</span><span class="p">:</span>
@@ -719,8 +748,9 @@
     <span class="n">flagged</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">BooleanField</span><span class="p">(</span><span class="n">default</span><span class="o">=</span><span class="kc">False</span><span class="p">)</span>
     <span class="n">date_submitted</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">DateTimeField</span><span class="p">(</span><span class="s1">&#39;date submitted&#39;</span><span class="p">)</span>
     <span class="n">author</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">ForeignKey</span><span class="p">(</span><span class="n">Contributor</span><span class="p">,</span> <span class="n">on_delete</span><span class="o">=</span><span class="n">models</span><span class="o">.</span><span class="n">CASCADE</span><span class="p">)</span>
-    <span class="n">qualification</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">PositiveSmallIntegerField</span><span class="p">(</span><span class="n">choices</span><span class="o">=</span><span class="n">REFEREE_QUALIFICATION</span><span class="p">,</span>
-                                                     <span class="n">verbose_name</span><span class="o">=</span><span class="s2">&quot;Qualification to referee this: I am &quot;</span><span class="p">)</span>
+    <span class="n">qualification</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">PositiveSmallIntegerField</span><span class="p">(</span>
+        <span class="n">choices</span><span class="o">=</span><span class="n">REFEREE_QUALIFICATION</span><span class="p">,</span>
+        <span class="n">verbose_name</span><span class="o">=</span><span class="s2">&quot;Qualification to referee this: I am &quot;</span><span class="p">)</span>
     <span class="c1"># Text-based reporting</span>
     <span class="n">strengths</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">TextField</span><span class="p">()</span>
     <span class="n">weaknesses</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">TextField</span><span class="p">()</span>
@@ -731,8 +761,10 @@
     <span class="n">significance</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">PositiveSmallIntegerField</span><span class="p">(</span><span class="n">choices</span><span class="o">=</span><span class="n">RANKING_CHOICES</span><span class="p">,</span> <span class="n">default</span><span class="o">=</span><span class="mi">101</span><span class="p">)</span>
     <span class="n">originality</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">PositiveSmallIntegerField</span><span class="p">(</span><span class="n">choices</span><span class="o">=</span><span class="n">RANKING_CHOICES</span><span class="p">,</span> <span class="n">default</span><span class="o">=</span><span class="mi">101</span><span class="p">)</span>
     <span class="n">clarity</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">PositiveSmallIntegerField</span><span class="p">(</span><span class="n">choices</span><span class="o">=</span><span class="n">RANKING_CHOICES</span><span class="p">,</span> <span class="n">default</span><span class="o">=</span><span class="mi">101</span><span class="p">)</span>
-    <span class="n">formatting</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">SmallIntegerField</span><span class="p">(</span><span class="n">choices</span><span class="o">=</span><span class="n">QUALITY_SPEC</span><span class="p">,</span> <span class="n">verbose_name</span><span class="o">=</span><span class="s2">&quot;Quality of paper formatting&quot;</span><span class="p">)</span>
-    <span class="n">grammar</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">SmallIntegerField</span><span class="p">(</span><span class="n">choices</span><span class="o">=</span><span class="n">QUALITY_SPEC</span><span class="p">,</span> <span class="n">verbose_name</span><span class="o">=</span><span class="s2">&quot;Quality of English grammar&quot;</span><span class="p">)</span>
+    <span class="n">formatting</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">SmallIntegerField</span><span class="p">(</span><span class="n">choices</span><span class="o">=</span><span class="n">QUALITY_SPEC</span><span class="p">,</span>
+                                          <span class="n">verbose_name</span><span class="o">=</span><span class="s2">&quot;Quality of paper formatting&quot;</span><span class="p">)</span>
+    <span class="n">grammar</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">SmallIntegerField</span><span class="p">(</span><span class="n">choices</span><span class="o">=</span><span class="n">QUALITY_SPEC</span><span class="p">,</span>
+                                       <span class="n">verbose_name</span><span class="o">=</span><span class="s2">&quot;Quality of English grammar&quot;</span><span class="p">)</span>
     <span class="c1">#</span>
     <span class="n">recommendation</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">SmallIntegerField</span><span class="p">(</span><span class="n">choices</span><span class="o">=</span><span class="n">REPORT_REC</span><span class="p">)</span>
     <span class="n">remarks_for_editors</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">TextField</span><span class="p">(</span><span class="n">default</span><span class="o">=</span><span class="s1">&#39;&#39;</span><span class="p">,</span> <span class="n">blank</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span>
@@ -861,7 +893,8 @@
         <span class="k">elif</span> <span class="bp">self</span><span class="o">.</span><span class="n">comtype</span> <span class="o">==</span> <span class="s1">&#39;RtoE&#39;</span><span class="p">:</span>
             <span class="n">output</span> <span class="o">+=</span> <span class="s1">&#39;From Referee &#39;</span>
             <span class="k">try</span><span class="p">:</span>
-                <span class="n">output</span> <span class="o">+=</span> <span class="bp">self</span><span class="o">.</span><span class="n">referee</span><span class="o">.</span><span class="n">user</span><span class="o">.</span><span class="n">first_name</span> <span class="o">+</span> <span class="s1">&#39; &#39;</span> <span class="o">+</span> <span class="bp">self</span><span class="o">.</span><span class="n">referee</span><span class="o">.</span><span class="n">user</span><span class="o">.</span><span class="n">last_name</span> <span class="o">+</span> <span class="s1">&#39; to you&#39;</span>
+                <span class="n">output</span> <span class="o">+=</span> <span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">referee</span><span class="o">.</span><span class="n">user</span><span class="o">.</span><span class="n">first_name</span> <span class="o">+</span> <span class="s1">&#39; &#39;</span> <span class="o">+</span>
+                           <span class="bp">self</span><span class="o">.</span><span class="n">referee</span><span class="o">.</span><span class="n">user</span><span class="o">.</span><span class="n">last_name</span> <span class="o">+</span> <span class="s1">&#39; to you&#39;</span><span class="p">)</span>
             <span class="k">except</span> <span class="ne">AttributeError</span><span class="p">:</span>
                 <span class="k">pass</span>
         <span class="k">elif</span> <span class="bp">self</span><span class="o">.</span><span class="n">comtype</span> <span class="o">==</span> <span class="s1">&#39;StoE&#39;</span><span class="p">:</span>
@@ -887,7 +920,8 @@
         <span class="n">verbose_name</span><span class="o">=</span><span class="s1">&#39;optional remarks for the Editorial College&#39;</span><span class="p">)</span>
     <span class="n">recommendation</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">SmallIntegerField</span><span class="p">(</span><span class="n">choices</span><span class="o">=</span><span class="n">REPORT_REC</span><span class="p">)</span>
     <span class="c1"># Editorial Fellows who have assessed this recommendation:</span>
-    <span class="n">eligible_to_vote</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">ManyToManyField</span> <span class="p">(</span><span class="n">Contributor</span><span class="p">,</span> <span class="n">blank</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span> <span class="n">related_name</span><span class="o">=</span><span class="s1">&#39;eligible_to_vote&#39;</span><span class="p">)</span>
+    <span class="n">eligible_to_vote</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">ManyToManyField</span> <span class="p">(</span><span class="n">Contributor</span><span class="p">,</span> <span class="n">blank</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span>
+                                               <span class="n">related_name</span><span class="o">=</span><span class="s1">&#39;eligible_to_vote&#39;</span><span class="p">)</span>
     <span class="n">voted_for</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">ManyToManyField</span> <span class="p">(</span><span class="n">Contributor</span><span class="p">,</span> <span class="n">blank</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span> <span class="n">related_name</span><span class="o">=</span><span class="s1">&#39;voted_for&#39;</span><span class="p">)</span>
     <span class="n">voted_against</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">ManyToManyField</span> <span class="p">(</span><span class="n">Contributor</span><span class="p">,</span> <span class="n">blank</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span> <span class="n">related_name</span><span class="o">=</span><span class="s1">&#39;voted_against&#39;</span><span class="p">)</span>
     <span class="n">voted_abstain</span> <span class="o">=</span> <span class="n">models</span><span class="o">.</span><span class="n">ManyToManyField</span> <span class="p">(</span><span class="n">Contributor</span><span class="p">,</span> <span class="n">blank</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span> <span class="n">related_name</span><span class="o">=</span><span class="s1">&#39;voted_abstain&#39;</span><span class="p">)</span>
diff --git a/docs/_build/html/_modules/submissions/views.html b/docs/_build/html/_modules/submissions/views.html
index 2228df5a9..6e7dc05b4 100644
--- a/docs/_build/html/_modules/submissions/views.html
+++ b/docs/_build/html/_modules/submissions/views.html
@@ -84,8 +84,10 @@
             
             
                 <ul>
+<li class="toctree-l1"><a class="reference internal" href="../../howto/production.html">Production of SciPost Publications</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../../modules/models.html">Models</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../../modules/views.html">Views</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../dev/maintenance/docs.html">Maintenance of SciPost documentation</a></li>
 </ul>
 
             
@@ -140,6 +142,7 @@
 <span class="kn">from</span> <span class="nn">django.contrib.auth</span> <span class="k">import</span> <span class="n">authenticate</span><span class="p">,</span> <span class="n">login</span><span class="p">,</span> <span class="n">logout</span>
 <span class="kn">from</span> <span class="nn">django.contrib.auth.decorators</span> <span class="k">import</span> <span class="n">login_required</span><span class="p">,</span> <span class="n">permission_required</span>
 <span class="kn">from</span> <span class="nn">django.contrib.auth.models</span> <span class="k">import</span> <span class="n">User</span><span class="p">,</span> <span class="n">Group</span><span class="p">,</span> <span class="n">Permission</span>
+<span class="kn">from</span> <span class="nn">django.core.exceptions</span> <span class="k">import</span> <span class="n">PermissionDenied</span>
 <span class="kn">from</span> <span class="nn">django.core.mail</span> <span class="k">import</span> <span class="n">EmailMessage</span>
 <span class="kn">from</span> <span class="nn">django.core.urlresolvers</span> <span class="k">import</span> <span class="n">reverse</span>
 <span class="kn">from</span> <span class="nn">django.db</span> <span class="k">import</span> <span class="n">transaction</span>
@@ -200,6 +203,13 @@
             <span class="n">previous_submissions</span> <span class="o">=</span> <span class="n">Submission</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span>
                 <span class="n">arxiv_identifier_wo_vn_nr</span><span class="o">=</span><span class="n">identifier_without_vn_nr</span><span class="p">)</span><span class="o">.</span><span class="n">order_by</span><span class="p">(</span><span class="s1">&#39;-arxiv_vn_nr&#39;</span><span class="p">)</span>
             <span class="k">if</span> <span class="n">previous_submissions</span><span class="o">.</span><span class="n">exists</span><span class="p">():</span>
+                <span class="k">if</span> <span class="n">previous_submissions</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">status</span> <span class="ow">in</span> <span class="p">[</span><span class="s1">&#39;rejected&#39;</span><span class="p">,</span> <span class="s1">&#39;rejected_visible&#39;</span><span class="p">,]:</span>
+                    <span class="n">errormessage</span> <span class="o">=</span> <span class="p">(</span><span class="s1">&#39;&lt;p&gt;This arXiv preprint has previously undergone refereeing &#39;</span>
+                                    <span class="s1">&#39;and has been rejected. Resubmission is only possible &#39;</span>
+                                    <span class="s1">&#39;if the manuscript has been substantially reworked into &#39;</span>
+                                    <span class="s1">&#39;a new arXiv submission with distinct identifier.&lt;/p&gt;&#39;</span><span class="p">)</span>
+                    <span class="k">return</span> <span class="n">render</span><span class="p">(</span><span class="n">request</span><span class="p">,</span> <span class="s1">&#39;scipost/error.html&#39;</span><span class="p">,</span>
+                                  <span class="p">{</span><span class="s1">&#39;errormessage&#39;</span><span class="p">:</span> <span class="n">mark_safe</span><span class="p">(</span><span class="n">errormessage</span><span class="p">)})</span>
                 <span class="c1"># If the Editorial Recommendation hasn&#39;t been formulated, ask to wait</span>
                 <span class="k">if</span> <span class="n">previous_submissions</span><span class="p">[</span><span class="mi">0</span><span class="p">]</span><span class="o">.</span><span class="n">status</span> <span class="o">!=</span> <span class="s1">&#39;revision_requested&#39;</span><span class="p">:</span>
                     <span class="n">errormessage</span> <span class="o">=</span> <span class="p">(</span><span class="s1">&#39;&lt;p&gt;There exists a preprint with this arXiv identifier &#39;</span>
@@ -476,6 +486,17 @@
 
 <span class="k">def</span> <span class="nf">submission_detail</span><span class="p">(</span><span class="n">request</span><span class="p">,</span> <span class="n">arxiv_identifier_w_vn_nr</span><span class="p">):</span>
     <span class="n">submission</span> <span class="o">=</span> <span class="n">get_object_or_404</span><span class="p">(</span><span class="n">Submission</span><span class="p">,</span> <span class="n">arxiv_identifier_w_vn_nr</span><span class="o">=</span><span class="n">arxiv_identifier_w_vn_nr</span><span class="p">)</span>
+    <span class="k">try</span><span class="p">:</span>
+        <span class="n">is_author</span> <span class="o">=</span> <span class="n">request</span><span class="o">.</span><span class="n">user</span><span class="o">.</span><span class="n">contributor</span> <span class="ow">in</span> <span class="n">submission</span><span class="o">.</span><span class="n">authors</span><span class="o">.</span><span class="n">all</span><span class="p">()</span>
+    <span class="k">except</span> <span class="ne">AttributeError</span><span class="p">:</span>
+        <span class="n">is_author</span> <span class="o">=</span> <span class="kc">False</span>
+    <span class="k">if</span> <span class="p">(</span><span class="n">submission</span><span class="o">.</span><span class="n">status</span> <span class="ow">in</span> <span class="n">SUBMISSION_STATUS_PUBLICLY_INVISIBLE</span>
+        <span class="ow">and</span> <span class="ow">not</span> <span class="n">request</span><span class="o">.</span><span class="n">user</span><span class="o">.</span><span class="n">groups</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span><span class="n">name</span><span class="o">=</span><span class="s1">&#39;SciPost Administrators&#39;</span><span class="p">)</span><span class="o">.</span><span class="n">exists</span><span class="p">()</span>
+        <span class="ow">and</span> <span class="ow">not</span> <span class="n">request</span><span class="o">.</span><span class="n">user</span><span class="o">.</span><span class="n">groups</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span><span class="n">name</span><span class="o">=</span><span class="s1">&#39;Editorial Administrators&#39;</span><span class="p">)</span><span class="o">.</span><span class="n">exists</span><span class="p">()</span>
+        <span class="ow">and</span> <span class="ow">not</span> <span class="n">request</span><span class="o">.</span><span class="n">user</span><span class="o">.</span><span class="n">groups</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span><span class="n">name</span><span class="o">=</span><span class="s1">&#39;Editorial College&#39;</span><span class="p">)</span><span class="o">.</span><span class="n">exists</span><span class="p">()</span>
+        <span class="ow">and</span> <span class="ow">not</span> <span class="n">is_author</span>
+    <span class="p">):</span>
+        <span class="k">raise</span> <span class="n">PermissionDenied</span>
     <span class="n">other_versions</span> <span class="o">=</span> <span class="n">Submission</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span>
         <span class="n">arxiv_identifier_wo_vn_nr</span><span class="o">=</span><span class="n">submission</span><span class="o">.</span><span class="n">arxiv_identifier_wo_vn_nr</span>
     <span class="p">)</span><span class="o">.</span><span class="n">exclude</span><span class="p">(</span><span class="n">pk</span><span class="o">=</span><span class="n">submission</span><span class="o">.</span><span class="n">id</span><span class="p">)</span>
@@ -1393,6 +1414,12 @@
     <span class="k">elif</span> <span class="n">recommendation</span><span class="o">.</span><span class="n">recommendation</span><span class="o">==-</span><span class="mi">3</span><span class="p">:</span>
         <span class="c1"># Reject</span>
         <span class="n">recommendation</span><span class="o">.</span><span class="n">submission</span><span class="o">.</span><span class="n">status</span><span class="o">=</span><span class="s1">&#39;rejected&#39;</span>
+        <span class="n">previous_submissions</span> <span class="o">=</span> <span class="n">Submission</span><span class="o">.</span><span class="n">objects</span><span class="o">.</span><span class="n">filter</span><span class="p">(</span>
+            <span class="n">arxiv_identifier_wo_vn_nr</span><span class="o">=</span><span class="n">recommendation</span><span class="o">.</span><span class="n">submission</span><span class="o">.</span><span class="n">arxiv_identifier_wo_vn_nr</span>
+        <span class="p">)</span><span class="o">.</span><span class="n">exclude</span><span class="p">(</span><span class="n">pk</span><span class="o">=</span><span class="n">recommendation</span><span class="o">.</span><span class="n">submission</span><span class="o">.</span><span class="n">id</span><span class="p">)</span>
+        <span class="k">for</span> <span class="n">sub</span> <span class="ow">in</span> <span class="n">previous_submissions</span><span class="p">:</span>
+            <span class="n">sub</span><span class="o">.</span><span class="n">status</span> <span class="o">=</span> <span class="s1">&#39;resubmitted_rejected&#39;</span>
+            <span class="n">sub</span><span class="o">.</span><span class="n">save</span><span class="p">()</span>
 
     <span class="n">recommendation</span><span class="o">.</span><span class="n">submission</span><span class="o">.</span><span class="n">save</span><span class="p">()</span>
     <span class="n">SubmissionUtils</span><span class="o">.</span><span class="n">load</span><span class="p">({</span><span class="s1">&#39;submission&#39;</span><span class="p">:</span> <span class="n">recommendation</span><span class="o">.</span><span class="n">submission</span><span class="p">,</span>
diff --git a/docs/_build/html/_modules/theses/models.html b/docs/_build/html/_modules/theses/models.html
index c63914aa8..343bf2461 100644
--- a/docs/_build/html/_modules/theses/models.html
+++ b/docs/_build/html/_modules/theses/models.html
@@ -84,8 +84,10 @@
             
             
                 <ul>
+<li class="toctree-l1"><a class="reference internal" href="../../howto/production.html">Production of SciPost Publications</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../../modules/models.html">Models</a></li>
 <li class="toctree-l1"><a class="reference internal" href="../../modules/views.html">Views</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../../dev/maintenance/docs.html">Maintenance of SciPost documentation</a></li>
 </ul>
 
             
diff --git a/docs/_build/html/genindex.html b/docs/_build/html/genindex.html
index 5976ed7ec..03085596e 100644
--- a/docs/_build/html/genindex.html
+++ b/docs/_build/html/genindex.html
@@ -84,8 +84,10 @@
             
             
                 <ul>
+<li class="toctree-l1"><a class="reference internal" href="howto/production.html">Production of SciPost Publications</a></li>
 <li class="toctree-l1"><a class="reference internal" href="modules/models.html">Models</a></li>
 <li class="toctree-l1"><a class="reference internal" href="modules/views.html">Views</a></li>
+<li class="toctree-l1"><a class="reference internal" href="dev/maintenance/docs.html">Maintenance of SciPost documentation</a></li>
 </ul>
 
             
@@ -282,12 +284,12 @@
   <dt><a href="modules/models.html#scipost.models.NewsItem.descriptor_full">descriptor_full() (scipost.models.NewsItem method)</a>
   </dt>
 
-  </dl></td>
-  <td style="width: 33%" valign="top"><dl>
       
   <dt><a href="modules/models.html#scipost.models.NewsItem.descriptor_small">descriptor_small() (scipost.models.NewsItem method)</a>
   </dt>
 
+  </dl></td>
+  <td style="width: 33%" valign="top"><dl>
       
   <dt><a href="modules/models.html#journals.models.Publication.details">details() (journals.models.Publication method)</a>
   </dt>
@@ -296,6 +298,14 @@
   <dt><a href="modules/views.html#scipost.views.documentsSearchResults">documentsSearchResults() (in module scipost.views)</a>
   </dt>
 
+      
+  <dt><a href="modules/views.html#scipost.views.draft_registration_invitation">draft_registration_invitation() (in module scipost.views)</a>
+  </dt>
+
+      
+  <dt><a href="modules/models.html#scipost.models.DraftInvitation">DraftInvitation (class in scipost.models)</a>
+  </dt>
+
   </dl></td>
 </tr></table>
 
diff --git a/docs/_build/html/index.html b/docs/_build/html/index.html
index 6ac380fba..c27d7498c 100644
--- a/docs/_build/html/index.html
+++ b/docs/_build/html/index.html
@@ -34,7 +34,7 @@
               href="genindex.html"/>
         <link rel="search" title="Search" href="search.html"/>
     <link rel="top" title="SciPost 1.0 documentation" href="#"/>
-        <link rel="next" title="Models" href="modules/models.html"/> 
+        <link rel="next" title="Production of SciPost Publications" href="howto/production.html"/> 
 
   
   <script src="_static/js/modernizr.min.js"></script>
@@ -84,8 +84,10 @@
             
             
                 <ul>
+<li class="toctree-l1"><a class="reference internal" href="howto/production.html">Production of SciPost Publications</a></li>
 <li class="toctree-l1"><a class="reference internal" href="modules/models.html">Models</a></li>
 <li class="toctree-l1"><a class="reference internal" href="modules/views.html">Views</a></li>
+<li class="toctree-l1"><a class="reference internal" href="dev/maintenance/docs.html">Maintenance of SciPost documentation</a></li>
 </ul>
 
             
@@ -135,8 +137,20 @@
 <p>Contents:</p>
 <div class="toctree-wrapper compound">
 <ul>
+<li class="toctree-l1"><a class="reference internal" href="howto/production.html">Production of SciPost Publications</a></li>
 <li class="toctree-l1"><a class="reference internal" href="modules/models.html">Models</a></li>
 <li class="toctree-l1"><a class="reference internal" href="modules/views.html">Views</a></li>
+<li class="toctree-l1"><a class="reference internal" href="dev/maintenance/docs.html">Maintenance of SciPost documentation</a><ul>
+<li class="toctree-l2"><a class="reference internal" href="dev/maintenance/docs.html#sphinx-generated-docs">Sphinx-generated docs</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="dev/maintenance/docs.html#generating-the-static-html-files">Generating the static html files</a></li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal" href="dev/maintenance/docs.html#sphinxdoc-generated-docs-viewable-online">Sphinxdoc-generated docs (viewable online)</a><ul>
+<li class="toctree-l3"><a class="reference internal" href="dev/maintenance/docs.html#updating-the-docs">Updating the docs:</a></li>
+</ul>
+</li>
+</ul>
+</li>
 </ul>
 </div>
 </div>
@@ -156,7 +170,7 @@
   
     <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
       
-        <a href="modules/models.html" class="btn btn-neutral float-right" title="Models" accesskey="n">Next <span class="fa fa-arrow-circle-right"></span></a>
+        <a href="howto/production.html" class="btn btn-neutral float-right" title="Production of SciPost Publications" accesskey="n">Next <span class="fa fa-arrow-circle-right"></span></a>
       
       
     </div>
diff --git a/docs/_build/html/modules/models.html b/docs/_build/html/modules/models.html
index 86f0fb265..b07a5315b 100644
--- a/docs/_build/html/modules/models.html
+++ b/docs/_build/html/modules/models.html
@@ -35,7 +35,7 @@
         <link rel="search" title="Search" href="../search.html"/>
     <link rel="top" title="SciPost 1.0 documentation" href="../index.html"/>
         <link rel="next" title="Views" href="views.html"/>
-        <link rel="prev" title="Welcome to SciPost’s documentation!" href="../index.html"/> 
+        <link rel="prev" title="Production of SciPost Publications" href="../howto/production.html"/> 
 
   
   <script src="../_static/js/modernizr.min.js"></script>
@@ -85,8 +85,10 @@
             
             
                 <ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../howto/production.html">Production of SciPost Publications</a></li>
 <li class="toctree-l1 current"><a class="current reference internal" href="#">Models</a></li>
 <li class="toctree-l1"><a class="reference internal" href="views.html">Views</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../dev/maintenance/docs.html">Maintenance of SciPost documentation</a></li>
 </ul>
 
             
@@ -172,6 +174,12 @@ username, password, email, first_name and last_name are inherited from User.</p>
 
 </dd></dl>
 
+<dl class="class">
+<dt id="scipost.models.DraftInvitation">
+<em class="property">class </em><code class="descclassname">scipost.models.</code><code class="descname">DraftInvitation</code><span class="sig-paren">(</span><em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/scipost/models.html#DraftInvitation"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#scipost.models.DraftInvitation" title="Permalink to this definition">¶</a></dt>
+<dd><p>Draft of an invitation, filled in by an officer.</p>
+</dd></dl>
+
 <dl class="class">
 <dt id="scipost.models.Graph">
 <em class="property">class </em><code class="descclassname">scipost.models.</code><code class="descname">Graph</code><span class="sig-paren">(</span><em>*args</em>, <em>**kwargs</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/scipost/models.html#Graph"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#scipost.models.Graph" title="Permalink to this definition">¶</a></dt>
@@ -384,7 +392,7 @@ to and from Referees and Authors becomes an instance of this class.</p>
         <a href="views.html" class="btn btn-neutral float-right" title="Views" accesskey="n">Next <span class="fa fa-arrow-circle-right"></span></a>
       
       
-        <a href="../index.html" class="btn btn-neutral" title="Welcome to SciPost’s documentation!" accesskey="p"><span class="fa fa-arrow-circle-left"></span> Previous</a>
+        <a href="../howto/production.html" class="btn btn-neutral" title="Production of SciPost Publications" accesskey="p"><span class="fa fa-arrow-circle-left"></span> Previous</a>
       
     </div>
   
diff --git a/docs/_build/html/modules/views.html b/docs/_build/html/modules/views.html
index 3ca5170a0..2e438cd6a 100644
--- a/docs/_build/html/modules/views.html
+++ b/docs/_build/html/modules/views.html
@@ -34,6 +34,7 @@
               href="../genindex.html"/>
         <link rel="search" title="Search" href="../search.html"/>
     <link rel="top" title="SciPost 1.0 documentation" href="../index.html"/>
+        <link rel="next" title="Maintenance of SciPost documentation" href="../dev/maintenance/docs.html"/>
         <link rel="prev" title="Models" href="models.html"/> 
 
   
@@ -84,8 +85,10 @@
             
             
                 <ul class="current">
+<li class="toctree-l1"><a class="reference internal" href="../howto/production.html">Production of SciPost Publications</a></li>
 <li class="toctree-l1"><a class="reference internal" href="models.html">Models</a></li>
 <li class="toctree-l1 current"><a class="current reference internal" href="#">Views</a></li>
+<li class="toctree-l1"><a class="reference internal" href="../dev/maintenance/docs.html">Maintenance of SciPost documentation</a></li>
 </ul>
 
             
@@ -177,6 +180,14 @@ Naive implementation based on exact match of query.
 NEEDS UPDATING with e.g. Haystack.</p>
 </dd></dl>
 
+<dl class="function">
+<dt id="scipost.views.draft_registration_invitation">
+<code class="descclassname">scipost.views.</code><code class="descname">draft_registration_invitation</code><span class="sig-paren">(</span><em>request</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/scipost/views.html#draft_registration_invitation"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#scipost.views.draft_registration_invitation" title="Permalink to this definition">¶</a></dt>
+<dd><p>For officers to prefill registration invitations.
+This is similar to the registration_invitations method,
+which is used to complete the invitation process.</p>
+</dd></dl>
+
 <dl class="function">
 <dt id="scipost.views.email_group_members">
 <code class="descclassname">scipost.views.</code><code class="descname">email_group_members</code><span class="sig-paren">(</span><em>request</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/scipost/views.html#email_group_members"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#scipost.views.email_group_members" title="Permalink to this definition">¶</a></dt>
@@ -227,7 +238,7 @@ NEEDS UPDATING with e.g. Haystack.</p>
 
 <dl class="function">
 <dt id="scipost.views.registration_invitations">
-<code class="descclassname">scipost.views.</code><code class="descname">registration_invitations</code><span class="sig-paren">(</span><em>request</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/scipost/views.html#registration_invitations"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#scipost.views.registration_invitations" title="Permalink to this definition">¶</a></dt>
+<code class="descclassname">scipost.views.</code><code class="descname">registration_invitations</code><span class="sig-paren">(</span><em>request</em>, <em>draft_id=None</em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/scipost/views.html#registration_invitations"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#scipost.views.registration_invitations" title="Permalink to this definition">¶</a></dt>
 <dd><p>Overview and tools for administrators</p>
 </dd></dl>
 
@@ -459,6 +470,8 @@ This is an adapted version of the accept_or_decline_assignment_ack method.</p>
   
     <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
       
+        <a href="../dev/maintenance/docs.html" class="btn btn-neutral float-right" title="Maintenance of SciPost documentation" accesskey="n">Next <span class="fa fa-arrow-circle-right"></span></a>
+      
       
         <a href="models.html" class="btn btn-neutral" title="Models" accesskey="p"><span class="fa fa-arrow-circle-left"></span> Previous</a>
       
diff --git a/docs/_build/html/objects.inv b/docs/_build/html/objects.inv
index 1bb1e0db757c291c2a48e29f5a9040f46d02b6c2..d59aa123b677371a5d7f4cc5d8b198e3a3148784 100644
GIT binary patch
delta 1153
zcmV-{1b+Lc3G4}wdVfoE+cpr#@A?$%v@<=KZmzkxcG^)VX*70{9yt)Olr{zd77y9#
zr|*Ifi=vf;T<K&A<p0OzF7`oM+NuH*ghTLoWff?j)%&+}6g6bOW$l5#ZcpXgQ0brB
zwX0vUtA%_m&u{y+eIiLMywBd81pSzh*TQ)yG@3_Wpb55!u79%-!qzH2*h{Rf4~chS
zTv0~NVD1o}PW!$&^L^L1m(&hQ)Vhcs&8E2fxJ<Y*8X3@<fgJ<jBoZn*jU|Gc1w3Oz
zja@urC(ZZdR~wxXnq%%rn%@EK0-R*-Si1B+0!R2)`<o+O#kEE$nrNOU&lLoL6H{}{
z`D`3)&<Aj!Zhs<)9mkq4R>x|d2iZHNJuQ?f#EZQ@&Wn*;IuHR0iJ@^JRXHjk<UFB7
z5a$p{r<%MqrM(ESXB5wsW^vG9z(lH#cie2y(2_zOvTZh~FWB{V?@{_fNC|ZSbrF~Y
z*%htXs90+&R8c!?OV1+gghs{kb@v#II(V$iZ%XPO*niyl<N7PeNd<AtaFU~H($R0R
zzSRON2H|#VQNoRLV*dw%Rvd&i!QncFX@%_D>bwnMo5;c!L98`QDzPKxofBnPnq60F
z7*_r1M7?F`-cwOy$o{5{xeQR9A*Gh&rNf&1IDI6W!19$~!srj<c~(?StbGLauA&ah
z0Ngjt)qgdSKWh)%LnYiJL-?@z{R32MXcF^g;{c`(bz@MhYwH3vx0P_g04Kjbf#7Vb
z&qnOX|6)y*E$mm|(9Wt2b7zesT`s6}?--@LQ`cB*`UIXUUJDN#olFI|n~zf5JqvOu
zhD{aZFqD<Cc{6wb;pFxneAIzujY?&-aD#jzqko18H5Ujer71Kv)-+@_8N$cVyK+Do
zwQwB9214;~g!Zj{t{9DiXP)pJ_oZ@_!jYno`lAA=(M%oUj#<V!D(v_l@V!t|_$*Cg
z6p0NhWxlbq{3Th1)F4c(dCbc0;F1a8z`)ZbfxgLcp3<bbyKA-u^xbv>C$1~>K6#fj
zJAc1Y=kJ!c_t1XNP}7_B364T4oGA1St#8caraOt0Z$T(<Dep8+n}@!`O&@xqnej2=
z1neG4pxI*PjB|>Uh76|o;bmzqVD^MC*5=|RI7LajcXA<o1(L!@(3F?u{B(Q`)7Gb=
z(F7-bm!NiM_@<3F3I_uHwkw{jdn~nm;(wA#d@gRS*06!pe$by`Rc)>2YN>9yh@p2g
zA2W<N(W=zi9T(Ts)IsFW-%NuQE@EeOGy&SuMWuEcCv3s9{zq~o%s<gD^zYG3dXMU~
zb1Q>_-8Ho@dPtKJ`I;tRpZTEP(m{6hCOdV$fn*;JtC=mc2Z<}{kXb)MH=$c>z<RU;
zUqaFw5$FW%S6k3B9WJ)^DcI}Uk!h`a2S$v~wYt^e+QIz?Uz+{maPN*Zxa~insX#y$
zY_I**A6x&^f*f_i{Ca=YpXglC`nr9P;{XkBej;>9O2><%Af3`2qL+P1hl_4{IWnwW
TYp-hGV6qj>my7=aG+!<Qs?<RK

delta 1084
zcmV-C1jGC638x8=dVfuG+cpq}@A?(&v@<=KZLYbgPTEl?X*6~|ju;47N*jX!ix1iA
zukV7CEQ(eVa;1|gknclqfqi#LD_7TGqx1-&teplEie~qkj*@}m_o6!pzjdd|O{~q&
z-Pp}9#m!8;l$W=Mv0Wx9BSR=&odx}vP&U#B5C-i-5NM+l$$#%>2yx>y9~=}mF2u~c
zGEP*<Fqm6}$Mdmo&wM}h-6f5O3XKsdpk0eM9~K!`C95Jj+nYxZIEsXtPGg1OCjl?m
zP{R;U*h$kP`PC(FrQu9>AT8ej?E)M%-Jx_5LIRHP@9sB8x=bsBO17(cnY`2xC5}wZ
zA?K6zu*ML<gMXeU5_`^UK0A}@X%S@al<u_DTFB@5{x~lNa^*or5DH@(LUK7W5DK2u
zGRjMcq|<HQ+R9x8cwmU9+ORliF=8e)r#o&ks6P{-kJ&aEbTI5@vkRz#kV-)lL0<*t
zLG4XzGAcF3Ni7=hToqV^tu&}vvEDxh!v{~5<-DTmfq(6tKdioj8fAz>hF2U_n~q_F
z&8?AGGYGdEhYIH2%iW&{MspC(Mvto$#~InT)n&JYT_VdMqFfmmWw8V1UtTsF#$4W!
zB{5|G(6(Acs4tLGK?%xZLs1ytP>o=PS~6kuhw(g1@&e}`K)<c2J~9AzZE5svGA-<O
zUo2RlT7UWnhVXv*$9t$((5BUV?E%KNWJ6GD8s{UGrls`J0w+5@g5+$gPgZUz{&GdW
z6n9JT=q6?M)K1|<S4uM8EyIZS>ITL7kib*LD;a>JQ`tWE-A!Kiz=9mDto1MsLpzn)
zzWyGhSDQNs$wby{AZH*&(xrwvns!6;G4x^@QGX>PJ%_P|DE>{*y&_K)qt)=l6ZY+6
zsye#|bvC)J+~#7WLD75p*pBIxWt}G<#{YmHg@%^TQQJc+v1aXX-!oQm3{AKuODF@<
zriRC?-4?_*&^)4r$7=#Zo02@G%}wsUHVQZt#}S;gsxgEdT~4F=LS4RH+}=U=@j#ES
zt$$}Y8p-ESnmLWH?dTdgid1euYVbMl432AGzQfI5Rg#_X=6?ou2Nk`q!^D>494Ge#
zO!58m&{V+Wf<Dxi@_BJYMZ0&j5xxK^X%!gC%W8T$zJwVUvT3x7lRpAbxwHJK4L1r0
z0*7rU9-V)vjC<sgDtr>R&KOujE<YG9n15B{oZ)K8w|v5Q2s0nkUvZ+<xwLyOuJzR3
z%3r>jdLvxK)|q4@bk;>yJB|}K5Lo|^I1!c~=@*7~Xh*&F?6p&!VGXwH$U@Yw=?w!+
zar3G;jJB5-i+ngcUPeuAzNmM_7ci7;P()YUD_l~g{52GZ-nU)EpJsH^Gk0osH#LV7
z9qN5I@9v(b58J=_nJ{E29nVf4_?+e#iQ;oUob5Y-lZka>-Bn%lUM#6soBa<c;<SR8
CKM9Ti

diff --git a/docs/_build/html/py-modindex.html b/docs/_build/html/py-modindex.html
index 4b2fea650..db94055e4 100644
--- a/docs/_build/html/py-modindex.html
+++ b/docs/_build/html/py-modindex.html
@@ -86,8 +86,10 @@
             
             
                 <ul>
+<li class="toctree-l1"><a class="reference internal" href="howto/production.html">Production of SciPost Publications</a></li>
 <li class="toctree-l1"><a class="reference internal" href="modules/models.html">Models</a></li>
 <li class="toctree-l1"><a class="reference internal" href="modules/views.html">Views</a></li>
+<li class="toctree-l1"><a class="reference internal" href="dev/maintenance/docs.html">Maintenance of SciPost documentation</a></li>
 </ul>
 
             
diff --git a/docs/_build/html/search.html b/docs/_build/html/search.html
index 7c63216f4..cca61f696 100644
--- a/docs/_build/html/search.html
+++ b/docs/_build/html/search.html
@@ -83,8 +83,10 @@
             
             
                 <ul>
+<li class="toctree-l1"><a class="reference internal" href="howto/production.html">Production of SciPost Publications</a></li>
 <li class="toctree-l1"><a class="reference internal" href="modules/models.html">Models</a></li>
 <li class="toctree-l1"><a class="reference internal" href="modules/views.html">Views</a></li>
+<li class="toctree-l1"><a class="reference internal" href="dev/maintenance/docs.html">Maintenance of SciPost documentation</a></li>
 </ul>
 
             
diff --git a/docs/_build/html/searchindex.js b/docs/_build/html/searchindex.js
index d8cbf55fd..c602a340e 100644
--- a/docs/_build/html/searchindex.js
+++ b/docs/_build/html/searchindex.js
@@ -1 +1 @@
-Search.setIndex({envversion:50,filenames:["index","modules/models","modules/views"],objects:{"commentaries.models":{Commentary:[1,1,1,""]},"commentaries.models.Commentary":{parse_links_into_urls:[1,2,1,""],scipost_url:[1,2,1,""],scipost_url_full:[1,2,1,""]},"commentaries.views":{prefill_using_DOI:[2,3,1,""],prefill_using_identifier:[2,3,1,""]},"comments.models":{Comment:[1,1,1,""]},"journals.models":{Deposit:[1,1,1,""],Issue:[1,1,1,""],Journal:[1,1,1,""],Publication:[1,1,1,""],UnregisteredAuthor:[1,1,1,""],Volume:[1,1,1,""]},"journals.models.Publication":{details:[1,2,1,""]},"journals.views":{add_author:[2,3,1,""],create_citation_list_metadata:[2,3,1,""],create_funding_info_metadata:[2,3,1,""],create_metadata_xml:[2,3,1,""],initiate_publication:[2,3,1,""],metadata_xml_deposit:[2,3,1,""],scipost_physics_accepted:[2,3,1,""],scipost_physics_recent:[2,3,1,""],upload_proofs:[2,3,1,""],validate_publication:[2,3,1,""]},"scipost.models":{AffiliationObject:[1,1,1,""],Arc:[1,1,1,""],AuthorshipClaim:[1,1,1,""],ChoiceArrayField:[1,1,1,""],Contributor:[1,1,1,""],Graph:[1,1,1,""],List:[1,1,1,""],NewsItem:[1,1,1,""],Node:[1,1,1,""],PrecookedEmail:[1,1,1,""],RegistrationInvitation:[1,1,1,""],Remark:[1,1,1,""],SPBMembershipAgreement:[1,1,1,""],SupportingPartner:[1,1,1,""],Team:[1,1,1,""],UnavailabilityPeriod:[1,1,1,""]},"scipost.models.Contributor":{public_info_as_table:[1,2,1,""]},"scipost.models.NewsItem":{descriptor_full:[1,2,1,""],descriptor_small:[1,2,1,""]},"scipost.views":{activation:[2,3,1,""],api_graph:[2,3,1,""],base:[2,3,1,""],claim_authorships:[2,3,1,""],contributor_info:[2,3,1,""],documentsSearchResults:[2,3,1,""],email_group_members:[2,3,1,""],email_particular:[2,3,1,""],get_query:[2,3,1,""],index:[2,3,1,""],invitation:[2,3,1,""],mark_reg_inv_as_declined:[2,3,1,""],normalize_query:[2,3,1,""],personal_page:[2,3,1,""],registration_invitations:[2,3,1,""],registration_invitations_cleanup:[2,3,1,""],remove_registration_invitation:[2,3,1,""],renew_registration_invitation:[2,3,1,""],search:[2,3,1,""],send_precooked_email:[2,3,1,""]},"submissions.models":{EICRecommendation:[1,1,1,""],EditorialAssignment:[1,1,1,""],EditorialCommunication:[1,1,1,""],RefereeInvitation:[1,1,1,""],Report:[1,1,1,""],Submission:[1,1,1,""]},"submissions.models.EditorialAssignment":{header_as_li:[1,2,1,""]},"submissions.views":{assignment_failed:[2,3,1,""],cancel_ref_invitation:[2,3,1,""],close_refereeing_round:[2,3,1,""],communication:[2,3,1,""],editorial_workflow:[2,3,1,""],fix_College_decision:[2,3,1,""],pool:[2,3,1,""],recruit_referee:[2,3,1,""],ref_invitation_reminder:[2,3,1,""],send_refereeing_invitation:[2,3,1,""],submissions:[2,3,1,""],volunteer_as_EIC:[2,3,1,""]},"theses.models":{ThesisLink:[1,1,1,""]},commentaries:{models:[1,0,0,"-"],views:[2,0,0,"-"]},comments:{models:[1,0,0,"-"],views:[2,0,0,"-"]},journals:{models:[1,0,0,"-"],views:[2,0,0,"-"]},scipost:{models:[1,0,0,"-"],views:[2,0,0,"-"]},submissions:{models:[1,0,0,"-"],views:[2,0,0,"-"]},theses:{models:[1,0,0,"-"],views:[2,0,0,"-"]}},objnames:{"0":["py","module","Python module"],"1":["py","class","Python class"],"2":["py","method","Python method"],"3":["py","function","Python function"]},objtypes:{"0":"py:module","1":"py:class","2":"py:method","3":"py:function"},terms:{"abstract":1,"case":2,"class":1,"function":2,"import":2,"new":1,"public":[1,2],"return":[1,2],"true":2,"while":2,_sre:2,abov:[1,2],accept:[1,2],accept_or_decline_assignment_ack:2,acceptance_d:1,accepted_submiss:1,access:[1,2],accessibl:1,account:2,action:2,activ:2,adapt:2,add_author:2,address:2,adjust:1,admin:1,administr:2,affiliationobject:1,after:2,agreement:1,all:[1,2],allow:[1,2],among:2,ani:2,anoth:2,answer:2,api:2,api_graph:2,appear:2,arc:1,arg:1,arrai:1,arrayfield:1,arrow:1,arxiv:[1,2],arxiv_identifier_w_vn_nr:[1,2],arxiv_identifier_wo_vn_nr:1,arxiv_link:1,arxiv_vn_nr:1,ask:2,assignment_fail:2,associ:2,author:[1,2],author_com:1,author_list:1,authorship:2,authorshipclaim:1,auto:2,automat:2,base:2,base_field:1,becom:[1,2],been:2,befor:2,below:2,between:[1,2],bibtex_entri:1,blurb:1,board:1,both:1,built:2,bulk:2,call:[1,2],can:[1,2],cancel:1,cancel_ref_invit:2,charg:[1,2],choic:1,choicearrayfield:1,citation_list:2,citedbi:1,claim:2,claim_authorship:2,claimant:1,click:2,close_refereeing_round:2,collabor:1,collect:1,colleg:2,combin:2,comment:[1,2],commentari:[1,2],commun:[1,2],compar:2,complet:1,compos:1,comtyp:2,confirm:2,contact:2,contain:[1,2],content:[0,1,2],context:2,contribut:[1,2],contributor:[1,2],contributor_id:2,contributor_info:2,countri:1,creat:[1,2],create_citation_list_metadata:2,create_funding_info_metadata:2,create_metadata_xml:2,crossref:[1,2],current:1,data:2,databas:2,date:1,date_answ:1,date_cr:1,date_invit:1,date_last_remind:1,date_respond:1,date_submit:1,declin:2,defin:1,deni:2,deposit:[1,2],deprec:1,descriptor_ful:1,descriptor_smal:1,desir:2,detail:[1,2],detect:2,determin:1,dictionari:2,digest:2,direct:1,disciplin:1,displai:2,django:1,documentssearchresult:2,doe:2,doi:[1,2],doi_label:1,doi_str:[1,2],domain:1,dure:2,each:1,earlier:1,edadmin:2,edit:1,editor:[1,2],editor_in_charg:1,editori:[1,2],editorial_pag:2,editorial_workflow:2,editorialassign:1,editorialcommun:1,eic:2,eicrecommend:1,email:[1,2],email_address:1,email_group_memb:2,email_particular:2,enabl:1,end:1,entri:2,etc:1,exact:2,explor:1,fellow:2,field:[1,2],fill:2,find:2,findal:2,findterm:2,first_author:1,first_author_unregist:1,first_nam:1,fix_college_decis:2,flag:2,followup_link:1,followup_link_text:1,foreignkei:1,form:2,format:1,formfield:1,formul:2,from:[1,2],fulfil:1,funding_info:2,further:[1,2],gather:2,get_queri:2,given:1,global:2,graph:[1,2],graph_id:2,group:2,handl:2,hasn:2,have:2,haystack:2,header:2,header_as_li:1,headlin:1,here:1,histori:1,html:[1,2],identifi:2,implement:2,in_issu:1,in_journ:1,in_volum:1,index:[0,1,2],individu:[1,2],info:1,inherit:[1,2],initiate_publ:2,instanc:[1,2],instead:2,institut:1,invit:[1,2],invitat:1,invitation_id:2,invitation_kei:1,invited_bi:1,is_curr:1,is_resubmiss:1,isn:2,issn:1,issue:1,journal:[1,2],json:2,keep:2,kei:2,keyword:2,kwarg:1,last_nam:1,latest_act:1,length:1,link:[1,2],list:[1,2],list_of_chang:1,log:2,made:1,main:2,make:2,manuscript:2,mark:2,mark_reg_inv_as_declin:2,match:2,member:2,membership:1,metadata:[1,2],metadata_xml:[1,2],metadata_xml_deposit:2,method:[1,2],model:[],modul:[0,2],most:2,multiplechoicefield:1,must:2,naiv:2,name:[1,2],navbar:2,needs:2,newsitem:1,node:1,none:[1,2],normalize_queri:2,normspac:2,note:1,nr_remind:1,number:[1,2],object:[1,2],occur:2,off:2,once:2,onli:1,open_for_com:1,open_for_report:1,option:2,otherwis:2,out:1,overlap:2,overview:2,page:[0,1,2],paper:2,paper_nr:1,parse_links_into_url:1,particular:1,partner:1,password:1,path:1,pdf:2,pdf_file:1,pend:2,permiss:1,person:[1,2],personal_pag:2,perus:2,physic:2,plain:1,plot:2,point:1,pool:2,popul:2,postgr:1,potenti:2,pre:2,precook:2,precookedemail:1,prefil:2,prefill_using_doi:2,prefill_using_identifi:2,print:1,privat:1,probe:2,process:2,produc:2,product:2,proof:2,provid:[1,2],public_info_as_t:1,publication_d:1,publication_detail:1,publication_id:2,publicli:1,publish:2,python:2,queri:2,query_str:2,quot:2,read:1,rec_id:2,recent:2,recogn:2,recommend:[1,2],recruit_refere:2,ref_invitation_remind:2,refere:[1,2],referee_id:2,refereeinvit:1,referees_flag:1,referees_suggest:1,refusal_reason:1,regist:2,registr:[1,2],registration_invit:2,registration_invitations_cleanup:2,registrationinvit:1,reject:2,relev:2,remark:1,remarks_for_author:1,remarks_for_editor:1,remarks_for_editorial_colleg:1,remov:2,remove_registration_invit:2,renew:[1,2],renew_registration_invit:2,repli:[1,2],report:[1,2],reporting_deadlin:1,repres:1,request:2,requested_chang:1,right:1,round:2,same:1,satisfactori:2,scipost_physics_accept:2,scipost_physics_rec:2,scipost_url:1,scipost_url_ful:1,search:[0,2],search_field:2,secondary_area:1,see:[1,2],select:2,send:2,send_precooked_email:[1,2],send_refereeing_invit:2,sent:2,server:2,set:1,she:2,size:1,skeleton:2,somebodi:2,sourc:[1,2],spbmembershipagr:1,split:2,sre_pattern:2,start:1,start_dat:1,statu:1,store:1,string:2,sub:[1,2],subject:2,subject_area:1,submiss:[1,2],submission_d:1,submission_typ:1,submit:1,submitted_bi:1,submitted_to_journ:1,subunit:1,summari:2,support:1,supportingpartn:1,system:2,take:[1,2],team:[1,2],teams_with_access:1,templat:[1,2],termin:2,test:2,thei:2,them:2,thesi:1,thesislink:[1,2],thi:[1,2],those:2,through:2,thu:1,time:1,titl:1,to_journ:2,todo:2,togeth:2,token:2,tool:2,turn:1,two:1,type:1,unavailabilityperiod:1,undergo:2,unregist:2,unregistered_author_id:2,unregisteredauthor:1,unsollicit:1,until_d:1,updating:2,upload:2,upload_proof:2,upon:2,url:1,use:1,user:[1,2],usernam:1,validate_publ:2,validatepublicationform:2,verif:2,version:[1,2],vetted_bi:1,view:[],volum:1,volunt:2,volunteer_as_eic:2,vote:2,voting_deadlin:1,want:2,well:2,when:2,where:2,which:2,who:2,without:1,word:2,yet:2},titles:["Welcome to SciPost&#8217;s documentation!","Models","Views"],titleterms:{document:0,indice:0,model:1,scipost:0,tabl:0,view:2,welcom:0}})
\ No newline at end of file
+Search.setIndex({envversion:50,filenames:["dev/maintenance/docs","howto/production","index","modules/models","modules/views"],objects:{"commentaries.models":{Commentary:[3,1,1,""]},"commentaries.models.Commentary":{parse_links_into_urls:[3,2,1,""],scipost_url:[3,2,1,""],scipost_url_full:[3,2,1,""]},"commentaries.views":{prefill_using_DOI:[4,3,1,""],prefill_using_identifier:[4,3,1,""]},"comments.models":{Comment:[3,1,1,""]},"journals.models":{Deposit:[3,1,1,""],Issue:[3,1,1,""],Journal:[3,1,1,""],Publication:[3,1,1,""],UnregisteredAuthor:[3,1,1,""],Volume:[3,1,1,""]},"journals.models.Publication":{details:[3,2,1,""]},"journals.views":{add_author:[4,3,1,""],create_citation_list_metadata:[4,3,1,""],create_funding_info_metadata:[4,3,1,""],create_metadata_xml:[4,3,1,""],initiate_publication:[4,3,1,""],metadata_xml_deposit:[4,3,1,""],scipost_physics_accepted:[4,3,1,""],scipost_physics_recent:[4,3,1,""],upload_proofs:[4,3,1,""],validate_publication:[4,3,1,""]},"scipost.models":{AffiliationObject:[3,1,1,""],Arc:[3,1,1,""],AuthorshipClaim:[3,1,1,""],ChoiceArrayField:[3,1,1,""],Contributor:[3,1,1,""],DraftInvitation:[3,1,1,""],Graph:[3,1,1,""],List:[3,1,1,""],NewsItem:[3,1,1,""],Node:[3,1,1,""],PrecookedEmail:[3,1,1,""],RegistrationInvitation:[3,1,1,""],Remark:[3,1,1,""],SPBMembershipAgreement:[3,1,1,""],SupportingPartner:[3,1,1,""],Team:[3,1,1,""],UnavailabilityPeriod:[3,1,1,""]},"scipost.models.Contributor":{public_info_as_table:[3,2,1,""]},"scipost.models.NewsItem":{descriptor_full:[3,2,1,""],descriptor_small:[3,2,1,""]},"scipost.views":{activation:[4,3,1,""],api_graph:[4,3,1,""],base:[4,3,1,""],claim_authorships:[4,3,1,""],contributor_info:[4,3,1,""],documentsSearchResults:[4,3,1,""],draft_registration_invitation:[4,3,1,""],email_group_members:[4,3,1,""],email_particular:[4,3,1,""],get_query:[4,3,1,""],index:[4,3,1,""],invitation:[4,3,1,""],mark_reg_inv_as_declined:[4,3,1,""],normalize_query:[4,3,1,""],personal_page:[4,3,1,""],registration_invitations:[4,3,1,""],registration_invitations_cleanup:[4,3,1,""],remove_registration_invitation:[4,3,1,""],renew_registration_invitation:[4,3,1,""],search:[4,3,1,""],send_precooked_email:[4,3,1,""]},"submissions.models":{EICRecommendation:[3,1,1,""],EditorialAssignment:[3,1,1,""],EditorialCommunication:[3,1,1,""],RefereeInvitation:[3,1,1,""],Report:[3,1,1,""],Submission:[3,1,1,""]},"submissions.models.EditorialAssignment":{header_as_li:[3,2,1,""]},"submissions.views":{assignment_failed:[4,3,1,""],cancel_ref_invitation:[4,3,1,""],close_refereeing_round:[4,3,1,""],communication:[4,3,1,""],editorial_workflow:[4,3,1,""],fix_College_decision:[4,3,1,""],pool:[4,3,1,""],recruit_referee:[4,3,1,""],ref_invitation_reminder:[4,3,1,""],send_refereeing_invitation:[4,3,1,""],submissions:[4,3,1,""],volunteer_as_EIC:[4,3,1,""]},"theses.models":{ThesisLink:[3,1,1,""]},commentaries:{models:[3,0,0,"-"],views:[4,0,0,"-"]},comments:{models:[3,0,0,"-"],views:[4,0,0,"-"]},journals:{models:[3,0,0,"-"],views:[4,0,0,"-"]},scipost:{models:[3,0,0,"-"],views:[4,0,0,"-"]},submissions:{models:[3,0,0,"-"],views:[4,0,0,"-"]},theses:{models:[3,0,0,"-"],views:[4,0,0,"-"]}},objnames:{"0":["py","module","Python module"],"1":["py","class","Python class"],"2":["py","method","Python method"],"3":["py","function","Python function"]},objtypes:{"0":"py:module","1":"py:class","2":"py:method","3":"py:function"},terms:{"abstract":3,"case":4,"class":3,"function":4,"import":4,"new":3,"public":[],"return":[3,4],"true":4,"while":4,_sre:4,abov:[3,4],accept:[1,3,4],accept_or_decline_assignment_ack:4,acceptance_d:3,accepted_submiss:3,access:[3,4],accessibl:3,account:4,action:4,activ:4,adapt:4,add_author:4,address:4,adjust:3,admin:3,administr:[1,4],affiliationobject:3,after:4,agreement:3,all:[3,4],allow:[3,4],among:4,ani:4,anoth:4,answer:4,api:4,api_graph:4,appear:4,arc:3,arg:3,arrai:3,arrayfield:3,arrow:3,arxiv:[3,4],arxiv_identifier_w_vn_nr:[3,4],arxiv_identifier_wo_vn_nr:3,arxiv_link:3,arxiv_vn_nr:3,ask:4,assignment_fail:4,associ:4,author:[3,4],author_com:3,author_list:3,authorship:4,authorshipclaim:3,auto:4,automat:4,base:4,base_field:3,becom:[3,4],been:4,befor:4,below:4,between:[3,4],bibtex_entri:3,blurb:3,board:3,both:3,built:4,bulk:4,call:[3,4],can:[3,4],cancel:3,cancel_ref_invit:4,charg:[3,4],choic:3,choicearrayfield:3,citation_list:4,citedbi:3,claim:4,claim_authorship:4,claimant:3,click:4,close_refereeing_round:4,collabor:3,collect:3,colleg:4,combin:4,command:0,comment:[3,4],commentari:[3,4],commun:[3,4],compar:4,complet:[3,4],compos:3,comtyp:4,confirm:4,contact:4,contain:[3,4],content:[2,3,4],context:4,contribut:[3,4],contributor:[3,4],contributor_id:4,contributor_info:4,countri:3,creat:[3,4],create_citation_list_metadata:4,create_funding_info_metadata:4,create_metadata_xml:4,crossref:[3,4],current:3,data:4,databas:4,date:3,date_answ:3,date_cr:3,date_invit:3,date_last_remind:3,date_respond:3,date_submit:3,declin:4,defin:3,deni:4,deposit:[3,4],deprec:3,describ:1,descriptor_ful:3,descriptor_smal:3,desir:4,detail:[3,4],detect:4,determin:3,dictionari:4,digest:4,direct:3,disciplin:3,displai:4,django:3,documentssearchresult:4,doe:4,doi:[3,4],doi_label:3,doi_str:[3,4],domain:3,draft:3,draft_id:4,draft_registration_invit:4,draftinvit:3,dure:4,each:3,earlier:3,edadmin:4,edit:3,editor:[3,4],editor_in_charg:3,editori:[1,3,4],editorial_pag:4,editorial_workflow:4,editorialassign:3,editorialcommun:3,eic:4,eicrecommend:3,email:[3,4],email_address:3,email_group_memb:4,email_particular:4,enabl:3,end:3,entri:4,etc:3,exact:4,explor:3,fellow:4,field:[3,4],fill:[3,4],find:4,findal:4,findterm:4,first_author:3,first_author_unregist:3,first_nam:3,fix_college_decis:4,flag:4,folder:0,followup_link:3,followup_link_text:3,foreignkei:3,form:4,format:3,formfield:3,formul:4,from:[1,3,4],fulfil:3,funding_info:4,further:[3,4],gather:4,get_queri:4,given:3,global:4,graph:[3,4],graph_id:4,group:4,guid:1,handl:4,hasn:4,have:4,haystack:4,header:4,header_as_li:3,headlin:3,here:3,histori:3,html:[],identifi:4,implement:4,in_issu:3,in_journ:3,in_volum:3,index:[2,3,4],individu:[3,4],info:3,inherit:[3,4],initiate_publ:4,instanc:[3,4],instead:4,institut:3,invit:[3,4],invitat:3,invitation_id:4,invitation_kei:3,invited_bi:3,invok:0,is_curr:3,is_resubmiss:3,isn:4,issn:3,issue:3,journal:[3,4],json:4,keep:4,kei:4,keyword:4,kwarg:3,last_nam:3,latest_act:3,length:3,link:[3,4],list:[3,4],list_of_chang:3,log:4,made:3,main:4,make:[0,4],manag:0,manuscript:4,mark:4,mark_reg_inv_as_declin:4,match:4,meant:1,member:4,membership:3,metadata:[3,4],metadata_xml:[3,4],metadata_xml_deposit:4,method:[3,4],model:[],modul:[2,4],most:4,multiplechoicefield:3,must:4,naiv:4,name:[3,4],navbar:4,needs:4,newsitem:3,node:3,none:[3,4],normalize_queri:4,normspac:4,note:3,nr_remind:3,number:[3,4],object:[3,4],occur:4,off:4,offic:[3,4],officer:1,once:4,onli:3,open_for_com:3,open_for_report:3,option:4,otherwis:4,out:3,overlap:4,overview:4,page:[2,3,4],paper:[1,4],paper_nr:3,parse_links_into_url:3,particular:3,partner:3,password:3,path:3,pdf:4,pdf_file:3,pend:4,permiss:3,person:[3,4],personal_pag:4,perus:4,physic:4,plain:3,plot:4,point:3,pool:4,popul:4,post:1,postgr:3,potenti:4,pre:4,precook:4,precookedemail:3,prefil:4,prefill_using_doi:4,prefill_using_identifi:4,print:3,privat:3,probe:4,process:4,produc:4,product:[],project:0,proof:4,provid:[3,4],public_info_as_t:3,publication_d:3,publication_detail:3,publication_id:4,publicli:3,publish:4,python:[0,4],queri:4,query_str:4,quot:4,read:3,rec_id:4,recent:4,recogn:4,recommend:[3,4],recruit_refere:4,ref_invitation_remind:4,refere:[3,4],referee_id:4,refereeinvit:3,referees_flag:3,referees_suggest:3,refusal_reason:3,regist:4,registr:[3,4],registration_invit:4,registration_invitations_cleanup:4,registrationinvit:3,reject:4,relev:4,remark:3,remarks_for_author:3,remarks_for_editor:3,remarks_for_editorial_colleg:3,remov:4,remove_registration_invit:4,renew:[3,4],renew_registration_invit:4,repli:[3,4],report:[3,4],reporting_deadlin:3,repres:3,request:4,requested_chang:3,right:3,round:4,same:3,satisfactori:4,scipost_physics_accept:4,scipost_physics_rec:4,scipost_url:3,scipost_url_ful:3,search:[2,4],search_field:4,secondary_area:3,see:[3,4],select:4,send:4,send_precooked_email:[3,4],send_refereeing_invit:4,sent:4,server:4,set:3,she:4,similar:4,size:3,skeleton:4,slug:0,somebodi:4,sourc:[3,4],spbmembershipagr:3,split:4,sre_pattern:4,start:3,start_dat:3,statu:3,store:3,string:4,sub:[3,4],subject:4,subject_area:3,submiss:[3,4],submission_d:3,submission_typ:3,submit:3,submitted_bi:3,submitted_to_journ:3,subunit:3,summari:4,support:3,supportingpartn:3,system:4,take:[3,4],team:[3,4],teams_with_access:3,templat:[3,4],termin:4,test:4,thei:4,them:4,thesi:3,thesislink:[3,4],thi:[1,3,4],those:4,through:4,thu:3,time:3,titl:3,to_journ:4,todo:4,togeth:4,token:4,tool:4,turn:3,two:3,type:3,unavailabilityperiod:3,undergo:4,unregist:4,unregistered_author_id:4,unregisteredauthor:3,unsollicit:3,until_d:3,updatedoc:0,updating:4,upload:4,upload_proof:4,upon:4,url:3,use:[0,3],user:[3,4],usernam:3,validate_publ:4,validatepublicationform:4,verif:4,version:[3,4],vetted_bi:3,view:[],volum:3,volunt:4,volunteer_as_eic:4,vote:4,voting_deadlin:3,want:4,well:4,when:4,where:4,which:4,who:4,without:3,word:4,workflow:1,yet:4},titles:["Maintenance of SciPost documentation","Production of SciPost Publications","Welcome to SciPost&#8217;s documentation!","Models","Views"],titleterms:{"public":1,"static":0,doc:0,document:[0,2],file:0,gener:0,html:0,indice:2,mainten:0,model:3,onlin:0,product:1,scipost:[0,1,2],sphinx:0,sphinxdoc:0,tabl:2,update:0,view:4,viewabl:0,welcom:2}})
\ No newline at end of file
diff --git a/docs/contributors/contributors.rst b/docs/contributors/contributors.rst
new file mode 100644
index 000000000..c732f35bf
--- /dev/null
+++ b/docs/contributors/contributors.rst
@@ -0,0 +1,8 @@
+For Contributors
+================
+
+
+.. toctree::
+   :maxdepth: 2
+
+   editorial_administrators/editorial_administrators
diff --git a/docs/contributors/editorial_administrators/#production.rst# b/docs/contributors/editorial_administrators/#production.rst#
new file mode 100644
index 000000000..be80d8e9e
--- /dev/null
+++ b/docs/contributors/editorial_administrators/#production.rst#
@@ -0,0 +1,8 @@
+.. Howto for publication production
+
+Production of SciPost Publications
+==================================
+
+This guide is meant for **Editorial Administrators** and **Production Officers**. It describes the post-acceptance workflow from paper acceptance to publication.
+
+
diff --git a/docs/contributors/editorial_administrators/.#production.rst b/docs/contributors/editorial_administrators/.#production.rst
new file mode 120000
index 000000000..056404ec5
--- /dev/null
+++ b/docs/contributors/editorial_administrators/.#production.rst
@@ -0,0 +1 @@
+jscaux@MacBook-Pro-7.local.2955
\ No newline at end of file
diff --git a/docs/contributors/editorial_administrators/editorial_administrators.rst b/docs/contributors/editorial_administrators/editorial_administrators.rst
new file mode 100644
index 000000000..03174bbbd
--- /dev/null
+++ b/docs/contributors/editorial_administrators/editorial_administrators.rst
@@ -0,0 +1,8 @@
+Editorial Administrators
+========================
+
+
+.. toctree::
+   :maxdepth: 2
+
+   production
diff --git a/docs/contributors/editorial_administrators/production.rst b/docs/contributors/editorial_administrators/production.rst
new file mode 100644
index 000000000..9dfdf28a3
--- /dev/null
+++ b/docs/contributors/editorial_administrators/production.rst
@@ -0,0 +1,6 @@
+.. Howto for publication production
+
+Production of SciPost Publications
+==================================
+
+This guide is meant for **Editorial Administrators** and **Production Officers**. It describes the post-acceptance workflow from paper acceptance to publication.
diff --git a/docs/developers/codebase/codebase.rst b/docs/developers/codebase/codebase.rst
new file mode 100644
index 000000000..936a62247
--- /dev/null
+++ b/docs/developers/codebase/codebase.rst
@@ -0,0 +1,9 @@
+SciPost codebase
+================
+
+
+.. toctree::
+   :maxdepth: 2
+
+   modules/models
+   modules/views
diff --git a/docs/modules/models.rst b/docs/developers/codebase/modules/models.rst
similarity index 100%
rename from docs/modules/models.rst
rename to docs/developers/codebase/modules/models.rst
diff --git a/docs/modules/views.rst b/docs/developers/codebase/modules/views.rst
similarity index 100%
rename from docs/modules/views.rst
rename to docs/developers/codebase/modules/views.rst
diff --git a/docs/developers/developers.rst b/docs/developers/developers.rst
new file mode 100644
index 000000000..557c2eaf7
--- /dev/null
+++ b/docs/developers/developers.rst
@@ -0,0 +1,9 @@
+For Developers
+==============
+
+
+.. toctree::
+   :maxdepth: 2
+
+   maintenance/maintenance
+   codebase/codebase
diff --git a/docs/developers/maintenance/docs.rst b/docs/developers/maintenance/docs.rst
new file mode 100644
index 000000000..784ada575
--- /dev/null
+++ b/docs/developers/maintenance/docs.rst
@@ -0,0 +1,22 @@
+Maintenance of SciPost documentation
+====================================
+
+
+Sphinx-generated docs
+---------------------
+
+
+Generating the static html files
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+In the docs folder, invoke ``make html``.
+
+
+
+Sphinxdoc-generated docs (viewable online)
+------------------------------------------
+
+Updating the docs:
+~~~~~~~~~~~~~~~~~~
+
+Use the management command ``python manage.py updatedoc -b <project-slug>`` with slug scipost.
diff --git a/docs/developers/maintenance/maintenance.rst b/docs/developers/maintenance/maintenance.rst
new file mode 100644
index 000000000..3122094aa
--- /dev/null
+++ b/docs/developers/maintenance/maintenance.rst
@@ -0,0 +1,8 @@
+Maintenance
+===========
+
+
+.. toctree::
+   :maxdepth: 2
+
+   docs
diff --git a/docs/index.rst b/docs/index.rst
index 1fae5f89b..5b4a14377 100644
--- a/docs/index.rst
+++ b/docs/index.rst
@@ -9,10 +9,10 @@ Welcome to SciPost's documentation!
 Contents:
 
 .. toctree::
-   :maxdepth: 2
+   :maxdepth: 3
 
-   modules/models
-   modules/views
+   contributors/contributors
+   developers/developers
 
 
 Indices and tables
diff --git a/scipost/templates/scipost/howto.html b/scipost/templates/scipost/howto.html
new file mode 100644
index 000000000..f01dfda26
--- /dev/null
+++ b/scipost/templates/scipost/howto.html
@@ -0,0 +1,25 @@
+{% extends 'scipost/base.html' %}
+
+{% block pagetitle %}: Howto Guides{% endblock pagetitle %}
+
+{% block bodysup %}
+
+{% load scipost_extras %}
+
+
+<section>
+  <h1>SciPost Howto Guides</h1>
+
+  <ul>
+    <li>
+      Post-acceptance:
+      <ul>
+	<li><a href="{% url 'scipost:howto_production' %}">production</a></li>
+      </ul>
+    </li>
+  </ul>
+
+</section>
+
+
+{% endblock bodysup %}
diff --git a/scipost/templates/scipost/howto_production.html b/scipost/templates/scipost/howto_production.html
new file mode 100644
index 000000000..d5fe13f22
--- /dev/null
+++ b/scipost/templates/scipost/howto_production.html
@@ -0,0 +1,135 @@
+{% extends 'scipost/base.html' %}
+
+{% block pagetitle %}: Howto: Production{% endblock pagetitle %}
+
+{% block bodysup %}
+
+{% load scipost_extras %}
+
+
+<section>
+  <h1>SciPost Publications: Production</h1>
+  <ul><li>Go back to the <a href="{% url 'scipost:howto' %}">Howto Guides</a> Page</li></ul>
+
+  <p>This guide is meant for <strong>Editorial Administrators</strong> and <strong>Production Officers</strong>. It describes the post-acceptance workflow from paper acceptance to publication.</p>
+
+  <p>Version: 2016-12-16</p>
+
+  <hr class="hr12"/>
+
+  <ol>
+    <li>
+      <h3>Preparation</h3>
+      <ol>
+	<li>
+	  <p>Check the Submission's list of references: if the syle isn’t right (most importantly: DOI missing), ask authors to provide an updated <code>bibliography</code> or <code>.bbl</code> file by email.</p>
+	</li>
+      </ol>
+    </li><!-- Preparation -->
+
+    <li>
+      <h3>Source retrieval and folder preparation</h3>
+
+      <ol>
+	<li>
+	  <p>On the SciPost server, navigate to folder <code>[Journal full name]/IN PRODUCTION</code>.</p>
+	</li>
+	<li>
+	  <p>Create a folder <code>[journal abbrev. name]_[arxiv identifier]_[first author last name]</code>, e.g. <code>SciPost_Phys_1604.98141v3_Smart</code>.</p>
+	</li>
+	<li>
+	  <p>Save the source from arXiv into this folder.</p>
+	</li>
+	<li>
+	  <p>NOTE: the file will be named <code>####.#####v#</code>, which is not recognized as a <code>.tar.gz</code> file on a UNIX system.</p>
+	  <p>Rename the file <code>####.####v#.tar.gz</code>. Unzipping it produces the folder <code>####.#####v#</code>.</p>
+	</li>
+	<li>
+	  <p>Copy the files in <code>[Journal full name]/v##_production/FILES_TO_COPY_IN_PAPER_DIR</code> to the paper-in-production’s folder. There are 4 files: <code>by.eps, logo_scipost_with_bgd.pdf, SciPost_bibstyle.bst, SciPost.cls</code>.</p>
+	  </p>
+	</li>
+	<li>
+	  <p>Copy all the paper’s sources one level down (so from <code>####.#####v#</code> to the current directory).</p>
+	</li>
+	<li>
+	  <p>Copy the <code>.tex</code> source to a new file using the name convention <code>[Journal abbrev. name]_####_#####v#_[first author last name].tex</code> (careful: use underscore instead of . between numbers).</p>
+	</li>
+      </ol>
+
+    </li><!-- Source retrieval -->
+
+    <li>
+      <h3>LaTeX file preparation</h3>
+
+
+      <ol>
+	<li>
+	  <h4>Handling references</h4>
+	</li>
+
+	<li>
+	  <h4>Implementing the SciPost style</h4>
+	  <ol>
+	    <li>
+	      <pre><code>
+%%%%%%%% Begin SciPost Production addition
+
+\usepackage[bitstream-charter]{mathdesign}
+
+\hypersetup{
+colorlinks,
+linkcolor={red!50!black},
+citecolor={blue!50!black},
+urlcolor={blue!80!black}
+}
+
+\urlstyle{sf}
+
+\fancypagestyle{SPtitlepage}{%
+\fancyhf{}
+\fancyfoot[C]{\textbf{\thepage}}
+\lhead{\raisebox{-1.5mm}[0pt][0pt]{\href{https://scipost.org}{\includegraphics[width=20mm]{logo_scipost_with_bgd.pdf}}}}
+\chead{}
+\rhead{\small \href{https://scipost.org/SciPostPhys.1.1.???}{SciPost Phys. 1, ??? (2016)}}
+\renewcommand{\headrulewidth}{1pt}
+}
+
+\fancypagestyle{SPbulk}{
+\fancyhf{}
+\lhead{\raisebox{-1.5mm}[0pt][0pt]{\href{https://scipost.org}{\includegraphics[width=20mm]{logo_scipost_with_bgd.pdf}}}}
+\rhead{\small \href{https://scipost.org/SciPostPhys.1.1.???}{SciPost Phys. 1, ??? (2016)}}
+\fancyfoot[C]{\textbf{\thepage}}
+\renewcommand{\headrulewidth}{1pt}
+}
+
+%%%%%%%% End SciPost Production addition
+	      </code></pre>
+	    </li>
+	  </ol>
+	</li>
+      </ol>
+    </li><!-- Implementing the SciPost style -->
+
+    <li>
+      <h3>References validation</h3>
+    </li><!-- References validation -->
+
+    <li>
+      <h3>Proofs</h3>
+    </li><!-- Proofs -->
+
+    <li>
+      <h3>Online publication</h3>
+    </li><!-- Online publication -->
+
+    <li>
+      <h3>Metadata preparation and DOI registration with Crossref</h3>
+    </li><!-- Metadata, DOI -->
+
+  </ol>
+
+
+</section>
+
+
+{% endblock bodysup %}
-- 
GitLab