~ubuntu-branches/ubuntu/quantal/python-django/quantal-security

« back to all changes in this revision

Viewing changes to django/contrib/admin/templates/admin/edit_inline/tabular.html

  • Committer: Bazaar Package Importer
  • Author(s): Chris Lamb
  • Date: 2010-05-21 07:52:55 UTC
  • mfrom: (1.3.6 upstream)
  • mto: This revision was merged to the branch mainline in revision 28.
  • Revision ID: james.westby@ubuntu.com-20100521075255-ii78v1dyfmyu3uzx
Tags: upstream-1.2
ImportĀ upstreamĀ versionĀ 1.2

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
{% load i18n %}
2
 
<div class="inline-group">
 
1
{% load i18n adminmedia %}
 
2
<div class="inline-group" id="{{ inline_admin_formset.formset.prefix }}-group">
3
3
  <div class="tabular inline-related {% if forloop.last %}last-related{% endif %}">
4
4
{{ inline_admin_formset.formset.management_form }}
5
5
<fieldset class="module">
8
8
   <table>
9
9
     <thead><tr>
10
10
     {% for field in inline_admin_formset.fields %}
11
 
       {% if not field.is_hidden %}
12
 
         <th {% if forloop.first %}colspan="2"{% endif %}>{{ field.label|capfirst }}</th>
13
 
        {% endif %}
 
11
       {% if not field.widget.is_hidden %}
 
12
         <th{% if forloop.first %} colspan="2"{% endif %}{% if field.required %} class="required"{% endif %}>{{ field.label|capfirst }}</th>
 
13
       {% endif %}
14
14
     {% endfor %}
15
15
     {% if inline_admin_formset.formset.can_delete %}<th>{% trans "Delete?" %}</th>{% endif %}
16
16
     </tr></thead>
20
20
        {% if inline_admin_form.form.non_field_errors %}
21
21
        <tr><td colspan="{{ inline_admin_form.field_count }}">{{ inline_admin_form.form.non_field_errors }}</td></tr>
22
22
        {% endif %}
23
 
        <tr class="{% cycle row1,row2 %} {% if inline_admin_form.original or inline_admin_form.show_url %}has_original{% endif %}">
24
 
 
 
23
        <tr class="{% cycle "row1" "row2" %} {% if inline_admin_form.original or inline_admin_form.show_url %}has_original{% endif %}{% if forloop.last %} empty-form{% endif %}"
 
24
             id="{{ inline_admin_formset.formset.prefix }}-{% if not forloop.last %}{{ forloop.counter0 }}{% else %}empty{% endif %}">
25
25
        <td class="original">
26
26
          {% if inline_admin_form.original or inline_admin_form.show_url %}<p>
27
27
          {% if inline_admin_form.original %} {{ inline_admin_form.original }}{% endif %}
39
39
          {% endfor %}
40
40
          {% endspaceless %}
41
41
        </td>
42
 
 
43
42
        {% for fieldset in inline_admin_form %}
44
43
          {% for line in fieldset %}
45
44
            {% for field in line %}
46
45
              <td class="{{ field.field.name }}">
47
 
              {{ field.field.errors.as_ul }}
48
 
              {{ field.field }}
 
46
              {% if field.is_readonly %}
 
47
                  <p>{{ field.contents }}</p>
 
48
              {% else %}
 
49
                  {{ field.field.errors.as_ul }}
 
50
                  {{ field.field }}
 
51
              {% endif %}
49
52
              </td>
50
53
            {% endfor %}
51
54
          {% endfor %}
52
55
        {% endfor %}
53
 
 
54
56
        {% if inline_admin_formset.formset.can_delete %}
55
57
          <td class="delete">{% if inline_admin_form.original %}{{ inline_admin_form.deletion_field.field }}{% endif %}</td>
56
58
        {% endif %}
57
 
 
58
59
        </tr>
59
 
 
60
60
     {% endfor %}
61
61
     </tbody>
62
62
   </table>
63
 
 
64
63
</fieldset>
65
64
  </div>
66
 
 
67
 
  {# <ul class="tools"> #}
68
 
  {#   <li><a class="add" href="">Add another {{ inline_admin_formset.opts.verbose_name|title }}</a></li> #}
69
 
  {# </ul> #}
70
 
 
71
65
</div>
 
66
 
 
67
<script type="text/javascript">
 
68
(function($) {
 
69
    $(document).ready(function($) {
 
70
        var rows = "#{{ inline_admin_formset.formset.prefix }}-group .tabular.inline-related tbody tr";
 
71
        var alternatingRows = function(row) {
 
72
            $(rows).not(".add-row").removeClass("row1 row2")
 
73
                .filter(":even").addClass("row1").end()
 
74
                .filter(rows + ":odd").addClass("row2");
 
75
        }
 
76
        var reinitDateTimeShortCuts = function() {
 
77
            // Reinitialize the calendar and clock widgets by force
 
78
            if (typeof DateTimeShortcuts != "undefined") {
 
79
                $(".datetimeshortcuts").remove();
 
80
                DateTimeShortcuts.init();
 
81
            }
 
82
        }
 
83
        var updateSelectFilter = function() {
 
84
            // If any SelectFilter widgets are a part of the new form,
 
85
            // instantiate a new SelectFilter instance for it.
 
86
            if (typeof SelectFilter != "undefined"){
 
87
                $(".selectfilter").each(function(index, value){
 
88
                  var namearr = value.name.split('-');
 
89
                  SelectFilter.init(value.id, namearr[namearr.length-1], false, "{% admin_media_prefix %}");
 
90
                })
 
91
                $(".selectfilterstacked").each(function(index, value){
 
92
                  var namearr = value.name.split('-');
 
93
                  SelectFilter.init(value.id, namearr[namearr.length-1], true, "{% admin_media_prefix %}");
 
94
                })
 
95
            }
 
96
        }
 
97
        var initPrepopulatedFields = function(row) {
 
98
            row.find('.prepopulated_field').each(function() {
 
99
                var field = $(this);
 
100
                var input = field.find('input, select, textarea');
 
101
                var dependency_list = input.data('dependency_list') || [];
 
102
                var dependencies = row.find(dependency_list.join(',')).find('input, select, textarea');
 
103
                if (dependencies.length) {
 
104
                    input.prepopulate(dependencies, input.attr('maxlength'));
 
105
                }
 
106
            });
 
107
        }
 
108
        $(rows).formset({
 
109
            prefix: "{{ inline_admin_formset.formset.prefix }}",
 
110
            addText: "{% blocktrans with inline_admin_formset.opts.verbose_name|title as verbose_name %}Add another {{ verbose_name }}{% endblocktrans %}",
 
111
            formCssClass: "dynamic-{{ inline_admin_formset.formset.prefix }}",
 
112
            deleteCssClass: "inline-deletelink",
 
113
            deleteText: "{% trans "Remove" %}",
 
114
            emptyCssClass: "empty-form",
 
115
            removed: alternatingRows,
 
116
            added: (function(row) {
 
117
                initPrepopulatedFields(row);
 
118
                reinitDateTimeShortCuts();
 
119
                updateSelectFilter();
 
120
                alternatingRows(row);
 
121
            })
 
122
        });
 
123
    });
 
124
})(django.jQuery);
 
125
</script>