1
0
Fork 0
mirror of https://github.com/koalyptus/TableFilter.git synced 2024-05-10 02:16:40 +02:00
TableFilter/src/modules/colOps.js.map
2014-11-16 01:34:32 +11:00

1 line
20 KiB
Plaintext

{"version":3,"sources":["src/es6-modules/colOps.js"],"names":[],"mappings":"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","file":"src/es6-modules/colOps.js","sourcesContent":["import * as dom from '../dom';\r\nimport * as str from '../string';\r\n\r\nexport class ColOps{\r\n\r\n /**\r\n * Column calculations\r\n * @param {Object} tf TableFilter instance\r\n */\r\n constructor(tf) {\r\n var f = tf.fObj;\r\n this.colOperation = f.col_operation;\r\n\r\n this.tf = tf;\r\n }\r\n\r\n /**\r\n * Calculates columns' values\r\n * Configuration options are stored in 'colOperation' property\r\n * - 'id' contains ids of elements showing result (array)\r\n * - 'col' contains the columns' indexes (array)\r\n * - 'operation' contains operation type (array, values: 'sum', 'mean',\r\n * 'min', 'max', 'median', 'q1', 'q3')\r\n * - 'write_method' array defines which method to use for displaying the\r\n * result (innerHTML, setValue, createTextNode) - default: 'innerHTML'\r\n * - 'tot_row_index' defines in which row results are displayed\r\n * (integers array)\r\n *\r\n * - changes made by Nuovella:\r\n * (1) optimized the routine (now it will only process each column once),\r\n * (2) added calculations for the median, lower and upper quartile.\r\n */\r\n set() {\r\n if(!this.tf.isFirstLoad && !this.tf.hasGrid){\r\n return;\r\n }\r\n\r\n if(this.tf.onBeforeOperation){\r\n this.tf.onBeforeOperation.call(null, this.tf);\r\n }\r\n\r\n var colOperation = this.colOperation,\r\n labelId = colOperation.id,\r\n colIndex = colOperation.col,\r\n operation = colOperation.operation,\r\n outputType = colOperation.write_method,\r\n totRowIndex = colOperation.tot_row_index,\r\n excludeRow = colOperation.exclude_row,\r\n decimalPrecision = colOperation.decimal_precision !== undefined ?\r\n colOperation.decimal_precision : 2;\r\n\r\n //nuovella: determine unique list of columns to operate on\r\n var ucolIndex = [],\r\n ucolMax = 0;\r\n ucolIndex[ucolMax] = colIndex[0];\r\n\r\n for(var ii=1; ii<colIndex.length; ii++){\r\n var saved = 0;\r\n //see if colIndex[ii] is already in the list of unique indexes\r\n for(var jj=0; jj<=ucolMax; jj++){\r\n if(ucolIndex[jj] === colIndex[ii]){\r\n saved = 1;\r\n }\r\n }\r\n //if not saved then, save the index;\r\n if (saved === 0){\r\n ucolMax++;\r\n ucolIndex[ucolMax] = colIndex[ii];\r\n }\r\n }\r\n\r\n if(str.lower(typeof labelId)=='object' &&\r\n str.lower(typeof colIndex)=='object' &&\r\n str.lower(typeof operation)=='object'){\r\n var row = this.tf.tbl.rows,\r\n colvalues = [];\r\n\r\n for(var ucol=0; ucol<=ucolMax; ucol++){\r\n //this retrieves col values\r\n //use ucolIndex because we only want to pass through this loop\r\n //once for each column get the values in this unique column\r\n colvalues.push(\r\n this.tf.GetColValues(ucolIndex[ucol], true, excludeRow));\r\n\r\n //next: calculate all operations for this column\r\n var result,\r\n nbvalues=0,\r\n temp,\r\n meanValue=0,\r\n sumValue=0,\r\n minValue=null,\r\n maxValue=null,\r\n q1Value=null,\r\n medValue=null,\r\n q3Value=null,\r\n meanFlag=0,\r\n sumFlag=0,\r\n minFlag=0,\r\n maxFlag=0,\r\n q1Flag=0,\r\n medFlag=0,\r\n q3Flag=0,\r\n theList=[],\r\n opsThisCol=[],\r\n decThisCol=[],\r\n labThisCol=[],\r\n oTypeThisCol=[],\r\n mThisCol=-1;\r\n\r\n for(var k=0; k<colIndex.length; k++){\r\n if(colIndex[k] === ucolIndex[ucol]){\r\n mThisCol++;\r\n opsThisCol[mThisCol]=str.lower(operation[k]);\r\n decThisCol[mThisCol]=decimalPrecision[k];\r\n labThisCol[mThisCol]=labelId[k];\r\n oTypeThisCol = outputType !== undefined &&\r\n str.lower(typeof outputType)==='object' ?\r\n outputType[k] : null;\r\n\r\n switch(opsThisCol[mThisCol]){\r\n case 'mean':\r\n meanFlag=1;\r\n break;\r\n case 'sum':\r\n sumFlag=1;\r\n break;\r\n case 'min':\r\n minFlag=1;\r\n break;\r\n case 'max':\r\n maxFlag=1;\r\n break;\r\n case 'median':\r\n medFlag=1;\r\n break;\r\n case 'q1':\r\n q1Flag=1;\r\n break;\r\n case 'q3':\r\n q3Flag=1;\r\n break;\r\n }\r\n }\r\n }\r\n\r\n for(var j=0; j<colvalues[ucol].length; j++){\r\n //sort the list for calculation of median and quartiles\r\n if((q1Flag==1)|| (q3Flag==1) || (medFlag==1)){\r\n if (j<colvalues[ucol].length -1){\r\n for(k=j+1; k<colvalues[ucol].length; k++) {\r\n if(eval(colvalues[ucol][k]) <\r\n eval(colvalues[ucol][j])){\r\n temp = colvalues[ucol][j];\r\n colvalues[ucol][j] = colvalues[ucol][k];\r\n colvalues[ucol][k] = temp;\r\n }\r\n }\r\n }\r\n }\r\n var cvalue = parseFloat(colvalues[ucol][j]);\r\n theList[j] = parseFloat(cvalue);\r\n\r\n if(!isNaN(cvalue)){\r\n nbvalues++;\r\n if(sumFlag===1 || meanFlag===1){\r\n sumValue += parseFloat( cvalue );\r\n }\r\n if(minFlag===1){\r\n if(minValue===null){\r\n minValue = parseFloat( cvalue );\r\n } else{\r\n minValue = parseFloat( cvalue ) < minValue ?\r\n parseFloat( cvalue ): minValue;\r\n }\r\n }\r\n if(maxFlag===1){\r\n if (maxValue===null){\r\n maxValue = parseFloat( cvalue );\r\n } else {\r\n maxValue = parseFloat( cvalue ) > maxValue ?\r\n parseFloat( cvalue ): maxValue;\r\n }\r\n }\r\n }\r\n }//for j\r\n if(meanFlag===1){\r\n meanValue = sumValue/nbvalues;\r\n }\r\n if(medFlag===1){\r\n var aux = 0;\r\n if(nbvalues%2 === 1){\r\n aux = Math.floor(nbvalues/2);\r\n medValue = theList[aux];\r\n } else{\r\n medValue =\r\n (theList[nbvalues/2] + theList[((nbvalues/2)-1)])/2;\r\n }\r\n }\r\n var posa;\r\n if(q1Flag===1){\r\n posa=0.0;\r\n posa = Math.floor(nbvalues/4);\r\n if(4*posa == nbvalues){\r\n q1Value = (theList[posa-1] + theList[posa])/2;\r\n } else {\r\n q1Value = theList[posa];\r\n }\r\n }\r\n if (q3Flag===1){\r\n posa=0.0;\r\n var posb=0.0;\r\n posa = Math.floor(nbvalues/4);\r\n if (4*posa === nbvalues){\r\n posb = 3*posa;\r\n q3Value = (theList[posb] + theList[posb-1])/2;\r\n } else {\r\n q3Value = theList[nbvalues-posa-1];\r\n }\r\n }\r\n\r\n for(var i=0; i<=mThisCol; i++){\r\n switch( opsThisCol[i] ){\r\n case 'mean':\r\n result=meanValue;\r\n break;\r\n case 'sum':\r\n result=sumValue;\r\n break;\r\n case 'min':\r\n result=minValue;\r\n break;\r\n case 'max':\r\n result=maxValue;\r\n break;\r\n case 'median':\r\n result=medValue;\r\n break;\r\n case 'q1':\r\n result=q1Value;\r\n break;\r\n case 'q3':\r\n result=q3Value;\r\n break;\r\n }\r\n\r\n var precision = !isNaN(decThisCol[i]) ? decThisCol[i] : 2;\r\n\r\n //if outputType is defined\r\n if(oTypeThisCol && result){\r\n result = result.toFixed( precision );\r\n\r\n if(dom.id(labThisCol[i])){\r\n switch( str.lower(oTypeThisCol) ){\r\n case 'innerhtml':\r\n if (isNaN(result) || !isFinite(result) ||\r\n nbvalues===0){\r\n dom.id(labThisCol[i]).innerHTML = '.';\r\n } else{\r\n dom.id(labThisCol[i]).innerHTML = result;\r\n }\r\n break;\r\n case 'setvalue':\r\n dom.id( labThisCol[i] ).value = result;\r\n break;\r\n case 'createtextnode':\r\n var oldnode = dom.id(labThisCol[i])\r\n .firstChild;\r\n var txtnode = dom.text(result);\r\n dom.id(labThisCol[i])\r\n .replaceChild(txtnode, oldnode);\r\n break;\r\n }//switch\r\n }\r\n } else {\r\n try{\r\n if(isNaN(result) || !isFinite(result) ||\r\n nbvalues===0){\r\n dom.id(labThisCol[i]).innerHTML = '.';\r\n } else {\r\n dom.id(labThisCol[i]).innerHTML =\r\n result.toFixed(precision);\r\n }\r\n } catch(e) {}//catch\r\n }//else\r\n }//for i\r\n\r\n // row(s) with result are always visible\r\n var totRow = totRowIndex && totRowIndex[ucol] ?\r\n row[totRowIndex[ucol]] : null;\r\n if(totRow){\r\n totRow.style.display = '';\r\n }\r\n }//for ucol\r\n }//if typeof\r\n\r\n if(this.tf.onAfterOperation){\r\n this.tf.onAfterOperation.call(null, this.tf);\r\n }\r\n }\r\n\r\n}"]}