Mercurial > p > roundup > code
annotate doc/_templates/layout.html @ 8411:ef1ea918b07a reauth-confirm_id
feat(security): Add user confirmation/reauth for sensitive changes
Auditors can raise Reauth(reason) exception to require the user to
enter a token (e.g. account password) to verify the user is performing
the change.
Naming is subject to change.
actions.py: New ReauthAction class handler and verifyPassword() method
for overriding if needed.
client.py: Handle Reauth exception by calling Client:reauth() method.
Default client:reauth method. Add 'reauth' action declaration.
exceptions.py: Define and document Reauth exception as a subclass of
RoundupCGIException.
templating.py: Define method utils.embed_form_fields().
The original form making a change to the database has a lot of form
fields. These need to be resubmitted to Roundup as part of the form
submission that verifies the user's password.
This method turns all non file form fields into type=hidden inputs.
It escapes the names and values to prevent XSS.
For file form fields, it base64 encodes the contents and puts them
in hidden pre blocks. The pre blocks have data attributes for the
filename, filetype and the original field name. (Note the original
field name is not used.)
This stops the file content data (maybe binary e.g. jpegs) from
breaking the html page. The reauth template runs JavaScript that
turns the encoded data inside the pre tags back into a file. Then
it adds a multiple file input control to the page and attaches all
the files to it. This file input is submitted with the rest of the
fields.
_generic.reauth.html (multiple tracker templates): Generates a form
with id=reauth_form to:
display any message from the Reauth exception to the user (e.g. why
user is asked to auth).
get the user's password
submit the form
embed all the form data that triggered the reauth
recreate any file data that was submitted as part of the form and
generate a new file input to push the data to the back end
It has the JavaScript routine (as an IIFE) that regenerates a file
input without user intervention.
All the TAL based tracker templates use the same form. There is also
one for the jinja2 template. The JavaScript for both is the same.
reference.txt: document embed_form_fields utility method.
upgrading.txt: initial upgrading docs.
TODO:
Finalize naming. I am leaning toward ConfirmID rather than Reauth.
Still looking for a standard name for this workflow.
Externalize the javascript in _generic.reauth.html to a seperate file
and use utils.readfile() to embed it or change the script to load it
from a @@file url.
Clean up upgrading.txt with just steps to implement and less feature
detail/internals.
Document internals/troubleshooting in reference.txt.
Add tests using live server.
| author | John Rouillard <rouilj@ieee.org> |
|---|---|
| date | Mon, 11 Aug 2025 14:01:12 -0400 |
| parents | 7ac637506acf |
| children |
| rev | line source |
|---|---|
|
7745
291afa77ad82
doc: trying to get search working.
John Rouillard <rouilj@ieee.org>
parents:
7492
diff
changeset
|
1 {% set script_files = ['_static/jquery.js', '_static/doctools.js', |
|
291afa77ad82
doc: trying to get search working.
John Rouillard <rouilj@ieee.org>
parents:
7492
diff
changeset
|
2 '_static/language_data.js', |
|
291afa77ad82
doc: trying to get search working.
John Rouillard <rouilj@ieee.org>
parents:
7492
diff
changeset
|
3 '_static/searchtools.js', |
|
8097
7ac637506acf
docs: add missing tabs.js required to get tal/jinja2 tabs working.
John Rouillard <rouilj@ieee.org>
parents:
7751
diff
changeset
|
4 '_static/sphinx_highlight.js', |
|
7ac637506acf
docs: add missing tabs.js required to get tal/jinja2 tabs working.
John Rouillard <rouilj@ieee.org>
parents:
7751
diff
changeset
|
5 '_static/tabs.js', |
|
7ac637506acf
docs: add missing tabs.js required to get tal/jinja2 tabs working.
John Rouillard <rouilj@ieee.org>
parents:
7751
diff
changeset
|
6 ] %} |
|
5030
515ab1749b14
Preparing 1.5.1 steps 7/16
anatoly techtonik <techtonik@gmail.com>
parents:
4811
diff
changeset
|
7 {# |
|
515ab1749b14
Preparing 1.5.1 steps 7/16
anatoly techtonik <techtonik@gmail.com>
parents:
4811
diff
changeset
|
8 _templates/layout.html |
|
515ab1749b14
Preparing 1.5.1 steps 7/16
anatoly techtonik <techtonik@gmail.com>
parents:
4811
diff
changeset
|
9 ~~~~~~~~~~~~~~~~~~~~~~ |
|
515ab1749b14
Preparing 1.5.1 steps 7/16
anatoly techtonik <techtonik@gmail.com>
parents:
4811
diff
changeset
|
10 |
|
515ab1749b14
Preparing 1.5.1 steps 7/16
anatoly techtonik <techtonik@gmail.com>
parents:
4811
diff
changeset
|
11 Custom layout template for Roundup. |
|
515ab1749b14
Preparing 1.5.1 steps 7/16
anatoly techtonik <techtonik@gmail.com>
parents:
4811
diff
changeset
|
12 |
|
515ab1749b14
Preparing 1.5.1 steps 7/16
anatoly techtonik <techtonik@gmail.com>
parents:
4811
diff
changeset
|
13 #} |
|
515ab1749b14
Preparing 1.5.1 steps 7/16
anatoly techtonik <techtonik@gmail.com>
parents:
4811
diff
changeset
|
14 {%- block doctype -%} |
|
7140
33124f6dc1c4
remove xhtml structures; merge changes from www layout to doc layout
John Rouillard <rouilj@ieee.org>
parents:
7133
diff
changeset
|
15 <!DOCTYPE html> |
|
5030
515ab1749b14
Preparing 1.5.1 steps 7/16
anatoly techtonik <techtonik@gmail.com>
parents:
4811
diff
changeset
|
16 {%- endblock %} |
|
4033
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
17 {%- macro relbar(class) %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
18 <div class="related {{ class }}"> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
19 <ul> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
20 {%- for rellink in rellinks %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
21 <li class="right" {% if loop.first %}style="margin-right: 10px"{% endif %}> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
22 <a href="{{ pathto(rellink[0]) }}" title="{{ rellink[1]|striptags }}" |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
23 accesskey="{{ rellink[2] }}">{{ rellink[3] }}</a> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
24 {%- if not loop.first %}{{ reldelim2 }}{% endif %}</li> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
25 {%- endfor %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
26 {%- block rootrellink %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
27 <li><a href="{{ pathto(master_doc) }}">{{ shorttitle|e }}</a>{{ reldelim1 }}</li> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
28 {%- endblock %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
29 {%- for parent in parents %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
30 <li><a href="{{ parent.link|e }}" accesskey="U">{{ parent.title }}</a>{{ reldelim1 }}</li> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
31 {%- endfor %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
32 {%- block relbaritems %} {% endblock %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
33 </ul> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
34 </div> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
35 {%- endmacro %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
36 {%- macro sidebar() %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
37 {%- block sidebartoc %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
38 {%- if display_toc %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
39 <h3><a href="{{ pathto(master_doc) }}">{{ _('Table Of Contents') }}</a></h3> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
40 {{ toc }} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
41 {%- endif %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
42 {%- endblock %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
43 {%- block sidebarrel %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
44 {%- if prev %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
45 <h4>{{ _('Previous topic') }}</h4> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
46 <p class="topless"><a href="{{ prev.link|e }}" |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
47 title="{{ _('previous chapter') }}">{{ prev.title }}</a></p> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
48 {%- endif %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
49 {%- if next %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
50 <h4>{{ _('Next topic') }}</h4> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
51 <p class="topless"><a href="{{ next.link|e }}" |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
52 title="{{ _('next chapter') }}">{{ next.title }}</a></p> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
53 {%- endif %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
54 {%- endblock %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
55 {%- block sidebarsourcelink %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
56 {%- if show_source and has_source and sourcename %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
57 <h3>{{ _('This Page') }}</h3> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
58 <ul class="this-page-menu"> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
59 <li><a href="{{ pathto('_sources/' + sourcename, true)|e }}" |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
60 rel="nofollow">{{ _('Show Source') }}</a></li> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
61 </ul> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
62 {%- endif %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
63 {%- endblock %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
64 {%- block sidebarsearch %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
65 {%- if pagename != "search" %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
66 <div id="searchbox" style="display: none"> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
67 <h3>{{ _('Quick search') }}</h3> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
68 <form class="search" action="{{ pathto('search') }}" method="get"> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
69 <input type="text" name="q" size="18" /> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
70 <input type="submit" value="{{ _('Go') }}" /> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
71 <input type="hidden" name="check_keywords" value="yes" /> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
72 <input type="hidden" name="area" value="default" /> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
73 </form> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
74 <p style="font-size: 90%">{{ _('Enter search terms or a module, class or function name.') }}</p> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
75 </div> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
76 <script type="text/javascript">$('#searchbox').show(0);</script> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
77 {%- endif %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
78 {%- endblock %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
79 {%- endmacro %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
80 |
|
5030
515ab1749b14
Preparing 1.5.1 steps 7/16
anatoly techtonik <techtonik@gmail.com>
parents:
4811
diff
changeset
|
81 {%- macro css() %} |
|
7492
452a8bd1d826
add file with sphinx requirements for building doc.
John Rouillard <rouilj@ieee.org>
parents:
7140
diff
changeset
|
82 <link rel="stylesheet" href="{{ pathto('_static/NO_basic.css', 1) }}" type="text/css" /> |
|
452a8bd1d826
add file with sphinx requirements for building doc.
John Rouillard <rouilj@ieee.org>
parents:
7140
diff
changeset
|
83 <link rel="stylesheet" href="{{ pathto('_static/' + styles[-1], 1) }}" type="text/css" /> |
|
5030
515ab1749b14
Preparing 1.5.1 steps 7/16
anatoly techtonik <techtonik@gmail.com>
parents:
4811
diff
changeset
|
84 <link rel="stylesheet" href="{{ pathto('_static/pygments.css', 1) }}" type="text/css" /> |
|
515ab1749b14
Preparing 1.5.1 steps 7/16
anatoly techtonik <techtonik@gmail.com>
parents:
4811
diff
changeset
|
85 {%- for cssfile in css_files %} |
|
515ab1749b14
Preparing 1.5.1 steps 7/16
anatoly techtonik <techtonik@gmail.com>
parents:
4811
diff
changeset
|
86 <link rel="stylesheet" href="{{ pathto(cssfile, 1) }}" type="text/css" /> |
|
515ab1749b14
Preparing 1.5.1 steps 7/16
anatoly techtonik <techtonik@gmail.com>
parents:
4811
diff
changeset
|
87 {%- endfor %} |
|
515ab1749b14
Preparing 1.5.1 steps 7/16
anatoly techtonik <techtonik@gmail.com>
parents:
4811
diff
changeset
|
88 {%- endmacro %} |
|
515ab1749b14
Preparing 1.5.1 steps 7/16
anatoly techtonik <techtonik@gmail.com>
parents:
4811
diff
changeset
|
89 |
|
7492
452a8bd1d826
add file with sphinx requirements for building doc.
John Rouillard <rouilj@ieee.org>
parents:
7140
diff
changeset
|
90 {# |
|
452a8bd1d826
add file with sphinx requirements for building doc.
John Rouillard <rouilj@ieee.org>
parents:
7140
diff
changeset
|
91 In newer sphinx styles is an array and style does not exist |
|
452a8bd1d826
add file with sphinx requirements for building doc.
John Rouillard <rouilj@ieee.org>
parents:
7140
diff
changeset
|
92 In older sphinx (1.x) style is the style set in conf.py. |
|
452a8bd1d826
add file with sphinx requirements for building doc.
John Rouillard <rouilj@ieee.org>
parents:
7140
diff
changeset
|
93 |
|
452a8bd1d826
add file with sphinx requirements for building doc.
John Rouillard <rouilj@ieee.org>
parents:
7140
diff
changeset
|
94 If style exists, assume styles doesn't exist and make styles |
|
452a8bd1d826
add file with sphinx requirements for building doc.
John Rouillard <rouilj@ieee.org>
parents:
7140
diff
changeset
|
95 exist with style as the only value. |
|
452a8bd1d826
add file with sphinx requirements for building doc.
John Rouillard <rouilj@ieee.org>
parents:
7140
diff
changeset
|
96 |
|
452a8bd1d826
add file with sphinx requirements for building doc.
John Rouillard <rouilj@ieee.org>
parents:
7140
diff
changeset
|
97 So we can use styles[-1] in the css() macro. |
|
452a8bd1d826
add file with sphinx requirements for building doc.
John Rouillard <rouilj@ieee.org>
parents:
7140
diff
changeset
|
98 When sourceforge lets me build docs with something newer than sphinx 1, |
|
452a8bd1d826
add file with sphinx requirements for building doc.
John Rouillard <rouilj@ieee.org>
parents:
7140
diff
changeset
|
99 we can delete this. |
|
452a8bd1d826
add file with sphinx requirements for building doc.
John Rouillard <rouilj@ieee.org>
parents:
7140
diff
changeset
|
100 #} |
|
452a8bd1d826
add file with sphinx requirements for building doc.
John Rouillard <rouilj@ieee.org>
parents:
7140
diff
changeset
|
101 {% if style %} |
|
452a8bd1d826
add file with sphinx requirements for building doc.
John Rouillard <rouilj@ieee.org>
parents:
7140
diff
changeset
|
102 {% set styles = [] %} |
|
452a8bd1d826
add file with sphinx requirements for building doc.
John Rouillard <rouilj@ieee.org>
parents:
7140
diff
changeset
|
103 {{ styles.append( style ) }} |
|
452a8bd1d826
add file with sphinx requirements for building doc.
John Rouillard <rouilj@ieee.org>
parents:
7140
diff
changeset
|
104 {% endif %} |
|
452a8bd1d826
add file with sphinx requirements for building doc.
John Rouillard <rouilj@ieee.org>
parents:
7140
diff
changeset
|
105 |
|
7140
33124f6dc1c4
remove xhtml structures; merge changes from www layout to doc layout
John Rouillard <rouilj@ieee.org>
parents:
7133
diff
changeset
|
106 <html lang="en"> |
|
4033
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
107 <head> |
|
7140
33124f6dc1c4
remove xhtml structures; merge changes from www layout to doc layout
John Rouillard <rouilj@ieee.org>
parents:
7133
diff
changeset
|
108 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> |
|
33124f6dc1c4
remove xhtml structures; merge changes from www layout to doc layout
John Rouillard <rouilj@ieee.org>
parents:
7133
diff
changeset
|
109 <meta name="viewport" content="width=device-width, initial-scale=1"> |
|
4033
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
110 {%- if builder != 'htmlhelp' %} |
|
6162
9cfdbfc6d8ed
Mark entity safe and reinstall escape -- make title display right
John Rouillard <rouilj@ieee.org>
parents:
6161
diff
changeset
|
111 {%- set titlesuffix = " — "|safe + docstitle|e %} |
|
4033
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
112 {%- endif %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
113 <title>{{ title|striptags }}{{ titlesuffix }}</title> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
114 {%- if builder != 'htmlhelp' %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
115 <script type="text/javascript"> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
116 var DOCUMENTATION_OPTIONS = { |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
117 URL_ROOT: '{{ pathto("", 1) }}', |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
118 VERSION: '{{ release|e }}', |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
119 COLLAPSE_MODINDEX: false, |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
120 FILE_SUFFIX: '{{ file_suffix }}' |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
121 }; |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
122 </script> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
123 {%- for scriptfile in script_files %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
124 <script type="text/javascript" src="{{ pathto(scriptfile, 1) }}"></script> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
125 {%- endfor %} |
|
7751
bd013590d8d6
docs: optimize head section of templates
John Rouillard <rouilj@ieee.org>
parents:
7745
diff
changeset
|
126 {%- if builder == 'web' %} |
|
bd013590d8d6
docs: optimize head section of templates
John Rouillard <rouilj@ieee.org>
parents:
7745
diff
changeset
|
127 <link rel="stylesheet" href="{{ pathto('index') }}?do=stylesheet{% |
|
bd013590d8d6
docs: optimize head section of templates
John Rouillard <rouilj@ieee.org>
parents:
7745
diff
changeset
|
128 if in_admin_panel %}&admin=yes{% endif %}" type="text/css" /> |
|
bd013590d8d6
docs: optimize head section of templates
John Rouillard <rouilj@ieee.org>
parents:
7745
diff
changeset
|
129 {%- for link, type, title in page_links %} |
|
bd013590d8d6
docs: optimize head section of templates
John Rouillard <rouilj@ieee.org>
parents:
7745
diff
changeset
|
130 <link rel="alternate" type="{{ type|e(true) }}" title="{{ title|e(true) }}" href="{{ link|e(true) }}" /> |
|
bd013590d8d6
docs: optimize head section of templates
John Rouillard <rouilj@ieee.org>
parents:
7745
diff
changeset
|
131 {%- endfor %} |
|
bd013590d8d6
docs: optimize head section of templates
John Rouillard <rouilj@ieee.org>
parents:
7745
diff
changeset
|
132 {%- else %} |
|
bd013590d8d6
docs: optimize head section of templates
John Rouillard <rouilj@ieee.org>
parents:
7745
diff
changeset
|
133 {{ css() }} |
|
bd013590d8d6
docs: optimize head section of templates
John Rouillard <rouilj@ieee.org>
parents:
7745
diff
changeset
|
134 {%- endif %} |
|
bd013590d8d6
docs: optimize head section of templates
John Rouillard <rouilj@ieee.org>
parents:
7745
diff
changeset
|
135 <!-- https://github.com/sphinx-doc/sphinx/issues/11699 means a |
|
bd013590d8d6
docs: optimize head section of templates
John Rouillard <rouilj@ieee.org>
parents:
7745
diff
changeset
|
136 duplicate viewport tag --> |
|
bd013590d8d6
docs: optimize head section of templates
John Rouillard <rouilj@ieee.org>
parents:
7745
diff
changeset
|
137 {{ metatags }} |
|
bd013590d8d6
docs: optimize head section of templates
John Rouillard <rouilj@ieee.org>
parents:
7745
diff
changeset
|
138 {%- if 'name="description"' not in metatags %} |
|
bd013590d8d6
docs: optimize head section of templates
John Rouillard <rouilj@ieee.org>
parents:
7745
diff
changeset
|
139 <meta name="description" |
|
bd013590d8d6
docs: optimize head section of templates
John Rouillard <rouilj@ieee.org>
parents:
7745
diff
changeset
|
140 content="Page {{ pagename }} in documentation on the Roundup issue tracker, version {{ release|e }}."> |
|
bd013590d8d6
docs: optimize head section of templates
John Rouillard <rouilj@ieee.org>
parents:
7745
diff
changeset
|
141 {%- endif %} |
|
4033
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
142 {%- if use_opensearch %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
143 <link rel="search" type="application/opensearchdescription+xml" |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
144 title="{% trans docstitle=docstitle|e %}Search within {{ docstitle }}{% endtrans %}" |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
145 href="{{ pathto('_static/opensearch.xml', 1) }}"/> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
146 {%- endif %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
147 {%- if favicon %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
148 <link rel="shortcut icon" href="{{ pathto('_static/' + favicon, 1) }}"/> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
149 {%- endif %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
150 {%- endif %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
151 {%- block linktags %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
152 {%- if hasdoc('about') %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
153 <link rel="author" title="{{ _('About these documents') }}" href="{{ pathto('about') }}" /> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
154 {%- endif %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
155 <link rel="index" title="{{ _('Index') }}" href="{{ pathto('genindex') }}" /> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
156 <link rel="search" title="{{ _('Search') }}" href="{{ pathto('search') }}" /> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
157 {%- if hasdoc('copyright') %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
158 <link rel="copyright" title="{{ _('Copyright') }}" href="{{ pathto('copyright') }}" /> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
159 {%- endif %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
160 <link rel="top" title="{{ docstitle|e }}" href="{{ pathto('index') }}" /> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
161 {%- if parents %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
162 <link rel="up" title="{{ parents[-1].title|striptags }}" href="{{ parents[-1].link|e }}" /> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
163 {%- endif %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
164 {%- if next %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
165 <link rel="next" title="{{ next.title|striptags }}" href="{{ next.link|e }}" /> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
166 {%- endif %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
167 {%- if prev %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
168 <link rel="prev" title="{{ prev.title|striptags }}" href="{{ prev.link|e }}" /> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
169 {%- endif %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
170 {%- endblock %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
171 {%- block extrahead %} {% endblock %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
172 </head> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
173 <body> |
|
7133
b5b1f2830e23
Remove duplicate h1 headers from website
John Rouillard <rouilj@ieee.org>
parents:
6162
diff
changeset
|
174 <div class="header"><div class="label">Roundup</div> |
|
4033
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
175 {%- if pagename != "search" %} |
|
7745
291afa77ad82
doc: trying to get search working.
John Rouillard <rouilj@ieee.org>
parents:
7492
diff
changeset
|
176 <script id="documentation_options" data-url_root="{{ url_root }}" |
|
291afa77ad82
doc: trying to get search working.
John Rouillard <rouilj@ieee.org>
parents:
7492
diff
changeset
|
177 src="{{ pathto('_static/documentation_options.js', 1) }}"> |
|
291afa77ad82
doc: trying to get search working.
John Rouillard <rouilj@ieee.org>
parents:
7492
diff
changeset
|
178 </script> |
|
291afa77ad82
doc: trying to get search working.
John Rouillard <rouilj@ieee.org>
parents:
7492
diff
changeset
|
179 |
|
4033
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
180 <div id="searchbox" style="display: none"> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
181 <form class="search" action="{{ pathto('search') }}" method="get"> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
182 <input type="text" name="q" size="18" /> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
183 <input type="submit" value="{{ _('Search') }}" /> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
184 <input type="hidden" name="check_keywords" value="yes" /> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
185 <input type="hidden" name="area" value="default" /> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
186 </form> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
187 </div> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
188 <script type="text/javascript">$('#searchbox').show(0);</script> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
189 {%- endif %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
190 </div> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
191 <div class="navigation"> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
192 <div class="menu"> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
193 {{ sidebar() }} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
194 </div> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
195 </div> |
|
6160
9619d64c0351
Doc updates for customizing.txt, start of index generation
John Rouillard <rouilj@ieee.org>
parents:
5030
diff
changeset
|
196 {%- block content %} |
|
7745
291afa77ad82
doc: trying to get search working.
John Rouillard <rouilj@ieee.org>
parents:
7492
diff
changeset
|
197 <main id="main" role="main" class="content"> |
|
4033
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
198 {{ relbar('related-top') }} |
|
6160
9619d64c0351
Doc updates for customizing.txt, start of index generation
John Rouillard <rouilj@ieee.org>
parents:
5030
diff
changeset
|
199 {% block body %} {% endblock %} |
|
4033
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
200 {{ relbar('related-bottom') }} |
|
7745
291afa77ad82
doc: trying to get search working.
John Rouillard <rouilj@ieee.org>
parents:
7492
diff
changeset
|
201 </main> |
|
6160
9619d64c0351
Doc updates for customizing.txt, start of index generation
John Rouillard <rouilj@ieee.org>
parents:
5030
diff
changeset
|
202 {%- endblock %} |
|
4033
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
203 {%- block footer %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
204 <div class="footer"> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
205 {%- if hasdoc('copyright') %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
206 {% trans path=pathto('copyright'), copyright=copyright|e %}© <a href="{{ path }}">Copyright</a> {{ copyright }}.{% endtrans %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
207 {%- else %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
208 {% trans copyright=copyright|e %}© Copyright {{ copyright }}.{% endtrans %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
209 {%- endif %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
210 </div> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
211 {%- endblock %} |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
212 </body> |
|
bca7c59ac400
Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents:
diff
changeset
|
213 </html> |
