Commit | Line | Data |
---|---|---|
76c9ea6b WKG |
1 | {# |
2 | # GNU MediaGoblin -- federated, autonomous media hosting | |
cf29e8a8 | 3 | # Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS. |
76c9ea6b WKG |
4 | # |
5 | # This program is free software: you can redistribute it and/or modify | |
6 | # it under the terms of the GNU Affero General Public License as published by | |
7 | # the Free Software Foundation, either version 3 of the License, or | |
8 | # (at your option) any later version. | |
9 | # | |
10 | # This program is distributed in the hope that it will be useful, | |
11 | # but WITHOUT ANY WARRANTY; without even the implied warranty of | |
12 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
13 | # GNU Affero General Public License for more details. | |
14 | # | |
15 | # You should have received a copy of the GNU Affero General Public License | |
16 | # along with this program. If not, see <http://www.gnu.org/licenses/>. | |
9a5b2da5 CAW |
17 | -#} |
18 | <!doctype html> | |
a0598d5c CAW |
19 | <html> |
20 | <head> | |
5fa35884 | 21 | <meta charset="utf-8"> |
e58f2599 | 22 | <meta name="viewport" content="width=device-width, initial-scale=1.0"> |
78801685 | 23 | <title>{% block title %}{{ app_config['html_title'] }}{% endblock %}</title> |
1344821d | 24 | <link rel="stylesheet" type="text/css" |
1dc7f28d | 25 | href="{{ request.staticdirect('/css/extlib/reset.css') }}"/> |
8ac897c3 CAW |
26 | <link rel="stylesheet" type="text/css" |
27 | href="{{ request.staticdirect('/css/base.css') }}"/> | |
7a8ad818 CAW |
28 | <link rel="shortcut icon" |
29 | href="{{ request.staticdirect('/images/goblin.ico') }}" /> | |
742bfa7a E |
30 | <script type="text/javascript" |
31 | src="{{ request.staticdirect('/js/extlib/jquery.js') }}"></script> | |
3c912132 CAW |
32 | <script type="text/javascript" |
33 | src="{{ request.staticdirect('/js/header_dropdown.js') }}"></script> | |
34 | ||
7945cd21 JS |
35 | <!--[if lt IE 9]> |
36 | <script src="{{ request.staticdirect('/js/extlib/html5shiv.js') }}"></script> | |
37 | <![endif]--> | |
0416b866 | 38 | |
f6d1d28d | 39 | {# For clarification, the difference between the extra_head.html template |
cac17c15 | 40 | # and the head template hook is that the former should be used by |
f6d1d28d CAW |
41 | # themes and the latter should be used by plugins. |
42 | # The reason is that only one thing can override extra_head.html... | |
43 | # but multiple plugins can hook into the template hook. | |
44 | #} | |
667d1fc8 | 45 | {% include "mediagoblin/extra_head.html" %} |
cac17c15 | 46 | {% template_hook("head") %} |
0416b866 | 47 | |
00c39256 BK |
48 | {% block mediagoblin_head %} |
49 | {% endblock mediagoblin_head %} | |
a0598d5c | 50 | </head> |
a0598d5c | 51 | <body> |
b33b3608 | 52 | {% include 'mediagoblin/bits/body-start.html' %} |
a0598d5c CAW |
53 | {% block mediagoblin_body %} |
54 | {% block mediagoblin_header %} | |
afcb0855 | 55 | <header> |
17dcc3ae | 56 | {%- include "mediagoblin/bits/logo.html" -%} |
afcb0855 JS |
57 | {% block mediagoblin_header_title %}{% endblock %} |
58 | <div class="header_right"> | |
155438cd | 59 | {%- if request.user %} |
29497982 | 60 | {% if request.user and request.user.status == 'active' %} |
2369feb5 JS |
61 | <div class="button_action header_dropdown_down">▼</div> |
62 | <div class="button_action header_dropdown_up">▲</div> | |
29497982 | 63 | {% elif request.user and request.user.status == "needs_email_verification" %} |
afcb0855 | 64 | {# the following link should only appear when verification is needed #} |
7b6836a3 | 65 | <a href="{{ request.urlgen('mediagoblin.user_pages.user_home', |
29497982 | 66 | user=request.user.username) }}" |
afcb0855 | 67 | class="button_action_highlight"> |
29497982 | 68 | {% trans %}Verify your email!{% endtrans %}</a> |
10d24197 | 69 | or <a href="{{ request.urlgen('mediagoblin.auth.logout') }}">{% trans %}log out{% endtrans %}</a> |
681e1371 | 70 | {% endif %} |
155438cd | 71 | {%- else %} |
d3c6e2a0 SS |
72 | <a href="{{ request.urlgen('mediagoblin.auth.login') }}?next={{ |
73 | request.base_url|urlencode }}"> | |
155438cd E |
74 | {%- trans %}Log in{% endtrans -%} |
75 | </a> | |
76 | {%- endif %} | |
afcb0855 | 77 | </div> |
d297d8e8 | 78 | <div class="clear"></div> |
a7d079ac | 79 | {% if request.user and request.user.status == 'active' %} |
2369feb5 | 80 | <div class="header_dropdown"> |
d1d53560 CAW |
81 | <p> |
82 | <span class="dropdown_title"> | |
83 | {% trans user_url=request.urlgen('mediagoblin.user_pages.user_home', | |
84 | user=request.user.username), | |
85 | user_name=request.user.username -%} | |
86 | <a href="{{ user_url }}">{{ user_name }}</a>'s account | |
87 | {%- endtrans %} | |
88 | </span> | |
89 | (<a href="{{ request.urlgen('mediagoblin.auth.logout') }}">{% trans %}log out{% endtrans %}</a>) | |
90 | </p> | |
5a42915b | 91 | <ul> |
3afe739c | 92 | <li><a class="button_action" href="{{ request.urlgen('mediagoblin.submit.start') }}"> |
5a42915b JS |
93 | {%- trans %}Add media{% endtrans -%} |
94 | </a></li> | |
3afe739c | 95 | <li><a class="button_action" href="{{ request.urlgen('mediagoblin.submit.collection') }}"> |
5a42915b JS |
96 | {%- trans %}Create new collection{% endtrans -%} |
97 | </a></li> | |
98 | <li><a href="{{ request.urlgen('mediagoblin.edit.account') }}"> | |
99 | {%- trans %}Change account settings{% endtrans -%} | |
100 | </a></li> | |
101 | <li><a href="{{ request.urlgen('mediagoblin.user_pages.processing_panel', | |
102 | user=request.user.username) }}"> | |
103 | {%- trans %}Media processing panel{% endtrans -%} | |
104 | </a></li> | |
105 | {% if request.user.is_admin %} | |
106 | <li>Admin: | |
107 | <ul> | |
108 | <li><a href="{{ request.urlgen('mediagoblin.admin.panel') }}"> | |
109 | {%- trans %}Media processing panel{% endtrans -%} | |
110 | </a></li> | |
111 | </ul> | |
112 | </li> | |
113 | {% endif %} | |
114 | </ul> | |
115 | </div> | |
116 | {% endif %} | |
afcb0855 | 117 | </header> |
a0598d5c | 118 | {% endblock %} |
155438cd | 119 | <div class="container"> |
b33b3608 | 120 | {% include 'mediagoblin/bits/above-content.html' %} |
155438cd | 121 | <div class="mediagoblin_content"> |
741d5a37 | 122 | {% include "mediagoblin/utils/messages.html" %} |
f7bcfaff JS |
123 | {% block mediagoblin_content %} |
124 | {% endblock mediagoblin_content %} | |
155438cd E |
125 | </div> |
126 | {%- block mediagoblin_footer %} | |
7945cd21 | 127 | <footer> |
416b439f | 128 | {% trans -%} |
155438cd | 129 | Powered by <a href="http://mediagoblin.org/" title='Version {{ version }}'>MediaGoblin</a>, a <a href="http://gnu.org/">GNU</a> project. |
416b439f | 130 | {%- endtrans %} |
ff6933fa | 131 | {% trans source_link=app_config['source_link'] -%} |
416b439f | 132 | Released under the <a href="http://www.fsf.org/licensing/licenses/agpl-3.0.html">AGPL</a>. <a href="{{ source_link }}">Source code</a> available. |
58b79b15 | 133 | {%- endtrans %} |
7945cd21 | 134 | </footer> |
155438cd E |
135 | {%- endblock mediagoblin_footer %} |
136 | </div> | |
137 | {%- endblock mediagoblin_body %} | |
b33b3608 | 138 | {% include 'mediagoblin/bits/body-end.html' %} |
a0598d5c CAW |
139 | </body> |
140 | </html> |