MCPcopy Create free account
hub / github.com/breck7/scroll / __cell_selector

Function __cell_selector

external/.datatables.js:8236–8315  ·  view source on GitHub ↗
(settings, selector, opts)

Source from the content-addressed store, hash-verified

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 })

Callers 1

.datatables.jsFile · 0.85

Calls 6

_selector_row_indexesFunction · 0.85
_removeEmptyFunction · 0.85
_pluck_orderFunction · 0.85
_flattenFunction · 0.85
_selector_runFunction · 0.85
$Function · 0.70

Tested by

no test coverage detected