nm2-base.html 9.49 KB
Newer Older
1
{% extends "debian-bootstrap4-base.html" %}
2
{% load static %}
3
4
{% load i18n %}

Enrico Zini's avatar
Enrico Zini committed
5
6
{% block navbar_brand_url %}{% url 'home' %}{% endblock %}

7
8
9
10
11
{% block title %}{% trans "Debian New Member Process" %}{% endblock %}

{% block head %}
{{block.super}}
<link rev="made" href="mailto:nm@debian.org">
12
<link type="text/css" rel="stylesheet" media="all" href="{% static "css/nm2.css" %}">
13
{{ALL_STATUS|json_script:"ALL_STATUS"}}
14
<script src="{% static "js/nm.js" %}"></script>
15
16
17
<script type="text/javascript">
(function() {
"use strict";
Enrico Zini's avatar
Enrico Zini committed
18
window.nm2.url_api_people = "{% url 'api:people' %}";
19
20
})();
</script>
21
22
23
24
{% endblock %}

{% block nav_searchbox %}{% comment %}No search feature in NM site yet{% endcomment %}{% endblock %}

25
{% block nav_left_items %}{# Top links #}
Enrico Zini's avatar
Enrico Zini committed
26
  <li class="nav-item"><a class="nav-link" href="{% url 'public_findperson' %}"><span class="fa fa-search"></span> {% trans "People" %}</a></li>
27
  <li class="nav-item"><a class="nav-link" href="{% url 'wizard:home' %}"><span class="fa fa-magic"></span> {% trans "Site wizard" %}</a></li>
28
  {% if user.is_am %}
29
30
  <li class="nav-item"><a class="nav-link" href="{% url 'process_am_dashboard' %}"><span class="fa fa-dashboard"></span> {% trans "AM dashboard" %}</a></li>
  {% endif %}
Enrico Zini's avatar
Enrico Zini committed
31
  {% if wikihelp %}<li><a class="nav-link" href="{{wikihelp}}"><span class="fa fa-info"></span> {% trans "Wiki help" %}<a/a></li>{% endif %}
32
33
34
  {% if navbar.person %} {# Person dropdown menu #}
  <li class="nav-item dropdown">
    <a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
Enrico Zini's avatar
Enrico Zini committed
35
      <span class="fa fa-user"></span> {{person.lookup_key}}
36
37
38
    </a>
    <div class="dropdown-menu" role="menu" aria-labelledby="navbarDropdown">
    {% for link in navbar.person %}
39
40
41
42
43
44
45
      <a class=
     {% if link.disabled %}
        "dropdown-item disabled"
     {% else  %}
        "dropdown-item"
     {% endif %}
      href="{{link.url}}">{% if link.icon %}<span class="fa fa-{{link.icon}}"></span> {% endif %}{{link.label}}</a>
46
    {% endfor %}
47
    {% if user != person %}
Enrico Zini's avatar
Enrico Zini committed
48
    <form class="form-inline" method="POST" action="{% url 'impersonate:impersonate' %}">{% csrf_token %}
49
50
51
52
53
      <input type="hidden" name="pk" value="{{person.pk}}">
      <input type="hidden" name="next" value="{{request.build_absolute_uri}}">
      <button class="dropdown-item btn btn-link" type="submit"><span class="fa fa-random"></span> {% trans "Impersonate" %}</button>
    </form>
    {% endif %}
54
55
56
57
58
59
    </div>
  </li>
  {% endif %}
  {% if navbar.process %} {# Process dropdown menu #}
  <li class="nav-item dropdown">
    <a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
Enrico Zini's avatar
Enrico Zini committed
60
      <span class="fa fa-drivers-license"></span> {% trans "Process" %}
61
62
63
64
65
66
67
68
    </a>
    <div class="dropdown-menu" role="menu" aria-labelledby="navbarDropdown">
    {% for link in navbar.process %}
      <a class="dropdown-item" href="{{link.url}}">{% if link.icon %}<span class="fa fa-{{link.icon}}"></span> {% endif %}{{link.label}}</a>
    {% endfor %}
    </div>
  </li>
  {% endif %}
69
70
{% endblock %}

71
{% block nav_right_items %}{# Visitor menu #}
72

73
{% if user.is_anonymous and not request.signon_identities %}
74
<li class="nav-item"><a href="{% url 'signon:login' %}"><span class="fa fa-sign-in"></span> {% trans "Login" %}</a></li>
75
76
77
{% else %}
<li class="nav-item dropdown">
  <a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
Enrico Zini's avatar
Enrico Zini committed
78
    <span class="fa fa-user-circle"></span>
79
80
81
82
  {% if user.is_anonymous %}
    {{request.sso_username}}
    {% trans "(not known to this site yet)" %}
  {% else %}
83
    {{user.lookup_key}}
84
85
  {% endif %}
  </a>
Enrico Zini's avatar
Enrico Zini committed
86
  <div class="dropdown-menu dropdown-menu-right" role="menu" aria-labelledby="navbarDropdown">
87
  {% block visitor_menu %}
88
    {% if request.impersonator %}
Enrico Zini's avatar
Enrico Zini committed
89
    <form class="form-inline" method="POST" action="{% url 'impersonate:impersonate' %}">{% csrf_token %}
90
      <input type="hidden" name="next" value="{{request.build_absolute_uri}}">
91
      <button class="dropdown-item btn btn-link" type="submit"><span class="fa fa-random"></span> (really {{request.impersonator.lookup_key}})</button>
92
    </form>
93
94
95
96
    {% endif %}
    {% if user.is_anonymous %}
      <a class="dropdown-item" href="{% url 'dm_claim' %}">{% trans "claim account" %}</a>
    {% else %}
97
98
      <a class="dropdown-item" href="{{user.get_absolute_url}}"><span class="fa fa-user"></span> {% trans "Personal page" %}</a>
      {% if user.is_am %}
Enrico Zini's avatar
Enrico Zini committed
99
      <a class="dropdown-item" href="{% url 'process_am_dashboard' %}"><span class="fa fa-dashboard"></span> {% trans "AM dashboard" %}</a>
100
      <a class="dropdown-item" href="{% url 'person:amprofile' key=user.lookup_key %}"><span class="fa fa-gear"></span> {% trans "AM profile" %}</a>
101
102
      {% endif %}
    {% endif %}
103
104
105
    <a class="dropdown-item" href="{{user.get_ddpo_url}}"><span class="fa fa-tasks"></span> {% trans "DDPO" %}</a>
    <a class="dropdown-item" href="{{user.get_portfolio_url}}"><span class="fa fa-newspaper-o"></span> {% trans "Portfolio" %}</a>
    {% if user.get_contributors_url %}<a class="dropdown-item" href="{{user.get_contributors_url}}"><span class="fa fa-address-card"></span> {% trans "Contributor" %}</a>{% endif %}
106
    {% if user.is_authenticated %}<a class="dropdown-item" href="{% url 'minechangelogs:search' key=user.lookup_key %}"><span class="fa fa-history"></span> {% trans "Changelogs" %}</a>{% endif %}
107
    {% if user.is_superuser %}<a class="dropdown-item" href="{{user.get_admin_url}}"><span class="fa fa-microchip"></span> {% trans "Admin" %}</a>{% endif %}
108
    {% if user.is_dd %}
Enrico Zini's avatar
Enrico Zini committed
109
      {% if emeritus_link %}<a class="dropdown-item" href="{{emeritus_link}}">{% trans "One click emeritus" %}</a>{% endif %}
110
    {% endif %}
111
    <a class="dropdown-item" href="{% url 'signon:login' %}"><span class="fa fa-sign-in"></span> {% trans "Logins" %}</a>
112
    <form class="form-inline" method="POST" action="{% url "signon:logout" %}">{% csrf_token %}
Enrico Zini's avatar
Enrico Zini committed
113
114
      <button class="btn btn-link dropdown-item" method="submit"><span class="fa fa-sign-out"></span> {% trans "Logout" %}</button>
    </form>
115
116
117
118
119
120
121
122
123
124
125
  {% endblock %}
  </div>
</li>
{% endif %}

{% endblock %}

{% block content %}
<h1>{% trans "Debian NM Website Template" %}</h1>
{% endblock %}

126
127
{% block page_lead %}
{{super}}
128
{% if request.impersonator %}
129
<div id="impersonation" class="container-fluid bg-warning">
130
<span class="badge badge-pill badge-light"><span class="fa fa-random"></span> {{request.impersonator.a_link}} as {{user.a_link}}</span>
Enrico Zini's avatar
Enrico Zini committed
131
<form class="form-inline" method="POST" action="{% url 'impersonate:impersonate' %}">{% csrf_token %}
132
133
134
  <input type="hidden" name="next" value="{{request.build_absolute_uri}}">
  <button class="badge badge-pill badge-primary" type="submit">{% trans "Cancel" %}</button>
</form>
135
136
137
{% for perm in visit_perms %}<span class="badge badge-pill badge-info mr-1">{{perm}}</span>{% endfor %}
</div>
{% endif %}
138

Enrico Zini's avatar
Enrico Zini committed
139
{% comment %}
140
{% if request.signon_identities %}
141
<div id="signon" class="container-fluid bg-info">
142
  {% for name, identity in request.signon_identities.items %}
Enrico Zini's avatar
Enrico Zini committed
143
  <div class="badge badge-pill badge-success">
144
145
146
147
    {% if identity.picture %}<img style="height: 2ex" class="mr-2" src="{{identity.picture}}"></img>{% endif %}
    Logged in with {{identity.get_provider.name}} as <a href="{{identity.profile}}">{{identity.fullname}}</a>
  </div>
  {% endfor %}
148
149
</div>
{% endif %}
Enrico Zini's avatar
Enrico Zini committed
150
{% endcomment %}
151

152
{# {% if messages %} #}
153
<div aria-live="polite" aria-atomic="true" class="position-relative">
154
  <div style="position: absolute; top: 0; right: 0;">
155
    {% with ERROR=DEFAULT_MESSAGE_LEVELS.ERROR %}
156
157
    {% for message in messages %}
    <div class="toast" role="alert" aria-live="assertive" aria-atomic="true">
158
      <div class="toast-header{% if message.level == ERROR %} bg-danger{% endif %}">
159
        <span class={% if message.level == ERROR %}"fa fa-exclamation-circle mr-1"{% else %}"fa fa-info-circle mr-1"{% endif %}></span>
160
161
162
163
164
        <strong class="mr-auto">{{message.level_tag}}</strong>
        <button type="button" class="ml-2 mb-1 close" data-dismiss="toast" aria-label="Close">
          <span aria-hidden="true">&times;</span>
        </button>
      </div>
165
      <div class="toast-body" >
166
167
168
169
        {{message}}
      </div>
    </div>
    {% endfor %}
170
    {% endwith %}
171
172
173
  </div>
</div>
{# {% endif %} #}
174
175
{% endblock %}

176
177
{% block footer %}
<div class="card-body">
Enrico Zini's avatar
Enrico Zini committed
178
{% url 'root_license' as root_license_url %}
179
180
181
182
<p class="card-text"><small>
{% blocktrans with root_license_url=root_license_url %}
<a href="{{root_license_url}}">Copyright</a> © 2012--2020 <a href="https://wiki.debian.org/Teams/FrontDesk">Debian Front Desk</a>.
Source code is <a href="https://salsa.debian.org/nm-team/nm.debian.org">available on Salsa</a>.
Enrico Zini's avatar
Enrico Zini committed
183
Report bugs on <a href="https://salsa.debian.org/nm-team/nm.debian.org/-/issues">Salsa</a> or the <a href="http://bugs.debian.org/nm.debian.org">Debian BTS</a>.
184
{% endblocktrans %}
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
</small>
</p>

{% get_current_language as cur_lang %}
{% get_available_languages as languages %}
{% get_language_info_list for languages as langs %}
<form action="{% url 'set_language' %}" method="post">{% csrf_token %}
<input type="hidden" name="next" value="{{request.path}}" />
<p class="card-text"><small>
{% trans "This page is also available in the following languages:" %}
{% for l in langs %}
<button class="btn btn-link m-0 p-0 border-0 {% if cur_lang == l.code %}current{% endif %}"
    title="{% trans l.name %}" name="language" value="{{l.code}}">{{l.name_local}}</button>{% if not forloop.last %}, {% endif %}
{% endfor %}
</p>
</form>
</div>
{% endblock %}