dist/lib/thirdparty/filtertable.js
function Filter(e) {
    if (typeof document === 'undefined') return;
    var id = e.target.getAttribute("id").split("_")[1];
    var SearchFlt = getFilters(id);
    var t = document.getElementById(id);
    var SearchArgs = [];
    var ncells = getCellsNb(id);

    for (var i in SearchFlt) {
      SearchArgs.push(document.getElementById(SearchFlt[i]).value.toLowerCase());
    }var start_row = getStartRow(id);
    var row = t.getElementsByTagName("tr");

    for (var k = start_row; k < row.length; k++) {
      /*** if table already filtered some rows are not visible ***/
      if (row[k].style.display === "none") row[k].style.display = "";

      var cell = getChildElms(row[k]).childNodes;
      var nchilds = cell.length;
      var isRowValid = true;

      if (nchilds === ncells) {
        // checks if row has exact cell #
        var cell_value = [];
        var occurence = [];

        for (var j = 0; j < nchilds; j++) // this loop retrieves cell data
        {
          var cell_data = getCellText(cell[j]);
          cell_value.push(cell_data);

          if (SearchArgs[j] !== "") {
            occurence[j] = cell_data.split(SearchArgs[j]).length;
          }
        } //for j

        for (var _t = 0; _t < ncells; _t++) {
          if (SearchArgs[_t] !== "" && occurence[_t] < 2) {
            isRowValid = false;
          }
        } //for t
      } //if

      if (isRowValid === false) row[k].style.display = "none";else row[k].style.display = "";
    } // for k
  }
function Filter(e) {
    if (typeof document === 'undefined') return;
    var id = e.target.getAttribute("id").split("_")[1];
    var SearchFlt = getFilters(id);
    var t = document.getElementById(id);
    var SearchArgs = [];
    var ncells = getCellsNb(id);

    for (var i in SearchFlt) {
      SearchArgs.push(document.getElementById(SearchFlt[i]).value.toLowerCase());
    }var start_row = getStartRow(id);
    var row = t.getElementsByTagName("tr");

    for (var k = start_row; k < row.length; k++) {
      /*** if table already filtered some rows are not visible ***/
      if (row[k].style.display === "none") row[k].style.display = "";

      var cell = getChildElms(row[k]).childNodes;
      var nchilds = cell.length;
      var isRowValid = true;

      if (nchilds === ncells) {
        // checks if row has exact cell #
        var cell_value = [];
        var occurence = [];

        for (var j = 0; j < nchilds; j++) // this loop retrieves cell data
        {
          var cell_data = getCellText(cell[j]);
          cell_value.push(cell_data);

          if (SearchArgs[j] !== "") {
            occurence[j] = cell_data.split(SearchArgs[j]).length;
          }
        } //for j

        for (var _t = 0; _t < ncells; _t++) {
          if (SearchArgs[_t] !== "" && occurence[_t] < 2) {
            isRowValid = false;
          }
        } //for t
      } //if

      if (isRowValid === false) row[k].style.display = "none";else row[k].style.display = "";
    } // for k
  }
function Filter ( e ) { if ( typeof document === 'undefined' ) return ; var id = e . target . getAttribute ( "id" ) . split ( "_" ) [ 1 ] ; var SearchFlt = getFilters ( id ) ; var t = document . getElementById ( id ) ; var SearchArgs = [ ] ; var ncells = getCellsNb ( id ) ; for ( var i in SearchFlt ) { SearchArgs . push ( document . getElementById ( SearchFlt [ i ] ) . value . toLowerCase ( ) ) ; } var start_row = getStartRow ( id ) ; var row = t . getElementsByTagName ( "tr" ) ; for ( var k = start_row ; k < row . length ; k ++ ) { /*** if table already filtered some rows are not visible ***/ if ( row [ k ] . style . display === "none" ) row [ k ] . style . display = "" ; var cell = getChildElms ( row [ k ] ) . childNodes ; var nchilds = cell . length ; var isRowValid = true ; if ( nchilds === ncells ) { // checks if row has exact cell # var cell_value = [ ] ; var occurence = [ ] ; for ( var j = 0 ; j < nchilds ; j ++ ) // this loop retrieves cell data { var cell_data = getCellText ( cell [ j ] ) ; cell_value . push ( cell_data ) ; if ( SearchArgs [ j ] !== "" ) { occurence [ j ] = cell_data . split ( SearchArgs [ j ] ) . length ; } } //for j for ( var _t = 0 ; _t < ncells ; _t ++ ) { if ( SearchArgs [ _t ] !== "" && occurence [ _t ] < 2 ) { isRowValid = false ; } } //for t } //if if ( isRowValid === false ) row [ k ] . style . display = "none" ; else row [ k ] . style . display = "" ; } // for k }
/*====================================================
- gets search strings from this.SearchFlt array
- retrieves data from each td in every single tr
and compares to search string for current
column
- tr is hidden if all search strings are not
found
=====================================================
/ * ==================================================== - gets search strings from this . SearchFlt array - retrieves data from each td in every single tr and compares to search string for current column - tr is hidden if all search strings are not found =====================================================