diff --git a/django/contrib/admin/media/css/changelists.css b/django/contrib/admin/media/css/changelists.css
index 4303378..65ae083 100644
|
a
|
b
|
|
| 228 | 228 | border-right: 1px solid #ddd; |
| 229 | 229 | } |
| 230 | 230 | |
| | 231 | .action_counter{ |
| | 232 | font-size: 11px; |
| | 233 | margin: 0 0.5em; |
| | 234 | padding-right: 0.5em; |
| | 235 | border-right: 1px solid #ccc; |
| | 236 | display: none; |
| | 237 | } |
| | 238 | |
| 231 | 239 | #changelist table input { |
| 232 | 240 | margin: 0; |
| 233 | 241 | } |
diff --git a/django/contrib/admin/media/js/actions.js b/django/contrib/admin/media/js/actions.js
index d34488a..b82bd13 100644
|
a
|
b
|
|
| 1 | 1 | var Actions = { |
| 2 | 2 | init: function() { |
| 3 | | var selectAll = document.getElementById('action-toggle'); |
| | 3 | counterSpans = document.getElementsBySelector('span._acnt'); |
| | 4 | counterContainer = document.getElementsBySelector('span.action_counter'); |
| | 5 | actionCheckboxes = document.getElementsBySelector('tr input.action-select'); |
| | 6 | selectAll = document.getElementById('action-toggle'); |
| | 7 | for(var i = 0; i < counterContainer.length; i++) { |
| | 8 | counterContainer[i].style.display = 'inline'; |
| | 9 | } |
| 4 | 10 | if (selectAll) { |
| 5 | 11 | selectAll.style.display = 'inline'; |
| 6 | 12 | addEvent(selectAll, 'click', function() { |
| 7 | 13 | Actions.checker(selectAll.checked); |
| | 14 | Actions.counter(); |
| | 15 | }); |
| | 16 | } |
| | 17 | for(var i = 0; i < actionCheckboxes.length; i++) { |
| | 18 | addEvent(actionCheckboxes[i], 'click', function() { |
| | 19 | Actions.counter(); |
| 8 | 20 | }); |
| 9 | 21 | } |
| 10 | 22 | var changelistTable = document.getElementsBySelector('#changelist table')[0]; |
| … |
… |
var Actions = {
|
| 16 | 28 | if (target.className == 'action-select') { |
| 17 | 29 | var tr = target.parentNode.parentNode; |
| 18 | 30 | Actions.toggleRow(tr, target.checked); |
| | 31 | Actions.checked(); |
| 19 | 32 | } |
| 20 | 33 | }); |
| 21 | 34 | } |
| … |
… |
var Actions = {
|
| 27 | 40 | tr.className = tr.className.replace(' selected', ''); |
| 28 | 41 | } |
| 29 | 42 | }, |
| | 43 | checked: function() { |
| | 44 | selectAll.checked = false; |
| | 45 | }, |
| 30 | 46 | checker: function(checked) { |
| 31 | | var actionCheckboxes = document.getElementsBySelector('tr input.action-select'); |
| 32 | 47 | for(var i = 0; i < actionCheckboxes.length; i++) { |
| 33 | 48 | actionCheckboxes[i].checked = checked; |
| 34 | 49 | Actions.toggleRow(actionCheckboxes[i].parentNode.parentNode, checked); |
| 35 | 50 | } |
| | 51 | }, |
| | 52 | counter: function() { |
| | 53 | counter = 0; |
| | 54 | for(var i = 0; i < actionCheckboxes.length; i++) { |
| | 55 | if(actionCheckboxes[i].checked){ |
| | 56 | counter++; |
| | 57 | } |
| | 58 | } |
| | 59 | for(var i = 0; i < counterSpans.length; i++) { |
| | 60 | counterSpans[i].innerHTML = counter; |
| | 61 | } |
| 36 | 62 | } |
| 37 | 63 | }; |
| 38 | 64 | |
| 39 | | addEvent(window, 'load', Actions.init); |
| | 65 | addEvent(window, 'load', Actions.init); |
| | 66 | No newline at end of file |
diff --git a/django/contrib/admin/templates/admin/actions.html b/django/contrib/admin/templates/admin/actions.html
index bf4b975..4fea071 100644
|
a
|
b
|
|
| 1 | 1 | {% load i18n %} |
| 2 | 2 | <div class="actions"> |
| | 3 | <span class="action_counter"> |
| | 4 | {% ifequal cl.result_count 1 %} |
| | 5 | {% blocktrans with cl.result_count as total_count and cl.opts.verbose_name as module_name %}<span class="_acnt">0</span> of {{ total_count }} {{ module_name }} selected{% endblocktrans %} |
| | 6 | {% else %} |
| | 7 | {% blocktrans with cl.result_count as total_count and cl.opts.verbose_name_plural as module_name %}<span class="_acnt">0</span> of {{ total_count }} {{ module_name }} selected{% endblocktrans %} |
| | 8 | {% endifequal %} |
| | 9 | </span> |
| 3 | 10 | {% for field in action_form %}<label>{{ field.label }} {{ field }}</label>{% endfor %} |
| 4 | 11 | <button type="submit" class="button" title="{% trans "Run the selected action" %}" name="index" value="{{ action_index|default:0 }}">{% trans "Go" %}</button> |
| 5 | 12 | </div> |