| 1001 | } |
| 1002 | // Change selected1's value based on selectable1, then refresh the row state |
| 1003 | var onlyKeepSelectableRows = function() { |
| 1004 | if (selDisable) { // users can't select; useful when only want backend select |
| 1005 | selected1 = []; |
| 1006 | return; |
| 1007 | } |
| 1008 | if (selectable1.length === 0) return; |
| 1009 | var nonselectable = selectable1[0] <= 0; |
| 1010 | if (nonselectable) { |
| 1011 | // should make selectable1 positive |
| 1012 | selected1 = $(selected1).not(selectable1.map(function(i) { return -i; })).get(); |
| 1013 | } else { |
| 1014 | selected1 = $(selected1).filter(selectable1).get(); |
| 1015 | } |
| 1016 | } |
| 1017 | // Change selected1's value based on selectable1, then |
| 1018 | // refresh the row selection state according to values in selected1 |
| 1019 | var selectRows = function(ignoreSelectable) { |