eventlog2html-0.8.0: javascript/generated/fancyTable.min.js
/*!
* jQuery fancyTable plugin v1.0.19
* https://github.com/myspace-nu
*
* Copyright 2018 Johan Johansson
* Released under the MIT license
*/
!function(o){o.fn.fancyTable=function(a){var l=o.extend({inputStyle:"",inputPlaceholder:"Search...",pagination:!1,paginationClass:"btn btn-light",paginationClassActive:"active",pagClosest:3,perPage:10,sortable:!0,searchable:!0,onInit:function(){},onUpdate:function(){},testing:!1},a),i=this;return this.settings=l,this.tableUpdate=function(n){if(n.fancyTable.matches=0,o(n).find("tbody tr").each(function(){var a=0,e=!0,t=!1;o(this).find("td").each(function(){l.globalSearch||!n.fancyTable.searchArr[a]||new RegExp(n.fancyTable.searchArr[a],"i").test(o(this).html())?!l.globalSearch||n.fancyTable.search&&!new RegExp(n.fancyTable.search,"i").test(o(this).html())||Array.isArray(l.globalSearchExcludeColumns)&&l.globalSearchExcludeColumns.includes(a+1)||(t=!0):e=!1,a++}),l.globalSearch&&t||!l.globalSearch&&e?(n.fancyTable.matches++,!l.pagination||n.fancyTable.matches>n.fancyTable.perPage*(n.fancyTable.page-1)&&n.fancyTable.matches<=n.fancyTable.perPage*n.fancyTable.page?o(this).show():o(this).hide()):o(this).hide()}),n.fancyTable.pages=Math.ceil(n.fancyTable.matches/n.fancyTable.perPage),l.pagination){var a=n.fancyTable.paginationElement?o(n.fancyTable.paginationElement):o(n).find(".pag");a.empty();for(var e=1;e<=n.fancyTable.pages;e++)if(1==e||e>n.fancyTable.page-(l.pagClosest+1)&&e<n.fancyTable.page+(l.pagClosest+1)||e==n.fancyTable.pages){var t=o("<a>",{html:e,"data-n":e,style:"margin:0.2em",class:l.paginationClass+" "+(e==n.fancyTable.page?l.paginationClassActive:"")}).css("cursor","pointer").bind("click",function(){n.fancyTable.page=o(this).data("n"),i.tableUpdate(n)});e==n.fancyTable.pages&&n.fancyTable.page<n.fancyTable.pages-l.pagClosest-1&&a.append(o("<span>...</span>")),a.append(t),1==e&&n.fancyTable.page>l.pagClosest+2&&a.append(o("<span>...</span>"))}}l.onUpdate.call(this,n)},this.reinit=function(a){o(this).each(function(){o(this).find("th a").contents().unwrap(),o(this).find("tr.fancySearchRow").remove()}),o(this).fancyTable(this.settings)},this.tableSort=function(l){if(void 0!==l.fancyTable.sortColumn&&l.fancyTable.sortColumn<l.fancyTable.nColumns){o(l).find("thead th div.sortArrow").each(function(){o(this).remove()});var a=o("<div>",{class:"sortArrow"}).css({margin:"0.1em",display:"inline-block",width:0,height:0,"border-left":"0.4em solid transparent","border-right":"0.4em solid transparent"});a.css(0<l.fancyTable.sortOrder?{"border-top":"0.4em solid #000"}:{"border-bottom":"0.4em solid #000"}),o(l).find("thead th a").eq(l.fancyTable.sortColumn).append(a);var e=o(l).find("tbody tr").toArray().sort(function(a,e){var t=o(a).find("td").eq(l.fancyTable.sortColumn),n=o(e).find("td").eq(l.fancyTable.sortColumn),s=o(t).data("sortvalue")?o(t).data("sortvalue"):t.html(),r=o(n).data("sortvalue")?o(n).data("sortvalue"):n.html();return"case-insensitive"==l.fancyTable.sortAs[l.fancyTable.sortColumn]&&(s=s.toLowerCase(),r=r.toLowerCase()),"numeric"==l.fancyTable.sortAs[l.fancyTable.sortColumn]?0<l.fancyTable.sortOrder?parseFloat(s)-parseFloat(r):parseFloat(r)-parseFloat(s):s<r?-l.fancyTable.sortOrder:r<s?l.fancyTable.sortOrder:0});o(l).find("tbody").empty().append(e)}},this.each(function(){if("TABLE"!==o(this).prop("tagName"))return console.warn("fancyTable: Element is not a table."),!0;var t=this;if(t.fancyTable={nColumns:o(t).find("td").first().parent().find("td").length,nRows:o(this).find("tbody tr").length,perPage:l.perPage,page:1,pages:0,matches:0,searchArr:[],search:"",sortColumn:l.sortColumn,sortOrder:void 0===l.sortOrder?1:new RegExp("desc","i").test(l.sortOrder)||-1==l.sortOrder?-1:1,sortAs:[],paginationElement:l.paginationElement},0==o(t).find("tbody").length){var a=o(t).html();o(t).empty(),o(t).append("<tbody>").append(o(a))}if(0==o(t).find("thead").length&&o(t).prepend(o("<thead>")),l.sortable){var n=0;o(t).find("thead th").each(function(){t.fancyTable.sortAs.push("numeric"==o(this).data("sortas")?"numeric":"case-insensitive"==o(this).data("sortas")?"case-insensitive":null);var a=o(this).html(),e=o("<a>",{html:a,"data-n":n,class:""}).css("cursor","pointer").bind("click",function(){t.fancyTable.sortColumn==o(this).data("n")?t.fancyTable.sortOrder=-t.fancyTable.sortOrder:t.fancyTable.sortOrder=1,t.fancyTable.sortColumn=o(this).data("n"),i.tableSort(t),i.tableUpdate(t)});o(this).empty(),o(this).append(e),n++})}if(l.searchable){var s=o("<tr>").addClass("fancySearchRow");if(l.globalSearch){var e=o("<input>",{placeholder:l.inputPlaceholder,style:"width:100%;"+l.inputStyle}).bind("change paste keyup",function(){t.fancyTable.search=o(this).val(),t.fancyTable.page=1,i.tableUpdate(t)}),r=o("<th>",{style:"padding:2px;"}).attr("colspan",t.fancyTable.nColumns);o(e).appendTo(o(r)),o(r).appendTo(o(s))}else{n=0;o(t).find("td").first().parent().find("td").each(function(){t.fancyTable.searchArr.push("");var a=o("<input>",{"data-n":n,placeholder:l.inputPlaceholder,style:"width:100%;"+l.inputStyle}).bind("change paste keyup",function(){t.fancyTable.searchArr[o(this).data("n")]=o(this).val(),t.fancyTable.page=1,i.tableUpdate(t)}),e=o("<th>",{style:"padding:2px;"});o(a).appendTo(o(e)),o(e).appendTo(o(s)),n++})}s.appendTo(o(t).find("thead"))}i.tableSort(t),l.pagination&&!l.paginationElement&&(o(t).find("tfoot").remove(),o(t).append(o("<tfoot><tr></tr></tfoot>")),o(t).find("tfoot tr").append(o("<td class='pag'></td>",{}).attr("colspan",t.fancyTable.nColumns))),i.tableUpdate(t),l.onInit.call(this,t)}),this}}(jQuery);