|
88 | 88 |
|
89 | 89 | // Make sure the master checkbox is unselected |
90 | 90 | if (multiSelect) { |
91 | | - $instanceRow.closest('.list-view').find('input.multiSelectMasterCheckbox').attr('checked', false); |
| 91 | + var $listView = $instanceRow.closest('.list-view'); |
| 92 | + $listView.find('input.multiSelectMasterCheckbox').prop('checked', false); |
| 93 | + toggleMultiSelectActions($listView, false); |
92 | 94 | } |
93 | 95 |
|
94 | 96 | var externalLinkAction = action.externalLink; |
|
762 | 764 | ).length; |
763 | 765 | }; |
764 | 766 |
|
765 | | - var createHeader = function(preFilter, fields, forceHiddenFields, $table, actions, options) { |
| 767 | + var createHeader = function(preFilter, fields, $table, actions, options) { |
766 | 768 | if (!options) options = {}; |
767 | 769 |
|
768 | 770 | var $tr = $('<tr>'); |
|
773 | 775 | var groupableColumns = options.groupableColumns; |
774 | 776 | var viewArgs = $table.closest('.list-view').data('view-args'); |
775 | 777 | var uiCustom = viewArgs.uiCustom; |
776 | | - var hiddenFields = forceHiddenFields ? forceHiddenFields : []; |
| 778 | + var hiddenFields = []; |
777 | 779 |
|
778 | 780 | if (preFilter != null) |
779 | | - hiddenFields = hiddenFields.concat(preFilter()); |
| 781 | + hiddenFields = preFilter(); |
780 | 782 |
|
781 | 783 | var addColumnToTr = function($tr, key, colspan, label, needsCollapsibleColumn) { |
782 | 784 | var trText = _l(label); |
|
884 | 886 |
|
885 | 887 | if (multiSelect) { |
886 | 888 | var $th = $('<th>').addClass('multiselect').appendTo($tr); |
887 | | - var content = $('<input>') |
| 889 | + var $multiSelectMaster = $('<input>') |
888 | 890 | .attr('type', 'checkbox') |
889 | | - .addClass('multiSelectMasterCheckbox') |
890 | | - .appendTo($th); |
| 891 | + .addClass('multiSelectMasterCheckbox'); |
| 892 | + $multiSelectMaster.appendTo($th); |
891 | 893 |
|
892 | | - content.click(function() { |
893 | | - var checked = $(this).is(':checked'); |
894 | | - $('.multiSelectCheckbox').attr('checked', checked); |
895 | | - toggleMultiSelectActions($table.closest('.list-view'), checked); |
| 894 | + $multiSelectMaster.click(function() { |
| 895 | + var isMasterChecked = $(this).prop('checked'); |
| 896 | + $('.multiSelectCheckbox').prop('checked', isMasterChecked); |
| 897 | + toggleMultiSelectActions($table.closest('.list-view'), isMasterChecked); |
896 | 898 | }); |
897 | 899 | } |
898 | 900 |
|
|
1136 | 1138 | } |
1137 | 1139 | }; |
1138 | 1140 |
|
1139 | | - var addTableRows = function(preFilter, fields, forceHiddenFields, data, $tbody, actions, options) { |
| 1141 | + var addTableRows = function(preFilter, fields, data, $tbody, actions, options) { |
1140 | 1142 | if (!options) options = {}; |
1141 | 1143 | var rows = []; |
1142 | 1144 | var reorder = options.reorder; |
|
1175 | 1177 | $tr.appendTo($tbody); |
1176 | 1178 | } |
1177 | 1179 |
|
1178 | | - var hiddenFields = forceHiddenFields ? forceHiddenFields : []; |
| 1180 | + var hiddenFields = []; |
1179 | 1181 | if (preFilter != null) |
1180 | | - hiddenFields = hiddenFields.concat(preFilter()); |
| 1182 | + hiddenFields = preFilter(); |
1181 | 1183 |
|
1182 | 1184 | if (multiSelect) { |
1183 | 1185 | var $td = $('<td>') |
|
1679 | 1681 | }); |
1680 | 1682 | }; |
1681 | 1683 |
|
1682 | | - var loadBody = function($table, dataProvider, preFilter, fields, forceHiddenFields, append, loadArgs, actions, options) { |
| 1684 | + var loadBody = function($table, dataProvider, preFilter, fields, append, loadArgs, actions, options) { |
1683 | 1685 | if (!options) options = {}; |
1684 | 1686 | var context = options.context; |
1685 | 1687 | var reorder = options.reorder; |
|
1716 | 1718 | success: function(args) { |
1717 | 1719 | setLoadingArgs.loadingCompleted(); |
1718 | 1720 |
|
1719 | | - addTableRows(preFilter, fields, forceHiddenFields, args.data, $tbody, actions, { |
| 1721 | + addTableRows(preFilter, fields, args.data, $tbody, actions, { |
1720 | 1722 | actionFilter: args.actionFilter, |
1721 | 1723 | context: context, |
1722 | 1724 | reorder: reorder, |
|
1734 | 1736 | }, |
1735 | 1737 | error: function(args) { |
1736 | 1738 | setLoadingArgs.loadingCompleted(); |
1737 | | - addTableRows(preFilter, fields, forceHiddenFields, [], $tbody, actions); |
| 1739 | + addTableRows(preFilter, fields, [], $tbody, actions); |
1738 | 1740 | $table.find('td:first').html(_l('ERROR')); |
1739 | 1741 | $table.dataTable(null, { |
1740 | 1742 | noSelect: uiCustom |
|
1968 | 1970 |
|
1969 | 1971 | createHeader(listViewData.preFilter, |
1970 | 1972 | listViewData.fields, |
1971 | | - listViewData.hiddenFields, |
1972 | 1973 | $table, |
1973 | 1974 | listViewData.actions, { |
1974 | 1975 | reorder: reorder, |
|
1998 | 1999 | listViewData.dataProvider, |
1999 | 2000 | listViewData.preFilter, |
2000 | 2001 | listViewData.fields, |
2001 | | - listViewData.hiddenFields, |
2002 | 2002 | false, { |
2003 | 2003 | page: $listView.data('page'), |
2004 | 2004 | filterBy: { |
|
2054 | 2054 | listViewData.dataProvider, |
2055 | 2055 | listViewData.preFilter, |
2056 | 2056 | listViewData.fields, |
2057 | | - listViewData.hiddenFields, |
2058 | 2057 | false, { |
2059 | 2058 | page: $listView.data('page'), |
2060 | 2059 | filterBy: { |
|
2107 | 2106 | listViewData.dataProvider, |
2108 | 2107 | listViewData.preFilter, |
2109 | 2108 | listViewData.fields, |
2110 | | - listViewData.hiddenFields, |
2111 | 2109 | false, { |
2112 | 2110 | page: $listView.data('page'), |
2113 | 2111 | filterBy: { |
|
2215 | 2213 | $table, |
2216 | 2214 | listViewData.dataProvider, |
2217 | 2215 | listViewData.preFilter, |
2218 | | - listViewData.fields, |
2219 | | - listViewData.hiddenFields, true, { |
| 2216 | + listViewData.fields, true, { |
2220 | 2217 | context: context, |
2221 | 2218 | page: $listView.data('page'), |
2222 | 2219 | filterBy: filterBy |
|
2399 | 2396 | var $tr = addTableRows( |
2400 | 2397 | targetArgs.preFilter, |
2401 | 2398 | targetArgs.fields, |
2402 | | - targetArgs.hiddenFields, |
2403 | 2399 | data, |
2404 | 2400 | listView.find('table tbody'), |
2405 | 2401 | targetArgs.actions, { |
|
2435 | 2431 | $newRow = addTableRows( |
2436 | 2432 | targetArgs.preFilter, |
2437 | 2433 | targetArgs.fields, |
2438 | | - targetArgs.hiddenFields, |
2439 | 2434 | data, |
2440 | 2435 | $listView.find('table tbody'), |
2441 | 2436 | targetArgs.actions, { |
|
2511 | 2506 | listViewArgs.dataProvider, |
2512 | 2507 | listViewArgs.preFilter, |
2513 | 2508 | listViewArgs.fields, |
2514 | | - listViewArgs.hiddenFields, |
2515 | 2509 | false, |
2516 | 2510 | null, |
2517 | 2511 | listViewArgs.actions, { |
|
0 commit comments