From 8774c670ff9f41a0c53d4e070cb468235302b2bd Mon Sep 17 00:00:00 2001 From: Max Guglielmi Date: Sun, 23 Nov 2014 14:34:57 +1100 Subject: [PATCH] Added grid layout tests --- Gruntfile.js | 22 +- dist/filtergrid.css | 2 +- dist/tablefilter.js | 10 +- libs/sortabletable.js | 438 ++ src-es6/modules/gridLayout.js | 41 +- src/modules/gridLayout.js | 29 +- src/modules/gridLayout.js.map | 2 +- test/test-grid-layout.html | 7740 +++++++++++++++++++++++++++++++++ test/test-grid-layout.js | 30 + test/test-rows-counter.js | 5 +- 10 files changed, 8271 insertions(+), 48 deletions(-) create mode 100644 libs/sortabletable.js diff --git a/Gruntfile.js b/Gruntfile.js index 0c272534..30200823 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -10,7 +10,11 @@ module.exports = function (grunt) { // A list of files, which will be syntax-checked by JSHint jshint: { - src: ['Gruntfile.js', 'src/*.js'], + src: [ + 'Gruntfile.js', + '<%= source_folder %>*.js', + '!<%= source_folder %>sortabletable.js' + ], options: { jshintrc: '.jshintrc' } @@ -19,9 +23,9 @@ module.exports = function (grunt) { watch: { files: [ 'src-es6/**/*.js', - 'src/**/*.js', - 'src/**/*.css', - 'src/**/*.html' + '<%= source_folder %>**/*.js', + '<%= source_folder %>**/*.css', + '<%= source_folder %>**/*.html' ], tasks: ['dev'] }, @@ -33,15 +37,20 @@ module.exports = function (grunt) { requirejs: { compile: { options: { - baseUrl: 'src/', + baseUrl: '<%= source_folder %>', 'paths': { 'tf': '.' }, include: ['../libs/almond/almond', 'core'], - out: 'dist/tablefilter.js', + out: '<%= dist_folder %>tablefilter.js', wrap: { startFile: "src/start.frag", endFile: "src/end.frag" + }, + shim: { + 'SortableTable': { + exports: 'SortableTable' + } }/*, optimize: 'uglify2', preserveLicenseComments: false, @@ -101,6 +110,7 @@ module.exports = function (grunt) { copy: { main: { files: [ + { src: 'libs/sortabletable.js', dest: '<%= source_folder %>/sortabletable.js' }, { src: ['**'], cwd: '<%= source_folder %>TF_Modules/', dest: '<%= dist_folder %>TF_Modules/', expand: true }, { src: ['**'], cwd: '<%= source_folder %>TF_Themes/', dest: '<%= dist_folder %>TF_Themes/', expand: true } ] diff --git a/dist/filtergrid.css b/dist/filtergrid.css index 9707b3e4..b493db98 100644 --- a/dist/filtergrid.css +++ b/dist/filtergrid.css @@ -1,6 +1,6 @@ /*------------------------------------------------------------------------ - TableFilter stylesheet by Max Guglielmi - - (build date: Sun Nov 23 2014 00:56:49) + - (build date: Sun Nov 23 2014 14:31:03) - Edit below for your projects' needs ------------------------------------------------------------------------*/ diff --git a/dist/tablefilter.js b/dist/tablefilter.js index 8c439353..295cb194 100644 --- a/dist/tablefilter.js +++ b/dist/tablefilter.js @@ -1,10 +1,10 @@ /*------------------------------------------------------------------------ - TableFilter v3.0.0 by Max Guglielmi - - build date: Sun Nov 16 2014 10:15:55 + - build date: Sun Nov 23 2014 14:31:02 - http://tablefilter.free.fr - Copyright (c) 2014, Licensed under the MIT License ------------------------------------------------------------------------*/ -!function(a,b){"function"==typeof define&&define.amd?define(b):"object"==typeof exports?module.exports=b:a.TableFilter=b()}(this,function(){var requirejs,require,define;return function(a){function b(a,b){return r.call(a,b)}function c(a,b){var c,d,e,f,g,h,i,j,k,l,m,n=b&&b.split("/"),o=p.map,q=o&&o["*"]||{};if(a&&"."===a.charAt(0))if(b){for(n=n.slice(0,n.length-1),a=a.split("/"),g=a.length-1,p.nodeIdCompat&&t.test(a[g])&&(a[g]=a[g].replace(t,"")),a=n.concat(a),k=0;k0&&(a.splice(k-1,2),k-=2)}a=a.join("/")}else 0===a.indexOf("./")&&(a=a.substring(2));if((n||q)&&o){for(c=a.split("/"),k=c.length;k>0;k-=1){if(d=c.slice(0,k).join("/"),n)for(l=n.length;l>0;l-=1)if(e=o[n.slice(0,l).join("/")],e&&(e=e[d])){f=e,h=k;break}if(f)break;!i&&q&&q[d]&&(i=q[d],j=k)}!f&&i&&(f=i,h=j),f&&(c.splice(0,h,f),a=c.join("/"))}return a}function d(b,c){return function(){var d=s.call(arguments,0);return"string"!=typeof d[0]&&1===d.length&&d.push(null),k.apply(a,d.concat([b,c]))}}function e(a){return function(b){return c(b,a)}}function f(a){return function(b){n[a]=b}}function g(c){if(b(o,c)){var d=o[c];delete o[c],q[c]=!0,j.apply(a,d)}if(!b(n,c)&&!b(q,c))throw new Error("No "+c);return n[c]}function h(a){var b,c=a?a.indexOf("!"):-1;return c>-1&&(b=a.substring(0,c),a=a.substring(c+1,a.length)),[b,a]}function i(a){return function(){return p&&p.config&&p.config[a]||{}}}var j,k,l,m,n={},o={},p={},q={},r=Object.prototype.hasOwnProperty,s=[].slice,t=/\.js$/;l=function(a,b){var d,f=h(a),i=f[0];return a=f[1],i&&(i=c(i,b),d=g(i)),i?a=d&&d.normalize?d.normalize(a,e(b)):c(a,b):(a=c(a,b),f=h(a),i=f[0],a=f[1],i&&(d=g(i))),{f:i?i+"!"+a:a,n:a,pr:i,p:d}},m={require:function(a){return d(a)},exports:function(a){var b=n[a];return"undefined"!=typeof b?b:n[a]={}},module:function(a){return{id:a,uri:"",exports:n[a],config:i(a)}}},j=function(c,e,h,i){var j,k,p,r,s,t,u=[],v=typeof h;if(i=i||c,"undefined"===v||"function"===v){for(e=!e.length&&h.length?["require","exports","module"]:e,s=0;s]+>/g,"");return b=b.replace(/^\s+/,"").replace(/\s+$/,"")},c.create=function(a){if(a&&""!==a){var b=document.createElement(a),c=arguments;if(c.length>1)for(var d=0;d0){var d=document.cookie,e=d.indexOf(c);if(-1!==e){e+=c.length;var f=d.indexOf(";",e);-1===f&&(f=d.length),b=unescape(d.substring(e,f))}}return b},b.remove=function(a){this.write(a,"",-1)},b.valueToArray=function(a,b){b||(b=",");var c=this.read(a),d=c.split(b);return d},b.getValueByIndex=function(a,b,c){c||(c=",");var d=this.valueToArray(a,c);return d[b]},a.Cookie=b}),define("types",["exports"],function(a){var b={},c=void 0;b.isObj=function(a){var b=!1;return"string"==typeof a?window[a]&&"object"==typeof window[a]&&(b=!0):a&&"object"==typeof a&&(b=!0),b},b.isFn=function(a){return a&&a.constructor==Function},b.isArray=function(a){return a&&a.constructor==Array},b.isUndef=function(a){return a===c},a.Types=b}),define("array",["exports","string"],function(a,b){var c=b.Str,d={has:function(a,b,d){for(var e=void 0===d?!1:d,f=0;f2)return a;var b;return 99>=a&&a>50&&(b="19"+a),(50>a||"00"===a)&&(b="20"+a),b}function d(a){if(void 0===a)return 0;for(var b,c=["january","february","march","april","may","june","july","august","september","october","november","december","jan","feb","mar","apr","may","jun","jul","aug","sep","oct","nov","dec"],d=0;d11||23>b)&&(b-=12),1>b||b>12?0:b}if(b||(b="DMY"),!a||""===a)return new Date(1001,0,1);var e,f;switch(b.toUpperCase()){case"DDMMMYYYY":f=a.replace(/[- \/.]/g," ").split(" "),e=new Date(c(f[2]),d(f[1])-1,f[0]);break;case"DMY":f=a.replace(/^(0?[1-9]|[12][0-9]|3[01])([- \/.])(0?[1-9]|1[012])([- \/.])((\d\d)?\d\d)$/,"$1 $3 $5").split(" "),e=new Date(c(f[2]),f[1]-1,f[0]);break;case"MDY":f=a.replace(/^(0?[1-9]|1[012])([- \/.])(0?[1-9]|[12][0-9]|3[01])([- \/.])((\d\d)?\d\d)$/,"$1 $3 $5").split(" "),e=new Date(c(f[2]),f[0]-1,f[1]);break;case"YMD":f=a.replace(/^((\d\d)?\d\d)([- \/.])(0?[1-9]|1[012])([- \/.])(0?[1-9]|[12][0-9]|3[01])$/,"$1 $4 $6").split(" "),e=new Date(c(f[0]),f[1]-1,f[2]);break;default:f=a.replace(/^(0?[1-9]|[12][0-9]|3[01])([- \/.])(0?[1-9]|1[012])([- \/.])((\d\d)?\d\d)$/,"$1 $3 $5").split(" "),e=new Date(c(f[2]),f[1]-1,f[0])}return e}};a.DateHelper=b}),define("modules/loader",["exports","../dom","../types"],function(a,b,c){var d=function(a,b,c){b&&Object.defineProperties(a,b),c&&Object.defineProperties(a.prototype,c)},e=b.Dom,f=c.Types,g=window,h=function(){var a=function(a){var b=a.fObj;a.loaderTgtId=b.loader_target_id||null,a.loaderDiv=null,a.loaderText=b.loader_text||"Loading...",a.loaderHtml=b.loader_html||null,a.loaderCssClass=b.loader_css_class||"loader",a.loaderCloseDelay=200,a.onShowLoader=f.isFn(b.on_show_loader)?b.on_show_loader:null,a.onHideLoader=f.isFn(b.on_hide_loader)?b.on_hide_loader:null,this.tf=a;var c=e.create("div",["id",a.prfxLoader+a.id]);c.className=a.loaderCssClass;var d=a.loaderTgtId?e.id(a.loaderTgtId):a.gridLayout?a.tblCont:a.tbl.parentNode;a.loaderTgtId?d.appendChild(c):d.insertBefore(c,a.tbl),a.loaderDiv=e.id(a.prfxLoader+a.id),a.loaderHtml?a.loaderDiv.innerHTML=a.loaderHtml:a.loaderDiv.appendChild(e.text(a.loaderText))};return d(a,null,{show:{writable:!0,value:function(a){function b(){c.loaderDiv&&(c.onShowLoader&&"none"!==a&&c.onShowLoader.call(null,c),c.loaderDiv.style.display=a,c.onHideLoader&&"none"===a&&c.onHideLoader.call(null,c))}if(this.tf.loader&&this.tf.loaderDiv&&this.tf.loaderDiv.style.display!==a){var c=this.tf,d="none"===a?this.tf.loaderCloseDelay:1;g.setTimeout(b,d)}}},remove:{writable:!0,value:function(){if(this.tf.loaderDiv){var a=this.tf.loaderTgtId?e.id(this.tf.loaderTgtId):this.tf.gridLayout?this.tf.tblCont:this.tf.tbl.parentNode;a.removeChild(this.tf.loaderDiv),this.tf.loaderDiv=null}}}}),a}();a.Loader=h}),define("modules/rowsCounter",["exports","../dom","../types","../helpers"],function(a,b,c,d){var e=function(a,b,c){b&&Object.defineProperties(a,b),c&&Object.defineProperties(a.prototype,c)},f=b.Dom,g=c.Types,h=d.Helpers,i=function(){var a=function(a){var b=a.fObj;this.rowsCounterTgtId=b.rows_counter_target_id||null,this.rowsCounterDiv=null,this.rowsCounterSpan=null,this.rowsCounterText=b.rows_counter_text||"Rows: ",this.fromToTextSeparator=b.from_to_text_separator||"-",this.overText=b.over_text||" / ",this.totRowsCssClass=b.tot_rows_css_class||"tot",this.onBeforeRefreshCounter=g.isFn(b.on_before_refresh_counter)?b.on_before_refresh_counter:null,this.onAfterRefreshCounter=g.isFn(b.on_after_refresh_counter)?b.on_after_refresh_counter:null,this.tf=a};return e(a,null,{init:{writable:!0,value:function(){var a=this.tf;if((a.hasGrid||a.isFirstLoad)&&!this.rowsCounterSpan){var b=f.create("div",["id",a.prfxCounter+a.id]);b.className=this.totRowsCssClass;var c=f.create("span",["id",a.prfxTotRows+a.id]),d=f.create("span",["id",a.prfxTotRowsTxt+a.id]);d.appendChild(f.text(this.rowsCounterText)),this.rowsCounterTgtId||a.SetTopDiv();var e=this.rowsCounterTgtId?f.id(this.rowsCounterTgtId):a.lDiv;this.rowsCounterDiv&&h.isIE()&&(this.rowsCounterDiv.outerHTML=""),this.rowsCounterTgtId?(e.appendChild(d),e.appendChild(c)):(b.appendChild(d),b.appendChild(c),e.appendChild(b)),this.rowsCounterDiv=b,this.rowsCounterSpan=c,this.refresh()}}},refresh:{writable:!0,value:function(a){if(this.rowsCounterSpan){var b=this.tf;this.onBeforeRefreshCounter&&this.onBeforeRefreshCounter.call(null,b,this.rowsCounterSpan);var c;if(b.paging){var d=parseInt(b.startPagingRow,10)+(b.nbVisibleRows>0?1:0),e=d+b.pagingLength-1<=b.nbVisibleRows?d+b.pagingLength-1:b.nbVisibleRows;c=d+this.fromToTextSeparator+e+this.overText+b.nbVisibleRows}else c=a&&""!==a?a:b.nbFilterableRows-b.nbHiddenRows-(b.hasVisibleRows?b.visibleRows.length:0);this.rowsCounterSpan.innerHTML=c,this.onAfterRefreshCounter&&this.onAfterRefreshCounter.call(null,b,this.rowsCounterSpan,c)}}},destroy:{writable:!0,value:function(){var a=this.tf;a.hasGrid&&this.rowsCounterSpan&&(!this.rowsCounterTgtId&&this.rowsCounterDiv?h.isIE()?this.rowsCounterDiv.outerHTML="":this.rowsCounterDiv.parentNode.removeChild(this.rowsCounterDiv):f.id(this.rowsCounterTgtId).innerHTML="",this.rowsCounterSpan=null,this.rowsCounterDiv=null)}}}),a}();a.RowsCounter=i}),define("modules/alternateRows",["exports","../dom"],function(a,b){var c=function(a,b,c){b&&Object.defineProperties(a,b),c&&Object.defineProperties(a.prototype,c)},d=b.Dom,e=function(){var a=function(a){var b=a.fObj;this.evenCss=b.even_row_css_class||"even",this.oddCss=b.odd_row_css_class||"odd",this.tf=a};return c(a,null,{init:{writable:!0,value:function(){if(this.tf.hasGrid||this.tf.isFirstLoad)for(var a=(this.tf.tbl.rows,null===this.tf.validRowsIndex),b=a?this.tf.refRow:0,c=a?this.tf.nbFilterableRows+b:this.tf.validRowsIndex.length,d=0,e=b;c>e;e++){var f=a?e:this.tf.validRowsIndex[e];this.setRowBg(f,d),d++}}},setRowBg:{writable:!0,value:function(a,b){if(this.tf.alternateBgs&&!isNaN(a)){var c=this.tf.tbl.rows,e=b?b:a;this.removeRowBg(a),d.addClass(c[a],e%2?this.evenCss:this.oddCss)}}},removeRowBg:{writable:!0,value:function(a){if(!isNaN(a)){var b=this.tf.tbl.rows;d.removeClass(b[a],this.oddCss),d.removeClass(b[a],this.evenCss)}}},remove:{writable:!0,value:function(){if(this.tf.hasGrid){for(var a=(this.tf.tbl.rows,this.tf.refRow);a=jj;jj++)ucolIndex[jj]===colIndex[ii]&&(saved=1);0===saved&&(ucolMax++,ucolIndex[ucolMax]=colIndex[ii])}if("object"==Str.lower(typeof labelId)&&"object"==Str.lower(typeof colIndex)&&"object"==Str.lower(typeof operation))for(var row=this.tf.tbl.rows,colvalues=[],ucol=0;ucolMax>=ucol;ucol++){colvalues.push(this.tf.GetColValues(ucolIndex[ucol],!0,excludeRow));for(var result,nbvalues=0,temp,meanValue=0,sumValue=0,minValue=null,maxValue=null,q1Value=null,medValue=null,q3Value=null,meanFlag=0,sumFlag=0,minFlag=0,maxFlag=0,q1Flag=0,medFlag=0,q3Flag=0,theList=[],opsThisCol=[],decThisCol=[],labThisCol=[],oTypeThisCol=[],mThisCol=-1,k=0;kmaxValue?parseFloat(cvalue):maxValue))}if(1===meanFlag&&(meanValue=sumValue/nbvalues),1===medFlag){var aux=0;nbvalues%2===1?(aux=Math.floor(nbvalues/2),medValue=theList[aux]):medValue=(theList[nbvalues/2]+theList[nbvalues/2-1])/2}var posa;if(1===q1Flag&&(posa=0,posa=Math.floor(nbvalues/4),q1Value=4*posa==nbvalues?(theList[posa-1]+theList[posa])/2:theList[posa]),1===q3Flag){posa=0;var posb=0;posa=Math.floor(nbvalues/4),4*posa===nbvalues?(posb=3*posa,q3Value=(theList[posb]+theList[posb-1])/2):q3Value=theList[nbvalues-posa-1]}for(var i=0;mThisCol>=i;i++){switch(opsThisCol[i]){case"mean":result=meanValue;break;case"sum":result=sumValue;break;case"min":result=minValue;break;case"max":result=maxValue;break;case"median":result=medValue;break;case"q1":result=q1Value;break;case"q3":result=q3Value}var precision=isNaN(decThisCol[i])?2:decThisCol[i];if(oTypeThisCol&&result){if(result=result.toFixed(precision),Dom.id(labThisCol[i]))switch(Str.lower(oTypeThisCol)){case"innerhtml":Dom.id(labThisCol[i]).innerHTML=isNaN(result)||!isFinite(result)||0===nbvalues?".":result;break;case"setvalue":Dom.id(labThisCol[i]).value=result;break;case"createtextnode":var oldnode=Dom.id(labThisCol[i]).firstChild,txtnode=Dom.text(result);Dom.id(labThisCol[i]).replaceChild(txtnode,oldnode)}}else try{Dom.id(labThisCol[i]).innerHTML=isNaN(result)||!isFinite(result)||0===nbvalues?".":result.toFixed(precision)}catch(e){}}var totRow=totRowIndex&&totRowIndex[ucol]?row[totRowIndex[ucol]]:null;totRow&&(totRow.style.display="")}this.tf.onAfterOperation&&this.tf.onAfterOperation.call(null,this.tf)}}}}),ColOps}();exports.ColOps=ColOps}),define("core",["require","event","dom","string","cookie","types","array","helpers","date","modules/loader","modules/rowsCounter","modules/alternateRows","modules/colOps"],function(a){function b(a){if(0!==arguments.length){if(this.id=a,this.version="3.0",this.year=(new Date).getFullYear(),this.tbl=m.id(a),this.startRow=null,this.refRow=null,this.headersRow=null,this.fObj=null,this.nbFilterableRows=null,this.nbRows=null,this.nbCells=null,this.hasGrid=!1,this.enableModules=!1,!this.tbl||"table"!==n.lower(this.tbl.nodeName)||0===this.GetRowsNb())throw new Error("Could not instantiate TF object: HTML table not found.");if(arguments.length>1)for(var b=0;b1?this.filtersRowIndex=this.headersRow+1:(this.filtersRowIndex=1,this.headersRow=0)),this.fltCellTag="th"!==e.filters_cell_tag||"td"!==e.filters_cell_tag?"td":e.filters_cell_tag,this.fltIds=[],this.fltElms=[],this.searchArgs=null,this.tblData=[],this.validRowsIndex=null,this.fltGridEl=null,this.isFirstLoad=!0,this.infDiv=null,this.lDiv=null,this.rDiv=null,this.mDiv=null,this.contDiv=null,this.infDivCssClass=e.inf_div_css_class||"inf",this.lDivCssClass=e.left_div_css_class||"ldiv",this.rDivCssClass=e.right_div_css_class||"rdiv",this.mDivCssClass=e.middle_div_css_class||"mdiv",this.contDivCssClass=e.content_div_css_class||"cont",this.stylesheet=e.stylesheet||this.basePath+"filtergrid.css",this.stylesheetId=this.id+"_style",this.fltsRowCssClass=e.flts_row_css_class||"fltrow",this.enableIcons=e.enable_icons===!1?!1:!0,this.alternateBgs=e.alternate_rows===!0?!0:!1,this.hasColWidth=e.col_width===!0?!0:!1,this.colWidth=this.hasColWidth?e.col_width:null,this.fixedHeaders=e.fixed_headers===!0?!0:!1,this.tBodyH=isNaN(e.tbody_height)?200:e.tbody_height,this.fltCssClass=e.flt_css_class||"flt",this.fltMultiCssClass=e.flt_multi_css_class||"flt_multi",this.fltSmallCssClass=e.flt_small_css_class||"flt_s",this.singleFltCssClass=e.single_flt_css_class||"single_flt",this.isStartBgAlternate=!0,this.enterKey=e.enter_key===!1?!1:!0,this.isModFilterFn=e.mod_filter_fn===!0?!0:!1,this.modFilterFn=this.isModFilterFn?e.mod_filter_fn:null,this.onBeforeFilter=p.isFn(e.on_before_filter)?e.on_before_filter:null,this.onAfterFilter=p.isFn(e.on_after_filter)?e.on_after_filter:null,this.matchCase=e.match_case===!0?!0:!1,this.exactMatch=e.exact_match===!0?!0:!1,this.refreshFilters=e.refresh_filters===!0?!0:!1,this.disableExcludedOptions=e.disable_excluded_options===!0?!0:!1,this.activeFlt=null,this.activeFilterId=null,this.hasColOperation=e.col_operation?!0:!1,this.colOperation=null,this.hasVisibleRows=e.rows_always_visible?!0:!1,this.visibleRows=this.hasVisibleRows?e.rows_always_visible:[],this.searchType=e.search_type||"include",this.isExternalFlt=e.external_flt_grid===!0?!0:!1,this.externalFltTgtIds=e.external_flt_grid_ids||null,this.externalFltEls=[],this.execDelay=isNaN(e.exec_delay)?100:parseInt(e.exec_delay,10),this.status=e.status===!0?!0:!1,this.onFiltersLoaded=p.isFn(e.on_filters_loaded)?e.on_filters_loaded:null,this.singleSearchFlt=e.single_search_filter===!0?!0:!1,this.onRowValidated=p.isFn(e.on_row_validated)?e.on_row_validated:null,this.customCellDataCols=e.custom_cell_data_cols?e.custom_cell_data_cols:[],this.customCellData=p.isFn(e.custom_cell_data)?e.custom_cell_data:null,this.inpWatermark=e.input_watermark||"",this.inpWatermarkCssClass=e.input_watermark_css_class||"fltWatermark",this.isInpWatermarkArray=p.isArray(e.input_watermark),this.toolBarTgtId=e.toolbar_target_id||null,this.helpInstructions=e.help_instructions||null,this.popUpFilters=e.popup_filters===!0?!0:!1,this.markActiveColumns=e.mark_active_columns===!0?!0:!1,this.activeColumnsCssClass=e.active_columns_css_class||"activeHeader",this.onBeforeActiveColumn=p.isFn(e.on_before_active_column)?e.on_before_active_column:null,this.onAfterActiveColumn=p.isFn(e.on_after_active_column)?e.on_after_active_column:null,this.displayAllText=e.display_all_text||"",this.enableSlcResetFilter=e.enable_slc_reset_filter===!1?!1:!0,this.enableEmptyOption=e.enable_empty_option===!0?!0:!1,this.emptyText=e.empty_text||"(Empty)",this.enableNonEmptyOption=e.enable_non_empty_option===!0?!0:!1,this.nonEmptyText=e.non_empty_text||"(Non empty)",this.onSlcChange=e.on_change===!1?!1:!0,this.sortSlc=e.sort_select===!1?!1:!0,this.isSortNumAsc=e.sort_num_asc===!0?!0:!1,this.sortNumAsc=this.isSortNumAsc?e.sort_num_asc:null,this.isSortNumDesc=e.sort_num_desc===!0?!0:!1,this.sortNumDesc=this.isSortNumDesc?e.sort_num_desc:null,this.slcFillingMethod=e.slc_filling_method||"createElement",this.fillSlcOnDemand=e.fill_slc_on_demand===!0?!0:!1,this.activateSlcTooltip=e.activate_slc_tooltip||"Click to activate",this.multipleSlcTooltip=e.multiple_slc_tooltip||"Use Ctrl key for multiple selections",this.hasCustomSlcOptions=p.isObj(e.custom_slc_options)?!0:!1,this.customSlcOptions=p.isArray(e.custom_slc_options)?e.custom_slc_options:null,this.onBeforeOperation=p.isFn(e.on_before_operation)?e.on_before_operation:null,this.onAfterOperation=p.isFn(e.on_after_operation)?e.on_after_operation:null,this.checkListDiv=[],this.checkListDivCssClass=e.div_checklist_css_class||"div_checklist",this.checkListCssClass=e.checklist_css_class||"flt_checklist",this.checkListItemCssClass=e.checklist_item_css_class||"flt_checklist_item",this.checkListSlcItemCssClass=e.checklist_selected_item_css_class||"flt_checklist_slc_item",this.activateCheckListTxt=e.activate_checklist_text||"Click to load filter data",this.checkListItemDisabledCssClass=e.checklist_item_disabled_css_class||"flt_checklist_item_disabled",this.enableCheckListResetFilter=e.enable_checklist_reset_filter===!1?!1:!0,this.rgxOperator=e.regexp_operator||"rgx:",this.emOperator=e.empty_operator||"[empty]",this.nmOperator=e.nonempty_operator||"[nonempty]",this.orOperator=e.or_operator||"||",this.anOperator=e.and_operator||"&&",this.grOperator=e.greater_operator||">",this.lwOperator=e.lower_operator||"<",this.leOperator=e.lower_equal_operator||"<=",this.geOperator=e.greater_equal_operator||">=",this.dfOperator=e.different_operator||"!",this.lkOperator=e.like_operator||"*",this.eqOperator=e.equal_operator||"=",this.stOperator=e.start_with_operator||"{",this.enOperator=e.end_with_operator||"}",this.curExp=e.cur_exp||"^[¥£€$]",this.separator=e.separator||",",this.rowsCounter=e.rows_counter===!0?!0:!1,this.statusBar=e.status_bar===!0?!0:!1,this.loader=e.loader===!0?!0:!1,this.displayBtn=e.btn===!0?!0:!1,this.btnText=e.btn_text||(this.enableIcons?"":"Go"),this.btnCssClass=e.btn_css_class||(this.enableIcons?"btnflt_icon":"btnflt"),this.btnReset=e.btn_reset===!0?!0:!1,this.btnResetCssClass=e.btn_reset_css_class||"reset",this.onBeforeReset=p.isFn(e.on_before_reset)?e.on_before_reset:null,this.onAfterReset=p.isFn(e.on_after_reset)?e.on_after_reset:null,this.paging=e.paging===!0?!0:!1,this.hasResultsPerPage=e.results_per_page===!0?!0:!1,this.btnPageCssClass=e.paging_btn_css_class||"pgInp",this.pagingSlc=null,this.resultsPerPage=null,this.resultsPerPageSlc=null,this.isPagingRemoved=!1,this.nbVisibleRows=0,this.nbHiddenRows=0,this.startPagingRow=0,this.nbPages=0,this.currentPageNb=1,this.sort=e.sort===!0?!0:!1,this.isSortEnabled=!1,this.sorted=!1,this.sortConfig=e.sort_config||{},this.sortConfig.name=void 0!==this.sortConfig.name?e.sort_config.name:"sortabletable",this.sortConfig.src=void 0!==this.sortConfig.src?e.sort_config.src:this.basePath+"sortabletable.js",this.sortConfig.adapterSrc=void 0!==this.sortConfig.adapter_src?e.sort_config.adapter_src:this.basePath+"tfAdapter.sortabletable.js",this.sortConfig.initialize=void 0!==this.sortConfig.initialize?e.sort_config.initialize:function(a){a.SetSortTable&&a.SetSortTable()},this.sortConfig.sortTypes=p.isArray(this.sortConfig.sort_types)?e.sort_config.sort_types:[],this.sortConfig.sortCol=void 0!==this.sortConfig.sort_col?e.sort_config.sort_col:null,this.sortConfig.asyncSort=this.sortConfig.async_sort===!0?!0:!1,this.sortConfig.triggerIds=p.isArray(this.sortConfig.sort_trigger_ids)?e.sort_config.sort_trigger_ids:[],this.selectable=e.selectable===!0?!0:!1,this.editable=e.editable===!0?!0:!1,this.ezEditTableConfig=e.ezEditTable_config||{},this.ezEditTableConfig.name=void 0!==this.ezEditTableConfig.name?e.ezEditTable_config.name:"ezedittable",this.ezEditTableConfig.src=void 0!==this.ezEditTableConfig.src?e.ezEditTable_config.src:this.basePath+"ezEditTable/ezEditTable.js",this.ezEditTableConfig.loadStylesheet=this.ezEditTableConfig.loadStylesheet===!0?!0:!1,this.ezEditTableConfig.stylesheet=this.ezEditTableConfig.stylesheet||this.basePath+"ezEditTable/ezEditTable.css",this.ezEditTableConfig.stylesheetName=void 0!==this.ezEditTableConfig.stylesheetName?e.ezEditTable_config.stylesheetName:"ezEditTableCss",this.ezEditTableConfig.err='Failed to instantiate EditTable object.\n"ezEditTable" module may not be available.',this.onKeyUp=e.on_keyup===!0?!0:!1,this.onKeyUpDelay=isNaN(e.on_keyup_delay)?900:e.on_keyup_delay,this.isUserTyping=null,this.onKeyUpTimer=void 0,this.highlightKeywords=e.highlight_keywords===!0?!0:!1,this.highlightCssClass=e.highlight_css_class||"keyword",this.highlightedNodes=[],this.defaultDateType=e.default_date_type||"DMY",this.thousandsSeparator=e.thousands_separator||",",this.decimalSeparator=e.decimal_separator||".",this.hasColNbFormat=e.col_number_format===!0?!0:!1,this.colNbFormat=p.isArray(this.hasColNbFormat)?e.col_number_format:null,this.hasColDateType=e.col_date_type===!0?!0:!1,this.colDateType=p.isArray(this.hasColDateType)?e.col_date_type:null,this.msgFilter=e.msg_filter||"Filtering data...",this.msgPopulate=e.msg_populate||"Populating filter...",this.msgPopulateCheckList=e.msg_populate_checklist||"Populating list...",this.msgChangePage=e.msg_change_page||"Collecting paging data...",this.msgClear=e.msg_clear||"Clearing filters...",this.msgChangeResults=e.msg_change_results||"Changing results per page...",this.msgResetValues=e.msg_reset_grid_values||"Re-setting filters values...",this.msgResetPage=e.msg_reset_page||"Re-setting page...",this.msgResetPageLength=e.msg_reset_page_length||"Re-setting page length...",this.msgSort=e.msg_sort||"Sorting data...",this.msgLoadExtensions=e.msg_load_extensions||"Loading extensions...",this.msgLoadThemes=e.msg_load_themes||"Loading theme(s)...",this.prfxTf="TF",this.prfxFlt="flt",this.prfxValButton="btn",this.prfxInfDiv="inf_",this.prfxLDiv="ldiv_",this.prfxRDiv="rdiv_",this.prfxMDiv="mdiv_",this.prfxContentDiv="cont_",this.prfxCheckListDiv="chkdiv_",this.prfxSlcPages="slcPages_",this.prfxSlcResults="slcResults_",this.prfxSlcResultsTxt="slcResultsTxt_",this.prfxBtnNextSpan="btnNextSpan_",this.prfxBtnPrevSpan="btnPrevSpan_",this.prfxBtnLastSpan="btnLastSpan_",this.prfxBtnFirstSpan="btnFirstSpan_",this.prfxBtnNext="btnNext_",this.prfxBtnPrev="btnPrev_",this.prfxBtnLast="btnLast_",this.prfxBtnFirst="btnFirst_",this.prfxPgSpan="pgspan_",this.prfxPgBeforeSpan="pgbeforespan_",this.prfxPgAfterSpan="pgafterspan_",this.prfxCounter="counter_",this.prfxTotRows="totrows_span_",this.prfxTotRowsTxt="totRowsTextSpan_",this.prfxResetSpan="resetspan_",this.prfxLoader="load_",this.prfxStatus="status_",this.prfxStatusSpan="statusSpan_",this.prfxStatusTxt="statusText_",this.prfxCookieFltsValues="tf_flts_",this.prfxCookiePageNb="tf_pgnb_",this.prfxCookiePageLen="tf_pglen_",this.prfxMainTblCont="gridCont_",this.prfxTblCont="tblCont_",this.prfxHeadTblCont="tblHeadCont_",this.prfxHeadTbl="tblHead_",this.prfxGridFltTd="_td_",this.prfxGridTh="tblHeadTh_",this.prfxHelpSpan="helpSpan_",this.prfxHelpDiv="helpDiv_",this.prfxPopUpSpan="popUpSpan_",this.prfxPopUpDiv="popUpDiv_",this.hasStoredValues=!1,this.rememberGridValues=e.remember_grid_values===!0?!0:!1,this.fltsValuesCookie=this.prfxCookieFltsValues+this.id,this.rememberPageNb=this.paging&&e.remember_page_number?!0:!1,this.pgNbCookie=this.prfxCookiePageNb+this.id,this.rememberPageLen=this.paging&&e.remember_page_length?!0:!1,this.pgLenCookie=this.prfxCookiePageLen+this.id,this.cookieDuration=isNaN(e.set_cookie_duration)?1e5:parseInt(e.set_cookie_duration,10),this.hasExtensions=e.extensions===!0?!0:!1,this.extensions=this.hasExtensions?e.extensions:null,this.enableDefaultTheme=e.enable_default_theme===!0?!0:!1,this.hasThemes=e.enable_default_theme||e.themes&&p.isObj(e.themes)?!0:!1,this.themes=this.hasThemes?e.themes:null,this.themesPath=e.themes_path||this.basePath+"TF_Themes/",this.Cpt={loader:null,alternateRows:null,colOps:null,rowsCounter:null}; -var o=this;this.Evt={name:{filter:"Filter",populateselect:"Populate",populatechecklist:"PopulateCheckList",changepage:"ChangePage",clear:"Clear",changeresultsperpage:"ChangeResults",resetvalues:"ResetValues",resetpage:"ResetPage",resetpagelength:"ResetPageLength",sort:"Sort",loadextensions:"LoadExtensions",loadthemes:"LoadThemes"},getKeyCode:function(a){return a.charCode?a.charCode:a.keyCode?a.keyCode:a.which?a.which:0},_DetectKey:function(a){if(o.enterKey){var b=a||k.event;if(b){var c=o.Evt.getKeyCode(b);13===c?(o._Filter(),l.cancel(b),l.stop(b)):(o.isUserTyping=!0,k.clearInterval(o.onKeyUpTimer),o.onKeyUpTimer=void 0)}}},_OnKeyUp:function(a){function b(){k.clearInterval(o.onKeyUpTimer),o.onKeyUpTimer=void 0,o.isUserTyping||(o.Filter(),o.isUserTyping=null)}if(o.onKeyUp){var c=a||k.event,d=o.Evt.getKeyCode(c);o.isUserTyping=!1,13!==d&&9!==d&&27!==d&&38!==d&&40!==d?void 0===o.onKeyUpTimer&&(o.onKeyUpTimer=k.setInterval(b,o.onKeyUpDelay)):(k.clearInterval(o.onKeyUpTimer),o.onKeyUpTimer=void 0)}},_OnKeyDown:function(){o.onKeyUp&&(o.isUserTyping=!0)},_OnInpBlur:function(){o.onKeyUp&&(o.isUserTyping=!1,k.clearInterval(o.onKeyUpTimer)),""===this.value&&""!==o.inpWatermark&&(this.value=o.isInpWatermarkArray?o.inpWatermark[this.getAttribute("ct")]:o.inpWatermark,m.addClass(this,o.inpWatermarkCssClass)),o.ezEditTable&&(o.editable&&o.ezEditTable.Editable.Set(),o.selectable&&o.ezEditTable.Selection.Set())},_OnInpFocus:function(a){var b=a||k.event;if(o.activeFilterId=this.getAttribute("id"),o.activeFlt=m.id(o.activeFilterId),o.isInpWatermarkArray){var c=o.inpWatermark[this.getAttribute("ct")];this.value===c&&""!==c&&(this.value="",m.removeClass(this,o.inpWatermarkCssClass))}else this.value===o.inpWatermark&&""!==o.inpWatermark&&(this.value="",m.removeClass(this,o.inpWatermarkCssClass));o.popUpFilters&&(l.cancel(b),l.stop(b)),o.ezEditTable&&(o.editable&&o.ezEditTable.Editable.Remove(),o.selectable&&o.ezEditTable.Selection.Remove())},_OnSlcFocus:function(a){var b=a||k.event;if(o.activeFilterId=this.getAttribute("id"),o.activeFlt=m.id(o.activeFilterId),o.fillSlcOnDemand&&"0"===this.getAttribute("filled")){var c=this.getAttribute("ct");o.PopulateSelect(c),r.isIE()||this.setAttribute("filled","1")}o.popUpFilters&&(l.cancel(b),l.stop(b))},_OnSlcChange:function(a){var b=o.activeFlt.getAttribute("colIndex");if(!o.activeFlt||!b||o["col"+b]!==o.fltTypeCheckList||o.Evt._OnSlcChange.caller){var c=a||k.event;o.popUpFilters&&l.stop(c),o.onSlcChange&&o.Filter()}},_OnSlcBlur:function(){},_OnCheckListChange:function(a){o.Evt._OnCheckListChange.caller&&o.Evt._OnSlcChange(a)},_OnCheckListClick:function(){if(o.fillSlcOnDemand&&"0"===this.getAttribute("filled")){var a=this.getAttribute("ct");o.PopulateCheckList(a),o.checkListDiv[a].onclick=null,o.checkListDiv[a].title=""}},_OnCheckListFocus:function(){o.activeFilterId=this.firstChild.getAttribute("id"),o.activeFlt=m.id(o.activeFilterId)},_OnCheckListBlur:function(){},_OnBtnClick:function(){o.Filter()},_OnSlcPagesChangeEvt:null,_EnableSlc:function(){this.firstChild.disabled=!1,this.firstChild.focus(),this.onclick=null},_Clear:function(){o.ClearFilters()},_OnHelpBtnClick:function(){o._ToggleHelp()},_Paging:{nextEvt:null,prevEvt:null,lastEvt:null,firstEvt:null}}}}function c(a,b){return a-b}function d(a,b){return b-a}function e(a,b){var c=n.lower(a),d=n.lower(b);return d>c?-1:c>d?1:0}function f(a,b){if(a){b||(b="us");var c=a;return c="us"===n.lower(b)?+c.replace(/[^\d\.-]/g,""):+c.replace(/[^\d\,-]/g,"").replace(",",".")}}function g(a,b){for(var c=!1,d=b?b:"script",e="script"==d?"src":"href",f=m.tag(v,d),g=0;g0?g[0].insertRow(this.filtersRowIndex):this.tbl.insertRow(this.filtersRowIndex),this.headersRow>1&&this.filtersRowIndex<=this.headersRow&&!this.popUpFilters&&this.headersRow++,this.popUpFilters&&this.headersRow++,this.fixedHeaders&&this.SetFixedHeaders(),f.className=this.fltsRowCssClass,this.isExternalFlt&&(!this.gridLayout||this.popUpFilters)&&(f.style.display="none")}this.nbFilterableRows=this.GetRowsNb(),this.nbVisibleRows=this.nbFilterableRows,this.nbRows=this.tbl.rows.length;for(var h=0;d>h;h++){var i=m.create(this.fltCellTag),j=this["col"+h],k=this.isExternalFlt&&this.externalFltTgtIds?this.externalFltTgtIds[h]:null;if(this.singleSearchFlt&&(i.colSpan=this.nbCells),this.gridLayout||f.appendChild(i),b=h==d-1&&this.displayBtn?this.fltSmallCssClass:this.fltCssClass,this.popUpFilters&&this.SetPopupFilter(h),void 0===j&&(j=void 0===c["col_"+h]?this.fltTypeInp:n.lower(c["col_"+h])),this.singleSearchFlt&&(j=this.fltTypeInp,b=this.singleFltCssClass),j===this.fltTypeSlc||j===this.fltTypeMulti){var l=m.create(this.fltTypeSlc,["id",this.prfxFlt+h+"_"+this.id],["ct",h],["filled","0"]);if(j===this.fltTypeMulti&&(l.multiple=this.fltTypeMulti,l.title=this.multipleSlcTooltip),l.className=n.lower(j)===this.fltTypeSlc?b:this.fltMultiCssClass,k?(m.id(k).appendChild(l),this.externalFltEls.push(l)):i.appendChild(l),this.fltIds.push(this.prfxFlt+h+"_"+this.id),this.fillSlcOnDemand||this._PopulateSelect(h),l.onkeypress=this.Evt._DetectKey,l.onchange=this.Evt._OnSlcChange,l.onfocus=this.Evt._OnSlcFocus,l.onblur=this.Evt._OnSlcBlur,this.fillSlcOnDemand){var p=m.createOpt(this.displayAllText,"");l.appendChild(p)}this.fillSlcOnDemand&&r.isIE()&&(l.disabled=!0,l.title=this.activateSlcTooltip,l.parentNode.onclick=this.Evt._EnableSlc,j===this.fltTypeMulti&&this.__deferMultipleSelection(l,0))}else if(j===this.fltTypeCheckList){var q=m.create("div",["id",this.prfxCheckListDiv+h+"_"+this.id],["ct",h],["filled","0"]);q.className=this.checkListDivCssClass,k?(m.id(k).appendChild(q),this.externalFltEls.push(q)):i.appendChild(q),this.checkListDiv[h]=q,this.fltIds.push(this.prfxFlt+h+"_"+this.id),this.fillSlcOnDemand||this._PopulateCheckList(h),q.onclick=this.Evt._OnCheckListFocus,this.fillSlcOnDemand&&(q.onclick=this.Evt._OnCheckListClick,q.appendChild(m.text(this.activateCheckListTxt)))}else{var s=j===this.fltTypeInp?"text":"hidden",t=m.create(this.fltTypeInp,["id",this.prfxFlt+h+"_"+this.id],["type",s],["ct",h]);if("hidden"!=s&&(t.value=this.isInpWatermarkArray?this.inpWatermark[h]:this.inpWatermark),t.className=b,""!==this.inpWatermark&&m.addClass(t,this.inpWatermarkCssClass),t.onfocus=this.Evt._OnInpFocus,k?(m.id(k).appendChild(t),this.externalFltEls.push(t)):i.appendChild(t),this.fltIds.push(this.prfxFlt+h+"_"+this.id),t.onkeypress=this.Evt._DetectKey,t.onkeydown=this.Evt._OnKeyDown,t.onkeyup=this.Evt._OnKeyUp,t.onblur=this.Evt._OnInpBlur,this.rememberGridValues){var u=o.read(this.fltsValuesCookie),v=new RegExp(this.separator,"g"),w=u.split(v);" "!=w[h]&&this.SetFilterValue(h,w[h],!1)}}if(h==d-1&&this.displayBtn){var x=m.create(this.fltTypeInp,["id",this.prfxValButton+h+"_"+this.id],["type","button"],["value",this.btnText]);x.className=this.btnCssClass,k?m.id(k).appendChild(x):i.appendChild(x),x.onclick=this.Evt._OnBtnClick}}}else this.__resetGrid();else this.refRow=this.refRow-1,this.gridLayout&&(this.refRow=0),this.nbFilterableRows=this.GetRowsNb(),this.nbVisibleRows=this.nbFilterableRows,this.nbRows=this.nbFilterableRows+this.refRow;if(this.rowsCounter){var y=a("modules/rowsCounter").RowsCounter;this.Cpt.rowsCounter=new y(this),this.Cpt.rowsCounter.init()}if(this.statusBar&&this.SetStatusBar(),this.fixedHeaders&&!this.isFirstLoad&&this.SetFixedHeaders(),this.paging&&this.SetPaging(),this.hasResultsPerPage&&this.paging&&this.SetResultsPerPage(),this.btnReset&&this.SetResetBtn(),this.helpInstructions&&this.SetHelpInstructions(),this.hasColWidth&&!this.gridLayout&&this.SetColWidths(),this.alternateBgs&&this.isStartBgAlternate){var z=a("modules/alternateRows").AlternateRows;this.Cpt.alternateRows=new z(this),this.Cpt.alternateRows.init()}if(this.hasColOperation){var A=a("modules/colOps").ColOps;this.Cpt.colOps=new A(this),this.Cpt.colOps.calc()}(this.sort||this.gridLayout)&&this.SetSort(),(this.selectable||this.editable)&&this.SetEditable(),this.isFirstLoad=!1,this.hasGrid=!0,(this.rememberGridValues||this.rememberPageLen||this.rememberPageNb)&&this.ResetValues(),this.gridLayout||m.addClass(this.tbl,this.prfxTf),this.loader&&this.Cpt.loader.show("none"),this.hasExtensions&&this.LoadExtensions(),this.onFiltersLoaded&&this.onFiltersLoaded.call(null,this)}},EvtManager:function(a,b){function c(){if(a){switch(a){case d.Evt.name.filter:d.isModFilterFn?d.modFilterFn.call(null,d):d._Filter();break;case d.Evt.name.populateselect:d.refreshFilters?d._PopulateSelect(e,!0):d._PopulateSelect(e,!1,f,g);break;case d.Evt.name.populatechecklist:d._PopulateCheckList(e,f,g);break;case d.Evt.name.changepage:d._ChangePage(h);break;case d.Evt.name.clear:d._ClearFilters(),d._Filter();break;case d.Evt.name.changeresultsperpage:d._ChangeResultsPerPage();break;case d.Evt.name.resetvalues:d._ResetValues(),d._Filter();break;case d.Evt.name.resetpage:d._ResetPage(d.pgNbCookie);break;case d.Evt.name.resetpagelength:d._ResetPageLength(d.pgLenCookie);break;case d.Evt.name.sort:break;case d.Evt.name.loadextensions:d._LoadExtensions();break;case d.Evt.name.loadthemes:d._LoadThemes();break;default:d["_"+a].call(null,d,b)}(d.status||d.statusBar)&&d.StatusMsg(""),d.loader&&d.Cpt.loader.show("none")}}var d=this,e=b&&void 0!==b.slcIndex?b.slcIndex:null,f=b&&void 0!==b.slcExternal?b.slcExternal:!1,g=b&&void 0!==b.slcId?b.slcId:null,h=b&&void 0!==b.pgIndex?b.pgIndex:null;if(this.loader||this.status||this.statusBar){try{this.Cpt.loader.show(""),this.StatusMsg(d["msg"+a])}catch(i){}k.setTimeout(c,this.execDelay)}else c()},ImportModule:function(a){a.path&&a.name&&this.IncludeFile(a.name,a.path,a.init)},LoadExtensions:function(){if(!this.Ext){var a=this;this.Ext={list:{},add:function(b,c,d,e){var f=d.split("/")[d.split("/").length-1],g=new RegExp(f),h=d.replace(g,"");a.Ext.list[b]={name:b,description:c,file:f,path:h,callback:e}}}}this.EvtManager(this.Evt.name.loadextensions)},_LoadExtensions:function(){if(this.hasExtensions&&p.isArray(this.extensions.name)&&p.isArray(this.extensions.src))for(var a=this.extensions,b=0;b',this.btnPrevPageHtml='',this.btnNextPageHtml='',this.btnFirstPageHtml='',this.btnLastPageHtml='',this.loader=!0,this.loaderHtml='
',this.loaderText=null}},RemoveGrid:function(){if(this.fltGrid&&this.hasGrid){var a=this.tbl.rows;this.paging&&this.RemovePaging(),this.statusBar&&this.RemoveStatusBar(),this.rowsCounter&&this.Cpt.rowsCounter.destroy(),this.btnReset&&this.RemoveResetBtn(),(this.helpInstructions||!this.helpInstructions)&&this.RemoveHelpInstructions(),this.paging&&this.RemoveResultsPerPage(),this.isExternalFlt&&!this.popUpFilters&&this.RemoveExternalFlts(),this.fixedHeaders&&this.RemoveFixedHeaders(),this.infDiv&&this.RemoveTopDiv(),this.highlightKeywords&&this.UnhighlightAll(),this.sort&&this.RemoveSort(),this.loader&&this.Cpt.loader.remove(),this.popUpFilters&&this.RemovePopupFilters(),this.markActiveColumns&&this.ClearActiveColumns(),(this.editable||this.selectable)&&this.RemoveEditable();for(var b=this.refRow;b0&&!c.startRow?void 0:c.startRow||a.refRow,c.scroll_into_view=c.scroll_into_view===!1?!1:!0,c.base_path=c.base_path||a.basePath+"ezEditTable/",c.editable=a.editable=a.fObj.editable,c.selection=a.selectable=a.fObj.selectable,a.selectable&&(c.default_selection=c.default_selection||"row"),c.active_cell_css=c.active_cell_css||"ezETSelectedCell",a._lastValidRowIndex=0,a._lastRowIndex=0,a.selectable){var e=function(b,c,d){if(a.validRowsIndex){var e,f=a.validRowsIndex,g=f.length,h="row"!==b.defaultSelection?c.parentNode:c,i="TD"===c.nodeName?c:null,j=void 0!==d?b.Event.GetKey(d):0,k=q.has(f,h.rowIndex),l=34===j||33===j?a.pagingLength||b.nbRowsPerPage:1;if(k)34!==j&&33!==j?(a._lastValidRowIndex=q.indexByValue(f,h.rowIndex),a._lastRowIndex=h.rowIndex):(e=34===j?a._lastValidRowIndex+l<=g-1?f[a._lastValidRowIndex+l]:[g-1]:a._lastValidRowIndex-l<=f[0]?f[0]:f[a._lastValidRowIndex-l],a._lastRowIndex=e,a._lastValidRowIndex=q.indexByValue(f,e),o(e));else{if(h.rowIndex>a._lastRowIndex)if(h.rowIndex>=f[g-1])e=f[g-1];else{var m=a._lastValidRowIndex+l;e=m>g-1?f[g-1]:f[m]}else if(h.rowIndex<=f[0])e=f[0];else{var n=f[a._lastValidRowIndex-l];e=n?n:f[0]}a._lastRowIndex=h.rowIndex,o(e)}var o=function(d){if("row"===b.defaultSelection)b.Selection.SelectRowByIndex(d);else{b.ClearSelections();var e=c.cellIndex,f=a.tbl.rows[d];"both"===b.defaultSelection&&b.Selection.SelectRowByIndex(d),f&&b.Selection.SelectCell(f.cells[e])}if(a.validRowsIndex.length!==a.GetRowsNb()){var g=a.tbl.rows[d];g&&g.scrollIntoView(!1),i&&(i.cellIndex===a.GetCellsNb()-1&&a.gridLayout?a.tblCont.scrollLeft=1e8:0===i.cellIndex&&a.gridLayout?a.tblCont.scrollLeft=0:i.scrollIntoView(!1))}}}},f=function(b,c){var d="row"!==b.defaultSelection?c.parentNode:c;if(a.paging&&a.nbPages>1){b.nbRowsPerPage=a.pagingLength;var e=a.validRowsIndex,f=e.length,g=parseInt(a.startPagingRow,10)+parseInt(a.pagingLength,10),h=d.rowIndex;h===e[f-1]&&a.currentPageNb!=a.nbPages?a.SetPage("last"):h==e[0]&&1!==a.currentPageNb?a.SetPage("first"):h>e[g-1]&&he[0]&&a.SetPage("previous")}};if(a.paging&&(a.onAfterChangePage=function(a){var b=a.ezEditTable,c=b.Selection.GetActiveRow();c&&c.scrollIntoView(!1);var d=b.Selection.GetActiveCell();d&&d.scrollIntoView(!1)}),"row"===c.default_selection){var g=c.on_before_selected_row;c.on_before_selected_row=function(){f(arguments[0],arguments[1],arguments[2]),g&&g.call(null,arguments[0],arguments[1],arguments[2])};var h=c.on_after_selected_row;c.on_after_selected_row=function(){e(arguments[0],arguments[1],arguments[2]),h&&h.call(null,arguments[0],arguments[1],arguments[2])}}else{var i=c.on_before_selected_cell;c.on_before_selected_cell=function(){f(arguments[0],arguments[1],arguments[2]),i&&i.call(null,arguments[0],arguments[1],arguments[2])};var j=c.on_after_selected_cell;c.on_after_selected_cell=function(){e(arguments[0],arguments[1],arguments[2]),j&&j.call(null,arguments[0],arguments[1],arguments[2])}}}if(a.editable){var k=c.on_added_dom_row;if(c.on_added_dom_row=function(){a.nbFilterableRows++,a.paging?(a.nbRows++,a.nbVisibleRows++,a.nbFilterableRows++,a.paging=!1,a.RemovePaging(),a.AddPaging(!1)):a.Cpt.rowsCounter.refresh(),a.alternateBgs&&a.Cpt.alternateRows.init(),k&&k.call(null,arguments[0],arguments[1],arguments[2])},c.actions&&c.actions["delete"]){var l=c.actions["delete"].on_after_submit;c.actions["delete"].on_after_submit=function(){a.nbFilterableRows--,a.paging?(a.nbRows--,a.nbVisibleRows--,a.nbFilterableRows--,a.paging=!1,a.RemovePaging(),a.AddPaging(!1)):a.Cpt.rowsCounter.refresh(),a.alternateBgs&&a.Cpt.alternateRows.init(),l&&l.call(null,arguments[0],arguments[1])}}}try{a.ezEditTable=new EditTable(a.id,c,b),a.ezEditTable.Init()}catch(n){console.log(c.err)}},SetPaging:function(){if((this.hasGrid||this.isFirstLoad)&&this.paging&&(this.isPagingRemoved||this.isFirstLoad)){var a=this.fObj;this.pagingTgtId=a.paging_target_id||null,this.pagingLength=isNaN(a.paging_length)?10:a.paging_length,this.resultsPerPageTgtId=a.results_per_page_target_id||null,this.pgSlcCssClass=a.paging_slc_css_class||"pgSlc",this.pgInpCssClass=a.paging_inp_css_class||"pgNbInp",this.resultsSlcCssClass=a.results_slc_css_class||"rspg",this.resultsSpanCssClass=a.results_span_css_class||"rspgSpan",this.nbVisibleRows=0,this.nbHiddenRows=0,this.startPagingRow=0,this.nbPages=0,this.btnNextPageText=a.btn_next_page_text||">",this.btnPrevPageText=a.btn_prev_page_text||"<",this.btnLastPageText=a.btn_last_page_text||">|",this.btnFirstPageText=a.btn_first_page_text||"|<",this.btnNextPageHtml=a.btn_next_page_html||(this.enableIcons?'':null),this.btnPrevPageHtml=a.btn_prev_page_html||(this.enableIcons?'':null),this.btnFirstPageHtml=a.btn_first_page_html||(this.enableIcons?'':null),this.btnLastPageHtml=a.btn_last_page_html||(this.enableIcons?'':null),this.pageText=a.page_text||" Page ",this.ofText=a.of_text||" of ",this.nbPgSpanCssClass=a.nb_pages_css_class||"nbpg",this.hasPagingBtns=a.paging_btns===!1?!1:!0,this.pagingBtnEvents=null,this.pageSelectorType=a.page_selector_type||this.fltTypeSlc,this.onBeforeChangePage=p.isFn(a.on_before_change_page)?a.on_before_change_page:null,this.onAfterChangePage=p.isFn(a.on_after_change_page)?a.on_after_change_page:null;var b=this.refRow,c=this.nbRows;if(this.nbPages=Math.ceil((c-b)/this.pagingLength),!this.Evt._Paging.next){var d=this;this.Evt._Paging={slcIndex:function(){return d.pageSelectorType===d.fltTypeSlc?d.pagingSlc.options.selectedIndex:parseInt(d.pagingSlc.value,10)-1},nbOpts:function(){return d.pageSelectorType===d.fltTypeSlc?parseInt(d.pagingSlc.options.length,10)-1:d.nbPages-1},next:function(){d.Evt._Paging.nextEvt&&d.Evt._Paging.nextEvt();var a=d.Evt._Paging.slcIndex()0?d.Evt._Paging.slcIndex()-1:d.Evt._Paging.nbOpts();d.ChangePage(a)},last:function(){d.Evt._Paging.lastEvt&&d.Evt._Paging.lastEvt(),d.ChangePage(d.Evt._Paging.nbOpts())},first:function(){d.Evt._Paging.firstEvt&&d.Evt._Paging.firstEvt(),d.ChangePage(0)},_detectKey:function(a){var b=a||k.event;if(b){var c=d.Evt.getKeyCode(a);13===c&&(d.sorted?(d.Filter(),d.ChangePage(d.Evt._Paging.slcIndex())):d.ChangePage(),this.blur())}},nextEvt:null,prevEvt:null,lastEvt:null,firstEvt:null}}this.Evt._OnSlcPagesChange||(this.Evt._OnSlcPagesChange=function(){d.Evt._Paging._OnSlcPagesChangeEvt&&d.Evt._Paging._OnSlcPagesChangeEvt(),d.ChangePage(),this.blur(),this.parentNode&&r.isIE()&&this.parentNode.focus()});var e;this.pageSelectorType===this.fltTypeSlc&&(e=m.create(this.fltTypeSlc,["id",this.prfxSlcPages+this.id]),e.className=this.pgSlcCssClass,e.onchange=this.Evt._OnSlcPagesChange),this.pageSelectorType===this.fltTypeInp&&(e=m.create(this.fltTypeInp,["id",this.prfxSlcPages+this.id],["value",this.currentPageNb]),e.className=this.pgInpCssClass,e.onkeypress=this.Evt._Paging._detectKey);var f=m.create("span",["id",this.prfxBtnNextSpan+this.id]),g=m.create("span",["id",this.prfxBtnPrevSpan+this.id]),h=m.create("span",["id",this.prfxBtnLastSpan+this.id]),i=m.create("span",["id",this.prfxBtnFirstSpan+this.id]);if(this.hasPagingBtns){if(this.btnNextPageHtml)f.innerHTML=this.btnNextPageHtml,f.onclick=this.Evt._Paging.next;else{var j=m.create(this.fltTypeInp,["id",this.prfxBtnNext+this.id],["type","button"],["value",this.btnNextPageText],["title","Next"]);j.className=this.btnPageCssClass,j.onclick=this.Evt._Paging.next,f.appendChild(j)}if(this.btnPrevPageHtml)g.innerHTML=this.btnPrevPageHtml,g.onclick=this.Evt._Paging.prev;else{var l=m.create(this.fltTypeInp,["id",this.prfxBtnPrev+this.id],["type","button"],["value",this.btnPrevPageText],["title","Previous"]);l.className=this.btnPageCssClass,l.onclick=this.Evt._Paging.prev,g.appendChild(l)}if(this.btnLastPageHtml)h.innerHTML=this.btnLastPageHtml,h.onclick=this.Evt._Paging.last;else{var n=m.create(this.fltTypeInp,["id",this.prfxBtnLast+this.id],["type","button"],["value",this.btnLastPageText],["title","Last"]);n.className=this.btnPageCssClass,n.onclick=this.Evt._Paging.last,h.appendChild(n)}if(this.btnFirstPageHtml)i.innerHTML=this.btnFirstPageHtml,i.onclick=this.Evt._Paging.first;else{var o=m.create(this.fltTypeInp,["id",this.prfxBtnFirst+this.id],["type","button"],["value",this.btnFirstPageText],["title","First"]);o.className=this.btnPageCssClass,o.onclick=this.Evt._Paging.first,i.appendChild(o)}}this.pagingTgtId||this.SetTopDiv();var q=this.pagingTgtId?m.id(this.pagingTgtId):this.mDiv;""!==q.innerHTML&&(q.innerHTML=""),q.appendChild(i),q.appendChild(g);var s=m.create("span",["id",this.prfxPgBeforeSpan+this.id]);s.appendChild(m.text(this.pageText)),s.className=this.nbPgSpanCssClass,q.appendChild(s),q.appendChild(e);var t=m.create("span",["id",this.prfxPgAfterSpan+this.id]);t.appendChild(m.text(this.ofText)),t.className=this.nbPgSpanCssClass,q.appendChild(t);var u=m.create("span",["id",this.prfxPgSpan+this.id]);u.className=this.nbPgSpanCssClass,u.appendChild(m.text(" "+this.nbPages+" ")),q.appendChild(u),q.appendChild(f),q.appendChild(h),this.pagingSlc=m.id(this.prfxSlcPages+this.id),(!this.rememberGridValues||this.isPagingRemoved)&&this.SetPagingInfo(),this.fltGrid||(this.ValidateAllRows(),this.SetPagingInfo(this.validRowsIndex)),this.pagingBtnEvents=this.Evt._Paging,this.isPagingRemoved=!1}},RemovePaging:function(){if(this.hasGrid&&this.pagingSlc){var a,b,c,d,e,f,g;a=m.id(this.prfxBtnNextSpan+this.id),b=m.id(this.prfxBtnPrevSpan+this.id),c=m.id(this.prfxBtnLastSpan+this.id),d=m.id(this.prfxBtnFirstSpan+this.id),e=m.id(this.prfxPgBeforeSpan+this.id),f=m.id(this.prfxPgAfterSpan+this.id),g=m.id(this.prfxPgSpan+this.id),this.pagingSlc.parentNode.removeChild(this.pagingSlc),a&&a.parentNode.removeChild(a),b&&b.parentNode.removeChild(b),c&&c.parentNode.removeChild(c),d&&d.parentNode.removeChild(d),e&&e.parentNode.removeChild(e),f&&f.parentNode.removeChild(f),g&&g.parentNode.removeChild(g),this.pagingBtnEvents=null,this.pagingSlc=null,this.isPagingRemoved=!0}},SetPagingInfo:function(a){var b=this.tbl.rows,c=this.pagingTgtId?m.id(this.pagingTgtId):this.mDiv,d=m.id(this.prfxPgSpan+this.id);if(a&&a.length>0)this.validRowsIndex=a;else{this.validRowsIndex=[];for(var e=this.refRow;e0)if(c.style.visibility="visible",this.pageSelectorType===this.fltTypeSlc)for(var h=0;h=this.startPagingRow&&c>d?("true"!==e.getAttribute("validRow")&&e.getAttribute("validRow")||(e.style.display=""),this.alternateBgs&&this.Cpt.alternateRows.setRowBg(this.validRowsIndex[d],d)):(e.style.display="none",this.alternateBgs&&this.Cpt.alternateRows.removeRowBg(this.validRowsIndex[d]))}this.nbVisibleRows=this.validRowsIndex.length,this.isStartBgAlternate=!1,this.ApplyGridProps()},SetPage:function(a){if(this.hasGrid&&this.paging){var b=this.pagingBtnEvents,c=typeof a;if("string"===c)switch(n.lower(a)){case"next":b.next();break;case"previous":b.prev();break;case"last":b.last();break;case"first":b.first();break;default:b.next()}"number"===c&&this.ChangePage(a-1)}},SetResultsPerPage:function(){if((this.hasGrid||this.isFirstLoad)&&!this.resultsPerPageSlc&&this.resultsPerPage){if(!this.Evt._OnSlcResultsChange){var a=this;this.Evt._OnSlcResultsChange=function(){a.ChangeResultsPerPage(),this.blur(),this.parentNode&&r.isIE()&&this.parentNode.focus()}}var b=m.create(this.fltTypeSlc,["id",this.prfxSlcResults+this.id]);b.className=this.resultsSlcCssClass;var c=this.resultsPerPage[0],d=this.resultsPerPage[1],e=m.create("span",["id",this.prfxSlcResultsTxt+this.id]);e.className=this.resultsSpanCssClass,this.resultsPerPageTgtId||this.SetTopDiv();var f=this.resultsPerPageTgtId?m.id(this.resultsPerPageTgtId):this.rDiv;e.appendChild(m.text(c)),f.appendChild(e),f.appendChild(b),this.resultsPerPageSlc=m.id(this.prfxSlcResults+this.id);for(var g=0;g<, <=, >, >=, =, *, !, {, }, ||,&&, [empty], [nonempty], rgx:
These operators are described here:
http://tablefilter.free.fr/#operators
',this.helpInstrHtml=a.help_instructions_html||null,this.helpInstrBtnText=a.help_instructions_btn_text||"?",this.helpInstrBtnHtml=a.help_instructions_btn_html||null,this.helpInstrBtnCssClass=a.help_instructions_btn_css_class||"helpBtn",this.helpInstrContCssClass=a.help_instructions_container_css_class||"helpCont",this.helpInstrBtnEl=null,this.helpInstrContEl=null,this.helpInstrDefaultHtml='

HTML Table Filter Generator v. '+this.version+'

http://tablefilter.free.fr
©2009-'+this.year+' Max Guglielmi.
";var b=m.create("span",["id",this.prfxHelpSpan+this.id]),c=m.create("div",["id",this.prfxHelpDiv+this.id]); -this.helpInstrTgtId||this.SetTopDiv();var d=this.helpInstrTgtId?m.id(this.helpInstrTgtId):this.rDiv;d.appendChild(b);var e=this.helpInstrContTgtId?m.id(this.helpInstrContTgtId):b;if(this.helpInstrBtnHtml){b.innerHTML=this.helpInstrBtnHtml;var f=b.firstChild;f.onclick=this.Evt._OnHelpBtnClick,e.appendChild(c)}else{e.appendChild(c);var g=m.create("a",["href","javascript:void(0);"]);g.className=this.helpInstrBtnCssClass,g.appendChild(m.text(this.helpInstrBtnText)),b.appendChild(g),g.onclick=this.Evt._OnHelpBtnClick}this.helpInstrHtml?(this.helpInstrContTgtId&&e.appendChild(c),c.innerHTML=this.helpInstrHtml,this.helpInstrContTgtId||(c.className=this.helpInstrContCssClass,c.ondblclick=this.Evt._OnHelpBtnClick)):(c.innerHTML=this.helpInstrText,c.className=this.helpInstrContCssClass,c.ondblclick=this.Evt._OnHelpBtnClick),c.innerHTML+=this.helpInstrDefaultHtml,this.helpInstrContEl=c,this.helpInstrBtnEl=b}},RemoveHelpInstructions:function(){this.helpInstrBtnEl&&(this.helpInstrBtnEl.parentNode.removeChild(this.helpInstrBtnEl),this.helpInstrBtnEl=null,this.helpInstrContEl&&(this.helpInstrContEl.parentNode.removeChild(this.helpInstrContEl),this.helpInstrContEl=null))},_ToggleHelp:function(){if(this.helpInstrContEl){var a=this.helpInstrContEl.style.display;if(""===a||"none"===a){this.helpInstrContEl.style.display="block";var b=m.position(this.helpInstrBtnEl).left;this.helpInstrContTgtId||(this.helpInstrContEl.style.left=b-this.helpInstrContEl.clientWidth+25+"px")}else this.helpInstrContEl.style.display="none"}},ChangePage:function(a){this.EvtManager(this.Evt.name.changepage,{pgIndex:a})},_ChangePage:function(a){this.paging&&(a||(a=this.pageSelectorType===this.fltTypeSlc?this.pagingSlc.options.selectedIndex:this.pagingSlc.value-1),a>=0&&a<=this.nbPages-1&&(this.onBeforeChangePage&&this.onBeforeChangePage.call(null,this,a),this.currentPageNb=parseInt(a,10)+1,this.pageSelectorType===this.fltTypeSlc?this.pagingSlc.options[a].selected=!0:this.pagingSlc.value=this.currentPageNb,this.rememberPageNb&&this.RememberPageNb(this.pgNbCookie),this.startPagingRow=this.pageSelectorType===this.fltTypeSlc?this.pagingSlc.value:a*this.pagingLength,this.GroupByPage(),this.onAfterChangePage&&this.onAfterChangePage.call(null,this,a)))},ChangeResultsPerPage:function(){this.EvtManager(this.Evt.name.changeresultsperpage)},_ChangeResultsPerPage:function(){if(this.paging){var a=this.resultsPerPageSlc,b=this.pageSelectorType==this.fltTypeSlc?this.pagingSlc.selectedIndex:parseInt(this.pagingSlc.value-1,10);if(this.pagingLength=parseInt(a.options[a.selectedIndex].value,10),this.startPagingRow=this.pagingLength*b,!isNaN(this.pagingLength)){if(this.startPagingRow>=this.nbFilterableRows&&(this.startPagingRow=this.nbFilterableRows-this.pagingLength),this.SetPagingInfo(),this.pageSelectorType===this.fltTypeSlc){var c=this.pagingSlc.options.length-1<=b?this.pagingSlc.options.length-1:b;this.pagingSlc.options[c].selected=!0}this.rememberPageLen&&this.RememberPageLength(this.pgLenCookie)}}},ResetPage:function(){this.EvtManager(this.Evt.name.resetpage)},_ResetPage:function(a){var b=o.read(a);""!==b&&this.ChangePage(b-1)},ResetPageLength:function(){this.EvtManager(this.Evt.name.resetpagelength)},_ResetPageLength:function(a){if(this.paging){var b=o.read(a);""!==b&&(this.resultsPerPageSlc.options[b].selected=!0,this.ChangeResultsPerPage())}},AddPaging:function(a){this.hasGrid&&!this.paging&&(this.paging=!0,this.isPagingRemoved=!0,this.SetPaging(),this.ResetValues(),a&&this.Filter())},PopulateSelect:function(a,b,c){this.EvtManager(this.Evt.name.populateselect,{slcIndex:a,slcExternal:b,slcId:c})},_PopulateSelect:function(a,b,f,g){function h(){if("innerhtml"===t)v+='";else{var a=m.createOpt(p.enableSlcResetFilter?p.displayAllText:"","");if(p.enableSlcResetFilter||(a.style.display="none"),l.appendChild(a),p.enableEmptyOption){var b=m.createOpt(p.emptyText,p.emOperator);l.appendChild(b)}if(p.enableNonEmptyOption){var c=m.createOpt(p.nonEmptyText,p.nmOperator);l.appendChild(c)}}}function i(){var c=l.value;l.innerHTML="",h();for(var d=0;d"+f+""}else{var j;j=p.fillSlcOnDemand&&c==u[d]&&p["col"+a]===p.fltTypeSlc?m.createOpt(f,e,!0):p["col"+a]!=p.fltTypeMulti?m.createOpt(f,e," "!==y[a]&&e==y[a]?!0:!1):m.createOpt(f,e,q.has(z,n.matchCase(u[d],p.matchCase),p.matchCase)||-1!==z.toString().indexOf(e)?!0:!1),g&&(j.disabled=!0),l.appendChild(j)}}"innerhtml"===t&&(l.innerHTML+=v),l.setAttribute("filled","1")}f=void 0===f?!1:f;var j=this.fltIds[a];if((m.id(j)||f)&&(m.id(g)||!f)){var k,l=m.id(f?g:j),p=this,r=this.tbl.rows,s=this.matchCase,t=n.lower(this.slcFillingMethod),u=[],v="",w=this.hasCustomSlcOptions&&q.has(this.customSlcOptions.cols,a),x=[];b&&this.activeFilterId&&(k=this.activeFilterId.split("_")[0],k=k.split(this.prfxFlt)[1]);var y=[],z=[];this.rememberGridValues&&(y=o.valueToArray(this.fltsValuesCookie,this.separator),y&&!n.isEmpty(y.toString())&&(w?z.push(y[a]):z=y[a].split(" "+p.orOperator+" ")));var A=null,B=null;b&&this.disableExcludedOptions&&(A=[],B=[]);for(var C=this.refRow;CF;F++)if(a===F&&(!b||b&&this.disableExcludedOptions)||a==F&&b&&(""===r[C].style.display&&!this.paging||this.paging&&(!this.validRowsIndex||this.validRowsIndex&&q.has(this.validRowsIndex,C))&&(void 0===k||k==a||k!=a&&q.has(this.validRowsIndex,C)))){var G=this.GetCellData(F,D[F]),H=n.matchCase(G,s);if(q.has(u,H,s)||u.push(G),b&&this.disableExcludedOptions){var I=B[F];I||(I=this.GetFilteredDataCol(F)),!q.has(I,H,s)&&!q.has(A,H,s)&&!this.isFirstLoad&&A.push(G)}}}if(w){var J=this.__getCustomValues(a);u=J[0],x=J[1]}if(this.sortSlc&&!w&&(s?(u.sort(),A&&A.sort()):(u.sort(e),A&&A.sort(e))),this.sortNumAsc&&q.has(this.sortNumAsc,a))try{u.sort(c),A&&A.sort(c),w&&x.sort(c)}catch(K){u.sort(),A&&A.sort(),w&&x.sort()}if(this.sortNumDesc&&q.has(this.sortNumDesc,a))try{u.sort(d),A&&A.sort(d),w&&x.sort(d)}catch(K){u.sort(),A&&A.sort(),w&&x.sort()}i()}},__deferMultipleSelection:function(a,b,c){if("select"===n.lower(a.nodeName)){var d=void 0===c?!1:c,e=this;k.setTimeout(function(){a.options[0].selected=!1,""===a.options[b].value?a.options[b].selected=!1:(a.options[b].selected=!0,d&&e.Filter())},.1)}},__getCustomValues:function(a){if(a){var b=this.hasCustomSlcOptions&&q.has(this.customSlcOptions.cols,a);if(b){for(var c=[],d=[],e=q.indexByValue(this.customSlcOptions.cols,a),f=this.customSlcOptions.values[e],g=this.customSlcOptions.texts[e],h=this.customSlcOptions.sorts[e],i=0;i0&&(p.hasCustomSlcOptions&&q.has(p.customSlcOptions.cols,a)?f.push(h):f=h.split(" "+p.orOperator+" "));for(var i=0;iB;B++)if(a===B&&(!this.refreshFilters||this.refreshFilters&&this.disableExcludedOptions)||a===B&&this.refreshFilters&&(""===s[y].style.display&&!this.paging||this.paging&&(!l||l===a||l!=a&&q.has(this.validRowsIndex,y)))){var C=this.GetCellData(B,z[B]),D=n.matchCase(C,this.matchCase);q.has(t,D,this.matchCase)||t.push(C);var E=x[B];this.refreshFilters&&this.disableExcludedOptions&&(E||(x[B]=this.GetFilteredDataCol(B)),!q.has(E,D,this.matchCase)&&!q.has(w,D,this.matchCase)&&!this.isFirstLoad&&w.push(C))}}if(u){var F=this.__getCustomValues(a);t=F[0],v=F[1]}if(this.sortSlc&&!u&&(this.matchCase?(t.sort(),w&&w.sort()):(t.sort(e),w&&w.sort(e))),this.sortNumAsc&&q.has(this.sortNumAsc,a))try{t.sort(c),w&&w.sort(c),u&&v.sort(c)}catch(G){t.sort(),w&&w.sort(),u&&v.sort()}if(this.sortNumDesc&&q.has(this.sortNumDesc,a))try{t.sort(d),w&&w.sort(d),u&&v.sort(d)}catch(G){t.sort(),w&&w.sort(),u&&v.sort()}if(h(this.separator),this.fillSlcOnDemand&&(j.innerHTML=""),j.appendChild(k),j.setAttribute("filled","1"),p.rememberGridValues&&r.isIE()){var H=k.getAttribute("indexes");if(H)for(var I=H.split(","),J=0;J':null);var b=m.create("span",["id",this.prfxResetSpan+this.id]);this.btnResetTgtId||this.SetTopDiv();var c=this.btnResetTgtId?m.id(this.btnResetTgtId):this.rDiv;if(c.appendChild(b),this.btnResetHtml){b.innerHTML=this.btnResetHtml;var d=b.firstChild;d.onclick=this.Evt._Clear}else{var e=m.create("a",["href","javascript:void(0);"]);e.className=this.btnResetCssClass,e.appendChild(m.text(this.btnResetText)),b.appendChild(e),e.onclick=this.Evt._Clear}this.btnResetEl=m.id(this.prfxResetSpan+this.id).firstChild}},RemoveResetBtn:function(){if(this.hasGrid&&this.btnResetEl){var a=m.id(this.prfxResetSpan+this.id);a&&a.parentNode.removeChild(a),this.btnResetEl=null}},SetStatusBar:function(){if(this.hasGrid||this.isFirstLoad){var a=this.fObj;this.statusBarTgtId=a.status_bar_target_id||null,this.statusBarDiv=null,this.statusBarSpan=null,this.statusBarSpanText=null,this.statusBarText=a.status_bar_text||"",this.statusBarCssClass=a.status_bar_css_class||"status",this.statusBarCloseDelay=250;var b=m.create("div",["id",this.prfxStatus+this.id]);b.className=this.statusBarCssClass;var c=m.create("span",["id",this.prfxStatusSpan+this.id]),d=m.create("span",["id",this.prfxStatusTxt+this.id]);d.appendChild(m.text(this.statusBarText)),this.onBeforeShowMsg=p.isFn(a.on_before_show_msg)?a.on_before_show_msg:null,this.onAfterShowMsg=p.isFn(a.on_after_show_msg)?a.on_after_show_msg:null,this.statusBarTgtId||this.SetTopDiv();var e=this.statusBarTgtId?m.id(this.statusBarTgtId):this.lDiv;this.statusBarDiv&&r.isIE()&&(this.statusBarDiv.outerHTML=""),this.statusBarTgtId?(e.appendChild(d),e.appendChild(c)):(b.appendChild(d),b.appendChild(c),e.appendChild(b)),this.statusBarDiv=m.id(this.prfxStatus+this.id),this.statusBarSpan=m.id(this.prfxStatusSpan+this.id),this.statusBarSpanText=m.id(this.prfxStatusTxt+this.id)}},RemoveStatusBar:function(){(this.hasGrid||this.statusBarDiv)&&(this.statusBarDiv.innerHTML="",this.statusBarDiv.parentNode.removeChild(this.statusBarDiv),this.statusBarSpan=null,this.statusBarSpanText=null,this.statusBarDiv=null)},StatusMsg:function(a){a||this.StatusMsg(""),this.status&&this.WinStatusMsg(a),this.statusBar&&this.StatusBarMsg(a)},WinStatusMsg:function(a){this.status&&(this.onBeforeShowMsg&&this.onBeforeShowMsg.call(null,this,a),k.status=a,this.onAfterShowMsg&&this.onAfterShowMsg.call(null,this,a))},StatusBarMsg:function(a){function b(){c.statusBarSpan.innerHTML=a,c.onAfterShowMsg&&c.onAfterShowMsg.call(null,c,a)}if(this.statusBar&&this.statusBarSpan){this.onBeforeShowMsg&&this.onBeforeShowMsg.call(null,this,a);var c=this,d=""===a?this.statusBarCloseDelay:1;k.setTimeout(b,d)}},SetWatermark:function(a){if(this.fltGrid||""!==this.inpWatermark){a=void 0===a?!0:a;for(var b=0;b0&&this.tbl.removeChild(y[0]),this.headTbl.style.width=this.tbl.style.width,this.headTbl.style.tableLayout="fixed",this.tbl.style.tableLayout="fixed",this.headTbl.cellPadding=this.tbl.cellPadding,this.headTbl.cellSpacing=this.tbl.cellSpacing,this.headTblCont.style.width=this.tblCont.clientWidth+"px",this.SetColWidths(),this.tbl.style.width="",r.isIE()&&(this.headTbl.style.width="");var z=this;if(this.tblCont.onscroll=function(){z.headTblCont.scrollLeft=this.scrollLeft;var a=this;if(!z.isPointerXOverwritten)try{z.Evt.pointerX=function(b){b=b||k.event;var c=tf_StandardBody().scrollLeft+a.scrollLeft;return b.pageX+a.scrollLeft||b.clientX+c},z.isPointerXOverwritten=!0}catch(b){z.isPointerXOverwritten=!1}},a.sort!==!1&&(this.sort=!0,this.sortConfig.asyncSort=!0,this.sortConfig.triggerIds=j),this.gridEnableColResizer&&(this.hasExtensions?this.__containsStr("colsresizer",n.lower(this.extensions.src.toString()))||(this.extensions.name.push("ColumnsResizer_"+this.id),this.extensions.src.push(this.gridColResizerPath),this.extensions.description.push("Columns Resizing"),this.extensions.initialize.push(function(a){a.SetColsResizer("ColumnsResizer_"+a.id)})):(this.extensions={name:["ColumnsResizer_"+this.id],src:[this.gridColResizerPath],description:["Columns Resizing"],initialize:[function(a){a.SetColsResizer("ColumnsResizer_"+a.id)}]},this.hasExtensions=!0)),a.col_resizer_cols_headers_table=this.headTbl.getAttribute("id"),a.col_resizer_cols_headers_index=this.gridHeadRowIndex,a.col_resizer_width_adjustment=0,a.col_enable_text_ellipsis=!1,z.tblHasColTag=m.tag(z.tbl,"col").length>0?!0:!1,!r.isIE()){var A=function(a){if(a){for(var b=a.nbCells-1;b>=0;b--){var c=m.create("col",["id",a.id+"_col_"+b]);a.tbl.firstChild.parentNode.insertBefore(c,a.tbl.firstChild),c.style.width=a.colWidth[b],a.gridColElms[b]=c}a.tblHasColTag=!0}};if(z.tblHasColTag)for(var B=m.tag(z.tbl,"col"),C=0;C0?E[0].insertRow(0):z.tbl.insertRow(0),D.style.height="0px";for(var F=0;F0?E[0].moveRow(a.leadColWidthsRow.rowIndex,0):a.tbl.moveRow(a.leadColWidthsRow.rowIndex,0)}I&&I.call(null,a,b)}}var J=p.isFn(a.on_after_col_resized)?a.on_after_col_resized:null;a.on_after_col_resized=function(a,b){if(b){var c=a.crWColsRow.cells[b].style.width,d=a.gridColElms[b];d.style.width=c;var e=a.crWColsRow.cells[b].clientWidth,f=a.crWRowDataTbl.cells[b].clientWidth;r.isIE()&&(a.tbl.style.width=a.headTbl.clientWidth+"px"),e!=f&&!r.isIE()&&(a.headTbl.style.width=a.tbl.clientWidth+"px"),J&&J.call(null,a,b)}},this.tbl.clientWidth!==this.headTbl.clientWidth&&(this.tbl.style.width=this.headTbl.clientWidth+"px")}},RemoveGridLayout:function(){if(this.gridLayout){var a=this.tbl.parentNode.removeChild(this.tbl);this.tblMainCont.parentNode.insertBefore(a,this.tblMainCont),this.tblMainCont.parentNode.removeChild(this.tblMainCont),this.tblMainCont=null,this.headTblCont=null,this.headTbl=null,this.tblCont=null,this.tbl.outerHTML=this.sourceTblHtml,this.tbl=m.id(this.id)}},SetPopupFilterIcons:function(){function a(a){var b=a||k.event,d=parseInt(this.getAttribute("ci"),10);if(c.CloseAllPopupFilters(d),c.TogglePopupFilter(d),c.popUpFltAdjustToContainer){var e=c.popUpFltElms[d],f=c.GetHeaderElement(d),g=.95*f.clientWidth;if(r.isIE()){var h=m.position(f).left;e.style.left=h+"px"}e.style.width=parseInt(g,10)+"px"}b.cancel(b),b.stop(b)}if(this.popUpFilters){this.isExternalFlt=!0;var b=this.fObj;this.popUpImgFlt=b.popup_filters_image||this.themesPath+"icn_filter.gif",this.popUpImgFltActive=b.popup_filters_image_active||this.themesPath+"icn_filterActive.gif",this.popUpImgFltHtml=b.popup_filters_image_html||'Column filter',this.popUpDivCssClass=b.popup_div_css_class||"popUpFilter",this.onBeforePopUpOpen=p.isFn(b.on_before_popup_filter_open)?b.on_before_popup_filter_open:null,this.onAfterPopUpOpen=p.isFn(b.on_after_popup_filter_open)?b.on_after_popup_filter_open:null,this.onBeforePopUpClose=p.isFn(b.on_before_popup_filter_close)?b.on_before_popup_filter_close:null,this.onAfterPopUpClose=p.isFn(b.on_after_popup_filter_close)?b.on_after_popup_filter_close:null,this.externalFltTgtIds=[],this.popUpFltSpans=[],this.popUpFltImgs=[],this.popUpFltElms=this.popUpFltElmCache||[],this.popUpFltAdjustToContainer=!0;for(var c=this,d=0;d= offsetParent.offsetHeight ? 0 - parentNode.parentNode.offsetHeight + offsetParent.offsetHeight + offsetParent.scrollTop : 0);"}}}},RemoveFixedHeaders:function(){if(this.hasGrid&&this.fixedHeaders)if(this.contDiv){this.contDiv.parentNode.insertBefore(this.tbl,this.contDiv),this.contDiv.parentNode.removeChild(this.contDiv),this.contDiv=null;var a=m.tag(this.tbl,"thead");if(0===a.length)return;var b=m.tag(a[0],"tr");if(0===b.length)return;for(var c=0;cm):P?(q=u(a.replace(j,""),J),e=q>=m):R?(q=u(a.replace(k,""),J),e=m>=q):Q?(q=u(a.replace(o,""),J),e=m>q):S?(q=u(a.replace(p,""),J),e=m.toString()!=q.toString()):T?(q=u(a.replace(s,""),J),e=m.toString()==q.toString()):r.test(a)?e=g.__containsStr(a.replace(r,""),b,null,!1):t(a,J)?(q=u(a,J),e=m.toString()==q.toString()):L?e=n.isEmpty(b):M&&(e=!n.isEmpty(b));else if(g.hasColNbFormat&&g.colNbFormat[c]?(h=f(b,g.colNbFormat[c]),i=g.colNbFormat[c]):","===g.thousandsSeparator&&"."===g.decimalSeparator?(h=f(b,"us"),i="us"):(h=f(b,"eu"),i="eu"),C)e=h<=f(a.replace(j,""),i);else if(E)e=h>=f(a.replace(k,""),i);else if(B)e=hf(a.replace(o,""),i);else if(F)e=g.__containsStr(a.replace(p,""),b)?!1:!0;else if(H)e=g.__containsStr(a.replace(r,""),b,null,!1);else if(G)e=g.__containsStr(a.replace(s,""),b,null,!0);else if(I)e=0===b.indexOf(a.replace(v,""))?!0:!1;else if(K){var U=a.replace(w,"");e=b.lastIndexOf(U,b.length-1)===b.length-1-(U.length-1)&&b.lastIndexOf(U,b.length-1)>-1?!0:!1}else if(L)e=n.isEmpty(b);else if(M)e=!n.isEmpty(b);else if(N)try{var V=a.replace(A,""),W=new RegExp(V);e=W.test(b)}catch(X){e=!1}else{var Y=d["col_"+c];e=g.__containsStr(a,b,Y?Y:this.fltTypeInp)}return e}if(this.fltGrid&&(this.hasGrid||this.isFirstLoad)){this.onBeforeFilter&&this.onBeforeFilter.call(null,this),""!==this.inpWatermark&&this.SetWatermark(!1);var c=this.tbl.rows,d=this.fObj||{},e=0;this.validRowsIndex=[];var g=this;this.highlightKeywords&&this.UnhighlightAll(),this.popUpFilters&&this.SetAllPopupFiltersIcon(),this.markActiveColumns&&this.ClearActiveColumns(),this.searchArgs=this.GetFiltersValue();for(var h,i,j=new RegExp(this.leOperator),k=new RegExp(this.geOperator),l=new RegExp(this.lwOperator),o=new RegExp(this.grOperator),p=new RegExp(this.dfOperator),r=new RegExp(n.rgxEsc(this.lkOperator)),s=new RegExp(this.eqOperator),v=new RegExp(this.stOperator),w=new RegExp(this.enOperator),x=new RegExp(this.anOperator),y=(new RegExp(this.curExp),this.emOperator),z=this.nmOperator,A=new RegExp(n.rgxEsc(this.rgxOperator)),B=this.refRow;BH;H++){var I=this.searchArgs[this.singleSearchFlt?0:H],J=this.hasColDateType?this.colDateType[H]:this.defaultDateType;if(""!==I){var K=n.matchCase(this.GetCellData(H,C[H]),this.matchCase),L=I.split(this.orOperator),M=L.length>1?!0:!1,N=I.split(this.anOperator),O=N.length>1?!0:!1;if(M||O){for(var P,Q=!1,R=M?L:N,S=0;Sk;k++)if(k===a&&""===d[g].style.display){var l=n.lower(this.GetCellData(k,i[k])),m=this.colNbFormat?this.colNbFormat[a]:null,o=b?f(l,m):l;e.push(o)}}return e}},GetFilterValue:function(a){if(this.fltGrid){var b,c=this.GetFilterElement(a);if(!c)return"";var d=this.fltCol[a];if(d!==this.fltTypeMulti&&d!==this.fltTypeCheckList)b=c.value;else if(d===this.fltTypeMulti){b="";for(var e=0;e0&&(a.splice(k-1,2),k-=2)}a=a.join("/")}else 0===a.indexOf("./")&&(a=a.substring(2));if((n||q)&&o){for(c=a.split("/"),k=c.length;k>0;k-=1){if(d=c.slice(0,k).join("/"),n)for(l=n.length;l>0;l-=1)if(e=o[n.slice(0,l).join("/")],e&&(e=e[d])){f=e,h=k;break}if(f)break;!i&&q&&q[d]&&(i=q[d],j=k)}!f&&i&&(f=i,h=j),f&&(c.splice(0,h,f),a=c.join("/"))}return a}function d(b,c){return function(){var d=s.call(arguments,0);return"string"!=typeof d[0]&&1===d.length&&d.push(null),k.apply(a,d.concat([b,c]))}}function e(a){return function(b){return c(b,a)}}function f(a){return function(b){n[a]=b}}function g(c){if(b(o,c)){var d=o[c];delete o[c],q[c]=!0,j.apply(a,d)}if(!b(n,c)&&!b(q,c))throw new Error("No "+c);return n[c]}function h(a){var b,c=a?a.indexOf("!"):-1;return c>-1&&(b=a.substring(0,c),a=a.substring(c+1,a.length)),[b,a]}function i(a){return function(){return p&&p.config&&p.config[a]||{}}}var j,k,l,m,n={},o={},p={},q={},r=Object.prototype.hasOwnProperty,s=[].slice,t=/\.js$/;l=function(a,b){var d,f=h(a),i=f[0];return a=f[1],i&&(i=c(i,b),d=g(i)),i?a=d&&d.normalize?d.normalize(a,e(b)):c(a,b):(a=c(a,b),f=h(a),i=f[0],a=f[1],i&&(d=g(i))),{f:i?i+"!"+a:a,n:a,pr:i,p:d}},m={require:function(a){return d(a)},exports:function(a){var b=n[a];return"undefined"!=typeof b?b:n[a]={}},module:function(a){return{id:a,uri:"",exports:n[a],config:i(a)}}},j=function(c,e,h,i){var j,k,p,r,s,t,u=[],v=typeof h;if(i=i||c,"undefined"===v||"function"===v){for(e=!e.length&&h.length?["require","exports","module"]:e,s=0;s]+>/g,"");return b=b.replace(/^\s+/,"").replace(/\s+$/,"")},c.create=function(a){if(a&&""!==a){var b=document.createElement(a),c=arguments;if(c.length>1)for(var d=0;d0){var d=document.cookie,e=d.indexOf(c);if(-1!==e){e+=c.length;var f=d.indexOf(";",e);-1===f&&(f=d.length),b=unescape(d.substring(e,f))}}return b},b.remove=function(a){this.write(a,"",-1)},b.valueToArray=function(a,b){b||(b=",");var c=this.read(a),d=c.split(b);return d},b.getValueByIndex=function(a,b,c){c||(c=",");var d=this.valueToArray(a,c);return d[b]},a.Cookie=b}),define("types",["exports"],function(a){var b={},c=void 0;b.isObj=function(a){var b=!1;return"string"==typeof a?window[a]&&"object"==typeof window[a]&&(b=!0):a&&"object"==typeof a&&(b=!0),b},b.isFn=function(a){return a&&a.constructor==Function},b.isArray=function(a){return a&&a.constructor==Array},b.isUndef=function(a){return a===c},a.Types=b}),define("array",["exports","string"],function(a,b){var c=b.Str,d={has:function(a,b,d){for(var e=void 0===d?!1:d,f=0;f2)return a;var b;return 99>=a&&a>50&&(b="19"+a),(50>a||"00"===a)&&(b="20"+a),b}function d(a){if(void 0===a)return 0;for(var b,c=["january","february","march","april","may","june","july","august","september","october","november","december","jan","feb","mar","apr","may","jun","jul","aug","sep","oct","nov","dec"],d=0;d11||23>b)&&(b-=12),1>b||b>12?0:b}if(b||(b="DMY"),!a||""===a)return new Date(1001,0,1);var e,f;switch(b.toUpperCase()){case"DDMMMYYYY":f=a.replace(/[- \/.]/g," ").split(" "),e=new Date(c(f[2]),d(f[1])-1,f[0]);break;case"DMY":f=a.replace(/^(0?[1-9]|[12][0-9]|3[01])([- \/.])(0?[1-9]|1[012])([- \/.])((\d\d)?\d\d)$/,"$1 $3 $5").split(" "),e=new Date(c(f[2]),f[1]-1,f[0]);break;case"MDY":f=a.replace(/^(0?[1-9]|1[012])([- \/.])(0?[1-9]|[12][0-9]|3[01])([- \/.])((\d\d)?\d\d)$/,"$1 $3 $5").split(" "),e=new Date(c(f[2]),f[0]-1,f[1]);break;case"YMD":f=a.replace(/^((\d\d)?\d\d)([- \/.])(0?[1-9]|1[012])([- \/.])(0?[1-9]|[12][0-9]|3[01])$/,"$1 $4 $6").split(" "),e=new Date(c(f[0]),f[1]-1,f[2]);break;default:f=a.replace(/^(0?[1-9]|[12][0-9]|3[01])([- \/.])(0?[1-9]|1[012])([- \/.])((\d\d)?\d\d)$/,"$1 $3 $5").split(" "),e=new Date(c(f[2]),f[1]-1,f[0])}return e}};a.DateHelper=b}),define("modules/gridLayout",["exports","../dom","../types","../helpers","../event"],function(a,b,c,d,e){var f=function(a,b,c){b&&Object.defineProperties(a,b),c&&Object.defineProperties(a.prototype,c)},g=b.Dom,h=c.Types,i=d.Helpers,j=e.Event,k=function(){var a=function(a){var b=a.fObj;this.gridWidth=b.grid_width||null,this.gridHeight=b.grid_height||null,this.gridMainContCssClass=b.grid_cont_css_class||"grd_Cont",this.gridContCssClass=b.grid_tbl_cont_css_class||"grd_tblCont",this.gridHeadContCssClass=b.grid_tblHead_cont_css_class||"grd_headTblCont",this.gridInfDivCssClass=b.grid_inf_grid_css_class||"grd_inf",this.gridHeadRowIndex=b.grid_headers_row_index||0,this.gridHeadRows=b.grid_headers_rows||[0],this.gridEnableFilters=void 0!==b.grid_enable_default_filters?b.grid_enable_default_filters:!0,this.gridDefaultColWidth=b.grid_default_col_width||"100px",this.gridEnableColResizer=void 0!==b.grid_enable_cols_resizer?b.grid_enable_cols_resizer:!1,this.gridColResizerPath=b.grid_cont_col_resizer_path||this.basePath+"TFExt_ColsResizer/TFExt_ColsResizer.js",this.tf=a};return f(a,null,{init:{writable:!0,value:function(){var a=this.tf,b=a.fObj,c=a.tbl;if(a.isExternalFlt=!0,!a.hasColWidth){a.colWidth=[];for(var d=0;d0&&c.removeChild(z[0]),this.headTbl.style.width=c.style.width,this.headTbl.style.tableLayout="fixed",c.style.tableLayout="fixed",this.headTbl.cellPadding=c.cellPadding,this.headTbl.cellSpacing=c.cellSpacing,this.headTblCont.style.width=this.tblCont.clientWidth+"px",a.SetColWidths(),c.style.width="",i.isIE()&&(this.headTbl.style.width="");var A=this;if(j.add(this.tblCont,"scroll",function(){var a=this.scrollLeft;if(A.headTblCont.scrollLeft=a,!A.isPointerXOverwritten)try{A.Evt.pointerX=function(b){var c=b||global.event,d=tf_StandardBody().scrollLeft+a;return c.pageX+a||c.clientX+d},A.isPointerXOverwritten=!0}catch(b){A.isPointerXOverwritten=!1}}),b.sort!==!1&&(a.sort=!0,a.sortConfig.asyncSort=!0,a.sortConfig.triggerIds=p),this.gridEnableColResizer&&(a.hasExtensions?a.__containsStr("colsresizer",Str.lower(a.extensions.src.toString()))||(a.extensions.name.push("ColumnsResizer_"+a.id),a.extensions.src.push(a.gridColResizerPath),a.extensions.description.push("Columns Resizing"),a.extensions.initialize.push(function(a){a.SetColsResizer("ColumnsResizer_"+a.id)})):(a.extensions={name:["ColumnsResizer_"+a.id],src:[this.gridColResizerPath],description:["Columns Resizing"],initialize:[function(a){a.SetColsResizer("ColumnsResizer_"+a.id)}]},a.hasExtensions=!0)),b.col_resizer_cols_headers_table=this.headTbl.getAttribute("id"),b.col_resizer_cols_headers_index=this.gridHeadRowIndex,b.col_resizer_width_adjustment=0,b.col_enable_text_ellipsis=!1,A.tblHasColTag=g.tag(c,"col").length>0?!0:!1,!i.isIE()){var B=function(a){if(a){for(var b=a.nbCells-1;b>=0;b--){var d=g.create("col",["id",a.id+"_col_"+b]);c.firstChild.parentNode.insertBefore(d,c.firstChild),d.style.width=a.colWidth[b],a.gridColElms[b]=d}a.tblHasColTag=!0}};if(A.tblHasColTag)for(var C=g.tag(c,"col"),D=0;D0?F[0].insertRow(0):c.insertRow(0),E.style.height="0px";for(var G=0;G0?F[0].moveRow(a.leadColWidthsRow.rowIndex,0):c.moveRow(a.leadColWidthsRow.rowIndex,0)}J&&J.call(null,a,b)}}var K=h.isFn(b.on_after_col_resized)?b.on_after_col_resized:null;b.on_after_col_resized=function(a,b){if(b){var d=a.crWColsRow.cells[b].style.width,e=a.gridColElms[b];e.style.width=d;var f=a.crWColsRow.cells[b].clientWidth,g=a.crWRowDataTbl.cells[b].clientWidth;i.isIE()&&(c.style.width=a.headTbl.clientWidth+"px"),f!=g&&!i.isIE()&&(a.headTbl.style.width=c.clientWidth+"px"),K&&K.call(null,a,b)}},c.clientWidth!==this.headTbl.clientWidth&&(c.style.width=this.headTbl.clientWidth+"px"),a.refRow=i.isIE()?a.refRow+1:0}},destroy:{writable:!0,value:function(){var a=this.tf,b=a.tbl;if(a.gridLayout){var c=b.parentNode.removeChild(b);this.tblMainCont.parentNode.insertBefore(c,this.tblMainCont),this.tblMainCont.parentNode.removeChild(this.tblMainCont),this.tblMainCont=null,this.headTblCont=null,this.headTbl=null,this.tblCont=null,b.outerHTML=a.sourceTblHtml,b=g.id(a.id)}}}}),a}();a.GridLayout=k}),define("modules/loader",["exports","../dom","../types"],function(a,b,c){var d=function(a,b,c){b&&Object.defineProperties(a,b),c&&Object.defineProperties(a.prototype,c)},e=b.Dom,f=c.Types,g=window,h=function(){var a=function(a){var b=a.fObj;this.loaderTgtId=b.loader_target_id||null,this.loaderDiv=null,this.loaderText=b.loader_text||"Loading...",this.loaderHtml=b.loader_html||null,this.loaderCssClass=b.loader_css_class||"loader",this.loaderCloseDelay=200,this.onShowLoader=f.isFn(b.on_show_loader)?b.on_show_loader:null,this.onHideLoader=f.isFn(b.on_hide_loader)?b.on_hide_loader:null,this.tf=a;var c=e.create("div",["id",a.prfxLoader+a.id]);c.className=this.loaderCssClass;var d=this.loaderTgtId?e.id(this.loaderTgtId):a.tbl.parentNode;this.loaderTgtId?d.appendChild(c):d.insertBefore(c,a.tbl),this.loaderDiv=e.id(a.prfxLoader+a.id),this.loaderHtml?this.loaderDiv.innerHTML=this.loaderHtml:this.loaderDiv.appendChild(e.text(this.loaderText))};return d(a,null,{show:{writable:!0,value:function(a){var b=this;if(this.tf.loader&&this.loaderDiv&&this.loaderDiv.style.display!==a){var c=function(){b.loaderDiv&&(b.onShowLoader&&"none"!==a&&b.onShowLoader.call(null,b),b.loaderDiv.style.display=a,b.onHideLoader&&"none"===a&&b.onHideLoader.call(null,b))},d="none"===a?this.loaderCloseDelay:1;g.setTimeout(c,d)}}},remove:{writable:!0,value:function(){if(this.loaderDiv){var a=this.loaderTgtId?e.id(this.loaderTgtId):this.tf.gridLayout?this.tf.tblCont:this.tf.tbl.parentNode;a.removeChild(this.loaderDiv),this.loaderDiv=null}}}}),a}();a.Loader=h}),define("modules/rowsCounter",["exports","../dom","../types","../helpers"],function(a,b,c,d){var e=function(a,b,c){b&&Object.defineProperties(a,b),c&&Object.defineProperties(a.prototype,c)},f=b.Dom,g=c.Types,h=d.Helpers,i=function(){var a=function(a){var b=a.fObj;this.rowsCounterTgtId=b.rows_counter_target_id||null,this.rowsCounterDiv=null,this.rowsCounterSpan=null,this.rowsCounterText=b.rows_counter_text||"Rows: ",this.fromToTextSeparator=b.from_to_text_separator||"-",this.overText=b.over_text||" / ",this.totRowsCssClass=b.tot_rows_css_class||"tot",this.onBeforeRefreshCounter=g.isFn(b.on_before_refresh_counter)?b.on_before_refresh_counter:null,this.onAfterRefreshCounter=g.isFn(b.on_after_refresh_counter)?b.on_after_refresh_counter:null,this.tf=a};return e(a,null,{init:{writable:!0,value:function(){var a=this.tf;if((a.hasGrid||a.isFirstLoad)&&!this.rowsCounterSpan){var b=f.create("div",["id",a.prfxCounter+a.id]);b.className=this.totRowsCssClass;var c=f.create("span",["id",a.prfxTotRows+a.id]),d=f.create("span",["id",a.prfxTotRowsTxt+a.id]);d.appendChild(f.text(this.rowsCounterText)),this.rowsCounterTgtId||a.SetTopDiv();var e=this.rowsCounterTgtId?f.id(this.rowsCounterTgtId):a.lDiv;this.rowsCounterDiv&&h.isIE()&&(this.rowsCounterDiv.outerHTML=""),this.rowsCounterTgtId?(e.appendChild(d),e.appendChild(c)):(b.appendChild(d),b.appendChild(c),e.appendChild(b)),this.rowsCounterDiv=b,this.rowsCounterSpan=c,this.refresh()}}},refresh:{writable:!0,value:function(a){if(this.rowsCounterSpan){var b=this.tf;this.onBeforeRefreshCounter&&this.onBeforeRefreshCounter.call(null,b,this.rowsCounterSpan);var c;if(b.paging){var d=parseInt(b.startPagingRow,10)+(b.nbVisibleRows>0?1:0),e=d+b.pagingLength-1<=b.nbVisibleRows?d+b.pagingLength-1:b.nbVisibleRows;c=d+this.fromToTextSeparator+e+this.overText+b.nbVisibleRows}else c=a&&""!==a?a:b.nbFilterableRows-b.nbHiddenRows-(b.hasVisibleRows?b.visibleRows.length:0);this.rowsCounterSpan.innerHTML=c,this.onAfterRefreshCounter&&this.onAfterRefreshCounter.call(null,b,this.rowsCounterSpan,c)}}},destroy:{writable:!0,value:function(){var a=this.tf;a.hasGrid&&this.rowsCounterSpan&&(!this.rowsCounterTgtId&&this.rowsCounterDiv?h.isIE()?this.rowsCounterDiv.outerHTML="":this.rowsCounterDiv.parentNode.removeChild(this.rowsCounterDiv):f.id(this.rowsCounterTgtId).innerHTML="",this.rowsCounterSpan=null,this.rowsCounterDiv=null)}}}),a}();a.RowsCounter=i}),define("modules/alternateRows",["exports","../dom"],function(a,b){var c=function(a,b,c){b&&Object.defineProperties(a,b),c&&Object.defineProperties(a.prototype,c)},d=b.Dom,e=function(){var a=function(a){var b=a.fObj;this.evenCss=b.even_row_css_class||"even",this.oddCss=b.odd_row_css_class||"odd",this.tf=a};return c(a,null,{init:{writable:!0,value:function(){if(this.tf.hasGrid||this.tf.isFirstLoad)for(var a=(this.tf.tbl.rows,null===this.tf.validRowsIndex),b=a?this.tf.refRow:0,c=a?this.tf.nbFilterableRows+b:this.tf.validRowsIndex.length,d=0,e=b;c>e;e++){var f=a?e:this.tf.validRowsIndex[e];this.setRowBg(f,d),d++}}},setRowBg:{writable:!0,value:function(a,b){if(this.tf.alternateBgs&&!isNaN(a)){var c=this.tf.tbl.rows,e=b?b:a;this.removeRowBg(a),d.addClass(c[a],e%2?this.evenCss:this.oddCss)}}},removeRowBg:{writable:!0,value:function(a){if(!isNaN(a)){var b=this.tf.tbl.rows;d.removeClass(b[a],this.oddCss),d.removeClass(b[a],this.evenCss)}}},remove:{writable:!0,value:function(){if(this.tf.hasGrid){for(var a=(this.tf.tbl.rows,this.tf.refRow);a=jj;jj++)ucolIndex[jj]===colIndex[ii]&&(saved=1);0===saved&&(ucolMax++,ucolIndex[ucolMax]=colIndex[ii])}if("object"==Str.lower(typeof labelId)&&"object"==Str.lower(typeof colIndex)&&"object"==Str.lower(typeof operation))for(var row=this.tf.tbl.rows,colvalues=[],ucol=0;ucolMax>=ucol;ucol++){colvalues.push(this.tf.GetColValues(ucolIndex[ucol],!0,excludeRow));for(var result,nbvalues=0,temp,meanValue=0,sumValue=0,minValue=null,maxValue=null,q1Value=null,medValue=null,q3Value=null,meanFlag=0,sumFlag=0,minFlag=0,maxFlag=0,q1Flag=0,medFlag=0,q3Flag=0,theList=[],opsThisCol=[],decThisCol=[],labThisCol=[],oTypeThisCol=[],mThisCol=-1,k=0;kmaxValue?parseFloat(cvalue):maxValue))}if(1===meanFlag&&(meanValue=sumValue/nbvalues),1===medFlag){var aux=0;nbvalues%2===1?(aux=Math.floor(nbvalues/2),medValue=theList[aux]):medValue=(theList[nbvalues/2]+theList[nbvalues/2-1])/2}var posa;if(1===q1Flag&&(posa=0,posa=Math.floor(nbvalues/4),q1Value=4*posa==nbvalues?(theList[posa-1]+theList[posa])/2:theList[posa]),1===q3Flag){posa=0;var posb=0;posa=Math.floor(nbvalues/4),4*posa===nbvalues?(posb=3*posa,q3Value=(theList[posb]+theList[posb-1])/2):q3Value=theList[nbvalues-posa-1]}for(var i=0;mThisCol>=i;i++){switch(opsThisCol[i]){case"mean":result=meanValue;break;case"sum":result=sumValue;break;case"min":result=minValue;break;case"max":result=maxValue;break;case"median":result=medValue;break;case"q1":result=q1Value;break;case"q3":result=q3Value}var precision=isNaN(decThisCol[i])?2:decThisCol[i];if(oTypeThisCol&&result){if(result=result.toFixed(precision),Dom.id(labThisCol[i]))switch(Str.lower(oTypeThisCol)){case"innerhtml":Dom.id(labThisCol[i]).innerHTML=isNaN(result)||!isFinite(result)||0===nbvalues?".":result;break;case"setvalue":Dom.id(labThisCol[i]).value=result;break;case"createtextnode":var oldnode=Dom.id(labThisCol[i]).firstChild,txtnode=Dom.text(result);Dom.id(labThisCol[i]).replaceChild(txtnode,oldnode)}}else try{Dom.id(labThisCol[i]).innerHTML=isNaN(result)||!isFinite(result)||0===nbvalues?".":result.toFixed(precision)}catch(e){}}var totRow=totRowIndex&&totRowIndex[ucol]?row[totRowIndex[ucol]]:null;totRow&&(totRow.style.display="")}this.tf.onAfterOperation&&this.tf.onAfterOperation.call(null,this.tf)}}}}),ColOps}();exports.ColOps=ColOps}),define("core",["require","event","dom","string","cookie","types","array","helpers","date","modules/gridLayout","modules/loader","modules/rowsCounter","modules/alternateRows","modules/colOps"],function(a){function b(a){if(0!==arguments.length){if(this.id=a,this.version="3.0",this.year=(new Date).getFullYear(),this.tbl=m.id(a),this.startRow=null,this.refRow=null,this.headersRow=null,this.fObj=null,this.nbFilterableRows=null,this.nbRows=null,this.nbCells=null,this.hasGrid=!1,this.enableModules=!1,!this.tbl||"table"!==n.lower(this.tbl.nodeName)||0===this.GetRowsNb())throw new Error("Could not instantiate TF object: HTML table not found.");if(arguments.length>1)for(var b=0;b1?this.filtersRowIndex=this.headersRow+1:(this.filtersRowIndex=1,this.headersRow=0)),this.fltCellTag="th"!==e.filters_cell_tag||"td"!==e.filters_cell_tag?"td":e.filters_cell_tag,this.fltIds=[],this.fltElms=[],this.searchArgs=null,this.tblData=[],this.validRowsIndex=null,this.fltGridEl=null,this.isFirstLoad=!0,this.infDiv=null,this.lDiv=null,this.rDiv=null,this.mDiv=null,this.contDiv=null,this.infDivCssClass=e.inf_div_css_class||"inf",this.lDivCssClass=e.left_div_css_class||"ldiv",this.rDivCssClass=e.right_div_css_class||"rdiv",this.mDivCssClass=e.middle_div_css_class||"mdiv",this.contDivCssClass=e.content_div_css_class||"cont",this.stylesheet=e.stylesheet||this.basePath+"filtergrid.css",this.stylesheetId=this.id+"_style",this.fltsRowCssClass=e.flts_row_css_class||"fltrow",this.enableIcons=e.enable_icons===!1?!1:!0,this.alternateBgs=e.alternate_rows===!0?!0:!1,this.hasColWidth=e.col_width===!0?!0:!1,this.colWidth=this.hasColWidth?e.col_width:null,this.fixedHeaders=e.fixed_headers===!0?!0:!1,this.tBodyH=isNaN(e.tbody_height)?200:e.tbody_height,this.fltCssClass=e.flt_css_class||"flt",this.fltMultiCssClass=e.flt_multi_css_class||"flt_multi",this.fltSmallCssClass=e.flt_small_css_class||"flt_s",this.singleFltCssClass=e.single_flt_css_class||"single_flt",this.isStartBgAlternate=!0,this.enterKey=e.enter_key===!1?!1:!0,this.isModFilterFn=e.mod_filter_fn===!0?!0:!1,this.modFilterFn=this.isModFilterFn?e.mod_filter_fn:null,this.onBeforeFilter=p.isFn(e.on_before_filter)?e.on_before_filter:null,this.onAfterFilter=p.isFn(e.on_after_filter)?e.on_after_filter:null,this.matchCase=e.match_case===!0?!0:!1,this.exactMatch=e.exact_match===!0?!0:!1,this.refreshFilters=e.refresh_filters===!0?!0:!1,this.disableExcludedOptions=e.disable_excluded_options===!0?!0:!1,this.activeFlt=null,this.activeFilterId=null,this.hasColOperation=e.col_operation?!0:!1,this.colOperation=null,this.hasVisibleRows=e.rows_always_visible?!0:!1,this.visibleRows=this.hasVisibleRows?e.rows_always_visible:[],this.searchType=e.search_type||"include",this.isExternalFlt=e.external_flt_grid===!0?!0:!1,this.externalFltTgtIds=e.external_flt_grid_ids||null,this.externalFltEls=[],this.execDelay=isNaN(e.exec_delay)?100:parseInt(e.exec_delay,10),this.status=e.status===!0?!0:!1,this.onFiltersLoaded=p.isFn(e.on_filters_loaded)?e.on_filters_loaded:null,this.singleSearchFlt=e.single_search_filter===!0?!0:!1,this.onRowValidated=p.isFn(e.on_row_validated)?e.on_row_validated:null,this.customCellDataCols=e.custom_cell_data_cols?e.custom_cell_data_cols:[],this.customCellData=p.isFn(e.custom_cell_data)?e.custom_cell_data:null,this.inpWatermark=e.input_watermark||"",this.inpWatermarkCssClass=e.input_watermark_css_class||"fltWatermark",this.isInpWatermarkArray=p.isArray(e.input_watermark),this.toolBarTgtId=e.toolbar_target_id||null,this.helpInstructions=e.help_instructions||null,this.popUpFilters=e.popup_filters===!0?!0:!1,this.markActiveColumns=e.mark_active_columns===!0?!0:!1,this.activeColumnsCssClass=e.active_columns_css_class||"activeHeader",this.onBeforeActiveColumn=p.isFn(e.on_before_active_column)?e.on_before_active_column:null,this.onAfterActiveColumn=p.isFn(e.on_after_active_column)?e.on_after_active_column:null,this.displayAllText=e.display_all_text||"",this.enableSlcResetFilter=e.enable_slc_reset_filter===!1?!1:!0,this.enableEmptyOption=e.enable_empty_option===!0?!0:!1,this.emptyText=e.empty_text||"(Empty)",this.enableNonEmptyOption=e.enable_non_empty_option===!0?!0:!1,this.nonEmptyText=e.non_empty_text||"(Non empty)",this.onSlcChange=e.on_change===!1?!1:!0,this.sortSlc=e.sort_select===!1?!1:!0,this.isSortNumAsc=e.sort_num_asc===!0?!0:!1,this.sortNumAsc=this.isSortNumAsc?e.sort_num_asc:null,this.isSortNumDesc=e.sort_num_desc===!0?!0:!1,this.sortNumDesc=this.isSortNumDesc?e.sort_num_desc:null,this.slcFillingMethod=e.slc_filling_method||"createElement",this.fillSlcOnDemand=e.fill_slc_on_demand===!0?!0:!1,this.activateSlcTooltip=e.activate_slc_tooltip||"Click to activate",this.multipleSlcTooltip=e.multiple_slc_tooltip||"Use Ctrl key for multiple selections",this.hasCustomSlcOptions=p.isObj(e.custom_slc_options)?!0:!1,this.customSlcOptions=p.isArray(e.custom_slc_options)?e.custom_slc_options:null,this.onBeforeOperation=p.isFn(e.on_before_operation)?e.on_before_operation:null,this.onAfterOperation=p.isFn(e.on_after_operation)?e.on_after_operation:null,this.checkListDiv=[],this.checkListDivCssClass=e.div_checklist_css_class||"div_checklist",this.checkListCssClass=e.checklist_css_class||"flt_checklist",this.checkListItemCssClass=e.checklist_item_css_class||"flt_checklist_item",this.checkListSlcItemCssClass=e.checklist_selected_item_css_class||"flt_checklist_slc_item",this.activateCheckListTxt=e.activate_checklist_text||"Click to load filter data",this.checkListItemDisabledCssClass=e.checklist_item_disabled_css_class||"flt_checklist_item_disabled",this.enableCheckListResetFilter=e.enable_checklist_reset_filter===!1?!1:!0,this.rgxOperator=e.regexp_operator||"rgx:",this.emOperator=e.empty_operator||"[empty]",this.nmOperator=e.nonempty_operator||"[nonempty]",this.orOperator=e.or_operator||"||",this.anOperator=e.and_operator||"&&",this.grOperator=e.greater_operator||">",this.lwOperator=e.lower_operator||"<",this.leOperator=e.lower_equal_operator||"<=",this.geOperator=e.greater_equal_operator||">=",this.dfOperator=e.different_operator||"!",this.lkOperator=e.like_operator||"*",this.eqOperator=e.equal_operator||"=",this.stOperator=e.start_with_operator||"{",this.enOperator=e.end_with_operator||"}",this.curExp=e.cur_exp||"^[¥£€$]",this.separator=e.separator||",",this.rowsCounter=e.rows_counter===!0?!0:!1,this.statusBar=e.status_bar===!0?!0:!1,this.loader=e.loader===!0?!0:!1,this.displayBtn=e.btn===!0?!0:!1,this.btnText=e.btn_text||(this.enableIcons?"":"Go"),this.btnCssClass=e.btn_css_class||(this.enableIcons?"btnflt_icon":"btnflt"),this.btnReset=e.btn_reset===!0?!0:!1,this.btnResetCssClass=e.btn_reset_css_class||"reset",this.onBeforeReset=p.isFn(e.on_before_reset)?e.on_before_reset:null,this.onAfterReset=p.isFn(e.on_after_reset)?e.on_after_reset:null,this.paging=e.paging===!0?!0:!1,this.hasResultsPerPage=e.results_per_page===!0?!0:!1,this.btnPageCssClass=e.paging_btn_css_class||"pgInp",this.pagingSlc=null,this.resultsPerPage=null,this.resultsPerPageSlc=null,this.isPagingRemoved=!1,this.nbVisibleRows=0,this.nbHiddenRows=0,this.startPagingRow=0,this.nbPages=0,this.currentPageNb=1,this.sort=e.sort===!0?!0:!1,this.isSortEnabled=!1,this.sorted=!1,this.sortConfig=e.sort_config||{},this.sortConfig.name=void 0!==this.sortConfig.name?e.sort_config.name:"sortabletable",this.sortConfig.src=void 0!==this.sortConfig.src?e.sort_config.src:this.basePath+"sortabletable.js",this.sortConfig.adapterSrc=void 0!==this.sortConfig.adapter_src?e.sort_config.adapter_src:this.basePath+"tfAdapter.sortabletable.js",this.sortConfig.initialize=void 0!==this.sortConfig.initialize?e.sort_config.initialize:function(a){a.SetSortTable&&a.SetSortTable() +},this.sortConfig.sortTypes=p.isArray(this.sortConfig.sort_types)?e.sort_config.sort_types:[],this.sortConfig.sortCol=void 0!==this.sortConfig.sort_col?e.sort_config.sort_col:null,this.sortConfig.asyncSort=this.sortConfig.async_sort===!0?!0:!1,this.sortConfig.triggerIds=p.isArray(this.sortConfig.sort_trigger_ids)?e.sort_config.sort_trigger_ids:[],this.selectable=e.selectable===!0?!0:!1,this.editable=e.editable===!0?!0:!1,this.ezEditTableConfig=e.ezEditTable_config||{},this.ezEditTableConfig.name=void 0!==this.ezEditTableConfig.name?e.ezEditTable_config.name:"ezedittable",this.ezEditTableConfig.src=void 0!==this.ezEditTableConfig.src?e.ezEditTable_config.src:this.basePath+"ezEditTable/ezEditTable.js",this.ezEditTableConfig.loadStylesheet=this.ezEditTableConfig.loadStylesheet===!0?!0:!1,this.ezEditTableConfig.stylesheet=this.ezEditTableConfig.stylesheet||this.basePath+"ezEditTable/ezEditTable.css",this.ezEditTableConfig.stylesheetName=void 0!==this.ezEditTableConfig.stylesheetName?e.ezEditTable_config.stylesheetName:"ezEditTableCss",this.ezEditTableConfig.err='Failed to instantiate EditTable object.\n"ezEditTable" module may not be available.',this.onKeyUp=e.on_keyup===!0?!0:!1,this.onKeyUpDelay=isNaN(e.on_keyup_delay)?900:e.on_keyup_delay,this.isUserTyping=null,this.onKeyUpTimer=void 0,this.highlightKeywords=e.highlight_keywords===!0?!0:!1,this.highlightCssClass=e.highlight_css_class||"keyword",this.highlightedNodes=[],this.defaultDateType=e.default_date_type||"DMY",this.thousandsSeparator=e.thousands_separator||",",this.decimalSeparator=e.decimal_separator||".",this.hasColNbFormat=e.col_number_format===!0?!0:!1,this.colNbFormat=p.isArray(this.hasColNbFormat)?e.col_number_format:null,this.hasColDateType=e.col_date_type===!0?!0:!1,this.colDateType=p.isArray(this.hasColDateType)?e.col_date_type:null,this.msgFilter=e.msg_filter||"Filtering data...",this.msgPopulate=e.msg_populate||"Populating filter...",this.msgPopulateCheckList=e.msg_populate_checklist||"Populating list...",this.msgChangePage=e.msg_change_page||"Collecting paging data...",this.msgClear=e.msg_clear||"Clearing filters...",this.msgChangeResults=e.msg_change_results||"Changing results per page...",this.msgResetValues=e.msg_reset_grid_values||"Re-setting filters values...",this.msgResetPage=e.msg_reset_page||"Re-setting page...",this.msgResetPageLength=e.msg_reset_page_length||"Re-setting page length...",this.msgSort=e.msg_sort||"Sorting data...",this.msgLoadExtensions=e.msg_load_extensions||"Loading extensions...",this.msgLoadThemes=e.msg_load_themes||"Loading theme(s)...",this.prfxTf="TF",this.prfxFlt="flt",this.prfxValButton="btn",this.prfxInfDiv="inf_",this.prfxLDiv="ldiv_",this.prfxRDiv="rdiv_",this.prfxMDiv="mdiv_",this.prfxContentDiv="cont_",this.prfxCheckListDiv="chkdiv_",this.prfxSlcPages="slcPages_",this.prfxSlcResults="slcResults_",this.prfxSlcResultsTxt="slcResultsTxt_",this.prfxBtnNextSpan="btnNextSpan_",this.prfxBtnPrevSpan="btnPrevSpan_",this.prfxBtnLastSpan="btnLastSpan_",this.prfxBtnFirstSpan="btnFirstSpan_",this.prfxBtnNext="btnNext_",this.prfxBtnPrev="btnPrev_",this.prfxBtnLast="btnLast_",this.prfxBtnFirst="btnFirst_",this.prfxPgSpan="pgspan_",this.prfxPgBeforeSpan="pgbeforespan_",this.prfxPgAfterSpan="pgafterspan_",this.prfxCounter="counter_",this.prfxTotRows="totrows_span_",this.prfxTotRowsTxt="totRowsTextSpan_",this.prfxResetSpan="resetspan_",this.prfxLoader="load_",this.prfxStatus="status_",this.prfxStatusSpan="statusSpan_",this.prfxStatusTxt="statusText_",this.prfxCookieFltsValues="tf_flts_",this.prfxCookiePageNb="tf_pgnb_",this.prfxCookiePageLen="tf_pglen_",this.prfxMainTblCont="gridCont_",this.prfxTblCont="tblCont_",this.prfxHeadTblCont="tblHeadCont_",this.prfxHeadTbl="tblHead_",this.prfxGridFltTd="_td_",this.prfxGridTh="tblHeadTh_",this.prfxHelpSpan="helpSpan_",this.prfxHelpDiv="helpDiv_",this.prfxPopUpSpan="popUpSpan_",this.prfxPopUpDiv="popUpDiv_",this.hasStoredValues=!1,this.rememberGridValues=e.remember_grid_values===!0?!0:!1,this.fltsValuesCookie=this.prfxCookieFltsValues+this.id,this.rememberPageNb=this.paging&&e.remember_page_number?!0:!1,this.pgNbCookie=this.prfxCookiePageNb+this.id,this.rememberPageLen=this.paging&&e.remember_page_length?!0:!1,this.pgLenCookie=this.prfxCookiePageLen+this.id,this.cookieDuration=isNaN(e.set_cookie_duration)?1e5:parseInt(e.set_cookie_duration,10),this.hasExtensions=e.extensions===!0?!0:!1,this.extensions=this.hasExtensions?e.extensions:null,this.enableDefaultTheme=e.enable_default_theme===!0?!0:!1,this.hasThemes=e.enable_default_theme||e.themes&&p.isObj(e.themes)?!0:!1,this.themes=this.hasThemes?e.themes:null,this.themesPath=e.themes_path||this.basePath+"TF_Themes/",this.Cpt={loader:null,alternateRows:null,colOps:null,rowsCounter:null,GridLayout:null};var o=this;this.Evt={name:{filter:"Filter",populateselect:"Populate",populatechecklist:"PopulateCheckList",changepage:"ChangePage",clear:"Clear",changeresultsperpage:"ChangeResults",resetvalues:"ResetValues",resetpage:"ResetPage",resetpagelength:"ResetPageLength",sort:"Sort",loadextensions:"LoadExtensions",loadthemes:"LoadThemes"},getKeyCode:function(a){return a.charCode?a.charCode:a.keyCode?a.keyCode:a.which?a.which:0},_DetectKey:function(a){if(o.enterKey){var b=a||k.event;if(b){var c=o.Evt.getKeyCode(b);13===c?(o._Filter(),l.cancel(b),l.stop(b)):(o.isUserTyping=!0,k.clearInterval(o.onKeyUpTimer),o.onKeyUpTimer=void 0)}}},_OnKeyUp:function(a){function b(){k.clearInterval(o.onKeyUpTimer),o.onKeyUpTimer=void 0,o.isUserTyping||(o.Filter(),o.isUserTyping=null)}if(o.onKeyUp){var c=a||k.event,d=o.Evt.getKeyCode(c);o.isUserTyping=!1,13!==d&&9!==d&&27!==d&&38!==d&&40!==d?void 0===o.onKeyUpTimer&&(o.onKeyUpTimer=k.setInterval(b,o.onKeyUpDelay)):(k.clearInterval(o.onKeyUpTimer),o.onKeyUpTimer=void 0)}},_OnKeyDown:function(){o.onKeyUp&&(o.isUserTyping=!0)},_OnInpBlur:function(){o.onKeyUp&&(o.isUserTyping=!1,k.clearInterval(o.onKeyUpTimer)),""===this.value&&""!==o.inpWatermark&&(this.value=o.isInpWatermarkArray?o.inpWatermark[this.getAttribute("ct")]:o.inpWatermark,m.addClass(this,o.inpWatermarkCssClass)),o.ezEditTable&&(o.editable&&o.ezEditTable.Editable.Set(),o.selectable&&o.ezEditTable.Selection.Set())},_OnInpFocus:function(a){var b=a||k.event;if(o.activeFilterId=this.getAttribute("id"),o.activeFlt=m.id(o.activeFilterId),o.isInpWatermarkArray){var c=o.inpWatermark[this.getAttribute("ct")];this.value===c&&""!==c&&(this.value="",m.removeClass(this,o.inpWatermarkCssClass))}else this.value===o.inpWatermark&&""!==o.inpWatermark&&(this.value="",m.removeClass(this,o.inpWatermarkCssClass));o.popUpFilters&&(l.cancel(b),l.stop(b)),o.ezEditTable&&(o.editable&&o.ezEditTable.Editable.Remove(),o.selectable&&o.ezEditTable.Selection.Remove())},_OnSlcFocus:function(a){var b=a||k.event;if(o.activeFilterId=this.getAttribute("id"),o.activeFlt=m.id(o.activeFilterId),o.fillSlcOnDemand&&"0"===this.getAttribute("filled")){var c=this.getAttribute("ct");o.PopulateSelect(c),r.isIE()||this.setAttribute("filled","1")}o.popUpFilters&&(l.cancel(b),l.stop(b))},_OnSlcChange:function(a){if(o.activeFlt){var b=o.activeFlt.getAttribute("colIndex");if(!o.activeFlt||!b||o["col"+b]!==o.fltTypeCheckList||o.Evt._OnSlcChange.caller){var c=a||k.event;o.popUpFilters&&l.stop(c),o.onSlcChange&&o.Filter()}}},_OnSlcBlur:function(){},_OnCheckListChange:function(a){o.Evt._OnCheckListChange.caller&&o.Evt._OnSlcChange(a)},_OnCheckListClick:function(){if(o.fillSlcOnDemand&&"0"===this.getAttribute("filled")){var a=this.getAttribute("ct");o.PopulateCheckList(a),o.checkListDiv[a].onclick=null,o.checkListDiv[a].title=""}},_OnCheckListFocus:function(){o.activeFilterId=this.firstChild.getAttribute("id"),o.activeFlt=m.id(o.activeFilterId)},_OnCheckListBlur:function(){},_OnBtnClick:function(){o.Filter()},_OnSlcPagesChangeEvt:null,_EnableSlc:function(){this.firstChild.disabled=!1,this.firstChild.focus(),this.onclick=null},_Clear:function(){o.ClearFilters()},_OnHelpBtnClick:function(){o._ToggleHelp()},_Paging:{nextEvt:null,prevEvt:null,lastEvt:null,firstEvt:null}}}}function c(a,b){return a-b}function d(a,b){return b-a}function e(a,b){var c=n.lower(a),d=n.lower(b);return d>c?-1:c>d?1:0}function f(a,b){if(a){b||(b="us");var c=a;return c="us"===n.lower(b)?+c.replace(/[^\d\.-]/g,""):+c.replace(/[^\d\,-]/g,"").replace(",",".")}}function g(a,b){for(var c=!1,d=b?b:"script",e="script"==d?"src":"href",f=m.tag(v,d),g=0;g0?h[0].insertRow(this.filtersRowIndex):this.tbl.insertRow(this.filtersRowIndex),this.headersRow>1&&this.filtersRowIndex<=this.headersRow&&!this.popUpFilters&&this.headersRow++,this.popUpFilters&&this.headersRow++,g.className=this.fltsRowCssClass,this.isExternalFlt&&(!this.gridLayout||this.popUpFilters)&&(g.style.display="none")}this.nbFilterableRows=this.GetRowsNb(),this.nbVisibleRows=this.nbFilterableRows,this.nbRows=this.tbl.rows.length;for(var i=0;d>i;i++){var j=m.create(this.fltCellTag),k=this["col"+i],l=this.isExternalFlt&&this.externalFltTgtIds?this.externalFltTgtIds[i]:null;if(this.singleSearchFlt&&(j.colSpan=this.nbCells),this.gridLayout||g.appendChild(j),b=i==d-1&&this.displayBtn?this.fltSmallCssClass:this.fltCssClass,this.popUpFilters&&this.SetPopupFilter(i),void 0===k&&(k=void 0===c["col_"+i]?this.fltTypeInp:n.lower(c["col_"+i])),this.singleSearchFlt&&(k=this.fltTypeInp,b=this.singleFltCssClass),k===this.fltTypeSlc||k===this.fltTypeMulti){var p=m.create(this.fltTypeSlc,["id",this.prfxFlt+i+"_"+this.id],["ct",i],["filled","0"]);if(k===this.fltTypeMulti&&(p.multiple=this.fltTypeMulti,p.title=this.multipleSlcTooltip),p.className=n.lower(k)===this.fltTypeSlc?b:this.fltMultiCssClass,l?(m.id(l).appendChild(p),this.externalFltEls.push(p)):j.appendChild(p),this.fltIds.push(this.prfxFlt+i+"_"+this.id),this.fillSlcOnDemand||this._PopulateSelect(i),p.onkeypress=this.Evt._DetectKey,p.onchange=this.Evt._OnSlcChange,p.onfocus=this.Evt._OnSlcFocus,p.onblur=this.Evt._OnSlcBlur,this.fillSlcOnDemand){var q=m.createOpt(this.displayAllText,"");p.appendChild(q)}}else if(k===this.fltTypeCheckList){var r=m.create("div",["id",this.prfxCheckListDiv+i+"_"+this.id],["ct",i],["filled","0"]);r.className=this.checkListDivCssClass,l?(m.id(l).appendChild(r),this.externalFltEls.push(r)):j.appendChild(r),this.checkListDiv[i]=r,this.fltIds.push(this.prfxFlt+i+"_"+this.id),this.fillSlcOnDemand||this._PopulateCheckList(i),r.onclick=this.Evt._OnCheckListFocus,this.fillSlcOnDemand&&(r.onclick=this.Evt._OnCheckListClick,r.appendChild(m.text(this.activateCheckListTxt)))}else{var s=k===this.fltTypeInp?"text":"hidden",t=m.create(this.fltTypeInp,["id",this.prfxFlt+i+"_"+this.id],["type",s],["ct",i]);if("hidden"!=s&&(t.value=this.isInpWatermarkArray?this.inpWatermark[i]:this.inpWatermark),t.className=b,""!==this.inpWatermark&&m.addClass(t,this.inpWatermarkCssClass),t.onfocus=this.Evt._OnInpFocus,l?(m.id(l).appendChild(t),this.externalFltEls.push(t)):j.appendChild(t),this.fltIds.push(this.prfxFlt+i+"_"+this.id),t.onkeypress=this.Evt._DetectKey,t.onkeydown=this.Evt._OnKeyDown,t.onkeyup=this.Evt._OnKeyUp,t.onblur=this.Evt._OnInpBlur,this.rememberGridValues){var u=o.read(this.fltsValuesCookie),v=new RegExp(this.separator,"g"),w=u.split(v);" "!=w[i]&&this.SetFilterValue(i,w[i],!1)}}if(i==d-1&&this.displayBtn){var x=m.create(this.fltTypeInp,["id",this.prfxValButton+i+"_"+this.id],["type","button"],["value",this.btnText]);x.className=this.btnCssClass,l?m.id(l).appendChild(x):j.appendChild(x),x.onclick=this.Evt._OnBtnClick}}}else this.__resetGrid();else this.refRow=this.refRow-1,this.gridLayout&&(this.refRow=0),this.nbFilterableRows=this.GetRowsNb(),this.nbVisibleRows=this.nbFilterableRows,this.nbRows=this.nbFilterableRows+this.refRow;if(this.rowsCounter){var y=a("modules/rowsCounter").RowsCounter;this.Cpt.rowsCounter=new y(this),this.Cpt.rowsCounter.init()}if(this.statusBar&&this.SetStatusBar(),this.paging&&this.SetPaging(),this.hasResultsPerPage&&this.paging&&this.SetResultsPerPage(),this.btnReset&&this.SetResetBtn(),this.helpInstructions&&this.SetHelpInstructions(),this.hasColWidth&&!this.gridLayout&&this.SetColWidths(),this.alternateBgs&&this.isStartBgAlternate){var z=a("modules/alternateRows").AlternateRows;this.Cpt.alternateRows=new z(this),this.Cpt.alternateRows.init()}if(this.hasColOperation){var A=a("modules/colOps").ColOps;this.Cpt.colOps=new A(this),this.Cpt.colOps.calc()}(this.sort||this.gridLayout)&&this.SetSort(),(this.selectable||this.editable)&&this.SetEditable(),this.isFirstLoad=!1,this.hasGrid=!0,(this.rememberGridValues||this.rememberPageLen||this.rememberPageNb)&&this.ResetValues(),this.gridLayout||m.addClass(this.tbl,this.prfxTf),this.loader&&this.Cpt.loader.show("none"),this.hasExtensions&&this.LoadExtensions(),this.onFiltersLoaded&&this.onFiltersLoaded.call(null,this)}},EvtManager:function(a,b){function c(){if(a){switch(a){case d.Evt.name.filter:d.isModFilterFn?d.modFilterFn.call(null,d):d._Filter();break;case d.Evt.name.populateselect:d.refreshFilters?d._PopulateSelect(e,!0):d._PopulateSelect(e,!1,f,g);break;case d.Evt.name.populatechecklist:d._PopulateCheckList(e,f,g);break;case d.Evt.name.changepage:d._ChangePage(h);break;case d.Evt.name.clear:d._ClearFilters(),d._Filter();break;case d.Evt.name.changeresultsperpage:d._ChangeResultsPerPage();break;case d.Evt.name.resetvalues:d._ResetValues(),d._Filter();break;case d.Evt.name.resetpage:d._ResetPage(d.pgNbCookie);break;case d.Evt.name.resetpagelength:d._ResetPageLength(d.pgLenCookie);break;case d.Evt.name.sort:break;case d.Evt.name.loadextensions:d._LoadExtensions();break;case d.Evt.name.loadthemes:d._LoadThemes();break;default:d["_"+a].call(null,d,b)}(d.status||d.statusBar)&&d.StatusMsg(""),d.loader&&d.Cpt.loader.show("none")}}var d=this,e=b&&void 0!==b.slcIndex?b.slcIndex:null,f=b&&void 0!==b.slcExternal?b.slcExternal:!1,g=b&&void 0!==b.slcId?b.slcId:null,h=b&&void 0!==b.pgIndex?b.pgIndex:null;if(this.loader||this.status||this.statusBar){try{this.Cpt.loader.show(""),this.StatusMsg(d["msg"+a])}catch(i){}k.setTimeout(c,this.execDelay)}else c()},ImportModule:function(a){a.path&&a.name&&this.IncludeFile(a.name,a.path,a.init)},LoadExtensions:function(){if(!this.Ext){var a=this;this.Ext={list:{},add:function(b,c,d,e){var f=d.split("/")[d.split("/").length-1],g=new RegExp(f),h=d.replace(g,"");a.Ext.list[b]={name:b,description:c,file:f,path:h,callback:e}}}}this.EvtManager(this.Evt.name.loadextensions)},_LoadExtensions:function(){if(this.hasExtensions&&p.isArray(this.extensions.name)&&p.isArray(this.extensions.src))for(var a=this.extensions,b=0;b',this.btnPrevPageHtml='',this.btnNextPageHtml='',this.btnFirstPageHtml='',this.btnLastPageHtml='',this.loader=!0,this.loaderHtml='
',this.loaderText=null}},RemoveGrid:function(){if(this.fltGrid&&this.hasGrid){var a=this.tbl.rows;this.paging&&this.RemovePaging(),this.statusBar&&this.RemoveStatusBar(),this.rowsCounter&&this.Cpt.rowsCounter.destroy(),this.btnReset&&this.RemoveResetBtn(),(this.helpInstructions||!this.helpInstructions)&&this.RemoveHelpInstructions(),this.paging&&this.RemoveResultsPerPage(),this.isExternalFlt&&!this.popUpFilters&&this.RemoveExternalFlts(),this.infDiv&&this.RemoveTopDiv(),this.highlightKeywords&&this.UnhighlightAll(),this.sort&&this.RemoveSort(),this.loader&&this.Cpt.loader.remove(),this.popUpFilters&&this.RemovePopupFilters(),this.markActiveColumns&&this.ClearActiveColumns(),(this.editable||this.selectable)&&this.RemoveEditable();for(var b=this.refRow;b0&&!c.startRow?void 0:c.startRow||a.refRow,c.scroll_into_view=c.scroll_into_view===!1?!1:!0,c.base_path=c.base_path||a.basePath+"ezEditTable/",c.editable=a.editable=a.fObj.editable,c.selection=a.selectable=a.fObj.selectable,a.selectable&&(c.default_selection=c.default_selection||"row"),c.active_cell_css=c.active_cell_css||"ezETSelectedCell",a._lastValidRowIndex=0,a._lastRowIndex=0,a.selectable){var e=function(b,c,d){if(a.validRowsIndex){var e,f=a.validRowsIndex,g=f.length,h="row"!==b.defaultSelection?c.parentNode:c,i="TD"===c.nodeName?c:null,j=void 0!==d?b.Event.GetKey(d):0,k=q.has(f,h.rowIndex),l=34===j||33===j?a.pagingLength||b.nbRowsPerPage:1;if(k)34!==j&&33!==j?(a._lastValidRowIndex=q.indexByValue(f,h.rowIndex),a._lastRowIndex=h.rowIndex):(e=34===j?a._lastValidRowIndex+l<=g-1?f[a._lastValidRowIndex+l]:[g-1]:a._lastValidRowIndex-l<=f[0]?f[0]:f[a._lastValidRowIndex-l],a._lastRowIndex=e,a._lastValidRowIndex=q.indexByValue(f,e),o(e));else{if(h.rowIndex>a._lastRowIndex)if(h.rowIndex>=f[g-1])e=f[g-1];else{var m=a._lastValidRowIndex+l;e=m>g-1?f[g-1]:f[m]}else if(h.rowIndex<=f[0])e=f[0];else{var n=f[a._lastValidRowIndex-l];e=n?n:f[0]}a._lastRowIndex=h.rowIndex,o(e)}var o=function(d){if("row"===b.defaultSelection)b.Selection.SelectRowByIndex(d);else{b.ClearSelections();var e=c.cellIndex,f=a.tbl.rows[d];"both"===b.defaultSelection&&b.Selection.SelectRowByIndex(d),f&&b.Selection.SelectCell(f.cells[e])}if(a.validRowsIndex.length!==a.GetRowsNb()){var g=a.tbl.rows[d];g&&g.scrollIntoView(!1),i&&(i.cellIndex===a.GetCellsNb()-1&&a.gridLayout?a.tblCont.scrollLeft=1e8:0===i.cellIndex&&a.gridLayout?a.tblCont.scrollLeft=0:i.scrollIntoView(!1))}}}},f=function(b,c){var d="row"!==b.defaultSelection?c.parentNode:c;if(a.paging&&a.nbPages>1){b.nbRowsPerPage=a.pagingLength;var e=a.validRowsIndex,f=e.length,g=parseInt(a.startPagingRow,10)+parseInt(a.pagingLength,10),h=d.rowIndex;h===e[f-1]&&a.currentPageNb!=a.nbPages?a.SetPage("last"):h==e[0]&&1!==a.currentPageNb?a.SetPage("first"):h>e[g-1]&&he[0]&&a.SetPage("previous")}};if(a.paging&&(a.onAfterChangePage=function(a){var b=a.ezEditTable,c=b.Selection.GetActiveRow();c&&c.scrollIntoView(!1);var d=b.Selection.GetActiveCell();d&&d.scrollIntoView(!1)}),"row"===c.default_selection){var g=c.on_before_selected_row;c.on_before_selected_row=function(){f(arguments[0],arguments[1],arguments[2]),g&&g.call(null,arguments[0],arguments[1],arguments[2])};var h=c.on_after_selected_row;c.on_after_selected_row=function(){e(arguments[0],arguments[1],arguments[2]),h&&h.call(null,arguments[0],arguments[1],arguments[2])}}else{var i=c.on_before_selected_cell;c.on_before_selected_cell=function(){f(arguments[0],arguments[1],arguments[2]),i&&i.call(null,arguments[0],arguments[1],arguments[2])};var j=c.on_after_selected_cell;c.on_after_selected_cell=function(){e(arguments[0],arguments[1],arguments[2]),j&&j.call(null,arguments[0],arguments[1],arguments[2])}}}if(a.editable){var k=c.on_added_dom_row;if(c.on_added_dom_row=function(){a.nbFilterableRows++,a.paging?(a.nbRows++,a.nbVisibleRows++,a.nbFilterableRows++,a.paging=!1,a.RemovePaging(),a.AddPaging(!1)):a.Cpt.rowsCounter.refresh(),a.alternateBgs&&a.Cpt.alternateRows.init(),k&&k.call(null,arguments[0],arguments[1],arguments[2])},c.actions&&c.actions["delete"]){var l=c.actions["delete"].on_after_submit;c.actions["delete"].on_after_submit=function(){a.nbFilterableRows--,a.paging?(a.nbRows--,a.nbVisibleRows--,a.nbFilterableRows--,a.paging=!1,a.RemovePaging(),a.AddPaging(!1)):a.Cpt.rowsCounter.refresh(),a.alternateBgs&&a.Cpt.alternateRows.init(),l&&l.call(null,arguments[0],arguments[1])}}}try{a.ezEditTable=new EditTable(a.id,c,b),a.ezEditTable.Init()}catch(n){console.log(c.err)}},SetPaging:function(){if((this.hasGrid||this.isFirstLoad)&&this.paging&&(this.isPagingRemoved||this.isFirstLoad)){var a=this.fObj;this.pagingTgtId=a.paging_target_id||null,this.pagingLength=isNaN(a.paging_length)?10:a.paging_length,this.resultsPerPageTgtId=a.results_per_page_target_id||null,this.pgSlcCssClass=a.paging_slc_css_class||"pgSlc",this.pgInpCssClass=a.paging_inp_css_class||"pgNbInp",this.resultsSlcCssClass=a.results_slc_css_class||"rspg",this.resultsSpanCssClass=a.results_span_css_class||"rspgSpan",this.nbVisibleRows=0,this.nbHiddenRows=0,this.startPagingRow=0,this.nbPages=0,this.btnNextPageText=a.btn_next_page_text||">",this.btnPrevPageText=a.btn_prev_page_text||"<",this.btnLastPageText=a.btn_last_page_text||">|",this.btnFirstPageText=a.btn_first_page_text||"|<",this.btnNextPageHtml=a.btn_next_page_html||(this.enableIcons?'':null),this.btnPrevPageHtml=a.btn_prev_page_html||(this.enableIcons?'':null),this.btnFirstPageHtml=a.btn_first_page_html||(this.enableIcons?'':null),this.btnLastPageHtml=a.btn_last_page_html||(this.enableIcons?'':null),this.pageText=a.page_text||" Page ",this.ofText=a.of_text||" of ",this.nbPgSpanCssClass=a.nb_pages_css_class||"nbpg",this.hasPagingBtns=a.paging_btns===!1?!1:!0,this.pagingBtnEvents=null,this.pageSelectorType=a.page_selector_type||this.fltTypeSlc,this.onBeforeChangePage=p.isFn(a.on_before_change_page)?a.on_before_change_page:null,this.onAfterChangePage=p.isFn(a.on_after_change_page)?a.on_after_change_page:null;var b=this.refRow,c=this.nbRows;if(this.nbPages=Math.ceil((c-b)/this.pagingLength),!this.Evt._Paging.next){var d=this;this.Evt._Paging={slcIndex:function(){return d.pageSelectorType===d.fltTypeSlc?d.pagingSlc.options.selectedIndex:parseInt(d.pagingSlc.value,10)-1},nbOpts:function(){return d.pageSelectorType===d.fltTypeSlc?parseInt(d.pagingSlc.options.length,10)-1:d.nbPages-1},next:function(){d.Evt._Paging.nextEvt&&d.Evt._Paging.nextEvt();var a=d.Evt._Paging.slcIndex()0?d.Evt._Paging.slcIndex()-1:d.Evt._Paging.nbOpts();d.ChangePage(a)},last:function(){d.Evt._Paging.lastEvt&&d.Evt._Paging.lastEvt(),d.ChangePage(d.Evt._Paging.nbOpts())},first:function(){d.Evt._Paging.firstEvt&&d.Evt._Paging.firstEvt(),d.ChangePage(0)},_detectKey:function(a){var b=a||k.event;if(b){var c=d.Evt.getKeyCode(a);13===c&&(d.sorted?(d.Filter(),d.ChangePage(d.Evt._Paging.slcIndex())):d.ChangePage(),this.blur())}},nextEvt:null,prevEvt:null,lastEvt:null,firstEvt:null}}this.Evt._OnSlcPagesChange||(this.Evt._OnSlcPagesChange=function(){d.Evt._Paging._OnSlcPagesChangeEvt&&d.Evt._Paging._OnSlcPagesChangeEvt(),d.ChangePage(),this.blur(),this.parentNode&&r.isIE()&&this.parentNode.focus()});var e;this.pageSelectorType===this.fltTypeSlc&&(e=m.create(this.fltTypeSlc,["id",this.prfxSlcPages+this.id]),e.className=this.pgSlcCssClass,e.onchange=this.Evt._OnSlcPagesChange),this.pageSelectorType===this.fltTypeInp&&(e=m.create(this.fltTypeInp,["id",this.prfxSlcPages+this.id],["value",this.currentPageNb]),e.className=this.pgInpCssClass,e.onkeypress=this.Evt._Paging._detectKey);var f=m.create("span",["id",this.prfxBtnNextSpan+this.id]),g=m.create("span",["id",this.prfxBtnPrevSpan+this.id]),h=m.create("span",["id",this.prfxBtnLastSpan+this.id]),i=m.create("span",["id",this.prfxBtnFirstSpan+this.id]);if(this.hasPagingBtns){if(this.btnNextPageHtml)f.innerHTML=this.btnNextPageHtml,f.onclick=this.Evt._Paging.next;else{var j=m.create(this.fltTypeInp,["id",this.prfxBtnNext+this.id],["type","button"],["value",this.btnNextPageText],["title","Next"]);j.className=this.btnPageCssClass,j.onclick=this.Evt._Paging.next,f.appendChild(j)}if(this.btnPrevPageHtml)g.innerHTML=this.btnPrevPageHtml,g.onclick=this.Evt._Paging.prev;else{var l=m.create(this.fltTypeInp,["id",this.prfxBtnPrev+this.id],["type","button"],["value",this.btnPrevPageText],["title","Previous"]);l.className=this.btnPageCssClass,l.onclick=this.Evt._Paging.prev,g.appendChild(l)}if(this.btnLastPageHtml)h.innerHTML=this.btnLastPageHtml,h.onclick=this.Evt._Paging.last;else{var n=m.create(this.fltTypeInp,["id",this.prfxBtnLast+this.id],["type","button"],["value",this.btnLastPageText],["title","Last"]);n.className=this.btnPageCssClass,n.onclick=this.Evt._Paging.last,h.appendChild(n)}if(this.btnFirstPageHtml)i.innerHTML=this.btnFirstPageHtml,i.onclick=this.Evt._Paging.first;else{var o=m.create(this.fltTypeInp,["id",this.prfxBtnFirst+this.id],["type","button"],["value",this.btnFirstPageText],["title","First"]);o.className=this.btnPageCssClass,o.onclick=this.Evt._Paging.first,i.appendChild(o)}}this.pagingTgtId||this.SetTopDiv();var q=this.pagingTgtId?m.id(this.pagingTgtId):this.mDiv;""!==q.innerHTML&&(q.innerHTML=""),q.appendChild(i),q.appendChild(g);var s=m.create("span",["id",this.prfxPgBeforeSpan+this.id]);s.appendChild(m.text(this.pageText)),s.className=this.nbPgSpanCssClass,q.appendChild(s),q.appendChild(e);var t=m.create("span",["id",this.prfxPgAfterSpan+this.id]);t.appendChild(m.text(this.ofText)),t.className=this.nbPgSpanCssClass,q.appendChild(t);var u=m.create("span",["id",this.prfxPgSpan+this.id]);u.className=this.nbPgSpanCssClass,u.appendChild(m.text(" "+this.nbPages+" ")),q.appendChild(u),q.appendChild(f),q.appendChild(h),this.pagingSlc=m.id(this.prfxSlcPages+this.id),(!this.rememberGridValues||this.isPagingRemoved)&&this.SetPagingInfo(),this.fltGrid||(this.ValidateAllRows(),this.SetPagingInfo(this.validRowsIndex)),this.pagingBtnEvents=this.Evt._Paging,this.isPagingRemoved=!1}},RemovePaging:function(){if(this.hasGrid&&this.pagingSlc){var a,b,c,d,e,f,g;a=m.id(this.prfxBtnNextSpan+this.id),b=m.id(this.prfxBtnPrevSpan+this.id),c=m.id(this.prfxBtnLastSpan+this.id),d=m.id(this.prfxBtnFirstSpan+this.id),e=m.id(this.prfxPgBeforeSpan+this.id),f=m.id(this.prfxPgAfterSpan+this.id),g=m.id(this.prfxPgSpan+this.id),this.pagingSlc.parentNode.removeChild(this.pagingSlc),a&&a.parentNode.removeChild(a),b&&b.parentNode.removeChild(b),c&&c.parentNode.removeChild(c),d&&d.parentNode.removeChild(d),e&&e.parentNode.removeChild(e),f&&f.parentNode.removeChild(f),g&&g.parentNode.removeChild(g),this.pagingBtnEvents=null,this.pagingSlc=null,this.isPagingRemoved=!0}},SetPagingInfo:function(a){var b=this.tbl.rows,c=this.pagingTgtId?m.id(this.pagingTgtId):this.mDiv,d=m.id(this.prfxPgSpan+this.id); +if(a&&a.length>0)this.validRowsIndex=a;else{this.validRowsIndex=[];for(var e=this.refRow;e0)if(c.style.visibility="visible",this.pageSelectorType===this.fltTypeSlc)for(var h=0;h=this.startPagingRow&&c>d?("true"!==e.getAttribute("validRow")&&e.getAttribute("validRow")||(e.style.display=""),this.alternateBgs&&this.Cpt.alternateRows.setRowBg(this.validRowsIndex[d],d)):(e.style.display="none",this.alternateBgs&&this.Cpt.alternateRows.removeRowBg(this.validRowsIndex[d]))}this.nbVisibleRows=this.validRowsIndex.length,this.isStartBgAlternate=!1,this.ApplyGridProps()},SetPage:function(a){if(this.hasGrid&&this.paging){var b=this.pagingBtnEvents,c=typeof a;if("string"===c)switch(n.lower(a)){case"next":b.next();break;case"previous":b.prev();break;case"last":b.last();break;case"first":b.first();break;default:b.next()}"number"===c&&this.ChangePage(a-1)}},SetResultsPerPage:function(){if((this.hasGrid||this.isFirstLoad)&&!this.resultsPerPageSlc&&this.resultsPerPage){if(!this.Evt._OnSlcResultsChange){var a=this;this.Evt._OnSlcResultsChange=function(){a.ChangeResultsPerPage(),this.blur(),this.parentNode&&r.isIE()&&this.parentNode.focus()}}var b=m.create(this.fltTypeSlc,["id",this.prfxSlcResults+this.id]);b.className=this.resultsSlcCssClass;var c=this.resultsPerPage[0],d=this.resultsPerPage[1],e=m.create("span",["id",this.prfxSlcResultsTxt+this.id]);e.className=this.resultsSpanCssClass,this.resultsPerPageTgtId||this.SetTopDiv();var f=this.resultsPerPageTgtId?m.id(this.resultsPerPageTgtId):this.rDiv;e.appendChild(m.text(c)),f.appendChild(e),f.appendChild(b),this.resultsPerPageSlc=m.id(this.prfxSlcResults+this.id);for(var g=0;g<, <=, >, >=, =, *, !, {, }, ||,&&, [empty], [nonempty], rgx:
These operators are described here:
http://tablefilter.free.fr/#operators
',this.helpInstrHtml=a.help_instructions_html||null,this.helpInstrBtnText=a.help_instructions_btn_text||"?",this.helpInstrBtnHtml=a.help_instructions_btn_html||null,this.helpInstrBtnCssClass=a.help_instructions_btn_css_class||"helpBtn",this.helpInstrContCssClass=a.help_instructions_container_css_class||"helpCont",this.helpInstrBtnEl=null,this.helpInstrContEl=null,this.helpInstrDefaultHtml='

HTML Table Filter Generator v. '+this.version+'

http://tablefilter.free.fr
©2009-'+this.year+' Max Guglielmi.
";var b=m.create("span",["id",this.prfxHelpSpan+this.id]),c=m.create("div",["id",this.prfxHelpDiv+this.id]);this.helpInstrTgtId||this.SetTopDiv();var d=this.helpInstrTgtId?m.id(this.helpInstrTgtId):this.rDiv;d.appendChild(b);var e=this.helpInstrContTgtId?m.id(this.helpInstrContTgtId):b;if(this.helpInstrBtnHtml){b.innerHTML=this.helpInstrBtnHtml;var f=b.firstChild;f.onclick=this.Evt._OnHelpBtnClick,e.appendChild(c)}else{e.appendChild(c);var g=m.create("a",["href","javascript:void(0);"]);g.className=this.helpInstrBtnCssClass,g.appendChild(m.text(this.helpInstrBtnText)),b.appendChild(g),g.onclick=this.Evt._OnHelpBtnClick}this.helpInstrHtml?(this.helpInstrContTgtId&&e.appendChild(c),c.innerHTML=this.helpInstrHtml,this.helpInstrContTgtId||(c.className=this.helpInstrContCssClass,c.ondblclick=this.Evt._OnHelpBtnClick)):(c.innerHTML=this.helpInstrText,c.className=this.helpInstrContCssClass,c.ondblclick=this.Evt._OnHelpBtnClick),c.innerHTML+=this.helpInstrDefaultHtml,this.helpInstrContEl=c,this.helpInstrBtnEl=b}},RemoveHelpInstructions:function(){this.helpInstrBtnEl&&(this.helpInstrBtnEl.parentNode.removeChild(this.helpInstrBtnEl),this.helpInstrBtnEl=null,this.helpInstrContEl&&(this.helpInstrContEl.parentNode.removeChild(this.helpInstrContEl),this.helpInstrContEl=null))},_ToggleHelp:function(){if(this.helpInstrContEl){var a=this.helpInstrContEl.style.display;if(""===a||"none"===a){this.helpInstrContEl.style.display="block";var b=m.position(this.helpInstrBtnEl).left;this.helpInstrContTgtId||(this.helpInstrContEl.style.left=b-this.helpInstrContEl.clientWidth+25+"px")}else this.helpInstrContEl.style.display="none"}},ChangePage:function(a){this.EvtManager(this.Evt.name.changepage,{pgIndex:a})},_ChangePage:function(a){this.paging&&(a||(a=this.pageSelectorType===this.fltTypeSlc?this.pagingSlc.options.selectedIndex:this.pagingSlc.value-1),a>=0&&a<=this.nbPages-1&&(this.onBeforeChangePage&&this.onBeforeChangePage.call(null,this,a),this.currentPageNb=parseInt(a,10)+1,this.pageSelectorType===this.fltTypeSlc?this.pagingSlc.options[a].selected=!0:this.pagingSlc.value=this.currentPageNb,this.rememberPageNb&&this.RememberPageNb(this.pgNbCookie),this.startPagingRow=this.pageSelectorType===this.fltTypeSlc?this.pagingSlc.value:a*this.pagingLength,this.GroupByPage(),this.onAfterChangePage&&this.onAfterChangePage.call(null,this,a)))},ChangeResultsPerPage:function(){this.EvtManager(this.Evt.name.changeresultsperpage)},_ChangeResultsPerPage:function(){if(this.paging){var a=this.resultsPerPageSlc,b=this.pageSelectorType==this.fltTypeSlc?this.pagingSlc.selectedIndex:parseInt(this.pagingSlc.value-1,10);if(this.pagingLength=parseInt(a.options[a.selectedIndex].value,10),this.startPagingRow=this.pagingLength*b,!isNaN(this.pagingLength)){if(this.startPagingRow>=this.nbFilterableRows&&(this.startPagingRow=this.nbFilterableRows-this.pagingLength),this.SetPagingInfo(),this.pageSelectorType===this.fltTypeSlc){var c=this.pagingSlc.options.length-1<=b?this.pagingSlc.options.length-1:b;this.pagingSlc.options[c].selected=!0}this.rememberPageLen&&this.RememberPageLength(this.pgLenCookie)}}},ResetPage:function(){this.EvtManager(this.Evt.name.resetpage)},_ResetPage:function(a){var b=o.read(a);""!==b&&this.ChangePage(b-1)},ResetPageLength:function(){this.EvtManager(this.Evt.name.resetpagelength)},_ResetPageLength:function(a){if(this.paging){var b=o.read(a);""!==b&&(this.resultsPerPageSlc.options[b].selected=!0,this.ChangeResultsPerPage())}},AddPaging:function(a){this.hasGrid&&!this.paging&&(this.paging=!0,this.isPagingRemoved=!0,this.SetPaging(),this.ResetValues(),a&&this.Filter())},PopulateSelect:function(a,b,c){this.EvtManager(this.Evt.name.populateselect,{slcIndex:a,slcExternal:b,slcId:c})},_PopulateSelect:function(a,b,f,g){function h(){if("innerhtml"===t)v+='";else{var a=m.createOpt(p.enableSlcResetFilter?p.displayAllText:"","");if(p.enableSlcResetFilter||(a.style.display="none"),l.appendChild(a),p.enableEmptyOption){var b=m.createOpt(p.emptyText,p.emOperator);l.appendChild(b)}if(p.enableNonEmptyOption){var c=m.createOpt(p.nonEmptyText,p.nmOperator);l.appendChild(c)}}}function i(){var c=l.value;l.innerHTML="",h();for(var d=0;d"+f+""}else{var j;j=p.fillSlcOnDemand&&c==u[d]&&p["col"+a]===p.fltTypeSlc?m.createOpt(f,e,!0):p["col"+a]!=p.fltTypeMulti?m.createOpt(f,e," "!==y[a]&&e==y[a]?!0:!1):m.createOpt(f,e,q.has(z,n.matchCase(u[d],p.matchCase),p.matchCase)||-1!==z.toString().indexOf(e)?!0:!1),g&&(j.disabled=!0),l.appendChild(j)}}"innerhtml"===t&&(l.innerHTML+=v),l.setAttribute("filled","1")}f=void 0===f?!1:f;var j=this.fltIds[a];if((m.id(j)||f)&&(m.id(g)||!f)){var k,l=m.id(f?g:j),p=this,r=this.tbl.rows,s=this.matchCase,t=n.lower(this.slcFillingMethod),u=[],v="",w=this.hasCustomSlcOptions&&q.has(this.customSlcOptions.cols,a),x=[];b&&this.activeFilterId&&(k=this.activeFilterId.split("_")[0],k=k.split(this.prfxFlt)[1]);var y=[],z=[];this.rememberGridValues&&(y=o.valueToArray(this.fltsValuesCookie,this.separator),y&&!n.isEmpty(y.toString())&&(w?z.push(y[a]):z=y[a].split(" "+p.orOperator+" ")));var A=null,B=null;b&&this.disableExcludedOptions&&(A=[],B=[]);for(var C=this.refRow;CF;F++)if(a===F&&(!b||b&&this.disableExcludedOptions)||a==F&&b&&(""===r[C].style.display&&!this.paging||this.paging&&(!this.validRowsIndex||this.validRowsIndex&&q.has(this.validRowsIndex,C))&&(void 0===k||k==a||k!=a&&q.has(this.validRowsIndex,C)))){var G=this.GetCellData(F,D[F]),H=n.matchCase(G,s);if(q.has(u,H,s)||u.push(G),b&&this.disableExcludedOptions){var I=B[F];I||(I=this.GetFilteredDataCol(F)),!q.has(I,H,s)&&!q.has(A,H,s)&&!this.isFirstLoad&&A.push(G)}}}if(w){var J=this.__getCustomValues(a);u=J[0],x=J[1]}if(this.sortSlc&&!w&&(s?(u.sort(),A&&A.sort()):(u.sort(e),A&&A.sort(e))),this.sortNumAsc&&q.has(this.sortNumAsc,a))try{u.sort(c),A&&A.sort(c),w&&x.sort(c)}catch(K){u.sort(),A&&A.sort(),w&&x.sort()}if(this.sortNumDesc&&q.has(this.sortNumDesc,a))try{u.sort(d),A&&A.sort(d),w&&x.sort(d)}catch(K){u.sort(),A&&A.sort(),w&&x.sort()}i()}},__deferMultipleSelection:function(a,b,c){if("select"===n.lower(a.nodeName)){var d=void 0===c?!1:c,e=this;k.setTimeout(function(){a.options[0].selected=!1,""===a.options[b].value?a.options[b].selected=!1:(a.options[b].selected=!0,d&&e.Filter())},.1)}},__getCustomValues:function(a){if(a){var b=this.hasCustomSlcOptions&&q.has(this.customSlcOptions.cols,a);if(b){for(var c=[],d=[],e=q.indexByValue(this.customSlcOptions.cols,a),f=this.customSlcOptions.values[e],g=this.customSlcOptions.texts[e],h=this.customSlcOptions.sorts[e],i=0;i0&&(p.hasCustomSlcOptions&&q.has(p.customSlcOptions.cols,a)?e.push(f):e=f.split(" "+p.orOperator+" "));for(var h=0;hA;A++)if(a===A&&(!this.refreshFilters||this.refreshFilters&&this.disableExcludedOptions)||a===A&&this.refreshFilters&&(""===r[x].style.display&&!this.paging||this.paging&&(!l||l===a||l!=a&&q.has(this.validRowsIndex,x)))){var B=this.GetCellData(A,y[A]),C=n.matchCase(B,this.matchCase);q.has(s,C,this.matchCase)||s.push(B);var D=w[A];this.refreshFilters&&this.disableExcludedOptions&&(D||(w[A]=this.GetFilteredDataCol(A)),!q.has(D,C,this.matchCase)&&!q.has(v,C,this.matchCase)&&!this.isFirstLoad&&v.push(B))}}if(t){var E=this.__getCustomValues(a);s=E[0],u=E[1]}if(this.sortSlc&&!t&&(this.matchCase?(s.sort(),v&&v.sort()):(s.sort(e),v&&v.sort(e))),this.sortNumAsc&&q.has(this.sortNumAsc,a))try{s.sort(c),v&&v.sort(c),t&&u.sort(c)}catch(F){s.sort(),v&&v.sort(),t&&u.sort()}if(this.sortNumDesc&&q.has(this.sortNumDesc,a))try{s.sort(d),v&&v.sort(d),t&&u.sort(d)}catch(F){s.sort(),v&&v.sort(),t&&u.sort()}h(this.separator),this.fillSlcOnDemand&&(j.innerHTML=""),j.appendChild(k),j.setAttribute("filled","1")}},__setCheckListValues:function(a){if(a){for(var b=a.value,c=parseInt(a.id.split("_")[2],10),d="ul",e="li",f=a;n.lower(f.nodeName)!==d;)f=f.parentNode;var g=f.childNodes[c],h=f.getAttribute("colIndex"),i=f.getAttribute("value"),j=f.getAttribute("indexes");if(a.checked){if(""===b){if(j&&""!==j)for(var k=j.split(this.separator),l=0;l':null);var b=m.create("span",["id",this.prfxResetSpan+this.id]);this.btnResetTgtId||this.SetTopDiv();var c=this.btnResetTgtId?m.id(this.btnResetTgtId):this.rDiv;if(c.appendChild(b),this.btnResetHtml){b.innerHTML=this.btnResetHtml;var d=b.firstChild;d.onclick=this.Evt._Clear}else{var e=m.create("a",["href","javascript:void(0);"]);e.className=this.btnResetCssClass,e.appendChild(m.text(this.btnResetText)),b.appendChild(e),e.onclick=this.Evt._Clear}this.btnResetEl=m.id(this.prfxResetSpan+this.id).firstChild}},RemoveResetBtn:function(){if(this.hasGrid&&this.btnResetEl){var a=m.id(this.prfxResetSpan+this.id);a&&a.parentNode.removeChild(a),this.btnResetEl=null}},SetStatusBar:function(){if(this.hasGrid||this.isFirstLoad){var a=this.fObj;this.statusBarTgtId=a.status_bar_target_id||null,this.statusBarDiv=null,this.statusBarSpan=null,this.statusBarSpanText=null,this.statusBarText=a.status_bar_text||"",this.statusBarCssClass=a.status_bar_css_class||"status",this.statusBarCloseDelay=250;var b=m.create("div",["id",this.prfxStatus+this.id]);b.className=this.statusBarCssClass;var c=m.create("span",["id",this.prfxStatusSpan+this.id]),d=m.create("span",["id",this.prfxStatusTxt+this.id]);d.appendChild(m.text(this.statusBarText)),this.onBeforeShowMsg=p.isFn(a.on_before_show_msg)?a.on_before_show_msg:null,this.onAfterShowMsg=p.isFn(a.on_after_show_msg)?a.on_after_show_msg:null,this.statusBarTgtId||this.SetTopDiv();var e=this.statusBarTgtId?m.id(this.statusBarTgtId):this.lDiv;this.statusBarDiv&&r.isIE()&&(this.statusBarDiv.outerHTML=""),this.statusBarTgtId?(e.appendChild(d),e.appendChild(c)):(b.appendChild(d),b.appendChild(c),e.appendChild(b)),this.statusBarDiv=m.id(this.prfxStatus+this.id),this.statusBarSpan=m.id(this.prfxStatusSpan+this.id),this.statusBarSpanText=m.id(this.prfxStatusTxt+this.id)}},RemoveStatusBar:function(){(this.hasGrid||this.statusBarDiv)&&(this.statusBarDiv.innerHTML="",this.statusBarDiv.parentNode.removeChild(this.statusBarDiv),this.statusBarSpan=null,this.statusBarSpanText=null,this.statusBarDiv=null)},StatusMsg:function(a){a||this.StatusMsg(""),this.status&&this.WinStatusMsg(a),this.statusBar&&this.StatusBarMsg(a)},WinStatusMsg:function(a){this.status&&(this.onBeforeShowMsg&&this.onBeforeShowMsg.call(null,this,a),k.status=a,this.onAfterShowMsg&&this.onAfterShowMsg.call(null,this,a))},StatusBarMsg:function(a){function b(){c.statusBarSpan.innerHTML=a,c.onAfterShowMsg&&c.onAfterShowMsg.call(null,c,a)}if(this.statusBar&&this.statusBarSpan){this.onBeforeShowMsg&&this.onBeforeShowMsg.call(null,this,a);var c=this,d=""===a?this.statusBarCloseDelay:1;k.setTimeout(b,d)}},SetWatermark:function(a){if(this.fltGrid||""!==this.inpWatermark){a=void 0===a?!0:a;for(var b=0;b',this.popUpDivCssClass=b.popup_div_css_class||"popUpFilter",this.onBeforePopUpOpen=p.isFn(b.on_before_popup_filter_open)?b.on_before_popup_filter_open:null,this.onAfterPopUpOpen=p.isFn(b.on_after_popup_filter_open)?b.on_after_popup_filter_open:null,this.onBeforePopUpClose=p.isFn(b.on_before_popup_filter_close)?b.on_before_popup_filter_close:null,this.onAfterPopUpClose=p.isFn(b.on_after_popup_filter_close)?b.on_after_popup_filter_close:null,this.externalFltTgtIds=[],this.popUpFltSpans=[],this.popUpFltImgs=[],this.popUpFltElms=this.popUpFltElmCache||[],this.popUpFltAdjustToContainer=!0;for(var c=this,d=0;dm):P?(q=u(a.replace(j,""),J),e=q>=m):R?(q=u(a.replace(k,""),J),e=m>=q):Q?(q=u(a.replace(o,""),J),e=m>q):S?(q=u(a.replace(p,""),J),e=m.toString()!=q.toString()):T?(q=u(a.replace(s,""),J),e=m.toString()==q.toString()):r.test(a)?e=g.__containsStr(a.replace(r,""),b,null,!1):t(a,J)?(q=u(a,J),e=m.toString()==q.toString()):L?e=n.isEmpty(b):M&&(e=!n.isEmpty(b));else if(g.hasColNbFormat&&g.colNbFormat[c]?(h=f(b,g.colNbFormat[c]),i=g.colNbFormat[c]):","===g.thousandsSeparator&&"."===g.decimalSeparator?(h=f(b,"us"),i="us"):(h=f(b,"eu"),i="eu"),C)e=h<=f(a.replace(j,""),i);else if(E)e=h>=f(a.replace(k,""),i);else if(B)e=hf(a.replace(o,""),i);else if(F)e=g.__containsStr(a.replace(p,""),b)?!1:!0;else if(H)e=g.__containsStr(a.replace(r,""),b,null,!1);else if(G)e=g.__containsStr(a.replace(s,""),b,null,!0);else if(I)e=0===b.indexOf(a.replace(v,""))?!0:!1;else if(K){var U=a.replace(w,"");e=b.lastIndexOf(U,b.length-1)===b.length-1-(U.length-1)&&b.lastIndexOf(U,b.length-1)>-1?!0:!1}else if(L)e=n.isEmpty(b);else if(M)e=!n.isEmpty(b);else if(N)try{var V=a.replace(A,""),W=new RegExp(V);e=W.test(b)}catch(X){e=!1}else{var Y=d["col_"+c];e=g.__containsStr(a,b,Y?Y:this.fltTypeInp)}return e}if(this.fltGrid&&(this.hasGrid||this.isFirstLoad)){this.onBeforeFilter&&this.onBeforeFilter.call(null,this),""!==this.inpWatermark&&this.SetWatermark(!1);var c=this.tbl.rows,d=this.fObj||{},e=0;this.validRowsIndex=[];var g=this;this.highlightKeywords&&this.UnhighlightAll(),this.popUpFilters&&this.SetAllPopupFiltersIcon(),this.markActiveColumns&&this.ClearActiveColumns(),this.searchArgs=this.GetFiltersValue();for(var h,i,j=new RegExp(this.leOperator),k=new RegExp(this.geOperator),l=new RegExp(this.lwOperator),o=new RegExp(this.grOperator),p=new RegExp(this.dfOperator),r=new RegExp(n.rgxEsc(this.lkOperator)),s=new RegExp(this.eqOperator),v=new RegExp(this.stOperator),w=new RegExp(this.enOperator),x=new RegExp(this.anOperator),y=(new RegExp(this.curExp),this.emOperator),z=this.nmOperator,A=new RegExp(n.rgxEsc(this.rgxOperator)),B=this.refRow;BH;H++){var I=this.searchArgs[this.singleSearchFlt?0:H],J=this.hasColDateType?this.colDateType[H]:this.defaultDateType;if(""!==I){var K=n.matchCase(this.GetCellData(H,C[H]),this.matchCase),L=I.split(this.orOperator),M=L.length>1?!0:!1,N=I.split(this.anOperator),O=N.length>1?!0:!1;if(M||O){for(var P,Q=!1,R=M?L:N,S=0;Sk;k++)if(k===a&&""===d[g].style.display){var l=n.lower(this.GetCellData(k,i[k])),m=this.colNbFormat?this.colNbFormat[a]:null,o=b?f(l,m):l;e.push(o)}}return e}},GetFilterValue:function(a){if(this.fltGrid){var b,c=this.GetFilterElement(a);if(!c)return"";var d=this.fltCol[a];if(d!==this.fltTypeMulti&&d!==this.fltTypeCheckList)b=c.value;else if(d===this.fltTypeMulti){b="";for(var e=0;e descending, false -> ascending +SortableTable.prototype.defaultDescending = false; + +// shared between all instances. This is intentional to allow external files +// to modify the prototype +SortableTable.prototype._sortTypeInfo = {}; + +SortableTable.prototype.setTable = function (oTable) { + if ( this.tHead ) + this.uninitHeader(); + this.element = oTable; + this.setTHead( oTable.tHead ); + this.setTBody( oTable.tBodies[0] ); +}; + +SortableTable.prototype.setTHead = function (oTHead) { + if (this.tHead && this.tHead != oTHead ) + this.uninitHeader(); + this.tHead = oTHead; + this.initHeader( this.sortTypes ); +}; + +SortableTable.prototype.setTBody = function (oTBody) { + this.tBody = oTBody; +}; + +SortableTable.prototype.setSortTypes = function ( oSortTypes ) { + if ( this.tHead ) + this.uninitHeader(); + this.sortTypes = oSortTypes || []; + if ( this.tHead ) + this.initHeader( this.sortTypes ); +}; + +// adds arrow containers and events +// also binds sort type to the header cells so that reordering columns does +// not break the sort types +SortableTable.prototype.initHeader = function (oSortTypes) { + if (!this.tHead) return; + var cells = this.tHead.rows[0].cells; + var doc = this.tHead.ownerDocument || this.tHead.document; + this.sortTypes = oSortTypes || []; + var l = cells.length; + var img, c; + for (var i = 0; i < l; i++) { + c = cells[i]; + if (this.sortTypes[i] != null && this.sortTypes[i] != "None") { + img = doc.createElement("IMG"); + img.src = "images/blank.png"; + c.appendChild(img); + if (this.sortTypes[i] != null) + c._sortType = this.sortTypes[i]; + if (typeof c.addEventListener != "undefined") + c.addEventListener("click", this._headerOnclick, false); + else if (typeof c.attachEvent != "undefined") + c.attachEvent("onclick", this._headerOnclick); + else + c.onclick = this._headerOnclick; + } + else + { + c.setAttribute( "_sortType", oSortTypes[i] ); + c._sortType = "None"; + } + } + this.updateHeaderArrows(); +}; + +// remove arrows and events +SortableTable.prototype.uninitHeader = function () { + if (!this.tHead) return; + var cells = this.tHead.rows[0].cells; + var l = cells.length; + var c; + for (var i = 0; i < l; i++) { + c = cells[i]; + if (c._sortType != null && c._sortType != "None") { + c.removeChild(c.lastChild); + if (typeof c.removeEventListener != "undefined") + c.removeEventListener("click", this._headerOnclick, false); + else if (typeof c.detachEvent != "undefined") + c.detachEvent("onclick", this._headerOnclick); + c._sortType = null; + c.removeAttribute( "_sortType" ); + } + } +}; + +SortableTable.prototype.updateHeaderArrows = function () { + if (!this.tHead) return; + var cells = this.tHead.rows[0].cells; + var l = cells.length; + var img; + for (var i = 0; i < l; i++) { + if (cells[i]._sortType != null && cells[i]._sortType != "None") { + img = cells[i].lastChild; + if (i == this.sortColumn) + img.className = "sort-arrow " + (this.descending ? "descending" : "ascending"); + else + img.className = "sort-arrow"; + } + } +}; + +SortableTable.prototype.headerOnclick = function (e) { + // find TD element + var el = e.target || e.srcElement; + while (el.tagName != "TD") + el = el.parentNode; + + this.sort(SortableTable.msie ? SortableTable.getCellIndex(el) : el.cellIndex); +}; + +// IE returns wrong cellIndex when columns are hidden +SortableTable.getCellIndex = function (oTd) { + var cells = oTd.parentNode.childNodes + var l = cells.length; + var i; + for (i = 0; cells[i] != oTd && i < l; i++) + ; + return i; +}; + +SortableTable.prototype.getSortType = function (nColumn) { + return this.sortTypes[nColumn] || "String"; +}; + +// only nColumn is required +// if bDescending is left out the old value is taken into account +// if sSortType is left out the sort type is found from the sortTypes array + +SortableTable.prototype.sort = function (nColumn, bDescending, sSortType) { + if (!this.tBody) return; + if (sSortType == null) + sSortType = this.getSortType(nColumn); + + // exit if None + if (sSortType == "None") + return; + + if (bDescending == null) { + if (this.sortColumn != nColumn) + this.descending = this.defaultDescending; + else + this.descending = !this.descending; + } + else + this.descending = bDescending; + + this.sortColumn = nColumn; + + if (typeof this.onbeforesort == "function") + this.onbeforesort(); + + var f = this.getSortFunction(sSortType, nColumn); + var a = this.getCache(sSortType, nColumn); + var tBody = this.tBody; + + a.sort(f); + + if (this.descending) + a.reverse(); + + if (SortableTable.removeBeforeSort) { + // remove from doc + var nextSibling = tBody.nextSibling; + var p = tBody.parentNode; + p.removeChild(tBody); + } + + // insert in the new order + var l = a.length; + for (var i = 0; i < l; i++) + tBody.appendChild(a[i].element); + + if (SortableTable.removeBeforeSort) { + // insert into doc + p.insertBefore(tBody, nextSibling); + } + + this.updateHeaderArrows(); + + this.destroyCache(a); + + if (typeof this.onsort == "function") + this.onsort(); +}; + +SortableTable.prototype.asyncSort = function (nColumn, bDescending, sSortType) { + var oThis = this; + this._asyncsort = function () { + oThis.sort(nColumn, bDescending, sSortType); + }; + window.setTimeout(this._asyncsort, 1); +}; + +SortableTable.prototype.getCache = function (sType, nColumn) { + if (!this.tBody) return []; + var rows = this.tBody.rows; + var l = rows.length; + var a = new Array(l); + var r; + for (var i = 0; i < l; i++) { + r = rows[i]; + a[i] = { + value: this.getRowValue(r, sType, nColumn), + element: r + }; + }; + return a; +}; + +SortableTable.prototype.destroyCache = function (oArray) { + var l = oArray.length; + for (var i = 0; i < l; i++) { + oArray[i].value = null; + oArray[i].element = null; + oArray[i] = null; + } +}; + +SortableTable.prototype.getRowValue = function (oRow, sType, nColumn) { + // if we have defined a custom getRowValue use that + if (this._sortTypeInfo[sType] && this._sortTypeInfo[sType].getRowValue) + return this._sortTypeInfo[sType].getRowValue(oRow, nColumn); + + var s; + var c = oRow.cells[nColumn]; + if (typeof c.innerText != "undefined") + s = c.innerText; + else + s = SortableTable.getInnerText(c); + return this.getValueFromString(s, sType); +}; + +SortableTable.getInnerText = function (oNode) { + var s = ""; + var cs = oNode.childNodes; + var l = cs.length; + for (var i = 0; i < l; i++) { + switch (cs[i].nodeType) { + case 1: //ELEMENT_NODE + s += SortableTable.getInnerText(cs[i]); + break; + case 3: //TEXT_NODE + s += cs[i].nodeValue; + break; + } + } + return s; +}; + +SortableTable.prototype.getValueFromString = function (sText, sType) { + if (this._sortTypeInfo[sType]) + return this._sortTypeInfo[sType].getValueFromString( sText ); + return sText; + /* + switch (sType) { + case "Number": + return Number(sText); + case "CaseInsensitiveString": + return sText.toUpperCase(); + case "Date": + var parts = sText.split("-"); + var d = new Date(0); + d.setFullYear(parts[0]); + d.setDate(parts[2]); + d.setMonth(parts[1] - 1); + return d.valueOf(); + } + return sText; + */ + }; + +SortableTable.prototype.getSortFunction = function (sType, nColumn) { + if (this._sortTypeInfo[sType]) + return this._sortTypeInfo[sType].compare; + return SortableTable.basicCompare; +}; + +SortableTable.prototype.destroy = function () { + this.uninitHeader(); + var win = this.document.parentWindow; + if (win && typeof win.detachEvent != "undefined") { // only IE needs this + win.detachEvent("onunload", this._onunload); + } + this._onunload = null; + this.element = null; + this.tHead = null; + this.tBody = null; + this.document = null; + this._headerOnclick = null; + this.sortTypes = null; + this._asyncsort = null; + this.onsort = null; +}; + +// Adds a sort type to all instance of SortableTable +// sType : String - the identifier of the sort type +// fGetValueFromString : function ( s : string ) : T - A function that takes a +// string and casts it to a desired format. If left out the string is just +// returned +// fCompareFunction : function ( n1 : T, n2 : T ) : Number - A normal JS sort +// compare function. Takes two values and compares them. If left out less than, +// <, compare is used +// fGetRowValue : function( oRow : HTMLTRElement, nColumn : int ) : T - A function +// that takes the row and the column index and returns the value used to compare. +// If left out then the innerText is first taken for the cell and then the +// fGetValueFromString is used to convert that string the desired value and type + +SortableTable.prototype.addSortType = function (sType, fGetValueFromString, fCompareFunction, fGetRowValue) { + this._sortTypeInfo[sType] = { + type: sType, + getValueFromString: fGetValueFromString || SortableTable.idFunction, + compare: fCompareFunction || SortableTable.basicCompare, + getRowValue: fGetRowValue + }; +}; + +// this removes the sort type from all instances of SortableTable +SortableTable.prototype.removeSortType = function (sType) { + delete this._sortTypeInfo[sType]; +}; + +SortableTable.basicCompare = function compare(n1, n2) { + if (n1.value < n2.value) + return -1; + if (n2.value < n1.value) + return 1; + return 0; +}; + +SortableTable.idFunction = function (x) { + return x; +}; + +SortableTable.toUpperCase = function (s) { + return s.toUpperCase(); +}; + +SortableTable.toDate = function (s) { + var parts = s.split("-"); + var d = new Date(0); + d.setFullYear(parts[0]); + d.setDate(parts[2]); + d.setMonth(parts[1] - 1); + return d.valueOf(); +}; + + +// add sort types +SortableTable.prototype.addSortType("Number", Number); +SortableTable.prototype.addSortType("CaseInsensitiveString", SortableTable.toUpperCase); +SortableTable.prototype.addSortType("Date", SortableTable.toDate); +SortableTable.prototype.addSortType("String"); +// None is a special case diff --git a/src-es6/modules/gridLayout.js b/src-es6/modules/gridLayout.js index 85a6d70a..091870a9 100644 --- a/src-es6/modules/gridLayout.js +++ b/src-es6/modules/gridLayout.js @@ -32,7 +32,7 @@ export class GridLayout{ this.gridDefaultColWidth = f.grid_default_col_width || '100px'; //enables/disables columns resizer this.gridEnableColResizer = f.grid_enable_cols_resizer!==undefined ? - f.grid_enable_cols_resizer : true; + f.grid_enable_cols_resizer : false; //defines col resizer script path this.gridColResizerPath = f.grid_cont_col_resizer_path || this.basePath+'TFExt_ColsResizer/TFExt_ColsResizer.js'; @@ -47,15 +47,15 @@ export class GridLayout{ tf.isExternalFlt = true; - // in case column widths are not set default width 100px + // default width of 100px if column widths not set if(!tf.hasColWidth){ tf.colWidth = []; for(var k=0; k0){ tbl.removeChild(thead[0]); } @@ -186,17 +186,18 @@ export class GridLayout{ var o = this; //TF object Event.add(this.tblCont, 'scroll', function(){ - o.headTblCont.scrollLeft = this.scrollLeft; - var _o = this; //this = scroll element + //this = scroll element + var scrollLeft = this.scrollLeft; + o.headTblCont.scrollLeft = scrollLeft; //New pointerX calc taking into account scrollLeft if(!o.isPointerXOverwritten){ try{ - o.Evt.pointerX = function(e){ - e = e || global.event; - var scrollLeft = tf_StandardBody().scrollLeft + - _o.scrollLeft; - return (e.pageX + _o.scrollLeft) || - (e.clientX + scrollLeft); + o.Evt.pointerX = function(evt){ + var e = evt || global.event; + var bdScrollLeft = tf_StandardBody().scrollLeft + + scrollLeft; + return (e.pageX + scrollLeft) || + (e.clientX + bdScrollLeft); }; o.isPointerXOverwritten = true; } catch(err) { @@ -349,6 +350,7 @@ export class GridLayout{ tbl.style.width = this.headTbl.clientWidth+'px'; } + // Re-adjust reference row tf.refRow = Helpers.isIE() ? (tf.refRow+1) : 0; } @@ -369,6 +371,7 @@ export class GridLayout{ this.tblCont = null; tbl.outerHTML = tf.sourceTblHtml; - tbl = Dom.id(tf.id); //needed to keep reference + //needed to keep reference of table element + tbl = Dom.id(tf.id); } } \ No newline at end of file diff --git a/src/modules/gridLayout.js b/src/modules/gridLayout.js index ea6ba5f3..e07f862b 100644 --- a/src/modules/gridLayout.js +++ b/src/modules/gridLayout.js @@ -35,7 +35,7 @@ define(["exports", "../dom", "../types", "../helpers", "../event"], function (ex //default col width this.gridDefaultColWidth = f.grid_default_col_width || "100px"; //enables/disables columns resizer - this.gridEnableColResizer = f.grid_enable_cols_resizer !== undefined ? f.grid_enable_cols_resizer : true; + this.gridEnableColResizer = f.grid_enable_cols_resizer !== undefined ? f.grid_enable_cols_resizer : false; //defines col resizer script path this.gridColResizerPath = f.grid_cont_col_resizer_path || this.basePath + "TFExt_ColsResizer/TFExt_ColsResizer.js"; @@ -52,7 +52,7 @@ define(["exports", "../dom", "../types", "../helpers", "../event"], function (ex tf.isExternalFlt = true; - // in case column widths are not set default width 100px + // default width of 100px if column widths not set if (!tf.hasColWidth) { tf.colWidth = []; for (var k = 0; k < tf.nbCells; k++) { @@ -85,7 +85,7 @@ define(["exports", "../dom", "../types", "../helpers", "../event"], function (ex if (this.gridWidth) { this.tblMainCont.style.width = this.gridWidth; } - tbl.parentNode.insertBefore(this.tblMainCont, tf.tbl); + tbl.parentNode.insertBefore(this.tblMainCont, tbl); //Table container: div wrapping content table this.tblCont = Dom.create("div", ["id", tf.prfxTblCont + tf.id]); @@ -96,8 +96,8 @@ define(["exports", "../dom", "../types", "../helpers", "../event"], function (ex if (this.gridHeight) { this.tblCont.style.height = this.gridHeight; } - tbl.parentNode.insertBefore(this.tblCont, tf.tbl); - var t = tbl.parentNode.removeChild(tf.tbl); + tbl.parentNode.insertBefore(this.tblCont, tbl); + var t = tbl.parentNode.removeChild(tbl); this.tblCont.appendChild(t); //In case table width is expressed in % @@ -160,7 +160,7 @@ define(["exports", "../dom", "../types", "../helpers", "../event"], function (ex this.tblCont.parentNode.insertBefore(this.headTblCont, this.tblCont); //THead needs to be removed in content table for sort feature - var thead = Dom.tag(tf.tbl, "thead"); + var thead = Dom.tag(tbl, "thead"); if (thead.length > 0) { tbl.removeChild(thead[0]); } @@ -187,15 +187,16 @@ define(["exports", "../dom", "../types", "../helpers", "../event"], function (ex var o = this; //TF object Event.add(this.tblCont, "scroll", function () { - o.headTblCont.scrollLeft = this.scrollLeft; - var _o = this; //this = scroll element + //this = scroll element + var scrollLeft = this.scrollLeft; + o.headTblCont.scrollLeft = scrollLeft; //New pointerX calc taking into account scrollLeft if (!o.isPointerXOverwritten) { try { - o.Evt.pointerX = function (e) { - e = e || global.event; - var scrollLeft = tf_StandardBody().scrollLeft + _o.scrollLeft; - return (e.pageX + _o.scrollLeft) || (e.clientX + scrollLeft); + o.Evt.pointerX = function (evt) { + var e = evt || global.event; + var bdScrollLeft = tf_StandardBody().scrollLeft + scrollLeft; + return (e.pageX + scrollLeft) || (e.clientX + bdScrollLeft); }; o.isPointerXOverwritten = true; } catch (err) { @@ -344,6 +345,7 @@ define(["exports", "../dom", "../types", "../helpers", "../event"], function (ex tbl.style.width = this.headTbl.clientWidth + "px"; } + // Re-adjust reference row tf.refRow = Helpers.isIE() ? (tf.refRow + 1) : 0; } }, @@ -366,7 +368,8 @@ define(["exports", "../dom", "../types", "../helpers", "../event"], function (ex this.tblCont = null; tbl.outerHTML = tf.sourceTblHtml; - tbl = Dom.id(tf.id); //needed to keep reference + //needed to keep reference of table element + tbl = Dom.id(tf.id); } } }); diff --git a/src/modules/gridLayout.js.map b/src/modules/gridLayout.js.map index 4b86085b..2fe41121 100644 --- a/src/modules/gridLayout.js.map +++ b/src/modules/gridLayout.js.map @@ -1 +1 @@ -{"version":3,"sources":["src-es6/modules/gridLayout.js"],"names":[],"mappings":"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","file":"src-es6/modules/gridLayout.js","sourcesContent":["import {Dom} from '../dom';\r\nimport {Types} from '../types';\r\nimport {Helpers} from '../helpers';\r\nimport {Event} from '../event';\r\n\r\nexport class GridLayout{\r\n\r\n constructor(tf) {\r\n var f = tf.fObj;\r\n\r\n //defines grid width\r\n this.gridWidth = f.grid_width || null;\r\n //defines grid height\r\n this.gridHeight = f.grid_height || null;\r\n //defines css class for main container\r\n this.gridMainContCssClass = f.grid_cont_css_class || 'grd_Cont';\r\n //defines css class for div containing table\r\n this.gridContCssClass = f.grid_tbl_cont_css_class || 'grd_tblCont';\r\n //defines css class for div containing headers' table\r\n this.gridHeadContCssClass = f.grid_tblHead_cont_css_class ||\r\n 'grd_headTblCont';\r\n //defines css class for div containing rows counter, paging etc.\r\n this.gridInfDivCssClass = f.grid_inf_grid_css_class || 'grd_inf';\r\n //defines which row contains column headers\r\n this.gridHeadRowIndex = f.grid_headers_row_index || 0;\r\n //array of headers row indexes to be placed in header table\r\n this.gridHeadRows = f.grid_headers_rows || [0];\r\n //generate filters in table headers\r\n this.gridEnableFilters = f.grid_enable_default_filters!==undefined ?\r\n f.grid_enable_default_filters : true;\r\n //default col width\r\n this.gridDefaultColWidth = f.grid_default_col_width || '100px';\r\n //enables/disables columns resizer\r\n this.gridEnableColResizer = f.grid_enable_cols_resizer!==undefined ?\r\n f.grid_enable_cols_resizer : true;\r\n //defines col resizer script path\r\n this.gridColResizerPath = f.grid_cont_col_resizer_path ||\r\n this.basePath+'TFExt_ColsResizer/TFExt_ColsResizer.js';\r\n\r\n this.tf = tf;\r\n }\r\n\r\n init(){\r\n var tf = this.tf;\r\n var f = tf.fObj;\r\n var tbl = tf.tbl;\r\n\r\n tf.isExternalFlt = true;\r\n\r\n // in case column widths are not set default width 100px\r\n if(!tf.hasColWidth){\r\n tf.colWidth = [];\r\n for(var k=0; k0){\r\n tbl.removeChild(thead[0]);\r\n }\r\n\r\n //Headers table style\r\n this.headTbl.style.width = tbl.style.width;\r\n this.headTbl.style.tableLayout = 'fixed';\r\n tbl.style.tableLayout = 'fixed';\r\n this.headTbl.cellPadding = tbl.cellPadding;\r\n this.headTbl.cellSpacing = tbl.cellSpacing;\r\n\r\n //Headers container width\r\n this.headTblCont.style.width = this.tblCont.clientWidth+'px';\r\n\r\n //content table without headers needs col widths to be reset\r\n tf.SetColWidths();\r\n\r\n tbl.style.width = '';\r\n if(Helpers.isIE()){\r\n this.headTbl.style.width = '';\r\n }\r\n\r\n //scroll synchronisation\r\n var o = this; //TF object\r\n\r\n Event.add(this.tblCont, 'scroll', function(){\r\n o.headTblCont.scrollLeft = this.scrollLeft;\r\n var _o = this; //this = scroll element\r\n //New pointerX calc taking into account scrollLeft\r\n if(!o.isPointerXOverwritten){\r\n try{\r\n o.Evt.pointerX = function(e){\r\n e = e || global.event;\r\n var scrollLeft = tf_StandardBody().scrollLeft +\r\n _o.scrollLeft;\r\n return (e.pageX + _o.scrollLeft) ||\r\n (e.clientX + scrollLeft);\r\n };\r\n o.isPointerXOverwritten = true;\r\n } catch(err) {\r\n o.isPointerXOverwritten = false;\r\n }\r\n }\r\n });\r\n\r\n //Sort is enabled if not specified in config object\r\n if(f.sort !== false){\r\n tf.sort = true;\r\n tf.sortConfig.asyncSort = true;\r\n tf.sortConfig.triggerIds = sortTriggers;\r\n }\r\n\r\n if(this.gridEnableColResizer){\r\n if(!tf.hasExtensions){\r\n tf.extensions = {\r\n name:['ColumnsResizer_'+tf.id],\r\n src:[this.gridColResizerPath],\r\n description:['Columns Resizing'],\r\n initialize:[function(o){\r\n o.SetColsResizer('ColumnsResizer_'+o.id);}]\r\n };\r\n tf.hasExtensions = true;\r\n } else {\r\n if(!tf.__containsStr(\r\n 'colsresizer',\r\n Str.lower(tf.extensions.src.toString())) ){\r\n tf.extensions.name.push('ColumnsResizer_'+tf.id);\r\n tf.extensions.src.push(tf.gridColResizerPath);\r\n tf.extensions.description.push('Columns Resizing');\r\n tf.extensions.initialize.push(function(o){\r\n o.SetColsResizer('ColumnsResizer_'+o.id);});\r\n }\r\n }\r\n }\r\n\r\n //Default columns resizer properties for grid layout\r\n f.col_resizer_cols_headers_table = this.headTbl.getAttribute('id');\r\n f.col_resizer_cols_headers_index = this.gridHeadRowIndex;\r\n f.col_resizer_width_adjustment = 0;\r\n f.col_enable_text_ellipsis = false;\r\n\r\n //Cols generation for all browsers excepted IE<=7\r\n o.tblHasColTag = Dom.tag(tbl, 'col').length > 0 ? true : false;\r\n if(!Helpers.isIE()){\r\n //Col elements are enough to keep column widths after sorting and\r\n //filtering\r\n var createColTags = function(o){\r\n if(!o){\r\n return;\r\n }\r\n for(var k=(o.nbCells-1); k>=0; k--){\r\n var col = Dom.create( 'col', ['id', o.id+'_col_'+k]);\r\n tbl.firstChild.parentNode.insertBefore(col, tbl.firstChild);\r\n col.style.width = o.colWidth[k];\r\n o.gridColElms[k] = col;\r\n }\r\n o.tblHasColTag = true;\r\n };\r\n if(!o.tblHasColTag){\r\n createColTags(o);\r\n } else {\r\n var cols = Dom.tag(tbl,'col');\r\n for(var ii=0; ii0 ){\r\n r = tbody[0].insertRow(0);\r\n } else{\r\n r = tbl.insertRow(0);\r\n }\r\n r.style.height = '0px';\r\n for(var x=0; x0){\r\n tbody[0].moveRow(o.leadColWidthsRow.rowIndex, 0);\r\n } else {\r\n tbl.moveRow(o.leadColWidthsRow.rowIndex, 0);\r\n }\r\n }\r\n if(afterSortFn){\r\n afterSortFn.call(null, o, colIndex);\r\n }\r\n };\r\n }\r\n\r\n var afterColResizedFn = Types.isFn(f.on_after_col_resized) ?\r\n f.on_after_col_resized : null;\r\n f.on_after_col_resized = function(o,colIndex){\r\n if(!colIndex){\r\n return;\r\n }\r\n var w = o.crWColsRow.cells[colIndex].style.width;\r\n var col = o.gridColElms[colIndex];\r\n col.style.width = w;\r\n\r\n var thCW = o.crWColsRow.cells[colIndex].clientWidth;\r\n var tdCW = o.crWRowDataTbl.cells[colIndex].clientWidth;\r\n\r\n if(Helpers.isIE()){\r\n tbl.style.width = o.headTbl.clientWidth+'px';\r\n }\r\n\r\n if(thCW != tdCW && !Helpers.isIE()){\r\n o.headTbl.style.width = tbl.clientWidth+'px';\r\n }\r\n\r\n if(afterColResizedFn){\r\n afterColResizedFn.call(null,o,colIndex);\r\n }\r\n };\r\n\r\n if(tbl.clientWidth !== this.headTbl.clientWidth){\r\n tbl.style.width = this.headTbl.clientWidth+'px';\r\n }\r\n\r\n tf.refRow = Helpers.isIE() ? (tf.refRow+1) : 0;\r\n }\r\n\r\n destroy(){\r\n var tf = this.tf;\r\n var tbl = tf.tbl;\r\n\r\n if(!tf.gridLayout){\r\n return;\r\n }\r\n var t = tbl.parentNode.removeChild(tbl);\r\n this.tblMainCont.parentNode.insertBefore(t, this.tblMainCont);\r\n this.tblMainCont.parentNode.removeChild(this.tblMainCont);\r\n\r\n this.tblMainCont = null;\r\n this.headTblCont = null;\r\n this.headTbl = null;\r\n this.tblCont = null;\r\n\r\n tbl.outerHTML = tf.sourceTblHtml;\r\n tbl = Dom.id(tf.id); //needed to keep reference\r\n }\r\n}"]} \ No newline at end of file +{"version":3,"sources":["src-es6/modules/gridLayout.js"],"names":[],"mappings":"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","file":"src-es6/modules/gridLayout.js","sourcesContent":["import {Dom} from '../dom';\r\nimport {Types} from '../types';\r\nimport {Helpers} from '../helpers';\r\nimport {Event} from '../event';\r\n\r\nexport class GridLayout{\r\n\r\n constructor(tf) {\r\n var f = tf.fObj;\r\n\r\n //defines grid width\r\n this.gridWidth = f.grid_width || null;\r\n //defines grid height\r\n this.gridHeight = f.grid_height || null;\r\n //defines css class for main container\r\n this.gridMainContCssClass = f.grid_cont_css_class || 'grd_Cont';\r\n //defines css class for div containing table\r\n this.gridContCssClass = f.grid_tbl_cont_css_class || 'grd_tblCont';\r\n //defines css class for div containing headers' table\r\n this.gridHeadContCssClass = f.grid_tblHead_cont_css_class ||\r\n 'grd_headTblCont';\r\n //defines css class for div containing rows counter, paging etc.\r\n this.gridInfDivCssClass = f.grid_inf_grid_css_class || 'grd_inf';\r\n //defines which row contains column headers\r\n this.gridHeadRowIndex = f.grid_headers_row_index || 0;\r\n //array of headers row indexes to be placed in header table\r\n this.gridHeadRows = f.grid_headers_rows || [0];\r\n //generate filters in table headers\r\n this.gridEnableFilters = f.grid_enable_default_filters!==undefined ?\r\n f.grid_enable_default_filters : true;\r\n //default col width\r\n this.gridDefaultColWidth = f.grid_default_col_width || '100px';\r\n //enables/disables columns resizer\r\n this.gridEnableColResizer = f.grid_enable_cols_resizer!==undefined ?\r\n f.grid_enable_cols_resizer : false;\r\n //defines col resizer script path\r\n this.gridColResizerPath = f.grid_cont_col_resizer_path ||\r\n this.basePath+'TFExt_ColsResizer/TFExt_ColsResizer.js';\r\n\r\n this.tf = tf;\r\n }\r\n\r\n init(){\r\n var tf = this.tf;\r\n var f = tf.fObj;\r\n var tbl = tf.tbl;\r\n\r\n tf.isExternalFlt = true;\r\n\r\n // default width of 100px if column widths not set\r\n if(!tf.hasColWidth){\r\n tf.colWidth = [];\r\n for(var k=0; k0){\r\n tbl.removeChild(thead[0]);\r\n }\r\n\r\n //Headers table style\r\n this.headTbl.style.width = tbl.style.width;\r\n this.headTbl.style.tableLayout = 'fixed';\r\n tbl.style.tableLayout = 'fixed';\r\n this.headTbl.cellPadding = tbl.cellPadding;\r\n this.headTbl.cellSpacing = tbl.cellSpacing;\r\n\r\n //Headers container width\r\n this.headTblCont.style.width = this.tblCont.clientWidth+'px';\r\n\r\n //content table without headers needs col widths to be reset\r\n tf.SetColWidths();\r\n\r\n tbl.style.width = '';\r\n if(Helpers.isIE()){\r\n this.headTbl.style.width = '';\r\n }\r\n\r\n //scroll synchronisation\r\n var o = this; //TF object\r\n\r\n Event.add(this.tblCont, 'scroll', function(){\r\n //this = scroll element\r\n var scrollLeft = this.scrollLeft;\r\n o.headTblCont.scrollLeft = scrollLeft;\r\n //New pointerX calc taking into account scrollLeft\r\n if(!o.isPointerXOverwritten){\r\n try{\r\n o.Evt.pointerX = function(evt){\r\n var e = evt || global.event;\r\n var bdScrollLeft = tf_StandardBody().scrollLeft +\r\n scrollLeft;\r\n return (e.pageX + scrollLeft) ||\r\n (e.clientX + bdScrollLeft);\r\n };\r\n o.isPointerXOverwritten = true;\r\n } catch(err) {\r\n o.isPointerXOverwritten = false;\r\n }\r\n }\r\n });\r\n\r\n //Sort is enabled if not specified in config object\r\n if(f.sort !== false){\r\n tf.sort = true;\r\n tf.sortConfig.asyncSort = true;\r\n tf.sortConfig.triggerIds = sortTriggers;\r\n }\r\n\r\n if(this.gridEnableColResizer){\r\n if(!tf.hasExtensions){\r\n tf.extensions = {\r\n name:['ColumnsResizer_'+tf.id],\r\n src:[this.gridColResizerPath],\r\n description:['Columns Resizing'],\r\n initialize:[function(o){\r\n o.SetColsResizer('ColumnsResizer_'+o.id);}]\r\n };\r\n tf.hasExtensions = true;\r\n } else {\r\n if(!tf.__containsStr(\r\n 'colsresizer',\r\n Str.lower(tf.extensions.src.toString())) ){\r\n tf.extensions.name.push('ColumnsResizer_'+tf.id);\r\n tf.extensions.src.push(tf.gridColResizerPath);\r\n tf.extensions.description.push('Columns Resizing');\r\n tf.extensions.initialize.push(function(o){\r\n o.SetColsResizer('ColumnsResizer_'+o.id);});\r\n }\r\n }\r\n }\r\n\r\n //Default columns resizer properties for grid layout\r\n f.col_resizer_cols_headers_table = this.headTbl.getAttribute('id');\r\n f.col_resizer_cols_headers_index = this.gridHeadRowIndex;\r\n f.col_resizer_width_adjustment = 0;\r\n f.col_enable_text_ellipsis = false;\r\n\r\n //Cols generation for all browsers excepted IE<=7\r\n o.tblHasColTag = Dom.tag(tbl, 'col').length > 0 ? true : false;\r\n if(!Helpers.isIE()){\r\n //Col elements are enough to keep column widths after sorting and\r\n //filtering\r\n var createColTags = function(o){\r\n if(!o){\r\n return;\r\n }\r\n for(var k=(o.nbCells-1); k>=0; k--){\r\n var col = Dom.create( 'col', ['id', o.id+'_col_'+k]);\r\n tbl.firstChild.parentNode.insertBefore(col, tbl.firstChild);\r\n col.style.width = o.colWidth[k];\r\n o.gridColElms[k] = col;\r\n }\r\n o.tblHasColTag = true;\r\n };\r\n if(!o.tblHasColTag){\r\n createColTags(o);\r\n } else {\r\n var cols = Dom.tag(tbl,'col');\r\n for(var ii=0; ii0 ){\r\n r = tbody[0].insertRow(0);\r\n } else{\r\n r = tbl.insertRow(0);\r\n }\r\n r.style.height = '0px';\r\n for(var x=0; x0){\r\n tbody[0].moveRow(o.leadColWidthsRow.rowIndex, 0);\r\n } else {\r\n tbl.moveRow(o.leadColWidthsRow.rowIndex, 0);\r\n }\r\n }\r\n if(afterSortFn){\r\n afterSortFn.call(null, o, colIndex);\r\n }\r\n };\r\n }\r\n\r\n var afterColResizedFn = Types.isFn(f.on_after_col_resized) ?\r\n f.on_after_col_resized : null;\r\n f.on_after_col_resized = function(o,colIndex){\r\n if(!colIndex){\r\n return;\r\n }\r\n var w = o.crWColsRow.cells[colIndex].style.width;\r\n var col = o.gridColElms[colIndex];\r\n col.style.width = w;\r\n\r\n var thCW = o.crWColsRow.cells[colIndex].clientWidth;\r\n var tdCW = o.crWRowDataTbl.cells[colIndex].clientWidth;\r\n\r\n if(Helpers.isIE()){\r\n tbl.style.width = o.headTbl.clientWidth+'px';\r\n }\r\n\r\n if(thCW != tdCW && !Helpers.isIE()){\r\n o.headTbl.style.width = tbl.clientWidth+'px';\r\n }\r\n\r\n if(afterColResizedFn){\r\n afterColResizedFn.call(null,o,colIndex);\r\n }\r\n };\r\n\r\n if(tbl.clientWidth !== this.headTbl.clientWidth){\r\n tbl.style.width = this.headTbl.clientWidth+'px';\r\n }\r\n\r\n // Re-adjust reference row\r\n tf.refRow = Helpers.isIE() ? (tf.refRow+1) : 0;\r\n }\r\n\r\n destroy(){\r\n var tf = this.tf;\r\n var tbl = tf.tbl;\r\n\r\n if(!tf.gridLayout){\r\n return;\r\n }\r\n var t = tbl.parentNode.removeChild(tbl);\r\n this.tblMainCont.parentNode.insertBefore(t, this.tblMainCont);\r\n this.tblMainCont.parentNode.removeChild(this.tblMainCont);\r\n\r\n this.tblMainCont = null;\r\n this.headTblCont = null;\r\n this.headTbl = null;\r\n this.tblCont = null;\r\n\r\n tbl.outerHTML = tf.sourceTblHtml;\r\n //needed to keep reference of table element\r\n tbl = Dom.id(tf.id);\r\n }\r\n}"]} \ No newline at end of file diff --git a/test/test-grid-layout.html b/test/test-grid-layout.html index e69de29b..4790cff4 100644 --- a/test/test-grid-layout.html +++ b/test/test-grid-layout.html @@ -0,0 +1,7740 @@ + + + + + TableFilter alternate rows tests + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
countryisocodeyearPOPXRATPPPcgdpccci
AngolaAGO199410627.1859.5149993953.321095.9434.669.09
AngolaAGO199510972.002750.229981007.531244.7341.869.43
AngolaAGO199611316.94128029.203154873.281362.3237.178.57
AngolaAGO1997nananananana
AngolaAGO1998nananananana
AngolaAGO1999nananananana
AngolaAGO2000nananananana
AlbaniaALB19943185.0094.6233291623.452514.7987.7814.42
AlbaniaALB19953225.0092.6975021425.052775.9883.3413.10
AlbaniaALB19963266.00104.498901428.053070.8493.0610.65
AlbaniaALB19973339.00148.932907136.632789.1392.8911.02
AlbaniaALB19983364.00150.633300844.673067.5291.2111.00
AlbaniaALB19993383.00137.690597543.843413.6589.9411.23
AlbaniaALB20003411.00143.709396443.163657.9985.4512.70
ArgentinaARG199434304.270.9990082980.7410193.4968.8917.41
ArgentinaARG199534768.000.9997500180.7410024.1267.4415.45
ArgentinaARG199635220.000.9996625190.7310671.5368.2115.75
ArgentinaARG199735672.000.9994999770.7111545.1969.1817.09
ArgentinaARG199836125.000.9994999770.6911919.9569.3917.28
ArgentinaARG199936580.000.9994999770.6711554.3769.7215.27
ArgentinaARG200037032.000.9994999770.6611729.0869.0614.08
ArmeniaARM19943748.00288.650787422.812181.6886.3512.97
ArmeniaARM19953760.00405.908294762.542222.2592.2310.88
ArmeniaARM19963774.00414.041503973.212393.2789.9010.91
ArmeniaARM19973786.00490.846801883.992415.8597.2011.46
ArmeniaARM19983795.00504.915008592.652616.6895.8111.00
ArmeniaARM19993801.00535.061828690.482791.5492.509.81
ArmeniaARM20003803.00539.525817987.503068.2190.6710.04
AntiguaATG199465.732.7000000481.3914807.5141.829.89
AntiguaATG199566.292.7000000481.5712790.7450.4517.76
AntiguaATG199666.862.7000000481.7012923.0044.1116.27
AntiguaATG199766.292.7000000481.6714182.0438.2714.72
AntiguaATG199866.862.7000000481.6814912.1239.6414.17
AntiguaATG199967.432.7000000481.6316035.2438.5613.69
AntiguaATG200068.002.7000000481.5218006.9034.8211.85
AustraliaAUS199417838.001.36781.2820637.1670.5424.28
AustraliaAUS199518072.001.3491.2821771.3169.8423.20
AustraliaAUS199618311.001.27791.2722834.6869.1223.65
AustraliaAUS199718524.001.34741.2624010.9269.3824.65
AustraliaAUS199818730.001.59181.2625002.1170.2725.24
AustraliaAUS199918937.001.54991.2626342.6970.2925.27
AustraliaAUS200019157.001.72481.2927193.4869.5523.06
AustriaAUT19948029.7011.421814.2119950.3868.7625.42
AustriaAUT19958046.5010.081514.2120733.7568.6325.73
AustriaAUT19968059.4010.586614.2121398.9769.7525.01
AustriaAUT19978072.2012.204214.1521988.9669.8425.52
AustriaAUT19988078.4012.379114.0623016.3869.6324.80
AustriaAUT19998092.3012.915814.0223849.1470.0424.61
AustriaAUT20008110.2014.935413.9924835.7169.1925.34
AzerbaijanAZE19947597.001570.224976110.312246.8665.7015.20
AzerbaijanAZE19957685.004413.542969696.691992.8777.3812.11
AzerbaijanAZE19967763.004301.26416860.942046.8582.3116.97
AzerbaijanAZE19977838.003985.375877.092291.0372.3221.39
AzerbaijanAZE19987913.003868.998047876.142480.9376.3117.56
AzerbaijanAZE19997983.004120.166992859.952732.7070.9213.22
AzerbaijanAZE20008049.004474.153809823.803554.6259.1310.77
BurundiBDI19946024.75252.662506150.63766.5788.583.15
BurundiBDI19956156.00249.757507357.11709.9286.363.01
BurundiBDI19966287.08302.746704168.20634.7883.643.62
BurundiBDI19976417.85352.350799681.38645.3280.452.37
BurundiBDI19986548.19447.765808194.95632.0885.663.43
BurundiBDI19996677.95563.562581.58739.5784.033.17
BurundiBDI20006807.00720.6732788125.81618.7187.564.18
BelgiumBEL199410116.0033.456538.8619887.3855.1022.32
BelgiumBEL199510137.0029.4838.8920702.1354.2423.13
BelgiumBEL199610155.0030.961539.0021101.1954.9322.53
BelgiumBEL199710180.0035.773938.9722107.8454.3923.33
BelgiumBEL199810203.0036.298638.9022958.8454.7123.57
BelgiumBEL199910222.0037.864139.1223760.3854.8022.94
BelgiumBEL200010254.0043.784939.0725008.4954.2923.62
BeninBEN19945325.00555.2047119156.33998.3489.455.35
BeninBEN19955475.00499.148407171.131071.6089.337.70
BeninBEN19965628.82511.5523987181.371106.8689.907.07
BeninBEN19975794.36583.6693726187.631101.0292.938.06
BeninBEN19985950.33589.9517822190.951178.4690.987.55
BeninBEN19996109.53615.6990967200.191174.9092.617.86
BeninBEN20006272.00711.9763184200.611224.7492.278.25
Burkina FasoBFA19949755.03555.2047119125.76838.7679.816.57
Burkina FasoBFA19959988.00499.148407136.65860.8980.419.29
Burkina FasoBFA199610225.00511.5523987144.18881.1180.4012.12
Burkina FasoBFA199710473.53583.6693726141.78899.0176.9414.94
Burkina FasoBFA199810730.33589.9517822139.66979.5880.6612.24
Burkina FasoBFA199910995.70615.6990967137.641001.7079.8113.14
Burkina FasoBFA200011274.00711.9763184140.56985.6776.5314.87
BangladeshBGD1994117897.5440.211738598.461345.3784.379.56
BangladeshBGD1995119768.0040.278320318.761439.1985.139.79
BangladeshBGD1996121679.3441.794170389.001506.2586.9510.16
BangladeshBGD1997124381.4143.892120369.281561.9784.8510.73
BangladeshBGD1998126564.7046.905651099.691629.8682.4511.25
BangladeshBGD1999128787.3249.0853996310.151681.4482.6711.71
BangladeshBGD2000131050.0052.1416702310.201772.4681.8812.14
BulgariaBGR19948435.0054.133668549.466587.5364.403.03
BulgariaBGR19958400.0067.1708285815.756651.3067.053.27
BulgariaBGR19968356.00177.888706335.425893.2668.563.34
BulgariaBGR19978312.071.6818790440.385470.7962.694.42
BulgariaBGR19988257.001.7603579760.485593.6567.916.72
BulgariaBGR19998208.001.8363829850.495760.2070.967.72
BulgariaBGR20008166.962.1232750420.496355.7067.346.95
BahrainBHR1994nananananana
BahrainBHR1995nananananana
BahrainBHR1996599.000.3759999870.2713261.1742.286.39
BahrainBHR1997nananananana
BahrainBHR1998nananananana
BahrainBHR1999nananananana
BahrainBHR2000nananananana
BahamasBHS1994nananananana
BahamasBHS1995nananananana
BahamasBHS1996284.0010.7416527.4874.029.91
BahamasBHS1997nananananana
BahamasBHS1998nananananana
BahamasBHS1999nananananana
BahamasBHS2000nananananana
BelarusBLR199410356.0010600316.935405.0055.9923.98
BelarusBLR199510329.00115002164.165363.7953.1517.58
BelarusBLR199610298.00155003161.365667.2253.5218.06
BelarusBLR199710117.0026.019920355.616365.6754.8319.16
BelarusBLR199810069.0046.127250679.677181.9356.2518.10
BelarusBLR199910035.00248.794906638.447769.3657.8714.02
BelarusBLR200010005.00876.75102.038738.2356.0213.77
BelizeBLZ1994210.8920.885938.9458.0114.22
BelizeBLZ1995216.7020.896125.6860.8411.55
BelizeBLZ1996222.4020.926198.9060.2511.07
BelizeBLZ1997217.0620.916540.3659.6414.48
BelizeBLZ1998224.4520.906595.5161.2814.83
BelizeBLZ1999232.1020.936773.4566.1114.87
BelizeBLZ2000240.0020.957169.9071.8318.77
BermudaBMU1994nananananana
BermudaBMU1995nananananana
BermudaBMU199662.1011.4218793.4188.7414.57
BermudaBMU1997nananananana
BermudaBMU1998nananananana
BermudaBMU1999nananananana
BermudaBMU2000nananananana
BoliviaBOL19947237.004.6205167771.572426.4079.168.06
BoliviaBOL19957414.004.8003420831.712545.5277.288.56
BoliviaBOL19967588.005.0746130941.872641.7776.819.67
BoliviaBOL19977767.005.2542581561.972727.2578.1312.04
BoliviaBOL19987950.005.510132792.122760.1180.0814.68
BoliviaBOL19998138.005.812407972.092831.6180.4711.10
BoliviaBOL20008328.706.1835417752.102933.8977.9410.75
BrazilBRA1994157188.100.6392999890.356322.6257.5416.52
BrazilBRA1995159346.000.9176666740.616674.2863.9517.20
BrazilBRA1996161513.171.0051000120.706881.4463.6016.62
BrazilBRA1997163859.681.0779919620.747166.2562.9417.06
BrazilBRA1998166045.571.1605169770.787020.0862.2616.94
BrazilBRA1999168227.981.8147330280.797216.5864.5215.61
BrazilBRA2000170406.001.8301420210.837744.7165.7515.63
BarbadosBRB1994264.3021.0113076.4279.393.38
BarbadosBRB1995264.2021.0513409.7181.553.56
BarbadosBRB1996264.4021.0314607.6582.723.11
BarbadosBRB1997264.7421.0715570.5589.863.66
BarbadosBRB1998265.3021.1216058.5489.294.06
BarbadosBRB1999266.0821.1416463.8891.804.17
BarbadosBRB2000267.0021.1217526.3591.603.93
BhutanBTN1994nananananana
BhutanBTN1995nananananana
BhutanBTN1996715.8735.433170328.311968.5150.5723.23
BhutanBTN1997nananananana
BhutanBTN1998nananananana
BhutanBTN1999nananananana
BhutanBTN2000nananananana
BotswanaBWA19941425.422.6846458911.495564.9343.2516.83
BotswanaBWA19951460.002.7722070221.605803.2441.9916.84
BotswanaBWA19961496.003.3241970541.806070.5139.7117.15
BotswanaBWA19971533.003.6507630351.986087.7349.9915.44
BotswanaBWA19981561.724.2258801462.046533.7659.6812.91
BotswanaBWA19991588.124.6243948942.097027.9067.6711.61
BotswanaBWA2000nananananana
Central African RepublicCAF19943220.09555.2047119152.27965.2879.225.21
Central African RepublicCAF19953288.00499.148407156.441088.1971.406.48
Central African RepublicCAF19963354.09511.5523987182.37894.9593.682.36
Central African RepublicCAF19973528.62583.6693726183.32902.7684.874.61
Central African RepublicCAF19983603.40589.9517822174.96979.1575.096.34
Central African RepublicCAF1999nananananana
Central African RepublicCAF2000nananananana
CanadaCAN199429036.001.36561.2321350.3959.2324.00
CanadaCAN199529353.901.37241.2122450.8657.9423.78
CanadaCAN199629671.901.36351.2123090.8658.4123.18
CanadaCAN199729987.001.38461.1924412.3258.3626.16
CanadaCAN199830248.001.48351.1924944.1959.3425.38
CanadaCAN199930493.001.48571.1926479.8658.3225.06
CanadaCAN200030750.001.48511.1828730.6955.6725.86
SwitzerlandCHE19946994.001.36772.1823466.1958.9625.97
SwitzerlandCHE19957041.001.18252.1424110.1258.4626.98
SwitzerlandCHE19967072.001.2362.1124460.4559.1026.22
SwitzerlandCHE19977089.001.45132.0825147.6659.3225.93
SwitzerlandCHE19987110.001.44982.0326290.7058.8927.07
SwitzerlandCHE19997144.001.50222.0027156.2458.9525.80
SwitzerlandCHE20007185.001.68882.0028208.7657.9826.89
ChileCHL199413994.40420.1766968202.067557.3760.5420.03
ChileCHL199514210.40396.7732849209.908676.4658.0223.45
ChileCHL199614418.80412.2666931220.378972.3561.4924.12
ChileCHL199714622.40419.2950134222.289706.6961.9724.59
ChileCHL199814821.70460.2875061227.679939.5163.6724.24
ChileCHL199915017.80508.7767029234.819774.9362.8918.04
ChileCHL200015211.30535.4655762238.8810388.9061.3419.70
ChinaCHN19941190918.028.6187429431.662551.9750.0622.34
ChinaCHN19951203324.038.3514165881.912759.9251.6822.47
ChinaCHN19961215414.278.3141746522.022972.6151.8822.04
ChinaCHN19971227176.708.2898168562.033141.0749.9721.82
ChinaCHN19981238599.428.2789583211.983317.7949.4421.60
ChinaCHN19991249981.568.2782497411.953483.3950.5521.00
ChinaCHN20001258821.038.2785043721.923843.6748.6621.09
Cote d`IvoireCIV199413132.24555.2047119177.721824.8374.254.88
Cote d`IvoireCIV199513528.00499.148407189.401947.1477.075.49
Cote d`IvoireCIV199613888.77511.5523987200.961958.7574.255.55
Cote d`IvoireCIV199714731.84583.6693726215.121969.6476.364.85
Cote d`IvoireCIV199815159.11589.9517822216.902055.6777.115.65
Cote d`IvoireCIV199915586.39615.6990967213.222057.5775.246.31
Cote d`IvoireCIV200016013.00711.9763184205.652027.5776.765.75
CameroonCMR199412822.14555.2047119148.621790.5083.495.30
CameroonCMR199513182.00499.148407169.281851.7381.814.73
CameroonCMR199613548.75511.5523987178.061894.6983.464.93
CameroonCMR199713917.84583.6693726177.172005.0284.395.02
CameroonCMR199814238.86589.9517822182.472018.3884.455.46
CameroonCMR199914558.39615.6990967188.101976.3484.655.79
CameroonCMR200014876.00711.9763184170.402300.7581.145.41
Congo, Republic ofCOG19942489.45555.2047119310.221324.2665.3711.94
Congo, Republic ofCOG19952561.00499.148407295.661394.8862.368.44
Congo, Republic ofCOG19962633.72511.5523987285.411728.9358.657.39
Congo, Republic ofCOG19972707.60583.6693726271.761842.4357.404.65
Congo, Republic ofCOG19982782.62589.9517822273.511511.0485.725.49
Congo, Republic ofCOG19992933.76615.6990967273.991698.5157.274.42
Congo, Republic ofCOG20003018.00711.9763184287.162532.8044.712.61
ColombiaCOL199437806.85844.8358765353.635046.5371.1915.83
ColombiaCOL199538558.00912.826416411.675323.4471.1115.77
ColombiaCOL199639285.001036.686035474.225528.8069.8114.73
ColombiaCOL199740042.001140.963013531.485718.5769.2214.03
ColombiaCOL199840804.001426.036987611.565642.3769.4512.81
ColombiaCOL199941539.001756.230957644.455565.9967.117.84
ColombiaCOL200042299.302087.904053691.015795.5567.938.79
ComorosCOM1994479.57416.398803792.721739.4890.866.47
ComorosCOM1995492.00374.357086299.761636.9188.226.79
ComorosCOM1996504.68383.6600037102.871576.5189.356.95
ComorosCOM1997517.62437.7471008104.401732.1192.656.09
ComorosCOM1998530.82442.4588013104.771714.7584.206.50
ComorosCOM1999544.28461.7745972104.581803.5785.714.78
ComorosCOM2000558.00533.9824829105.981822.8379.764.30
Cape VerdeCPV1994371.9781.8908309931.382882.4483.4521.97
Cape VerdeCPV1995382.0076.8533325231.713125.8181.0221.03
Cape VerdeCPV1996392.6482.5914688132.403194.1080.0319.19
Cape VerdeCPV1997403.5693.1766662635.123327.2581.6617.42
Cape VerdeCPV1998415.3298.1575012236.713473.7190.3915.55
Cape VerdeCPV1999427.79102.699996936.803835.6985.8615.58
Cape VerdeCPV2000441.00115.876602234.124299.1876.3313.79
Costa RicaCRI19943266.00157.066696276.785208.0465.1018.10
Costa RicaCRI19953333.00179.729202390.105398.0163.8616.01
Costa RicaCRI19963398.00207.6891937108.505150.7765.3413.86
Costa RicaCRI19973576.91232.5975037159.715233.9765.4616.36
Costa RicaCRI19983653.06257.229187175.865653.6563.5618.50
Costa RicaCRI19993731.07285.6846924197.926072.2660.2014.81
Costa RicaCRI20003811.00308.1867065218.495872.7962.1614.11
CubaCUB199410960.4910.364895.9671.250.97
CubaCUB199510998.5310.404980.8272.191.31
CubaCUB199611038.6010.395259.4072.361.54
CubaCUB1997nananananana
CubaCUB1998nananananana
CubaCUB1999nananananana
CubaCUB2000nananananana
CyprusCYP1994726.000.4921909870.3713616.5861.2818.47
CyprusCYP1995733.000.4524202050.3415920.3962.6420.32
CyprusCYP1996740.000.4663113060.3515813.2166.2717.88
CyprusCYP1997nananananana
CyprusCYP1998nananananana
CyprusCYP1999nananananana
CyprusCYP2000nananananana
Czech RepublicCZE199410333.6028.78519.7411756.6268.2021.63
Czech RepublicCZE199510327.3026.540710.6512551.7567.5525.24
Czech RepublicCZE199610315.3027.144911.2913457.7369.2925.85
Czech RepublicCZE199710303.0031.698411.8713734.3269.2424.80
Czech RepublicCZE199810293.6032.281212.5614213.2366.5423.27
Czech RepublicCZE199910285.0034.569212.7514393.1767.9721.81
Czech RepublicCZE200010272.1038.598412.8514844.0067.4224.21
DjiboutiDJI1994nananananana
DjiboutiDJI1995nananananana
DjiboutiDJI1996612.36177.72099366.932103.4476.894.15
DjiboutiDJI1997nananananana
DjiboutiDJI1998nananananana
DjiboutiDJI1999nananananana
DjiboutiDJI2000nananananana
DominicaDMA199472.442.7000000481.256400.1154.8911.40
DominicaDMA199573.002.7000000481.276507.3252.3713.93
DominicaDMA199673.002.7000000481.276903.5550.2712.41
DominicaDMA1997nananananana
DominicaDMA1998nananananana
DominicaDMA1999nananananana
DominicaDMA200073.002.7000000481.218284.0448.2112.21
DenmarkDNK19945201.006.36058.4222064.3767.1219.85
DenmarkDNK19955222.005.60248.3623119.2066.1022.21
DenmarkDNK19965256.005.79878.3824086.6266.2821.37
DenmarkDNK19975280.006.60458.3725273.9865.6423.66
DenmarkDNK19985303.006.70088.4226193.0166.6324.48
DenmarkDNK19995321.006.97628.5626988.9066.0222.25
DenmarkDNK20005338.008.08318.6428538.8262.9024.14
Dominican RepublicDOM19947685.4813.160140045.263414.8872.8413.91
Dominican RepublicDOM19957823.0013.597350125.673656.8671.3812.40
Dominican RepublicDOM19967963.5813.774585.863927.5173.3611.97
Dominican RepublicDOM19977967.9314.265480045.974515.2667.8311.89
Dominican RepublicDOM19988103.2115.266590126.244798.2568.6113.87
Dominican RepublicDOM19998238.2716.033079156.535167.1766.6014.03
Dominican RepublicDOM20008373.0016.415019996.835653.7867.1613.78
AlgeriaDZA199427454.3235.0584983813.014126.1763.9312.98
AlgeriaDZA199528058.0047.6627311716.534245.0362.4412.93
AlgeriaDZA199628675.2854.7489318818.954726.7356.0911.88
AlgeriaDZA199729045.0057.7073516819.704828.1454.7211.15
AlgeriaDZA199829507.0058.7389602720.804540.7459.6714.00
AlgeriaDZA199929950.0066.5738830621.594894.4357.0512.46
AlgeriaDZA200030399.2575.2597885121.616106.9146.219.78
EcuadorECU199411215.972196.728027899.523612.8759.2715.80
EcuadorECU199511460.002564.4938961097.523656.5259.6816.88
EcuadorECU199611698.003189.4741211344.363862.9457.7614.56
EcuadorECU199711937.003998.267091765.593755.4960.6317.35
EcuadorECU199812175.005446.5732422480.463556.3565.1819.55
EcuadorECU199912412.0011786.79983760.423464.4360.389.22
EcuadorECU200012646.0024988.390637214.853719.9056.8712.93
EgyptEGY199457063.533.3851330280.883468.1291.014.40
EgyptEGY199558180.003.3922080990.983565.0890.084.74
EgyptEGY199659272.003.3914830681.053699.5491.134.96
EgyptEGY199760416.243.3887500761.093910.3791.315.13
EgyptEGY199861580.003.3880000111.143993.4194.195.99
EgyptEGY199962770.003.3952500821.154203.8992.605.94
EgyptEGY200063976.003.4720499521.204406.3690.515.87
EritreaERI1994nananananana
EritreaERI1995nananananana
EritreaERI19963670.006.3516750341.50774.8197.459.09
EritreaERI1997nananananana
EritreaERI1998nananananana
EritreaERI1999nananananana
EritreaERI2000nananananana
SpainESP199439149.70133.958121.6614204.7170.0322.62
SpainESP199539223.00124.689116.1315992.1575.1621.96
SpainESP199639278.80126.662126.5915535.3369.0123.21
SpainESP199739348.10146.414127.3216411.8468.5923.23
SpainESP199839453.40149.395128.4817329.4368.8724.02
SpainESP199939626.20156.174130.3818210.7869.4924.65
SpainESP200039927.40180.595133.2719036.7069.1325.47
EstoniaEST19941499.0012.991250043.016578.5760.8815.06
EstoniaEST19951484.0011.464750293.877084.2057.5113.58
EstoniaEST19961469.0012.033749584.757509.5859.6014.71
EstoniaEST19971427.1613.881750115.288526.3860.0016.90
EstoniaEST19981406.0314.074669845.649222.7060.8015.63
EstoniaEST19991386.6714.677579885.559834.7457.4112.36
EstoniaEST20001369.0016.968639375.4210872.8356.7013.15
EthiopiaETH199454890.005.4650001531.02505.2883.964.35
EthiopiaETH199556530.006.1583328251.13530.8783.204.70
EthiopiaETH199658234.006.3516750341.18550.9587.475.73
EthiopiaETH199759750.006.7093420031.16600.3981.745.48
EthiopiaETH199861266.007.1159081461.19615.2077.515.16
EthiopiaETH199962782.007.9422497751.17660.6475.784.63
EthiopiaETH200064298.008.2172584531.12720.0867.964.00
FinlandFIN19945089.005.22355.9317293.9065.0521.05
FinlandFIN19955108.004.36675.9718517.5864.3420.17
FinlandFIN19965125.004.59355.8719488.6064.7120.40
FinlandFIN19975140.005.19145.9320850.6763.4620.95
FinlandFIN19985153.005.34416.0222215.2463.0620.97
FinlandFIN19995165.005.58086.0522931.3864.1320.20
FinlandFIN20005176.006.45356.1924416.3662.2421.04
FijiFJI1994765.441.4641250370.704953.4562.519.66
FijiFJI1995770.001.406332970.695143.4662.1710.23
FijiFJI1996775.671.4033000470.735282.3767.087.91
FijiFJI1997782.831.4436750410.745213.9667.788.91
FijiFJI1998791.171.9868170020.755303.1161.348.28
FijiFJI1999801.001.9696249960.725918.4159.697.58
FijiFJI2000nananananana
FranceFRA199459115.605.5526.6419113.2767.6222.39
FranceFRA199559326.404.99156.6019791.4867.0723.05
FranceFRA199659533.105.11556.6020228.2367.7621.99
FranceFRA199759735.605.83676.5820887.8866.9821.38
FranceFRA199859942.105.89956.5321889.9266.8822.49
FranceFRA199960156.406.1576.4822723.1867.0122.53
FranceFRA200060431.207.11986.4623613.7666.3723.82
GabonGAB19941071.00555.2047119288.157556.4861.207.51
GabonGAB19951098.00499.148407275.498192.1862.736.83
GabonGAB19961125.00511.5523987296.758860.4760.406.94
GabonGAB19971136.90583.6693726304.569155.0260.688.95
GabonGAB19981167.29589.9517822307.827600.6975.8511.17
GabonGAB19991198.32615.6990967286.037804.3575.647.81
GabonGAB20001230.00711.9763184366.817779.7678.968.66
United KingdomGBR199458401.000.65340.6318473.8374.5918.24
United KingdomGBR199558612.000.63370.6419187.6474.4818.24
United KingdomGBR199658807.000.6410.6520066.2575.1917.95
United KingdomGBR199759014.000.61080.6521281.7874.6118.51
United KingdomGBR199859237.000.60380.6522326.8674.6019.81
United KingdomGBR199959501.000.61810.6523125.9075.8219.17
United KingdomGBR200059756.000.66090.6524252.4475.2019.43
GeorgiaGEO1994nananananana
GeorgiaGEO1995nananananana
GeorgiaGEO19965420.001.2627999780.244478.8374.121.91
GeorgiaGEO19975431.001.2975000140.184813.6280.784.21
GeorgiaGEO19985442.001.3898169990.194848.1477.006.35
GeorgiaGEO19995024.002.0245170590.205593.1281.663.60
GeorgiaGEO20005024.001.9761669640.225315.4374.174.07
GermanyGER199481422.001.62282.0919930.8968.4324.49
GermanyGER199581661.001.43312.0920676.8168.5224.15
GermanyGER199681896.001.50482.0721118.5769.2523.13
GermanyGER199782052.001.73412.0621638.7769.3422.90
GermanyGER199882029.001.75972.0522435.1969.2323.06
GermanyGER199982087.001.83582.0323142.7070.1522.68
GermanyGER200082168.002.12292.0223917.4469.4223.62
GhanaGHA199416639.55956.7108154256.951217.1777.446.39
GhanaGHA199517075.001200.428955354.681280.6775.485.50
GhanaGHA199617523.211637.232056504.181283.5578.286.19
GhanaGHA199718048.342050.166992624.521251.8386.147.36
GhanaGHA199818449.372314.146973677.541384.7880.446.57
GhanaGHA199918868.322669.299072788.041384.0986.466.18
GhanaGHA200019306.005455.0561521024.041375.8183.805.10
GuineaGIN19946425.74976.6364136206.192530.7189.2310.79
GuineaGIN19956591.00991.411499214.212581.7392.918.17
GuineaGIN19966755.781004.015991217.562707.9192.837.24
GuineaGIN19976921.561095.32605210.262848.2090.347.30
GuineaGIN19987086.121236.832031215.832897.8492.527.13
GuineaGIN19997250.521387.401001222.752949.7893.307.12
GuineaGIN20007415.001746.869995239.892961.0293.347.59
Gambia, TheGMB19941076.299.5755500793.061054.1588.708.37
Gambia, TheGMB19951111.009.5462503433.151042.7890.6810.01
Gambia, TheGMB19961145.889.788950923.201044.5690.7910.54
Gambia, TheGMB19971186.2610.200160033.101137.6088.527.74
Gambia, TheGMB19981223.8110.643099783.241119.0191.658.56
Gambia, TheGMB19991262.7111.39509013.161234.9491.877.42
Gambia, TheGMB20001303.0012.787630083.111329.3988.837.33
Guinea-BissauGNB19941059.38198.340606758.14758.7779.3413.86
Guinea-BissauGNB19951086.00278.03909384.26771.6782.6213.87
Guinea-BissauGNB19961111.92405.7449951122.84806.3781.9714.22
Guinea-BissauGNB19971125.99583.6691895156.62886.1178.3814.23
Guinea-BissauGNB19981149.33589.9515991162.29648.2084.3612.43
Guinea-BissauGNB19991173.38615.6990967167.26705.0379.677.60
Guinea-BissauGNB20001199.00711.9763184174.06737.6778.995.55
Equatorial GuineaGNQ1994388.88555.2047119194.20924.4573.0835.44
Equatorial GuineaGNQ1995399.00499.148407204.001005.5868.6637.99
Equatorial GuineaGNQ1996409.44511.5523987231.151394.9170.2858.13
Equatorial GuineaGNQ1997421.26583.6693726277.022493.9961.7431.64
Equatorial GuineaGNQ1998433.06589.9517822199.603105.0477.1741.79
Equatorial GuineaGNQ1999445.03615.6990967214.445638.6235.3226.65
Equatorial GuineaGNQ2000457.00711.9763184203.0310302.2826.8317.70
GreeceGRC199410426.00242.603200.0711647.5473.9719.13
GreeceGRC199510454.00231.663213.2312217.8879.4019.51
GreeceGRC199610475.90240.712224.1012750.9579.5520.44
GreeceGRC199710498.80273.058234.2513472.1778.6620.79
GreeceGRC199810516.40295.529243.1514095.3478.4621.77
GreeceGRC199910533.70305.647246.9814755.8278.1421.31
GreeceGRC200010557.90365.399252.0815557.8376.6022.84
GrenadaGRD199494.102.7000000481.654552.0467.3422.21
GrenadaGRD199594.502.7000000481.644814.8067.5119.21
GrenadaGRD199695.002.7000000481.685016.4270.4821.86
GrenadaGRD199795.502.7000000481.745124.0676.6223.37
GrenadaGRD199896.202.7000000481.765442.2176.2323.57
GrenadaGRD199997.002.7000000481.765962.3262.1722.30
GrenadaGRD200098.002.7000000481.766409.8266.0724.51
GuatemalaGTM19949715.295.7512011532.133600.2685.038.04
GuatemalaGTM19959976.005.8103427892.273768.1484.887.52
GuatemalaGTM199610243.436.0495128632.433838.6885.276.17
GuatemalaGTM199710517.006.0652689932.573983.4084.716.93
GuatemalaGTM199810799.006.3946528432.784119.2485.019.00
GuatemalaGTM199911088.407.3856101042.914192.4286.158.36
GuatemalaGTM200011385.307.7631587983.004334.5584.158.23
GuyanaGUY1994823.35138.290206936.082517.9473.8412.72
GuyanaGUY1995830.00141.989196840.602614.4668.5515.16
GuyanaGUY1996836.57140.37540.832868.7465.3014.17
GuyanaGUY1997749.05142.400802640.033537.1266.1513.93
GuyanaGUY1998752.43150.519195640.153571.7468.2312.71
GuyanaGUY1999756.34177.994995141.603833.3865.8310.25
GuyanaGUY2000nananananana
Hong KongHKG19945998.007.728416926.7824816.2366.9026.70
Hong KongHKG19956156.007.7358331687.0524736.9767.6331.41
Hong KongHKG19966311.007.7342538837.2425993.8267.2528.99
Hong KongHKG19976502.007.7420830737.4927076.4167.8230.70
Hong KongHKG19986645.607.7453331957.4425591.2466.1426.74
Hong KongHKG19996720.707.7575001727.1425668.8866.7221.79
Hong KongHKG20006797.007.7911667826.6827892.5064.4524.99
HondurasHND19945492.468.4087581632.681958.5075.6718.86
HondurasHND19955654.009.470987323.192082.6071.6518.05
HondurasHND19965818.0611.705300333.882116.8273.8516.40
HondurasHND19975939.4713.003470424.782165.3575.4516.86
HondurasHND19986098.9313.385020265.122249.3374.4016.12
HondurasHND19996258.4614.213170055.732133.9878.2917.23
HondurasHND20006417.0014.839200026.332164.4372.4320.37
CroatiaHRV1994nananananana
CroatiaHRV19954669.005.2299671173.126748.3562.0112.21
CroatiaHRV19964494.005.433800223.237427.9059.8815.33
CroatiaHRV19974446.616.1007170683.428134.9963.6119.18
CroatiaHRV19984396.576.3622918133.608702.4560.8016.66
CroatiaHRV19994374.517.1124448783.698846.6659.4615.94
CroatiaHRV20004380.008.2765645983.779547.1657.7015.27
HaitiHTI19947009.0415.039999963.691079.2388.652.31
HaitiHTI19957168.0015.109729773.621470.2693.863.19
HaitiHTI19967336.0015.701149943.681756.8195.192.59
HaitiHTI19977492.0016.654499053.592081.3490.212.13
HaitiHTI19987647.0016.765670783.602365.4394.751.96
HaitiHTI1999nananananana
HaitiHTI2000nananananana
HungaryHUN199410261.00105.1651.928297.3672.6317.51
HungaryHUN199510229.00125.68164.298536.6366.8019.24
HungaryHUN199610193.00152.64777.678707.7964.9021.78
HungaryHUN199710155.00186.78990.199325.1863.0722.42
HungaryHUN199810144.00214.402100.819864.1763.6924.66
HungaryHUN199910067.00237.146108.6310418.9464.6224.13
HungaryHUN200010024.00282.179117.9111062.9064.1325.47
IndonesiaIDN1994190847.972160.753906598.283355.2157.9319.86
IndonesiaIDN1995193976.002248.60791671.713489.0157.3024.37
IndonesiaIDN1996197156.482342.295898693.843891.2161.4921.19
IndonesiaIDN1997200390.292909.379883756.404136.5762.5420.99
IndonesiaIDN1998203678.3710013.620121199.673910.0262.1613.22
IndonesiaIDN1999207021.627855.1499021398.853831.6066.3710.13
IndonesiaIDN2000210420.998421.7753911521.374035.2764.7810.67
IndiaIND1994913600.0031.373739246.261815.4862.6311.92
IndiaIND1995929358.0232.427078256.731950.4259.4113.25
IndiaIND1996945611.7835.433170327.042117.8760.7411.93
IndiaIND1997962377.6636.313289647.112221.1360.0212.53
IndiaIND1998979672.9041.25936897.582348.0056.5912.88
IndiaIND1999997515.2043.055431377.702510.5654.3313.60
IndiaIND20001015923.0144.941608437.672683.6152.3813.18
IrelandIRL19943586.000.66860.6615388.7167.3017.26
IrelandIRL19953601.300.62370.6816978.9664.4418.75
IrelandIRL19963626.100.6250.6818494.3863.5819.71
IrelandIRL19973660.600.65960.7020658.6161.6220.97
IrelandIRL19983704.900.70230.7322433.9861.0822.95
IrelandIRL19993744.700.73920.7624653.4260.5421.15
IrelandIRL20003786.900.85480.7927197.0659.7821.55
IranIRN199458013.681748.750977417.124958.9265.289.50
IranIRN199558954.001747.927979586.755203.5959.4519.53
IranIRN199659925.111750.762939720.615333.1665.0913.45
IranIRN199760875.001752.921997827.175473.2365.4415.89
IranIRN199861850.001751.863037942.075447.3467.0918.23
IranIRN199962764.001752.931031075.705983.8463.6215.06
IranIRN200063664.001764.4300541167.047202.0456.0113.12
IcelandISL1994266.0069.944482.8019925.0066.7518.75
IcelandISL1995267.4064.691782.9620347.5667.7319.11
IcelandISL1996268.9066.583.8021476.4868.5822.01
IcelandISL1997270.9070.904384.5022896.9768.1022.78
IcelandISL1998273.8070.958385.6024715.0269.6027.09
IcelandISL1999277.2072.335387.4025732.6271.7424.78
IcelandISL2000281.3078.615988.9326928.5570.8527.57
IsraelISR19945399.003.0110549932.8114790.7258.2930.43
IsraelISR19955545.003.0112919813.0215650.5558.6430.91
IsraelISR19965692.003.1916499143.2616464.2458.6530.81
IsraelISR19975836.003.4493501193.4717241.0758.3327.69
IsraelISR19985963.003.8000750543.6517520.8359.0924.50
IsraelISR19996105.004.1397171023.7818091.9259.0025.51
IsraelISR20006233.214.0773329733.7719148.4458.2023.33
ItalyITA199457203.501612.441527.6118920.9570.3819.93
ItalyITA199557300.801628.931576.6319783.3969.2320.71
ItalyITA199657397.001542.951618.6920474.8869.1520.10
ItalyITA199757512.201703.11632.3021167.6670.0620.28
ItalyITA199857588.001736.211645.9821915.8270.6420.52
ItalyITA199957646.301817.441652.0222523.3471.2621.09
ItalyITA200057728.302101.631709.1122876.2862.0521.73
JamaicaJAM19942496.0033.0859298715.143503.1666.6621.96
JamaicaJAM19952522.1035.1421203618.003747.1665.9821.15
JamaicaJAM19962538.0037.1195602421.093804.1465.5020.48
JamaicaJAM19972554.0035.4044685429.863327.3054.9523.35
JamaicaJAM19982576.0036.5499992430.303441.7857.9220.38
JamaicaJAM19992590.0039.0435218832.503413.8357.4920.35
JamaicaJAM20002633.0042.7011413635.103464.2657.6620.53
JordanJOR19944060.840.6987642050.283780.0358.3219.36
JordanJOR19954195.000.7003775240.283929.7554.8318.85
JordanJOR19964314.230.7089999910.293747.7759.0317.44
JordanJOR19974459.120.7089999910.293974.3457.5914.17
JordanJOR19984597.350.7089999910.304063.3959.5811.84
JordanJOR19994739.870.7089999910.294203.9259.439.98
JordanJOR20004886.810.7089999910.284282.2263.1810.74
JapanJPN1994124960.00102.208176.4822302.1160.8531.36
JapanJPN1995125570.0094.0596172.5922967.1260.9831.58
JapanJPN1996125864.00108.779168.7724046.5160.8732.71
JapanJPN1997126166.00120.991167.2124737.4460.6632.31
JapanJPN1998126486.00130.905165.3724661.4361.8330.15
JapanJPN1999126686.00113.907161.7424979.2462.8728.94
JapanJPN2000126919.00107.765156.0825924.3961.6229.75
KazakhstanKAZ199416297.0035.538330084.455853.5670.8517.12
KazakhstanKAZ199516066.0060.9500007611.155662.0764.0010.68
KazakhstanKAZ199615921.0067.3033294715.155882.1869.887.31
KazakhstanKAZ199715334.4075.437516.866212.4672.017.77
KazakhstanKAZ199815073.0078.3033294717.986003.1176.827.38
KazakhstanKAZ199914927.00119.523300219.027094.6470.687.50
KazakhstanKAZ200014869.00142.133300821.098331.2960.887.14
KenyaKEN199426506.7956.0505790712.811180.0572.507.09
KenyaKEN199527216.0051.4298286413.961225.4879.517.74
KenyaKEN199627918.1057.1148681614.861268.6178.647.74
KenyaKEN199728043.0058.7318382316.041342.5182.147.57
KenyaKEN199828726.0060.3666992217.701327.7181.717.89
KenyaKEN199929416.0070.3262176519.181286.8678.157.75
KenyaKEN200030092.0076.1755371120.051316.2680.127.54
KyrgyzstanKGZ19944473.0010.841679570.823296.8062.553.27
KyrgyzstanKGZ19954514.0010.821880341.292771.8362.987.21
KyrgyzstanKGZ19964576.0012.809559821.972595.9666.2311.17
KyrgyzstanKGZ19974681.0017.36248972.332817.5955.3810.24
KyrgyzstanKGZ19984797.0020.837570192.682663.5568.527.19
KyrgyzstanKGZ19994864.6039.007728583.432922.3962.817.92
KyrgyzstanKGZ20004915.0047.703830723.993205.1160.336.97
CambodiaKHM199410367.142545.25550.011087.3486.183.98
CambodiaKHM199510695.322450.833008596.211183.7091.894.65
CambodiaKHM199610968.052624.083008623.521217.9090.505.54
CambodiaKHM199711236.772946.25622.341300.7284.465.14
CambodiaKHM199811498.003744.416992727.291284.9286.295.76
CambodiaKHM199911756.713807.833008752.211296.9986.416.45
CambodiaKHM2000nananananana
St. Kitts & NevisKNA199441.192.7000000481.549481.7640.8219.36
St. Kitts & NevisKNA199541.002.7000000481.4310692.0348.4118.19
St. Kitts & NevisKNA199640.882.7000000481.3911661.9850.7917.94
St. Kitts & NevisKNA199740.822.7000000481.4412643.5843.9517.17
St. Kitts & NevisKNA199840.822.7000000481.4712949.7243.9116.42
St. Kitts & NevisKNA199940.882.7000000481.3914272.9548.2013.23
St. Kitts & NevisKNA200041.002.7000000481.4114627.3047.4716.49
Korea, Republic ofKOR199444642.00803.446584.4112396.2954.9040.23
Korea, Republic ofKOR199545093.00771.273617.7013547.4555.3140.50
Korea, Republic ofKOR199645545.00804.453641.6414319.8956.5441.64
Korea, Republic ofKOR199745991.00951.289670.2814704.0357.4837.65
Korea, Republic ofKOR199846430.001401.44702.5913622.0155.7424.66
Korea, Republic ofKOR199946858.001188.82709.1014528.7358.1529.05
Korea, Republic ofKOR200047275.001130.96732.2914936.6957.1230.78
KuwaitKWT1994nananananana
KuwaitKWT1995nananananana
KuwaitKWT19961697.000.2994086150.2323385.9352.029.92
KuwaitKWT1997nananananana
KuwaitKWT1998nananananana
KuwaitKWT1999nananananana
KuwaitKWT2000nananananana
LaosLAO1994nananananana
LaosLAO1995nananananana
LaosLAO19964725.58921.0217285267.901367.3162.2321.23
LaosLAO1997nananananana
LaosLAO1998nananananana
LaosLAO1999nananananana
LaosLAO2000nananananana
LebanonLBN19943929.731680.072998952.264075.21116.1617.47
LebanonLBN19954005.001621.4129641011.424448.56112.0617.75
LebanonLBN19964077.011571.443971016.534927.15106.1915.82
LebanonLBN19974145.531539.4499511070.965158.00102.2713.80
LebanonLBN19984210.341516.1319581104.625306.5790.8214.94
LebanonLBN19994271.231507.8439941033.705660.0484.8210.30
LebanonLBN20004328.001507.5942.166089.2676.508.18
St. LuciaLCA1994142.702.7000000481.675858.9372.3314.08
St. LuciaLCA1995145.402.7000000481.686214.0271.0210.71
St. LuciaLCA1996147.002.7000000481.676267.6873.6112.28
St. LuciaLCA1997149.672.7000000481.686238.9774.3614.19
St. LuciaLCA1998151.952.7000000481.746397.5673.6613.44
St. LuciaLCA1999153.702.7000000481.786578.3476.5514.36
St. LuciaLCA2000156.002.7000000481.796822.9874.8113.69
Sri LankaLKA199417865.0049.4151382411.542813.2977.4212.51
Sri LankaLKA199518112.0051.2515907312.342991.1877.7911.87
Sri LankaLKA199618300.0055.271438613.133201.4374.7111.39
Sri LankaLKA199718552.0058.9946098315.253145.9470.2811.99
Sri LankaLKA199818774.0064.4501190215.823429.3269.2812.46
Sri LankaLKA199919043.0070.6354522716.293564.6570.3912.49
Sri LankaLKA200019359.0077.0051193216.893840.7767.6112.51
LesothoLSO19941885.183.5507979391.131266.47104.3432.80
LesothoLSO19951926.003.627084971.261270.7497.1441.61
LesothoLSO19961968.334.2993488311.421319.9693.7547.20
LesothoLSO19971944.714.6079621321.671449.8890.2544.58
LesothoLSO19981978.095.5282840731.741430.2083.3638.40
LesothoLSO19992008.246.1094841961.961413.2175.5137.52
LesothoLSO20002035.006.9398279192.051492.2764.6336.22
LithuaniaLTU19943721.003.9777500630.706514.5571.038.23
LithuaniaLTU19953715.0041.086031.8364.5913.76
LithuaniaLTU19963709.0041.316495.2566.3413.42
LithuaniaLTU19973705.5941.437211.7566.5616.09
LithuaniaLTU19983703.0041.467925.1964.1616.26
LithuaniaLTU19993699.0041.497759.5768.0614.95
LithuaniaLTU20003695.0041.468396.6666.3512.98
LuxembourgLUX1994403.8033.456539.7931897.3050.3024.06
LuxembourgLUX1995412.8029.4838.2733757.3059.2123.86
LuxembourgLUX1996418.3030.961538.2635144.2459.8923.68
LuxembourgLUX1997423.7035.773938.2438908.9256.3524.85
LuxembourgLUX1998429.2036.298638.2441716.9954.6523.34
LuxembourgLUX1999435.7037.864138.5444322.4453.3525.10
LuxembourgLUX2000441.4043.784938.3848967.5649.5823.48
LatviaLVA19942548.000.5597500210.145612.6062.486.91
LatviaLVA19952516.000.5275833010.165962.0957.2110.00
LatviaLVA19962491.000.5507500170.186194.1362.7310.41
LatviaLVA19972469.000.5809167030.206596.2263.6311.18
LatviaLVA19982449.000.5898333190.217042.5264.9414.59
LatviaLVA19992410.000.5851666930.217625.3465.0912.42
LatviaLVA20002372.000.606500030.228305.2264.5911.85
MacaoMAC1994418.778.0500001915.8321866.9334.8522.02
MacaoMAC1995430.008.0500001915.9023365.0433.6918.33
MacaoMAC1996440.918.0500001915.6623350.4334.9813.82
MacaoMAC1997418.007.9752922065.8222959.6838.8014.72
MacaoMAC1998426.007.9787669185.5821820.7540.3712.89
MacaoMAC1999434.007.9918498995.2521517.9241.4712.01
MacaoMAC2000438.008.0258998874.9223118.1139.248.25
MoroccoMAR199425926.009.202714923.073512.9882.809.66
MoroccoMAR199526386.008.5402364733.173362.4781.3211.29
MoroccoMAR199626848.008.7158756263.123808.4882.289.56
MoroccoMAR199727310.009.5271072392.983903.3577.1910.08
MoroccoMAR199827775.009.6044158942.874308.9377.3811.45
MoroccoMAR199928238.009.8044185642.854299.6176.7310.55
MoroccoMAR200028705.0010.625639922.884299.2476.1212.22
MoldovaMDA1994nananananana
MoldovaMDA19954339.004.4958000180.642316.8365.5910.32
MoldovaMDA19964325.004.6044831280.802264.2070.629.49
MoldovaMDA19974312.004.623582840.842457.1069.898.85
MoldovaMDA19984299.005.3706998830.922294.6680.259.57
MoldovaMDA19994290.0010.515810011.362111.2276.578.84
MoldovaMDA20004282.0012.434220311.692212.2394.108.70
MadagascarMDG199412915.043067.335938909.03778.1091.642.62
MadagascarMDG199513300.004265.6318361292.75784.2591.302.62
MadagascarMDG199613717.554061.2519531479.40799.0690.082.83
MadagascarMDG199714148.205090.886231566.28818.5991.842.69
MadagascarMDG199814592.385441.3979491675.00836.6791.792.76
MadagascarMDG199915050.506283.7749021819.92862.3392.842.72
MadagascarMDG200015523.006767.4809571925.96876.6893.583.23
+ + + +
+
+ + \ No newline at end of file diff --git a/test/test-grid-layout.js b/test/test-grid-layout.js index e69de29b..09bf9d9e 100644 --- a/test/test-grid-layout.js +++ b/test/test-grid-layout.js @@ -0,0 +1,30 @@ +requirejs(['test-config', '../src/core'], function(config, TableFilter){ + + QUnit.start(); + + var GridLayout = require('modules/gridLayout').GridLayout; + + var tf = new TableFilter('demo', { + grid_layout: true + }); + tf.init(); + + module('Sanity checks'); + test('GridLayout component', function() { + deepEqual(tf.Cpt.gridLayout instanceof GridLayout, true, 'GridLayout type'); + notEqual(tf.Cpt.gridLayout, null, 'GridLayout instanciated'); + notEqual(tf.Cpt.gridLayout.tblMainCont, null, 'GridLayout main container element'); + notEqual(tf.Cpt.gridLayout.tblCont, null, 'GridLayout main HTML table container element'); + notEqual(tf.Cpt.gridLayout.headTblCont, null, 'GridLayout headers container element'); + notEqual(tf.Cpt.gridLayout.headTbl, null, 'GridLayout headers HTML table'); + }); + + test('Destroy GridLayout component', function() { + tf.Cpt.gridLayout.destroy(); + deepEqual(tf.Cpt.gridLayout.tblMainCont, null, 'Main container element removed'); + deepEqual(tf.Cpt.gridLayout.tblCont, null, 'Main HTML table container element removed'); + deepEqual(tf.Cpt.gridLayout.headTblCont, null, 'Headers container element removed'); + deepEqual(tf.Cpt.gridLayout.headTbl, null, 'Headers HTML table element removed'); + }); + +}); diff --git a/test/test-rows-counter.js b/test/test-rows-counter.js index f1670701..7900e701 100644 --- a/test/test-rows-counter.js +++ b/test/test-rows-counter.js @@ -2,8 +2,7 @@ requirejs(['test-config', '../src/core'], function(config, TableFilter){ QUnit.start(); - var dom = require('dom'), - RowsCounter = require('modules/rowsCounter').RowsCounter; + var RowsCounter = require('modules/rowsCounter').RowsCounter; var tf = new TableFilter('demo', { rows_counter: true @@ -12,7 +11,7 @@ requirejs(['test-config', '../src/core'], function(config, TableFilter){ module('Sanity checks'); test('RowsCounter component', function() { - deepEqual(tf.Cpt.rowsCounter instanceof RowsCounter, true, 'RowsCounter constructor'); + deepEqual(tf.Cpt.rowsCounter instanceof RowsCounter, true, 'RowsCounter type'); notEqual(tf.Cpt.rowsCounter, null, 'RowsCounter instanciated'); equal(tf.Cpt.rowsCounter.rowsCounterSpan.innerHTML, 7, 'Counter value'); });