Changeset 33107
- Timestamp:
- 2019-05-24T17:09:27+12:00 (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
main/trunk/greenstone3/web/interfaces/default/js/berrybasket/berrycheckout.js
r33106 r33107 123 123 else { // Not deleting all berries, just a subset 124 124 // Remove id of selected doc to be deleted from docList. 125 // No ordering of berry indexes according to the order they're added, 126 // So can't optimise comparison further than traversing the docList array in reverse 125 // Minor optimisation to double for loop, dependent on ordering of selected berries being 126 // in order of checkboxes (i.e. order of docList ids), and order of docList ids having 127 // the same order as the checkboxes 128 var searchForNextSelectedIdFromIndex = idsToDelete.length-1; 127 129 for (var i = docList.length - 1; i >= 0; i--) { 128 130 var berry = docList[i]; 129 131 var berry_id = berry['collection'] + ":" + berry['name']; 130 132 131 for(var j = 0; j < idsToDelete.length; j++) {133 for(var j = searchForNextSelectedIdFromIndex; j >= 0; j--) { 132 134 if(idsToDelete[j] == berry_id) { 133 135 docList.splice(i, 1); // i indexes into docList, delete element i from docList 136 searchForNextSelectedIdFromIndex = j-1; 134 137 break; 135 138 }
Note:
See TracChangeset
for help on using the changeset viewer.