You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
83 lines
4.4 KiB
83 lines
4.4 KiB
{% load i18n %}
|
|
<div class="inline-group" id="{{ inline_admin_formset.formset.prefix }}-group">
|
|
<h2>{{ inline_admin_formset.opts.verbose_name_plural|title }}</h2>
|
|
{% include "c_admin/hvad/includes/translation_tabs.html" %}
|
|
{{ 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 forloop.last %} empty-form last-related{% endif %}" id="{{ inline_admin_formset.formset.prefix }}-{% if not forloop.last %}{{ forloop.counter0 }}{% else %}empty{% endif %}">
|
|
<h3><b>{{ inline_admin_formset.opts.verbose_name|title }}:</b> <span class="inline_label">{% if inline_admin_form.original %}{{ inline_admin_form.original }}{% else %}#{{ forloop.counter }}{% endif %}</span>
|
|
{% if inline_admin_form.show_url %}<a href="../../../r/{{ inline_admin_form.original_content_type_id }}/{{ inline_admin_form.original.id }}/">{% trans "View on site" %}</a>{% endif %}
|
|
{% if inline_admin_formset.formset.can_delete 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 "c_admin/includes/fieldset.html" %}
|
|
{% endfor %}
|
|
{% if inline_admin_form.has_auto_field %}{{ inline_admin_form.pk_field.field }}{% endif %}
|
|
{{ inline_admin_form.fk_field.field }}
|
|
</div>{% endfor %}
|
|
</div>
|
|
|
|
<script type="text/javascript">
|
|
(function($) {
|
|
$(document).ready(function() {
|
|
var rows = "#{{ inline_admin_formset.formset.prefix }}-group .inline-related";
|
|
var updateInlineLabel = function(row) {
|
|
$(rows).find(".inline_label").each(function(i) {
|
|
var count = i + 1;
|
|
$(this).html($(this).html().replace(/(#\d+)/g, "#" + count));
|
|
});
|
|
}
|
|
var reinitDateTimeShortCuts = function() {
|
|
// Reinitialize the calendar and clock widgets by force, yuck.
|
|
if (typeof DateTimeShortcuts != "undefined") {
|
|
$(".datetimeshortcuts").remove();
|
|
DateTimeShortcuts.init();
|
|
}
|
|
}
|
|
var updateSelectFilter = function() {
|
|
// If any SelectFilter widgets were added, instantiate a new instance.
|
|
if (typeof SelectFilter != "undefined"){
|
|
$(".selectfilter").each(function(index, value){
|
|
var namearr = value.name.split('-');
|
|
SelectFilter.init(value.id, namearr[namearr.length-1], false, "{{ STATIC_URL }}");
|
|
});
|
|
$(".selectfilterstacked").each(function(index, value){
|
|
var namearr = value.name.split('-');
|
|
SelectFilter.init(value.id, namearr[namearr.length-1], true, "{{ STATIC_URL }}");
|
|
});
|
|
}
|
|
}
|
|
var initPrepopulatedFields = function(row) {
|
|
row.find('.prepopulated_field').each(function() {
|
|
var field = $(this);
|
|
var input = field.find('input, select, textarea');
|
|
var dependency_list = input.data('dependency_list') || [];
|
|
var dependencies = [];
|
|
$.each(dependency_list, function(i, field_name) {
|
|
dependencies.push('#' + row.find(field_name).find('input, select, textarea').attr('id'));
|
|
});
|
|
if (dependencies.length) {
|
|
input.prepopulate(dependencies, input.attr('maxlength'));
|
|
}
|
|
});
|
|
}
|
|
$(rows).formset({
|
|
prefix: "{{ inline_admin_formset.formset.prefix }}",
|
|
addText: "{% blocktrans with inline_admin_formset.opts.verbose_name|title as verbose_name %}Add another {{ verbose_name }}{% endblocktrans %}",
|
|
formCssClass: "dynamic-{{ inline_admin_formset.formset.prefix }}",
|
|
deleteCssClass: "inline-deletelink",
|
|
deleteText: "{% trans "Remove" %}",
|
|
emptyCssClass: "empty-form",
|
|
removed: updateInlineLabel,
|
|
added: (function(row) {
|
|
initPrepopulatedFields(row);
|
|
reinitDateTimeShortCuts();
|
|
updateSelectFilter();
|
|
updateInlineLabel(row);
|
|
})
|
|
});
|
|
});
|
|
})(django.jQuery);
|
|
</script>
|
|
|