Aggiornato con i contenuti del remoto al 07/03/2024

This commit is contained in:
Davide Borgonovo
2024-03-07 16:33:26 +01:00
parent 0eed8c8679
commit b8252030a4
156 changed files with 6303 additions and 2655 deletions
File diff suppressed because one or more lines are too long
@@ -0,0 +1,88 @@
{% extends "admin/change_form.html" %}
{% load static admin_interface_tags %}
{% block field_sets %}
{% get_admin_interface_setting "show_fieldsets_as_tabs" as show_fieldsets_as_tabs %}
{% get_admin_interface_setting "show_inlines_as_tabs" as show_inlines_as_tabs %}
{% admin_interface_use_changeform_tabs adminform inline_admin_formsets as admin_interface_use_changeform_tabs %}
{% if not admin_interface_use_changeform_tabs %}
{{ block.super }}
{% else %}
<div id="tabbed-changeform-tabs" class="tabbed-changeform-tabs">
{% if show_fieldsets_as_tabs %}
{% for fieldset in adminform %}
{% with fieldset.name|default_if_none:opts.verbose_name as tab_name %}
<button type="button" id="tablink-{{ tab_name|admin_interface_slugify }}" class="tabbed-changeform-tablink {{ forloop.counter0|default:'active' }}" onclick="AdminInterface.tabbedChangeForm.openTab(event, '{{ tab_name|admin_interface_slugify }}')">
{{ tab_name|capfirst }}
</button>
{% endwith %}
{% endfor %}
{% else %}
{% with opts.verbose_name as tab_name %}
<button type="button" id="tablink-{{ tab_name|admin_interface_slugify }}" class="tabbed-changeform-tablink active" onclick="AdminInterface.tabbedChangeForm.openTab(event, '{{ tab_name|admin_interface_slugify }}')">
{{ tab_name|capfirst }}
</button>
{% endwith %}
{% endif %}
{% if show_inlines_as_tabs %}
{% for inline_admin_formset in inline_admin_formsets %}
{% with inline_admin_formset.opts.verbose_name_plural as tab_name %}
<button type="button" id="tablink-{{ tab_name|admin_interface_slugify }}" class="tabbed-changeform-tablink" onclick="AdminInterface.tabbedChangeForm.openTab(event, '{{ tab_name|admin_interface_slugify }}')">
{{ tab_name|capfirst }}
</button>
{% endwith %}
{% endfor %}
{% endif %}
<span class="tabbed-changeform-tabs-remaining-space"></span>
</div>
{% if show_fieldsets_as_tabs %}
{% for fieldset in adminform %}
{% with fieldset.name|default_if_none:opts.verbose_name as tab_name %}
<div id="tabcontent-{{ tab_name|admin_interface_slugify }}" class="tabbed-changeform-tabcontent {{ forloop.counter0|default:'active' }}">
{% include "admin/includes/headerless_fieldset.html" %}
</div>
{% endwith %}
{% endfor %}
{% else %}
{% with opts.verbose_name as tab_name %}
<div id="tabcontent-{{ tab_name|admin_interface_slugify }}" class="tabbed-changeform-tabcontent active">
{% for fieldset in adminform %}
{% include "admin/includes/fieldset.html" %}
{% endfor %}
</div>
{% endwith %}
{% endif %}
{% for inline_admin_formset in inline_admin_formsets %}
{% with inline_admin_formset.opts.verbose_name_plural as tab_name %}
<div id="tabcontent-{{ tab_name|admin_interface_slugify }}" class="tabbed-changeform-tabcontent">
{% get_admin_interface_inline_template inline_admin_formset.opts.template as inline_template %}
{% include inline_template %}
</div>
{% endwith %}
{% endfor %}
<script id="admin-interface-tabbed-changeform-script" src="{% static 'admin_interface/tabbed-changeform/tabbed-changeform.js' %}"></script>
{% endif %}
{% endblock %}
{% block inline_field_sets %}
{% get_admin_interface_setting "show_inlines_as_tabs" as show_inlines_as_tabs %}
{% if not show_inlines_as_tabs %}
{{ block.super }}
{% endif %}
{% endblock %}
@@ -0,0 +1,33 @@
{% extends "admin/change_list.html" %}
{% load i18n admin_list admin_interface_tags %}
{# copied from django 4.0.7 #}
{% block filters %}
{% if cl.has_filters %}
<div id="changelist-filter">
<h2>{% translate 'Filter' %}</h2>
{% get_admin_interface_active_date_hierarchy cl as active_date_hierarchy %}
{% get_admin_interface_setting "list_filter_removal_links" as list_filter_removal_links %}
{% if cl.has_active_filters %}
{% if list_filter_removal_links %}
{% if active_date_hierarchy %}{% admin_interface_date_hierarchy_removal_link cl active_date_hierarchy %}{% endif %}
{% for spec in cl.filter_specs %}{% admin_interface_filter_removal_link cl spec %}{% endfor %}
<h3 id="changelist-filter-clear">
<a href="{{ cl.clear_all_filters_qs }}">{% translate "Clear all filters" %} &#10006;</a>
</h3>
{% else %}
<h3 id="changelist-filter-clear">
{# Translators: don't translate this, the django catalog already contains it #}
<a href="{{ cl.clear_all_filters_qs }}">&#10006; {% translate "Clear all filters" %}</a>
</h3>
{% endif %}
{% elif active_date_hierarchy and list_filter_removal_links %}
{% admin_interface_date_hierarchy_removal_link cl active_date_hierarchy %}
<h3 id="changelist-filter-clear">
<a href="{{ cl.clear_all_filters_qs }}">{% translate "Clear all filters" %} &#10006;</a>
</h3>
{% endif %}
{% for spec in cl.filter_specs %}{% admin_list_filter cl spec %}{% endfor %}
</div>
{% endif %}
{% endblock %}
@@ -0,0 +1,24 @@
{% load i18n admin_urls %}
<div class="js-inline-admin-formset inline-group"
id="{{ inline_admin_formset.formset.prefix }}-group"
data-inline-type="stacked"
data-inline-formset="{{ inline_admin_formset.inline_formset_data }}">
<fieldset class="module {{ inline_admin_formset.classes }}">
{{ inline_admin_formset.formset.management_form }}
{{ inline_admin_formset.formset.non_form_errors }}
{% for inline_admin_form in inline_admin_formset %}<div class="inline-related{% if inline_admin_form.original or inline_admin_form.show_url %} has_original{% endif %}{% if forloop.last and inline_admin_formset.has_add_permission %} empty-form last-related{% endif %}" id="{{ inline_admin_formset.formset.prefix }}-{% if forloop.last and inline_admin_formset.has_add_permission %}empty{% else %}{{ forloop.counter0 }}{% endif %}">
<h3><b>{{ inline_admin_formset.opts.verbose_name|capfirst }}:</b> <span class="inline_label">{% if inline_admin_form.original %}{{ inline_admin_form.original }}{% if inline_admin_form.model_admin.show_change_link and inline_admin_form.model_admin.has_registered_model %} <a href="{% url inline_admin_form.model_admin.opts|admin_urlname:'change' inline_admin_form.original.pk|admin_urlquote %}" class="{{ inline_admin_formset.has_change_permission|yesno:'inlinechangelink,inlineviewlink' }}">{% if inline_admin_formset.has_change_permission %}{% translate "Change" %}{% else %}{% translate "View" %}{% endif %}</a>{% endif %}
{% else %}#{{ forloop.counter }}{% endif %}</span>
{% if inline_admin_form.show_url %}<a href="{{ inline_admin_form.absolute_url }}">{% translate "View on site" %}</a>{% endif %}
{% if inline_admin_formset.formset.can_delete and inline_admin_formset.has_delete_permission and inline_admin_form.original %}<span class="delete">{{ inline_admin_form.deletion_field.field }} {{ inline_admin_form.deletion_field.label_tag }}</span>{% endif %}
</h3>
{% if inline_admin_form.form.non_field_errors %}{{ inline_admin_form.form.non_field_errors }}{% endif %}
{% for fieldset in inline_admin_form %}
{% include "admin/includes/fieldset.html" %}
{% endfor %}
{% if inline_admin_form.needs_explicit_pk_field %}{{ inline_admin_form.pk_field.field }}{% endif %}
{% if inline_admin_form.fk_field %}{{ inline_admin_form.fk_field.field }}{% endif %}
</div>{% endfor %}
</fieldset>
</div>
@@ -0,0 +1,61 @@
{% load i18n admin_urls static admin_modify %}
<div class="js-inline-admin-formset inline-group" id="{{ inline_admin_formset.formset.prefix }}-group"
data-inline-type="tabular"
data-inline-formset="{{ inline_admin_formset.inline_formset_data }}">
<div class="tabular inline-related {% if forloop.last %}last-related{% endif %}">
{{ inline_admin_formset.formset.management_form }}
<fieldset class="module {{ inline_admin_formset.classes }}">
{{ inline_admin_formset.formset.non_form_errors }}
<table>
<thead><tr>
<th class="original"></th>
{% for field in inline_admin_formset.fields %}
<th class="column-{{ field.name }}{% if field.required %} required{% endif %}{% if field.widget.is_hidden %} hidden{% endif %}">{{ field.label|capfirst }}
{% if field.help_text %}<img src="{% static "admin/img/icon-unknown.svg" %}" class="help help-tooltip" width="10" height="10" alt="({{ field.help_text|striptags }})" title="{{ field.help_text|striptags }}">{% endif %}
</th>
{% endfor %}
{% if inline_admin_formset.formset.can_delete and inline_admin_formset.has_delete_permission %}<th>{% translate "Delete?" %}</th>{% endif %}
</tr></thead>
<tbody>
{% for inline_admin_form in inline_admin_formset %}
{% if inline_admin_form.form.non_field_errors %}
<tr class="row-form-errors"><td colspan="{{ inline_admin_form|cell_count }}">{{ inline_admin_form.form.non_field_errors }}</td></tr>
{% endif %}
<tr class="form-row {% if inline_admin_form.original or inline_admin_form.show_url %}has_original{% endif %}{% if forloop.last and inline_admin_formset.has_add_permission %} empty-form{% endif %}"
id="{{ inline_admin_formset.formset.prefix }}-{% if forloop.last and inline_admin_formset.has_add_permission %}empty{% else %}{{ forloop.counter0 }}{% endif %}">
<td class="original">
{% if inline_admin_form.original or inline_admin_form.show_url %}<p>
{% if inline_admin_form.original %}
{{ inline_admin_form.original }}
{% if inline_admin_form.model_admin.show_change_link and inline_admin_form.model_admin.has_registered_model %}<a href="{% url inline_admin_form.model_admin.opts|admin_urlname:'change' inline_admin_form.original.pk|admin_urlquote %}" class="{{ inline_admin_formset.has_change_permission|yesno:'inlinechangelink,inlineviewlink' }}">{% if inline_admin_formset.has_change_permission %}{% translate "Change" %}{% else %}{% translate "View" %}{% endif %}</a>{% endif %}
{% endif %}
{% if inline_admin_form.show_url %}<a href="{{ inline_admin_form.absolute_url }}">{% translate "View on site" %}</a>{% endif %}
</p>{% endif %}
{% if inline_admin_form.needs_explicit_pk_field %}{{ inline_admin_form.pk_field.field }}{% endif %}
{% if inline_admin_form.fk_field %}{{ inline_admin_form.fk_field.field }}{% endif %}
</td>
{% for fieldset in inline_admin_form %}
{% for line in fieldset %}
{% for field in line %}
<td class="{% if field.field.name %}field-{{ field.field.name }}{% endif %}{% if field.field.is_hidden %} hidden{% endif %}">
{% if field.is_readonly %}
<p>{{ field.contents }}</p>
{% else %}
{{ field.field.errors.as_ul }}
{{ field.field }}
{% endif %}
</td>
{% endfor %}
{% endfor %}
{% endfor %}
{% if inline_admin_formset.formset.can_delete and inline_admin_formset.has_delete_permission %}
<td class="delete">{% if inline_admin_form.original %}{{ inline_admin_form.deletion_field.field }}{% endif %}</td>
{% endif %}
</tr>
{% endfor %}
</tbody>
</table>
</fieldset>
</div>
</div>
+3 -4
View File
@@ -8,10 +8,10 @@
{% else %}
{# Use the default list filter template -> https://github.com/django/django/blob/master/django/contrib/admin/templates/admin/filter.html #}
{# Use a changed default list filter template -> https://github.com/django/django/blob/master/django/contrib/admin/templates/admin/filter.html #}
<h3>{% blocktrans with filter_title=title %} By {{ filter_title }} {% endblocktrans %}</h3>
<ul>
<h3 {% if spec.lookup_val or spec.value %}class="active"{% endif %}>{% blocktrans with filter_title=title %} By {{ filter_title }} {% endblocktrans %}</h3>
<ul {% if spec.lookup_val or spec.value %}class="active"{% endif %}>
{% for choice in choices %}
<li{% if choice.selected %} class="selected"{% endif %}>
<a href="{{ choice.query_string|iriencode }}">{{ choice.display }}</a></li>
@@ -19,4 +19,3 @@
</ul>
{% endif %}
@@ -0,0 +1,30 @@
<fieldset class="module aligned {{ fieldset.classes }}">
{% if fieldset.description %}
<div class="description">{{ fieldset.description|safe }}</div>
{% endif %}
{% for line in fieldset %}
<div class="form-row{% if line.fields|length == 1 and line.errors %} errors{% endif %}{% if not line.has_visible_field %} hidden{% endif %}{% for field in line %}{% if field.field.name %} field-{{ field.field.name }}{% endif %}{% endfor %}">
{% if line.fields|length == 1 %}{{ line.errors }}{% endif %}
{% for field in line %}
<div{% if not line.fields|length == 1 %} class="fieldBox{% if field.field.name %} field-{{ field.field.name }}{% endif %}{% if not field.is_readonly and field.errors %} errors{% endif %}{% if field.field.is_hidden %} hidden{% endif %}"{% elif field.is_checkbox %} class="checkbox-row"{% endif %}>
{% if not line.fields|length == 1 and not field.is_readonly %}{{ field.errors }}{% endif %}
{% if field.is_checkbox %}
{{ field.field }}{{ field.label_tag }}
{% else %}
{{ field.label_tag }}
{% if field.is_readonly %}
<div class="readonly">{{ field.contents }}</div>
{% else %}
{{ field.field }}
{% endif %}
{% endif %}
</div>
{% if field.field.help_text %}
<div class="help"{% if field.field.id_for_label %} id="{{ field.field.id_for_label }}_helptext"{% endif %}>
{{ field.field.help_text|safe }}
</div>
{% endif %}
{% endfor %}
</div>
{% endfor %}
</fieldset>
@@ -2,8 +2,7 @@
<html>
<head><title>{% trans 'Popup closing...' %}</title></head>
<body>
<script type="text/javascript"
id="django-admin-popup-response-constants"
<script id="django-admin-popup-response-constants"
src="{% static "admin/js/popup_response.js" %}"
{% if popup_response_data %}
data-popup-response="{{ popup_response_data }}"
@@ -12,4 +11,4 @@
{% endif %}>
</script>
</body>
</html>
</html>
@@ -0,0 +1,5 @@
{% load static %}
{% if theme.collapsible_stacked_inlines or theme.collapsible_tabular_inlines %}
<script src="{% static 'admin_interface/collapsible-inlines/collapsible-inlines.js' %}?nocache={{ version_md5_cache }}"></script>
{% endif %}
@@ -1,582 +0,0 @@
.admin-interface {
overflow-x: hidden;
}
/* fix login */
.admin-interface.login #container {
width: 100%;
max-width: 360px;
margin: 15px auto;
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
}
.admin-interface.login #content {
padding: 15px 30px 30px 30px;
}
@media (min-width:768px){
.admin-interface.login #container {
margin: 90px auto;
}
}
.admin-interface.login #header {
min-height: auto;
padding: 10px 30px;
line-height: 30px;
align-items: center;
justify-content: flex-start;
}
.admin-interface.login #header #branding h1 {
margin-right:0;
}
.admin-interface.login #header #branding h1 img.logo {
margin-right: 0;
}
.admin-interface.login #header #branding h1 img.logo+span {
display: block;
}
.admin-interface.login #login-form {
display: flex;
flex-direction: column;
}
.admin-interface.login .submit-row {
float: left;
width: 100%;
margin-top: 20px;
padding-top: 0;
padding-left: 0;
text-align: right;
}
.admin-interface.login .submit-row label {
display: none;
}
.admin-interface.login .submit-row input[type="submit"] {
width: 100%;
text-transform: uppercase;
}
.admin-interface.login #footer {
display: none;
}
/* end login fix*/
.admin-interface #header {
height: auto;
min-height: 55px;
box-sizing: border-box;
display: flex;
justify-content: space-between;
align-items: center;
}
@media (max-width:1024px) {
.admin-interface #header {
align-items: start;
}
}
.admin-interface #branding h1 img.logo {
margin-top:10px;
margin-bottom:10px;
margin-right:15px;
display:inline-block !important; /* override inline display:none; */
}
.admin-interface #branding h1 span {
display: inline-block;
}
.admin-interface #branding h1 img.logo+span {
white-space:nowrap;
}
.admin-interface #user-tools {
margin-top: 10px;
margin-bottom: 10px;
white-space: normal;
align-self: flex-start;
}
.admin-interface #user-tools br {
display: none;
}
@media (max-width: 768px) {
.admin-interface #user-tools br {
display: block;
}
}
.admin-interface fieldset.collapse {
border: 1px solid transparent;
}
.admin-interface fieldset.collapse.collapsed a.collapse-toggle,
.admin-interface fieldset.collapse a.collapse-toggle {
font-weight: normal;
text-transform: lowercase;
font-size: 12px;
text-decoration: underline;
padding: 0 1px;
}
@media (min-width: 1024px) {
.admin-interface #changelist .actions .button,
.admin-interface #changelist .actions .action-counter {
margin-left: 8px;
}
}
.admin-interface #changelist .paginator {
margin-top:-1px; /* merge 2 borders into 1 */
line-height:42px;
}
.admin-interface .paginator a,
.admin-interface .paginator a:link,
.admin-interface .paginator a:visited,
.admin-interface .paginator .this-page {
padding:7px 12px;
}
.admin-interface .paginator a,
.admin-interface .paginator .this-page {
margin-left:0px;
}
.admin-interface .paginator .this-page,
.admin-interface .paginator a.end {
margin-right:25px;
}
.admin-interface .paginator .this-page + a:not(.showall) {
margin-left:-25px;
}
body.admin-interface .paginator a.showall,
body.admin-interface .paginator a.showall:link,
body.admin-interface .paginator a.showall:visited {
margin-left:20px;
}
/* fix help text icon on newline */
.admin-interface .inline-group thead th {
white-space:nowrap;
}
.admin-interface .inline-group thead th img {
vertical-align: -2px;
margin-left: 5px;
}
.admin-interface .inline-group .inlinechangelink {
background-size: contain;
padding-left: 15px;
margin-left: 10px;
}
.admin-interface .file-thumbnail > a {
display: inline-block;
}
.admin-interface .aligned p.file-upload {
display:table;
}
.admin-interface form .form-row p.file-upload > a {
margin-right:20px;
}
.admin-interface form .form-row p.file-upload .clearable-file-input {
display:inline-block;
}
.admin-interface form .form-row p.file-upload .clearable-file-input label {
padding-bottom:0px;
margin-left:2px;
}
.admin-interface form .form-row p.file-upload > input[type="file"] {
margin-top: 0px;
}
@media (max-width:767px){
.admin-interface form .form-row p.file-upload {
width: 100%;
}
.admin-interface form .form-row p.file-upload > a {
margin-right:0px;
display: block;
white-space: pre-wrap;
word-break: break-word;
}
.admin-interface form .form-row p.file-upload .clearable-file-input {
display: block;
margin-top: 10px;
margin-left: 0;
margin-bottom: -10px;
}
.admin-interface form .form-row p.file-upload > input[type="file"] {
display: block;
width: auto;
padding: 0px;
}
/* fix inline horizontal scroll caused by checkbox-row */
.admin-interface form .form-row > div.checkbox-row {
width: 100%;
}
}
/* FIX WIDE FIELDSET HELPS / ERROR MESSAGES */
.admin-interface form .wide p.help,
.admin-interface form .wide div.help {
padding-left: 50px;
}
.admin-interface form .wide input + p.help,
.admin-interface form .wide input + div.help {
margin-left: 160px;
}
@media (max-width:767px){
.admin-interface form .form-row div.help {
display: block;
width: 100%;
}
}
.admin-interface form .wide ul.errorlist {
margin-left: 200px;
}
/* LIST FILTER */
.admin-interface .module.filtered h2 {
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
}
.admin-interface .module.filtered #changelist-filter {
min-width: 240px;
}
@media (max-width: 1024px) {
.admin-interface .module.filtered #changelist-filter {
min-width: 200px;
}
}
.admin-interface .module.filtered #changelist-filter h2 {
font-size: 11px;
padding: 10px 15px;
}
/* begin fix issue #13 - Datetime widget broken in long inlines */
.admin-interface p.datetime {
white-space:nowrap;
}
/* end fix */
/* begin fix lateral padding to align text with field labels */
.admin-interface .module h2,
.admin-interface.dashboard .module caption,
.admin-interface.dashboard .module th,
.admin-interface .module.filtered h2,
.admin-interface .inline-group h2,
.admin-interface #nav-sidebar .module caption,
.admin-interface #nav-sidebar .module th {
padding-left: 10px;
padding-right: 10px;
}
/* end fix */
/* begin fix restrict tabular-inline horizontal-scroll to inline-group instead of whole page */
.admin-interface .inline-group[data-inline-type="tabular"] {
overflow-x:auto;
}
/* end fix */
/* begin fix stacked-inline margin-bottom in responsive small viewport */
.admin-interface .inline-group[data-inline-type="stacked"] .module {
margin-bottom:0px;
}
/* end fix */
/* begin fix tabular inlines horizontal scroll */
.admin-interface .inline-related.tabular {
overflow-x: scroll;
overflow-y: hidden;
}
.admin-interface .inline-related.tabular fieldset.module {
display: contents;
width: 100%;
white-space: nowrap;
position: relative;
}
.admin-interface .inline-related.tabular fieldset.module h2 {
position: sticky;
left: 0;
}
.admin-interface .inline-related.tabular fieldset.module table tbody tr {
position: relative;
}
/* end fix */
.admin-interface .inline-related h3 {
padding:6px 10px;
}
/* begin fix issue #12 - Inlines bad delete buttons alignement */
.admin-interface .inline-group .tabular thead th:last-child:not([class]):not([style]) {
text-align:right;
}
.admin-interface .inline-group .tabular tr td {
vertical-align: top;
}
.admin-interface .inline-group .tabular tr td.delete {
text-align:right;
padding-right:15px;
vertical-align: top;
}
.admin-interface .inline-group .tabular tr td input[type="checkbox"] {
margin: 7px 0px;
}
.admin-interface .inline-group .tabular tr td.delete a.inline-deletelink {
margin-top:4px;
overflow:hidden;
text-indent:9999px;
}
/* end fix */
/* top-right buttons color on hover -> just a lighten grey */
.admin-interface .object-tools a {
color:#FFFFFF;
}
.admin-interface .object-tools a:focus,
.admin-interface .object-tools a:hover,
.admin-interface .object-tools li:focus a,
.admin-interface .object-tools li:hover a {
background-color:#AAAAAA;
}
/* improve responsive selector */
/* fix [stacked, not-stacked] equalize horizontal and vertical select padding for selector */
.admin-interface .selector .selector-available select,
.admin-interface .selector .selector-chosen select {
padding: 7px 10px;
display: block;
}
/* fix [stacked, not-stacked] select options text overflow */
.admin-interface .selector .selector-available select option,
.admin-interface .selector .selector-chosen select option {
overflow: hidden;
text-overflow: ellipsis;
}
/* fix [not-stacked] equalize selectors height by adding the height of the .selector-available filter-bar */
.admin-interface .selector:not(.stacked) .selector-chosen select {
height: calc(46px + 17.2em) !important;
}
/* fix nav-sidebar (added in django 3.1.0) */
.admin-interface #toggle-nav-sidebar {
top: 10px;
left: 0;
z-index: 20;
flex: 0 0 30px;
width: 30px;
height: 45px;
margin-top: 10px;
margin-right: 10px;
background-color: #FFFFFF;
font-size: 16px;
border: 1px solid #eaeaea;
border-left: none;
outline: none;
-webkit-box-shadow: 4px 2px 8px -4px #DBDBDB;
-moz-box-shadow: 4px 2px 8px -4px #DBDBDB;
box-shadow: 4px 2px 8px -4px #DBDBDB;
/*transition: left .3s;*/
}
.admin-interface .toggle-nav-sidebar::before {
margin-top: -2px;
}
.admin-interface .main > #nav-sidebar + .content,
.admin-interface .main.shifted > #nav-sidebar + .content {
max-width: 100%;
}
/* hide nav-sidebar below 1280px to prevent horizontal overflow issues */
@media (max-width:1279px) {
.admin-interface #nav-sidebar,
.admin-interface #toggle-nav-sidebar {
display: none;
}
}
.admin-interface #nav-sidebar {
flex: 0 0 320px;
left: -320px;
margin-left: -360px;
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
padding: 40px 40px 40px 0px;
border-top: none;
border-bottom: none;
border-left: none;
/*transition: left .3s, margin-left .3s;*/
}
@media (min-width:1280px) {
.admin-interface #main.shifted > #toggle-nav-sidebar {
left: 359px;
}
.admin-interface #main.shifted > #nav-sidebar {
left: 0px;
margin-left: 0;
}
.admin-interface #main:not(.shifted) > .content {
max-width: 100%;
}
.admin-interface.change-list:not(.popup) #main.shifted > #nav-sidebar + .content,
.admin-interface.change-form:not(.popup) #main.shifted > #nav-sidebar + .content {
max-width: calc(100% - 360px);
}
}
/* fixed related widget and select2 */
/* begin fix issue #10 - Related widget broken in long tabular inline */
.admin-interface .related-widget-wrapper {
white-space: nowrap;
}
/* end fix */
.admin-interface .related-widget-wrapper select + .related-widget-wrapper-link,
.admin-interface .related-widget-wrapper .select2-container + .related-widget-wrapper-link {
margin-left: 12px !important;
}
@media (min-width: 768px) {
.admin-interface.change-form select {
min-width: 150px;
}
}
@media (min-width: 1024px) {
.admin-interface.change-form select {
min-width: 200px;
}
}
.admin-interface.change-form .inline-related.tabular select {
min-width: auto !important;
}
/* fixed time widget header border radius */
.admin-interface .clockbox.module h2 {
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
}
/* fix searchbar overriden padding */
.admin-interface #changelist #changelist-search #searchbar {
padding: 2px 5px 3px 5px;
}
@media (min-width: 1024px) {
.admin-interface #changelist #changelist-search #searchbar,
.admin-interface #changelist #changelist-search input[type="submit"],
.admin-interface #changelist #changelist-search .quiet {
margin-left: 8px;
}
.admin-interface #changelist #changelist-search label img {
vertical-align: text-top;
margin-right: 0px;
}
}
@media (max-width: 1024px) {
.admin-interface #changelist #toolbar {
border-top: 1px solid #eee;
border-bottom: 1px solid #eee;
}
/* fixed changelist search size when there are search results and .quiet is visible */
.admin-interface #changelist-search label img {
margin-top: 2px;
}
.admin-interface #changelist-search .quiet {
margin: 0 0 0 10px;
align-self: center;
flex-basis: content;
}
}
@media (max-width: 767px) {
/* fixed responsive widgets */
.admin-interface .aligned.collapsed .form-row {
display: none;
}
.admin-interface .aligned .form-row > div {
display: flex;
max-width: 100vw;
flex-direction: column;
align-items: flex-start;
}
.admin-interface .aligned .form-row .help {
margin-left: 0;
}
.admin-interface .aligned .form-row .checkbox-row label {
margin: 10px 0 0 0;
padding: 0;
}
.admin-interface .aligned .form-row input[type="file"],
.admin-interface .aligned .form-row input[type="text"],
.admin-interface .aligned .form-row input[type="email"] {
width: 100%;
}
/* fix textarea horizontal scroll on Firefox */
.admin-interface .aligned .form-row textarea {
width: 100% !important;
flex: 0 1 auto;
}
.admin-interface .aligned .form-row .datetime input[type="text"] {
width: 50%;
}
.admin-interface .aligned .form-row span + .file-upload {
margin-top: 10px;
}
.admin-interface .aligned .form-row .file-upload input[type="file"] {
margin-top: 5px;
}
}
File diff suppressed because one or more lines are too long
@@ -1,126 +0,0 @@
/*
ckeditor + light theme
https://github.com/Ikimea/ckeditor-light-theme
*/
.admin-interface .cke {
border: none;
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
}
.admin-interface .cke_inner,
.admin-interface .cke_wysiwyg_frame {
border-top-left-radius: 4px;
border-top-right-radius: 4px;
border-bottom-left-radius: 4px;
border-bottom-right-radius: 4px;
}
.admin-interface .cke_inner {
border: 1px solid #CCCCCC;
}
.admin-interface .cke_chrome {
-moz-box-shadow: none;
-webkit-box-shadow: none;
box-shadow: none;
}
.admin-interface .cke_top {
background: #f8f8f8;
border-top: none;
border-top-left-radius: 4px;
border-top-right-radius: 4px;
border-bottom: 1px solid #EEEEEE;
padding-left: 10px;
padding-right: 10px;
-moz-box-shadow: none;
-webkit-box-shadow: none;
box-shadow: none;
}
.admin-interface .cke_toolgroup {
background: none;
-moz-box-shadow: none;
-webkit-box-shadow: none;
box-shadow: none;
}
.admin-interface .cke_bottom {
background: #f8f8f8;
border-top: 1px solid #EEEEEE;
border-bottom-left-radius: 4px;
border-bottom-right-radius: 4px;
-moz-box-shadow: none;
-webkit-box-shadow: none;
box-shadow: none;
}
.admin-interface .cke_source {
padding: 13px 15px;
box-sizing: border-box;
}
.admin-interface a.cke_button,
.admin-interface a.cke_button:active,
.admin-interface a.cke_button:hover,
.admin-interface a.cke_button:focus {
box-shadow: none;
-moz-box-shadow: none;
-webkit-box-shadow: none;
background-image: none;
border-radius: 4px;
border: none;
}
.admin-interface a.cke_button:active,
.admin-interface a.cke_button:hover,
.admin-interface a.cke_button:focus {
background-color: #E8E8E8 !important;
}
.admin-interface a.cke_button.cke_button_on {
background-color: #CCCCCC !important;
}
.admin-interface a.cke_button.cke_button_disabled {
background-color: transparent !important;
}
.admin-interface .cke_resizer {
border-color: transparent #666666 transparent transparent;
}
@media (max-width: 767px){
.admin-interface .django-ckeditor-widget,
.admin-interface .cke {
width: 100% !important;
}
.admin-interface .cke_top {
padding-left: 10px;
padding-right: 10px;
}
.admin-interface .cke_toolbar {
height: auto;
}
.admin-interface .cke_contents {
height: auto;
}
.admin-interface .tabular .django-ckeditor-widget,
.admin-interface .tabular .cke {
width: 400px !important;
}
.admin-interface .tabular .cke_contents {
height: 90px !important;
}
}
@@ -1,95 +0,0 @@
/* sticky pagination */
.admin-interface.sticky-pagination.change-list #content-main {
padding-bottom: 4.375rem;
}
.admin-interface.sticky-pagination.change-list .paginator {
width: 100%;
position: fixed;
bottom: 0;
right: 0;
z-index: 40;
box-sizing: border-box;
padding-left: 15px;
padding-right: 15px;
white-space: nowrap;
text-overflow: ellipsis;
border-radius: 0;
border-top: 1px solid #EEEEEE;
border-bottom: none;
margin: 0;
}
.admin-interface.sticky-pagination.change-list.popup .paginator {
padding-left: 20px;
padding-right: 20px;
}
@media (min-width:768px) {
.admin-interface.sticky-pagination.change-list:not(.popup) .paginator {
padding-left: 30px;
padding-right: 30px;
}
}
@media (min-width:1024px) {
.admin-interface.sticky-pagination.change-list:not(.popup) .paginator {
padding-left: 40px;
padding-right: 40px;
}
}
@media (min-width:1280px) {
.admin-interface.sticky-pagination.change-list:not(.popup) #main.shifted > #nav-sidebar + .content .paginator {
width: calc(100% - 360px);
}
}
/* sticky submit */
@media (min-width:768px) {
.admin-interface.sticky-submit.change-form #content-main {
padding-bottom: 4.375rem;
}
.admin-interface.sticky-submit.change-form .submit-row:last-of-type {
width: 100%;
position: fixed;
bottom: 0;
right: 0;
z-index: 40;
box-sizing: border-box;
padding-left: 15px;
padding-right: 15px;
white-space: nowrap;
text-overflow: ellipsis;
border-radius: 0;
border-top: 1px solid #EEEEEE;
border-bottom: none !important;
margin: 0;
}
.admin-interface.sticky-submit.change-form.popup .submit-row:last-of-type {
padding-left: 20px;
padding-right: 20px;
}
.admin-interface.sticky-submit.change-form:not(.popup) .submit-row:last-of-type {
padding-left: 30px;
padding-right: 30px;
}
}
@media (min-width:1024px) {
.admin-interface.sticky-submit.change-form:not(.popup) .submit-row:last-of-type {
padding-left: 40px;
padding-right: 40px;
}
}
@media (min-width:1280px) {
.admin-interface.sticky-submit.change-form:not(.popup) #main.shifted > #nav-sidebar + .content .submit-row:last-of-type {
width: calc(100% - 359px);
}
}
@@ -1,144 +0,0 @@
/*
* jQuery UI CSS Framework
* Copyright (c) 2010 AUTHORS.txt (http://jqueryui.com/about)
* Dual licensed under the MIT (MIT-LICENSE.txt) and GPL (GPL-LICENSE.txt) licenses.
* http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.2/themes/base/jquery.ui.core.css
*/
/*
backward compatibility:
.ui-tabs-selected: jquery ui < 1.10
.ui-tabs-active classes jquery ui >= 1.10
*/
/* Layout helpers
----------------------------------*/
.ui-helper-hidden { display: none; }
.ui-helper-hidden-accessible { position: absolute; left: -99999999px; }
.ui-helper-reset { margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none; }
.ui-helper-clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
.ui-helper-clearfix { display: inline-block; }
/* required comment for clearfix to work in Opera \*/
* html .ui-helper-clearfix { height:1%; }
.ui-helper-clearfix { display:block; }
.ui-helper-zfix { width: 100%; height: 100%; top: 0; left: 0; position: absolute; opacity: 0; filter:Alpha(Opacity=0); }
.ui-state-disabled { cursor: default !important; }
.ui-icon { display: block; text-indent: -99999px; overflow: hidden; background-repeat: no-repeat; }
/* http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.2/themes/base/jquery.ui.tabs.css */
.ui-widget-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.ui-tabs { position: relative; padding: .2em; zoom: 1; } /* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */
.ui-tabs .ui-tabs-nav { margin: 0; padding: .2em .2em 0; }
.ui-tabs .ui-tabs-nav li { list-style: none; float: left; position: relative; top: 1px; margin: 0 .2em 1px 0; border-bottom: 0 !important; padding: 0; white-space: nowrap; }
.ui-tabs .ui-tabs-nav li a { float: left; padding: .5em 1em; text-decoration: none; }
.ui-tabs .ui-tabs-nav li.ui-tabs-active, .ui-tabs .ui-tabs-nav li.ui-tabs-selected { margin-bottom: 0; padding-bottom: 1px; }
.ui-tabs .ui-tabs-nav li.ui-tabs-active a, .ui-tabs .ui-tabs-nav li.ui-tabs-selected a, .ui-tabs .ui-tabs-nav li.ui-state-disabled a, .ui-tabs .ui-tabs-nav li.ui-state-processing a { cursor: text; }
.ui-tabs .ui-tabs-nav li a, .ui-tabs.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-selected a { cursor: pointer; } /* first selector in group seems obsolete, but required to overcome bug in Opera applying cursor: text overall if defined elsewhere... */
.ui-tabs .ui-tabs-panel { display: block; border-width: 0; padding: 1em 1.4em; background: none; }
.ui-tabs .ui-tabs-hide {
position: absolute;
display: none;
}
/* Custom tabs theme */
.admin-interface .ui-tabs {
padding: 0;
}
.admin-interface .ui-tabs,
.admin-interface .ui-tabs .ui-widget-header,
.admin-interface .ui-tabs .ui-widget-header .ui-state-default {
border: none;
background: transparent;
}
.admin-interface .ui-tabs .ui-tabs-nav {
padding: 10px 0 0 10px;
border-bottom: none;
}
.admin-interface .ui-tabs .ui-tabs-nav li {
margin: 0 0 0 -1px;
}
.admin-interface .ui-tabs .ui-tabs-nav li.required {
font-weight: bold;
}
.admin-interface .ui-tabs .ui-tabs-nav li a {
border: 1px solid #eeeeee;
background-color: #f8f8f8;
border-bottom: none;
color: #666666;
padding: 7px 14px 8px 14px;
margin-top: 1px;
-moz-border-radius-topright: 4px;
-webkit-border-top-right-radius: 4px;
-moz-border-radius-topleft: 4px;
-webkit-border-top-left-radius: 4px;
border-top-left-radius: 4px;
border-top-right-radius: 4px;
font-size: 12px;
text-transform: uppercase;
outline: none;
}
.admin-interface .ui-tabs .ui-tabs-nav li.ui-tabs-active a,
.admin-interface .ui-tabs .ui-tabs-nav li.ui-tabs-selected a {
padding: 8px 14px 8px 14px;
margin-top: 0px;
margin-bottom: -1px;
font-weight: bold;
background-color: #FFFFFF;
color: {{ theme.css_module_background_color }};
border-bottom: 1px solid #FFFFFF;
}
.admin-interface .ui-tabs .ui-tabs-panel {
border: 1px solid #eeeeee;
border-radius: 4px;
padding: 10px;
margin-bottom: 30px;
overflow: hidden;
}
.admin-interface .inline-group .tabular .ui-tabs .ui-tabs-panel {
padding: 8px;
}
.admin-interface .inline-group .tabular .ui-tabs .ui-tabs-nav {
padding-left: 4px;
}
.admin-interface .inline-group .tabular tr td {
vertical-align: bottom;
}
.admin-interface .inline-group .tabular tr.has_original td.original,
.admin-interface .inline-group .tabular tr td.delete {
vertical-align: top;
}
.admin-interface .inline-group .tabular .datetime > input {
margin-right: 5px;
}
.admin-interface .inline-group .tabular .datetime br {
display: none;
}
.admin-interface #changelist .row1:not(.selected):hover,
.admin-interface #changelist .row2:not(.selected):hover {
background: #f9f9f9;
}
.admin-interface .row2 {
background: #fcfcfc;
}
.admin-interface .row2 .ui-tabs .ui-tabs-nav li a {
background-color: #f5f5f5;
border: 1px solid #ebebeb;
}
.admin-interface .row2 .ui-tabs .ui-tabs-nav li.ui-tabs-active a,
.admin-interface .row2 .ui-tabs .ui-tabs-nav li.ui-tabs-selected a {
background-color: #fcfcfc;
border-bottom: 1px solid #fcfcfc;
}
@@ -1,29 +0,0 @@
/*
django-json-widget support
https://github.com/jmrivas86/django-json-widget
*/
.admin-interface div.jsoneditor {
border: 1px solid {{ theme.css_module_background_color }};
{% if theme.css_module_rounded_corners %}
border-radius: 4px;
overflow: hidden;
{% endif %}
}
.admin-interface div.jsoneditor-menu {
background-color: {{ theme.css_module_background_color }};
border-bottom: 1px solid {{ theme.css_module_background_color }};
}
.admin-interface div.jsoneditor-menu a.jsoneditor-poweredBy {
color: {{ theme.css_module_link_color }};
}
.admin-interface div.jsoneditor-contextmenu ul li button.jsoneditor-selected,
.admin-interface div.jsoneditor-contextmenu ul li button.jsoneditor-selected:focus,
.admin-interface div.jsoneditor-contextmenu ul li button.jsoneditor-selected:hover {
background-color: {{ theme.css_module_background_selected_color }};
color: #000000;
font-weight: bold;
}
@@ -1,14 +0,0 @@
/*
list-filter-dropdown
*/
.admin-interface .list-filter-dropdown {
margin-top:10px;
margin-bottom:20px;
}
.admin-interface .list-filter-dropdown select {
background-color: #FFFFFF;
width: calc(100% - 30px);
margin-right: 15px;
}
@@ -1,17 +0,0 @@
/*
django-modeltranslation support
https://github.com/deschler/django-modeltranslation
*/
.admin-interface #content h1 select {
text-transform: uppercase;
margin-left: 15px;
min-width: 50px;
}
.admin-interface .ui-tabs .ui-tabs-panel[id^=tab_id_] {
border: none;
border-top: 1px solid #eeeeee;
padding: 0;
margin-bottom: 0;
}
@@ -1,9 +0,0 @@
{% if not theme.recent_actions_visible %}
.admin-interface.dashboard #content {
max-width:600px;
margin-right:0;
}
.admin-interface.dashboard #content #recent-actions-module {
display:none;
}
{% endif %}
@@ -1,84 +0,0 @@
/*
related modal + magnific popup customization
https://github.com/dimsemenov/Magnific-Popup
*/
.admin-interface .related-modal.mfp-bg {
background-color: {{ theme.related_modal_background_color }};
opacity: {{ theme.related_modal_background_opacity }};
}
.admin-interface .related-modal .mfp-content {
height: 100%;
-webkit-box-shadow: 0px 5px 30px 0px rgba(0,0,0,0.2);
-moz-box-shadow: 0px 5px 30px 0px rgba(0,0,0,0.2);
box-shadow: 0px 5px 30px 0px rgba(0,0,0,0.2);
}
.admin-interface .related-modal .mfp-container {
padding: 80px 80px 80px 80px;
}
.admin-interface .related-modal__nested .mfp-container {
padding: 40px 80px 40px 80px;
}
@media (max-width:640px){
.admin-interface .related-modal .mfp-container {
padding: 80px 20px 80px 20px;
}
.admin-interface .related-modal__nested .mfp-container {
padding: 40px 40px 40px 40px;
}
}
@media (max-height:640px){
.admin-interface .related-modal .mfp-container {
padding-top: 20px;
padding-bottom: 20px;
}
.admin-interface .related-modal__nested .mfp-container {
padding: 40px 40px 40px 40px;
}
}
.admin-interface .related-modal .related-modal-iframe-container {
display: block;
width: 100%;
height: 100%;
position: relative;
z-index: 100;
overflow: hidden;
{% if theme.related_modal_rounded_corners %}
border-radius: 4px;
{% endif %}
}
.admin-interface .related-modal #related-modal-iframe {
width: 100%;
height: 100%;
background-color: #FFFFFF;
background-repeat: no-repeat;
background-position: center center;
background-size: 30px 30px;
background-image: url("data:image/svg+xml;utf8,<?xml version='1.0' encoding='utf-8'?><svg width='30px' height='30px' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' preserveAspectRatio='xMidYMid' class='uil-ring-alt'><rect x='0' y='0' width='100' height='100' fill='none' class='bk'></rect><circle cx='50' cy='50' r='40' stroke='%23eeeeee' fill='none' stroke-width='6' stroke-linecap='round'></circle><circle cx='50' cy='50' r='40' stroke='%23aaaaaa' fill='none' stroke-width='6' stroke-linecap='round'><animate attributeName='stroke-dashoffset' dur='2s' repeatCount='indefinite' from='0' to='500'></animate><animate attributeName='stroke-dasharray' dur='2s' repeatCount='indefinite' values='150 100;1 250;150 100'></animate></circle></svg>");
border: none;
margin: 0 auto;
padding: 0;
display: block;
}
.admin-interface .related-modal .mfp-close {
width: 40px;
height: 40px;
opacity: 1.0;
color: rgba(0, 0, 0, 0.4);
{% if not theme.related_modal_close_button_visible %}
display: none;
{% endif %}
}
.admin-interface .related-modal .mfp-close:hover,
.admin-interface .related-modal .mfp-close:active {
color: rgba(0, 0, 0, 0.6);
top: 0;
}
@@ -1,34 +0,0 @@
[dir="rtl"] .admin-interface,
[dir="rtl"] .admin-interface * {
font-family: 'Vazir', sans-serif !important;
}
[dir="rtl"] .admin-interface .main .toggle-nav-sidebar.sticky {
left: auto !important;
right: 0px !important;
margin-right: 0px !important;
margin-left: 10px;
border: 1px solid #eaeaea !important;
border-right: none !important;
border-top-right-radius: 0px !important;
border-bottom-right-radius: 0px !important;
border-top-left-radius: 4px;
border-bottom-left-radius: 4px;
box-shadow: -4px 2px 8px -2px #DBDBDB !important;
}
[dir="rtl"] .admin-interface #main.shifted > #toggle-nav-sidebar {
right: 359px !important;
}
[dir="rtl"] .admin-interface #main > #nav-sidebar {
margin-right: -360px !important;
margin-left: 0px !important;
right: -320px !important;
}
[dir="rtl"] .admin-interface #main.shifted > #nav-sidebar {
border-left: 1px solid #eaeaea;
margin-right: 0px !important;
padding: 40px 0px 40px 40px !important;
}
@@ -1,67 +0,0 @@
/*
sorl-thumbnail - improved AdminImageMixin widget layout
https://github.com/mariocesar/sorl-thumbnail
*/
.admin-interface a.thumbnail + a {
font-weight: normal;
}
.admin-interface a.thumbnail + a + input[type="checkbox"] {
margin: 10px 0px 10px 18px;
}
@media (max-width: 767px){
.admin-interface a.thumbnail + a {
display: block;
margin-top: 3px;
white-space: pre-wrap;
word-break: break-word;
}
.admin-interface a.thumbnail + a + input[type="checkbox"] {
margin: 15px 0;
}
}
.admin-interface a.thumbnail ~ label {
color: #333;
font-size: 11px;
display: inline;
float: none;
margin-left: 2px;
}
.admin-interface.change-form div[style="float:left"] {
font-size: 11px;
font-weight: bold;
color: #666;
margin-bottom: 5px;
}
@media (max-width: 767px){
.admin-interface.change-form div[style="float:left"] {
font-size: 12px;
width: 100%;
}
}
.admin-interface .aligned .form-row a.thumbnail ~ input[type="file"] {
margin-top: 0px;
}
@media (max-width:767px){
.admin-interface .aligned .form-row a.thumbnail ~ input[type="file"] {
width: auto;
padding: 0px;
display: block;
margin-top: 3px;
}
.admin-interface div[style="float:left"] {
margin-bottom: 0px;
}
.admin-interface div[style="float:left"] + div.help {
margin-top: 0px !important;
}
}
@@ -1,37 +0,0 @@
/*
django-tabbed-admin support
https://github.com/omji/django-tabbed-admin
*/
/* Hide tabs until ready */
/*
.admin-interface #tabs ul {
display: none;
}
.admin-interface #tabs ul.ui-tabs-nav {
display: block;
}
*/
.admin-interface .ui-tabs .ui-tabs-panel[id^=tabs] .module.aligned:last-child {
margin-bottom: 0;
}
.admin-interface .ui-tabs .ui-tabs-panel[id^=tabs] .module.aligned:last-child .form-row:last-child {
border-bottom: none;
}
@media (max-width: 350px){
.admin-interface .ui-tabs .ui-tabs-panel[id^=tabs] .vTextField,
.admin-interface .inline-related .vTextField {
width: 17em;
}
}
@media (max-width: 767px){
/* fix horizontal overflow - responsive.css:563 */
.admin-interface .ui-tabs .ui-tabs-panel[id^=tabs] .aligned .form-row > div:not([class]) {
width: 100% !important;
}
}
@@ -1,3 +0,0 @@
.admin-interface textarea.tinymce ~ p.help {
margin-top:5px !important;
}
@@ -0,0 +1,3 @@
<div class="changelist-filter-clear"><a href="{{ removal_link }}">
{{ date_label|capfirst }}: <span>{{ date_value|date:date_format|capfirst }}</span>&nbsp;&#10006;
</a></div>
@@ -1,7 +1,7 @@
{% load i18n %}
<div class="list-filter-dropdown">
<h3>{% blocktrans with title as filter_title %} By {{ filter_title }} {% endblocktrans %}</h3>
<h3 {% if spec.lookup_val or spec.value %}class="active"{% endif %}>{% blocktrans with title as filter_title %} By {{ filter_title }} {% endblocktrans %}</h3>
<div align="right">
<select onChange="javascript:window.location = this.options[this.selectedIndex].value;">
{% for choice in choices %}
@@ -3,8 +3,8 @@
{% if theme.favicon %}
<link rel="icon" href="{{ theme.favicon.url }}">
{% if theme.env_visible_in_favicon %}
<script type="text/javascript" src="{% static 'admin_interface/favico/favico-0.3.10-patched.min.js' %}"></script>
<script type="text/javascript">
<script src="{% static 'admin_interface/favico/favico-0.3.10-patched.min.js' %}?nocache={{ version_md5_cache }}"></script>
<script>
var favicon = new Favico({
type: 'circle',
bgColor: '{{ theme.env_color }}',
@@ -1,6 +1,6 @@
{% load static %}
{% if theme.foldable_apps %}
<link rel="stylesheet" type="text/css" href="{% static 'admin_interface/foldable-apps/foldable-apps.css' %}">
<script type="text/javascript" src="{% static 'admin_interface/foldable-apps/foldable-apps.js' %}"></script>
<link rel="stylesheet" href="{% static 'admin_interface/foldable-apps/foldable-apps.css' %}?nocache={{ version_md5_cache }}">
<script src="{% static 'admin_interface/foldable-apps/foldable-apps.js' %}?nocache={{ version_md5_cache }}"></script>
{% endif %}
@@ -1,18 +1,15 @@
{% load admin_interface_tags %}
{% if languages %}
<div class="language-chooser">
{% for language in languages %}
<form class="language-chooser-hidden-form" id="language-chooser-hidden-form-{{ language.code }}" action="{{ language.activation_url }}" method="POST">
{% if set_language_url %}
<div class="language-chooser {% if theme.language_chooser_control == 'minimal-select' %}minimal {% endif %}">
<form class="language-chooser-select-form" action="{{ set_language_url }}" method="POST">
{% csrf_token %}
<input name="language" type="hidden" value="{{ language.code }}">
</form>
{% endfor %}
<form class="language-chooser-select-form">
{% csrf_token %}
<select name="language" onchange="document.getElementById(String('language-chooser-hidden-form-' + this.value)).submit();">
{% for language in languages %}
<option value="{{ language.code }}" {% if language.active %}selected{% endif %}>{% if theme.language_chooser_display == 'code' %}{{ language.code|upper }}{% elif theme.language_chooser_display == 'name' %}{{ language.name }}{% endif %}</option>
<input type="hidden" name="next" value="{{ next }}">
<select name="language" onchange="this.form.submit();">
{% for code, language in LANGUAGES %}
<option value="{{ code }}" {% if code == LANGUAGE_CODE %}selected{% endif %}>
{% if theme.language_chooser_display == 'code' %}{{ code|upper }}{% elif theme.language_chooser_display == 'name' %}{{ language|upper }}{% endif %}
</option>
{% endfor %}
</select>
</form>
@@ -0,0 +1,5 @@
{% if spec.lookup_val or spec.value %}
<div class="changelist-filter-clear"><a href="{{ removal_link }}">
{{ title|capfirst }}: <span>{{ selected_value }}</span>&nbsp;&#10006;
</a></div>
{% endif %}
@@ -1,7 +1,8 @@
{% load static %}
{% if theme.related_modal_active %}
<link rel="stylesheet" type="text/css" href="{% static 'admin_interface/magnific-popup/magnific-popup.css' %}">
<script type="text/javascript" src="{% static 'admin_interface/magnific-popup/jquery.magnific-popup.js' %}"></script>
<script type="text/javascript" src="{% static 'admin_interface/related-modal/related-modal.js' %}"></script>
<link rel="stylesheet" href="{% static 'admin_interface/magnific-popup/magnific-popup.css' %}?nocache={{ version_md5_cache }}">
<link rel="stylesheet" href="{% static 'admin_interface/related-modal/related-modal.css' %}?v={{ version_md5_cache }}">
<script src="{% static 'admin_interface/magnific-popup/jquery.magnific-popup.js' %}?nocache={{ version_md5_cache }}"></script>
<script src="{% static 'admin_interface/related-modal/related-modal.js' %}?nocache={{ version_md5_cache }}"></script>
{% endif %}