|
1035 | 1035 | var subselect = uiCustom ? listViewArgs.listView.subselect : null; |
1036 | 1036 |
|
1037 | 1037 | if (!(data && data.length)) { |
| 1038 | + $listView.data('end-of-table', true); |
1038 | 1039 | if (!$tbody.find('tr').size()) { |
1039 | 1040 | return [ |
1040 | 1041 | $('<tr>').addClass('empty last').append( |
|
1502 | 1503 | var reorder = options.reorder; |
1503 | 1504 | var multiSelect = options.multiSelect; |
1504 | 1505 | var $tbody = $table.find('tbody'); |
| 1506 | + var $listView = $table.closest('.list-view'); |
1505 | 1507 |
|
1506 | 1508 | if (!loadArgs) loadArgs = { |
1507 | 1509 | page: 1, |
|
1512 | 1514 | } |
1513 | 1515 | }; |
1514 | 1516 |
|
| 1517 | + if (options.clearEndTable) { |
| 1518 | + $listView.data('page', 1); |
| 1519 | + $table.closest('.list-view').data('end-of-table', false); |
| 1520 | + } |
| 1521 | + |
1515 | 1522 | if (!append) { |
1516 | 1523 | if (!append) $table.find('tbody tr').remove(); |
1517 | 1524 | } |
1518 | 1525 |
|
1519 | | - var viewArgs = $table.closest('.list-view').data('view-args'); |
| 1526 | + var viewArgs = $listView.data('view-args'); |
1520 | 1527 | var uiCustom = viewArgs.listView ? viewArgs.listView.uiCustom : false; |
1521 | 1528 |
|
1522 | 1529 | setLoading($table, function(setLoadingArgs) { |
|
1539 | 1546 | noSelect: uiCustom |
1540 | 1547 | }); |
1541 | 1548 |
|
1542 | | - if (args.data && |
1543 | | - args.data.length < pageSize && |
1544 | | - options.setEndTable) { |
1545 | | - options.setEndTable(); |
1546 | | - } |
1547 | | - |
1548 | 1549 | setTimeout(function() { |
1549 | 1550 | $table.dataTable('refresh'); |
1550 | 1551 | }); |
|
1686 | 1687 | var $toolbar = $('<div>').addClass('toolbar').appendTo($listView); |
1687 | 1688 | var $table = $('<table>').appendTo($listView); |
1688 | 1689 | var infScrollTimer; |
1689 | | - var page = 1; |
1690 | 1690 | var actions = listViewData.actions; |
1691 | 1691 | var reorder = listViewData.reorder; |
1692 | 1692 | var multiSelect = listViewData.multiSelect; |
1693 | 1693 | var tableHeight = $table.height(); |
1694 | | - var endTable = false; |
1695 | | - var setEndTable = function() { |
1696 | | - endTable = true; |
1697 | | - } |
1698 | 1694 |
|
| 1695 | + $listView.data('end-of-table', false); |
| 1696 | + $listView.data('page', 1); |
1699 | 1697 |
|
1700 | 1698 | var $switcher; |
1701 | 1699 | if (args.sections) { |
|
1794 | 1792 | listViewData.preFilter, |
1795 | 1793 | listViewData.fields, |
1796 | 1794 | false, { |
1797 | | - page: page, |
| 1795 | + page: $listView.data('page'), |
1798 | 1796 | filterBy: { |
1799 | 1797 | kind: $listView.find('select[id=filterBy]').val(), |
1800 | 1798 | search: { |
|
1808 | 1806 | context: args.context, |
1809 | 1807 | reorder: reorder, |
1810 | 1808 | detailView: listViewData.detailView, |
1811 | | - setEndTable: setEndTable, |
1812 | 1809 | 'multiSelect': multiSelect, |
1813 | 1810 | noActionCol: listViewData.noActionCol |
1814 | 1811 | } |
|
1842 | 1839 | var basicSearch = function() { |
1843 | 1840 | $listView.removeData('advSearch'); |
1844 | 1841 |
|
1845 | | - page = 1; |
| 1842 | + $listView.data('page', 1); |
1846 | 1843 | loadBody( |
1847 | 1844 | $table, |
1848 | 1845 | listViewData.dataProvider, |
1849 | 1846 | listViewData.preFilter, |
1850 | 1847 | listViewData.fields, |
1851 | 1848 | false, { |
1852 | | - page: page, |
| 1849 | + page: $listView.data('page'), |
1853 | 1850 | filterBy: { |
1854 | 1851 | kind: $listView.find('select[id=filterBy]').val(), |
1855 | 1852 | search: { |
|
1862 | 1859 | context: $listView.data('view-args').context, |
1863 | 1860 | reorder: listViewData.reorder, |
1864 | 1861 | detailView: listViewData.detailView, |
1865 | | - setEndTable: setEndTable, |
1866 | 1862 | 'multiSelect': multiSelect, |
1867 | 1863 | noActionCol: listViewData.noActionCol |
1868 | 1864 | } |
|
1895 | 1891 | //advanced search |
1896 | 1892 | var advancedSearch = function(args) { |
1897 | 1893 | $listView.data('advSearch', args.data); |
1898 | | - |
1899 | | - page = 1; |
| 1894 | + $listView.data('page', 1); |
1900 | 1895 | loadBody( |
1901 | 1896 | $table, |
1902 | 1897 | listViewData.dataProvider, |
1903 | 1898 | listViewData.preFilter, |
1904 | 1899 | listViewData.fields, |
1905 | 1900 | false, { |
1906 | | - page: page, |
| 1901 | + page: $listView.data('page'), |
1907 | 1902 | filterBy: { |
1908 | 1903 | kind: $listView.find('select[id=filterBy]').val(), |
1909 | 1904 | advSearch: args.data |
|
1913 | 1908 | context: $listView.data('view-args').context, |
1914 | 1909 | reorder: listViewData.reorder, |
1915 | 1910 | detailView: listViewData.detailView, |
1916 | | - setEndTable: setEndTable, |
1917 | 1911 | 'multiSelect': multiSelect, |
1918 | 1912 | noActionCol: listViewData.noActionCol |
1919 | 1913 | } |
|
1979 | 1973 | var loadMoreData = $listView.scrollTop() >= ($table.height() - $listView.height()) - $listView.height() / 4; |
1980 | 1974 | var context = $listView.data('view-args').context; |
1981 | 1975 |
|
1982 | | - if (loadMoreData && !endTable) { |
1983 | | - page = page + 1; |
| 1976 | + if (loadMoreData && !$listView.data('end-of-table')) { |
| 1977 | + $listView.data('page', $listView.data('page') + 1); |
1984 | 1978 |
|
1985 | 1979 | var filterBy = { |
1986 | 1980 | kind: $listView.find('select[id=filterBy]').length > 0 ? $listView.find('select[id=filterBy]').val() : 'all' |
|
2000 | 1994 | listViewData.preFilter, |
2001 | 1995 | listViewData.fields, true, { |
2002 | 1996 | context: context, |
2003 | | - page: page, |
| 1997 | + page: $listView.data('page'), |
2004 | 1998 | filterBy: filterBy |
2005 | 1999 | }, actions, { |
2006 | 2000 | reorder: listViewData.reorder, |
2007 | 2001 | detailView: listViewData.detailView, |
2008 | | - setEndTable: setEndTable, |
2009 | 2002 | 'multiSelect': multiSelect, |
2010 | 2003 | noActionCol: listViewData.noActionCol |
2011 | 2004 | }); |
|
2272 | 2265 | false, |
2273 | 2266 | null, |
2274 | 2267 | listViewArgs.actions, { |
| 2268 | + clearEndTable: true, |
2275 | 2269 | multiSelect: listViewArgs.multiSelect, |
2276 | 2270 | context: this.data('view-args').context, |
2277 | 2271 | detailView: listViewArgs.detailView |
|
0 commit comments