(settings, selector, opts)
| 8234 | }) |
| 8235 | |
| 8236 | var __cell_selector = function (settings, selector, opts) { |
| 8237 | var data = settings.aoData |
| 8238 | var rows = _selector_row_indexes(settings, opts) |
| 8239 | var cells = _removeEmpty(_pluck_order(data, rows, "anCells")) |
| 8240 | var allCells = $(_flatten([], cells)) |
| 8241 | var row |
| 8242 | var columns = settings.aoColumns.length |
| 8243 | var a, i, ien, j, o, host |
| 8244 | |
| 8245 | var run = function (s) { |
| 8246 | var fnSelector = typeof s === "function" |
| 8247 | |
| 8248 | if (s === null || s === undefined || fnSelector) { |
| 8249 | // All cells and function selectors |
| 8250 | a = [] |
| 8251 | |
| 8252 | for (i = 0, ien = rows.length; i < ien; i++) { |
| 8253 | row = rows[i] |
| 8254 | |
| 8255 | for (j = 0; j < columns; j++) { |
| 8256 | o = { |
| 8257 | row: row, |
| 8258 | column: j |
| 8259 | } |
| 8260 | |
| 8261 | if (fnSelector) { |
| 8262 | // Selector - function |
| 8263 | host = data[row] |
| 8264 | |
| 8265 | if (s(o, _fnGetCellData(settings, row, j), host.anCells ? host.anCells[j] : null)) { |
| 8266 | a.push(o) |
| 8267 | } |
| 8268 | } else { |
| 8269 | // Selector - all |
| 8270 | a.push(o) |
| 8271 | } |
| 8272 | } |
| 8273 | } |
| 8274 | |
| 8275 | return a |
| 8276 | } |
| 8277 | |
| 8278 | // Selector - index |
| 8279 | if ($.isPlainObject(s)) { |
| 8280 | // Valid cell index and its in the array of selectable rows |
| 8281 | return s.column !== undefined && s.row !== undefined && rows.indexOf(s.row) !== -1 ? [s] : [] |
| 8282 | } |
| 8283 | |
| 8284 | // Selector - jQuery filtered cells |
| 8285 | var jqResult = allCells |
| 8286 | .filter(s) |
| 8287 | .map(function (i, el) { |
| 8288 | return { |
| 8289 | // use a new object, in case someone changes the values |
| 8290 | row: el._DT_CellIndex.row, |
| 8291 | column: el._DT_CellIndex.column |
| 8292 | } |
| 8293 | }) |
no test coverage detected