Last active
July 21, 2021 13:37
-
-
Save bergonzzi/bf0c45a72f77a34257768348f7b0bf03 to your computer and use it in GitHub Desktop.
DataTables + yadcf + maplace.js - load the table and the map from the same data source and update the map automatically when filtering
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| <html> | |
| <head> | |
| <title>DataTables + yadcf + Google Maps</title> | |
| <script type="text/javascript" charset="utf8" src="http://maps.google.com/maps/api/js?libraries=geometry&v=3.22&key={YOUR_API_KEY}"></script> | |
| <script type="text/javascript" charset="utf8" src="https://code.jquery.com/jquery-1.12.0.min.js"></script> | |
| <script type="text/javascript" charset="utf8" src="http://cdn.datatables.net/1.10.11/js/jquery.dataTables.js"></script> | |
| <script type="text/javascript" charset="utf8" src="https://cdn.datatables.net/1.10.11/js/dataTables.bootstrap.min.js"></script> | |
| <script type="text/javascript" charset="utf8" src="maplace.min.js"></script> | |
| <script type="text/javascript" charset="utf8" src="jquery.dataTables.yadcf.min.js"></script> | |
| <link rel="stylesheet" type="text/css" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css"> | |
| <link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/1.10.11/css/dataTables.bootstrap.min.css"> | |
| <link rel="stylesheet" type="text/css" href="jquery.dataTables.yadcf.min.css"> | |
| <style type="text/css"> | |
| #gmap { | |
| height: 250px; | |
| } | |
| #mytable td { | |
| cursor: pointer; | |
| } | |
| </style> | |
| <script type="text/javascript"> | |
| // Javascript sourced data | |
| // This could be coming from a server-side API for example | |
| var locations = [ | |
| { | |
| lat: 38.728609, | |
| lon: -9.139263, | |
| title: 'Lisboa', | |
| html: '<h3>Lisboa</h3><p>Lorem ipsum</p>' | |
| }, | |
| { | |
| lat: 38.8, | |
| lon: -9.139263, | |
| title: 'Lisboa', | |
| html: '<h3>Lisboa</h3><p>Lorem ipsum</p>' | |
| }, | |
| { | |
| lat: 38.9, | |
| lon: -9.139263, | |
| title: 'Lisboa', | |
| html: '<h3>Lisboa</h3><p>Lorem ipsum</p>' | |
| }, | |
| { | |
| lat: 41.161233, | |
| lon: -8.629578, | |
| title: 'Porto', | |
| html: '<h3>Porto</h3><p>Lorem ipsum</p>' | |
| }, | |
| { | |
| lat: 40.648617, | |
| lon: -8.653297, | |
| title: 'Aveiro', | |
| html: '<h3>Aveiro</h3><p>Lorem ipsum</p>' | |
| }, | |
| { | |
| lat: 41.808727, | |
| lon: -6.757115, | |
| title: 'Bragança', | |
| html: '<h3>Bragança</h3><p>Lorem ipsum</p>' | |
| }, | |
| { | |
| lat: 39.827782, | |
| lon: -7.496075, | |
| title: 'Castelo Branco', | |
| html: '<h3>Castelo Branco</h3><p>Lorem ipsum</p>' | |
| }, | |
| { | |
| lat: 40.216995, | |
| lon: -8.441313, | |
| title: 'Coimbra', | |
| html: '<h3>Coimbra</h3><p>Lorem ipsum</p>' | |
| }, | |
| { | |
| lat: 38.574915, | |
| lon: -7.913585, | |
| title: 'Évora', | |
| html: '<h3>Évora</h3><p>Lorem ipsum</p>' | |
| }, | |
| { | |
| lat: 37.026008, | |
| lon: -7.933032, | |
| title: 'Faro', | |
| html: '<h3>Faro</h3><p>Lorem ipsum</p>' | |
| }, | |
| { | |
| lat: 40.541127, | |
| lon: -7.266475, | |
| title: 'Guarda', | |
| html: '<h3>Guarda</h3><p>Lorem ipsum</p>' | |
| }, | |
| { | |
| lat: 39.300095, | |
| lon: -7.266475, | |
| title: 'Portalegre', | |
| html: '<h3>Portalegre</h3><p>Lorem ipsum</p>' | |
| }, | |
| { | |
| lat: 39.242354, | |
| lon: -8.674993, | |
| title: 'Santarém', | |
| html: '<h3>Santarém</h3><p>Lorem ipsum</p>' | |
| }, | |
| { | |
| lat: 38.534113, | |
| lon: -8.889510, | |
| title: 'Setúbal', | |
| html: '<h3>Setúbal</h3><p>Lorem ipsum</p>' | |
| }, | |
| { | |
| lat: 41.696373, | |
| lon: -8.834770, | |
| title: 'Viana do Castelo', | |
| html: '<h3>Viana do Castelo</h3><p>Lorem ipsum</p>' | |
| }, | |
| { | |
| lat: 41.307249, | |
| lon: -7.742213, | |
| title: 'Vila Real', | |
| html: '<h3>Vila Real</h3><p>Lorem ipsum</p>' | |
| }, | |
| { | |
| lat: 40.665985, | |
| lon: -7.913049, | |
| title: 'Viseu', | |
| html: '<h3>Viseu</h3><p>Lorem ipsum</p>' | |
| } | |
| ] | |
| $(document).ready(function () { | |
| // Initialize empty map instance | |
| var maplace = new Maplace({ | |
| shared: { | |
| zoom: 16 | |
| } | |
| }).Load(); | |
| // Initialize DataTable | |
| var myTable = $('#mytable').DataTable({ | |
| data: locations, | |
| pageLength: 10, | |
| columns: [ | |
| {data: 'title', title: 'City'}, | |
| {data: 'lat', title: 'Latitude'}, | |
| {data: 'lon', title: 'Longitude'}, | |
| ], | |
| columnDefs: [ | |
| {targets: [0], width: '33%'}, | |
| {targets: [1], width: '33%'}, | |
| {targets: [2], width: '33%'}, | |
| ], | |
| // Example of how to add a custom class based on a condition | |
| createdRow: function (node, data) { | |
| if (data.title === 'Lisboa') { | |
| $(node).addClass('warning'); | |
| } | |
| }, | |
| // When the table is redrawn, update the map with the visible rows | |
| drawCallback: function(settings) { | |
| var api = this.api(); | |
| // Clear all markers when table is redrawn | |
| var markers = { | |
| 'locations': [] | |
| }; | |
| // Page: all / search: applied - makes sure all pages are used with the applied filter | |
| api.rows({page: 'all', search: 'applied'}).every(function(rowIdx, tableLoop, rowLoop) { | |
| var data = this.data(); | |
| var loc = { | |
| 'lat': data.lat, | |
| 'lon': data.lon, | |
| 'html': data.html, | |
| 'icon': data.icon | |
| }; | |
| markers.locations.push(loc); | |
| var row = this.node(); | |
| // Hack that adds a class with the row number to the tr (using rowLoop since that's the "natural" | |
| // order and not the fixed rowIdx one used by dataTables). Whenever we sort or filter rows change | |
| // but this way we keep a natural order of 0, 1, 2... (i.e. first item of the table will always be 0). | |
| // The map markers array contains the visibile data only, and this allows us to always link record 0 | |
| // in the table with item 0 in the markers array | |
| $(row).removeClass (function (index, css) { | |
| // Remove all classes matching a string | |
| // http://stackoverflow.com/questions/2644299/jquery-removeclass-wildcard/5182103#5182103 | |
| return (css.match (/\brow-\d+/g) || []).join(' '); | |
| }); | |
| $(row).addClass('row-'+ rowLoop); | |
| }); | |
| // Load the map | |
| maplace.Load({ | |
| locations: markers.locations | |
| }); | |
| } | |
| }); | |
| // Add per column filters | |
| yadcf.init(myTable, [ | |
| { | |
| column_number: 0 | |
| } | |
| ]); | |
| // Add event listener clicking on table and showing on map | |
| $('#mytable tbody').on('click', 'td', function () { | |
| var tr = $(this).closest('tr'); | |
| var row = myTable.row(tr); | |
| // This is our class-populated row number | |
| var idx = Number(tr.attr('class').match(/(?:row-)(\d+)/)[1]) + 1; | |
| // Zoom to clicked record on map | |
| maplace.ViewOnMap(idx); | |
| }); | |
| }); | |
| </script> | |
| </head> | |
| <body> | |
| <div class="container"> | |
| <div class="row"> | |
| <div class="col-md-12"> | |
| <h2>DataTables + yadcf + maplace.js</h2> | |
| <p>This is a simple example of how to link a DataTables table with a Google Map. The map automatically updates when the table is filtered or sorted. Clicking an item on the table will zoom in and open the info panel on the map.</p> | |
| <div class="panel panel-default"> | |
| <div class="panel-body"> | |
| <div id="gmap"></div> | |
| </div> | |
| </div> | |
| <table id="mytable" class="table table-bordered table-hover"></table> | |
| </div> | |
| </div> | |
| <hr> | |
| <p class="text-right"> | |
| <small>Made by <a href="https://twitter.com/bergonzzi" target="_blank">@bergonzzi</a></small> | |
| <br><br> | |
| </p> | |
| </div> | |
| </body> | |
| </html> |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| .hide{display:none}.inuse,.ui-slider-range .inuse,.yadcf-filter-range-number-slider .inuse{background:#8BBEF0}.yadcf-filter-reset-button{display:inline-block}.yadcf-filter-reset-button.range-number-slider-reset-button{position:relative;top:-6px}.yadcf-filter{padding:3px 4px}.yadcf-filter>option{background:#fff}#ui-datepicker-div,.ui-autocomplete .ui-menu-item{font-size:13px}.yadcf-filter-wrapper{display:inline-block;white-space:nowrap;margin-left:2px}.yadcf-filter-range-date-seperator,.yadcf-filter-range-number-seperator{margin-left:10px;margin-right:10px}.yadcf-filter-range-number{width:40px}.yadcf-filter-range-date{width:80px}.yadcf-filter-wrapper-inner{display:inline-block;border:1px solid #ABADB3}.yadcf-number-slider-filter-wrapper-inner{display:inline-block;width:200px;margin-bottom:7px}.yadcf-filter-range-number-slider .ui-slider-handle{width:10px;height:10px;margin-top:1px}.yadcf-filter-range-number-slider .ui-slider-range{position:relative;height:5px}.yadcf-filter-range-number-slider{height:5px;margin-left:6px;margin-right:6px;overflow:visible}.yadcf-number-slider-filter-wrapper-inner .yadcf-filter-range-number-slider-max-tip,.yadcf-number-slider-filter-wrapper-inner .yadcf-filter-range-number-slider-min-tip{font-size:13px;font-weight:400;position:absolute;outline-style:none}.yadcf-number-slider-filter-wrapper-inner .yadcf-filter-range-number-slider-max-tip-inner,.yadcf-number-slider-filter-wrapper-inner .yadcf-filter-range-number-slider-min-tip-inner{position:absolute;top:11px}.yadcf-exclude-wrapper{display:inline-block;vertical-align:middle;margin-right:5px}.yadcf-label.small{font-size:10px} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| var yadcf=function(e){"use strict";function t(t){var a;return e.fn.dataTable.Api?a=new e.fn.dataTable.Api(t).settings()[0]:t.fnSettings?a=t.fnSettings():"string"==typeof t?e.fn.dataTable.fnIsDataTable(e(t)[0])&&(a=e(t).eq(0).dataTable().fnSettings()):t.nodeName&&"table"===t.nodeName.toLowerCase()?e.fn.dataTable.fnIsDataTable(t.nodeName)&&(a=e(t.nodeName).dataTable().fnSettings()):t instanceof jQuery?e.fn.dataTable.fnIsDataTable(t[0])&&(a=t.eq(0).dataTable().fnSettings()):a=t,a}function a(e){var t,a=[];for(t=0;t<e.length;t++)a[e[t]]=t;return a}function r(e){var t,a=[];for(t=0;t<e.length;t++)a[e[t]._ColReorder_iOrigCol]=t;return a}function n(e,t){void 0!=e.oSavedState&&void 0!==e.oSavedState.ColReorder?void 0===Ne[t]&&(Ne[t]={},Ne[t].ColReorder=a(e.oSavedState.ColReorder)):void 0!==e.aoColumns[0]._ColReorder_iOrigCol&&void 0===Ne[t]&&(Ne[t]={},Ne[t].ColReorder=r(e.aoColumns))}function i(e){Ne[e]=void 0}function o(e){var t={};return void 0!==e?e instanceof Array?t.column_number_str=e.join("_"):(t.column_number_str=e,e=[],e.push(t.column_number_str)):t.column_number_str="global",t.column_number=e,t}function l(e){return Oe[e]}function d(e){return void 0===e.target&&(e.target=e.srcElement),e}function s(e,t){var a=0;for(t=t.split("."),a=0;a<t.length;a++)e=e[t[a]];return e}function c(t,a,r){var n,i,o={},l={filter_type:"select",enable_auto_complete:!1,sort_as:"alpha",sort_order:"asc",date_format:"mm/dd/yyyy",ignore_char:void 0,filter_match_mode:"contains",select_type:void 0,select_type_options:{},case_insensitive:!0,column_data_type:"text",html_data_type:"text",exclude_label:"exclude",style_class:"",datepicker_type:"jquery-ui",range_data_type:"single",range_data_type_delim:"-",omit_default_label:!1},d=function(e){return""};if(e.extend(!0,l,r),void 0===a.length)return void(Oe[t]=a);for(n=0;n<a.length;n++){if("select2"===a[n].select_type&&(l.select_type_options={adaptContainerCssClass:d}),l.externally_triggered===!0&&(a[n].filter_reset_button_text=!1),void 0!==a[n].filter_type&&-1!==a[n].filter_type.indexOf("custom_func")&&void 0===a[n].custom_func)return void console.log('Error: You are trying to use filter_type: "custom_func / multi_select_custom_func" for column '+a[n].column_number+' but there is no such custom_func attribute provided (custom_func: "function reference goes here...")');i=+a[n].column_number,isNaN(i)?o[a[n].column_number_str]=e.extend(!0,{},l,a[n]):o[i]=e.extend(!0,{},l,a[n])}Oe[t]=o}function f(t){var a,r,n,i,o=e.fn.dataTable.ext.sVersion.split("."),l=t.split(".");for(n=0,i=l.length;i>n;n++)if(a=parseInt(o[n],10)||0,r=parseInt(l[n],10)||0,a!==r)return a>r;return!0}function u(){e.fn.dataTableExt.iApiIndex=0}function p(e){return e.replace(/([.*+?^=!:${}()|\[\]\/\\])/g,"\\$1")}function y(e,t,a){return e.replace(new RegExp(p(t),"g"),a)}function _(e){var a;return a=void 0!==e.table?e.table().node().id:t(e).sTableId}function m(e){var t;return t=void 0!==e.oInstance&&void 0!==e.oInstance.selector?e.oInstance.selector:void 0!==e.selector?e.selector:e.table().node().id,t=y(t,".","-"),t=y(t," ",""),t.replace(":","-").replace("(","").replace(")","").replace("#","-")}function v(e){return e=y(e,":","-"),e=y(e,"(",""),e=y(e,")",""),e=y(e,",",""),e=y(e,".","-"),e=y(e,"#","-"),e=y(e," ","")}function g(e,t,a){"chosen"===e?(t.chosen(a),t.next().attr("onclick","yadcf.stopPropagation(event);").attr("onmousedown","yadcf.stopPropagation(event);")):"select2"===e?(t.select2(a),t.next().hasClass("select2-container")&&t.next().attr("onclick","yadcf.stopPropagation(event);").attr("onmousedown","yadcf.stopPropagation(event);")):"custom_select"===e&&(Le(t),t.next().attr("onclick","yadcf.stopPropagation(event);").attr("onmousedown","yadcf.stopPropagation(event);"))}function S(e,t,a){var r=e.select_type,n=e.select_type_options;"chosen"===r?t.trigger("chosen:updated"):"select2"===r?(t.select2(n),t.val(a)):"custom_select"===r&&Ie(t)}function b(e,t,a){Le=e,Ie=t,Te=a}function h(e,t,a,r,n,i){var o,l=yadcf.getOptions(e.selector)[t].case_insensitive;return""===a?"":(e.fnSettings().aoPreSearchCols[t].bSmart=!1,e.fnSettings().aoPreSearchCols[t].bRegex=!0,e.fnSettings().aoPreSearchCols[t].bCaseInsensitive=l,void 0===n||n===!1?i!==!0?"contains"===r?(e.fnSettings().aoPreSearchCols[t].bSmart=!0,e.fnSettings().aoPreSearchCols[t].bRegex=!1,o=a):"exact"===r?o="^"+a+"$":"startsWith"===r?o="^"+a:"regex"===r&&(o=a):o="^((?!"+a+").)*$":"contains"===r?o=a.join("|"):"exact"===r?o="^("+a.join("|")+")$":"startsWith"===r?o="^("+a.join("|")+")":"regex"===r&&(o=a),o)}function x(e,t,a,r,n){var i=yadcf.getOptions(e.selector)[r].case_insensitive;if(n!==!0){if("contains"===a)e.fnFilter(t,r,!1,!0,!0,i);else if("exact"===a)t=p(t),e.fnFilter("^"+t+"$",r,!0,!1,!0,i);else if("startsWith"===a)t=p(t),e.fnFilter("^"+t,r,!0,!1,!0,i);else if("regex"===a){try{new RegExp(t)}catch(o){return}e.fnFilter(t,r,!0,!1,!0,i)}}else e.fnFilter("^((?!"+t+").)*$",r,!0,!1,!0,i)}function C(e,t){var a;return"contains"===t?a=e:"exact"===t?(a=e.substring(1,e.length-1),a=a.replace(/([\\])/g,"")):"startsWith"===t?(a=e.substring(1,e.length),a=a.replace(/([\\])/g,"")):"regex"===t&&(a=e),a}function k(t,a,r){var n,i=Ee[a],o=l(i.selector)[r];("clear"!==t||""!==he(i,r))&&(void 0!==t.value&&"-1"!==t.value?e("#yadcf-filter-"+a+"-"+r).addClass("inuse"):(e("#yadcf-filter-"+a+"-"+r).val("-1").focus(),e("#yadcf-filter-"+a+"-"+r).removeClass("inuse"),S(o,e("#yadcf-filter-"+a+"-"+r),"-1")),i.fnSettings().oLoadedState||(i.fnSettings().oLoadedState={},i.fnSettings().oApi._fnSaveState(i.fnSettings())),i.fnSettings().oFeatures.bStateSave===!0&&(void 0!==i.fnSettings().oLoadedState.yadcfState&&void 0!==i.fnSettings().oLoadedState.yadcfState[a]?i.fnSettings().oLoadedState.yadcfState[a][r]={from:t.value}:(n={},n[a]=[],n[a][r]={from:t.value},i.fnSettings().oLoadedState.yadcfState=n),i.fnSettings().oApi._fnSaveState(i.fnSettings())),i.fnDraw())}function w(e,t,a){var r;return void 0!=e.oSavedState&&void 0!==e.oSavedState.ColReorder||void 0!=e._colReorder||void 0!==Ne[a]&&void 0!==Ne[a].ColReorder?(n(e,a),r=Ne[a].ColReorder[t]):r=t,r}function F(a,r,n,i){e.fn.dataTableExt.iApiIndex=Ae[r];var o,d,s,c=Ee[r],f=t(c);if(d=w(f,n,r),s=l(c.selector)[n],"clear"===a){if(""===he(c,n))return;return e("#yadcf-filter-"+r+"-"+n).val("-1").focus(),e("#yadcf-filter-"+r+"-"+n).removeClass("inuse"),e(document).data("#yadcf-filter-"+r+"-"+n+"_val","-1"),c.fnFilter("",d),u(),void S(s,e("#yadcf-filter-"+r+"-"+n),"-1")}e("#yadcf-filter-"+r+"-"+n).addClass("inuse"),e(document).data("#yadcf-filter-"+r+"-"+n+"_val",a.value),o=e.trim(e(a).find("option:selected").val()),"-1"!==a.value?x(c,o,i,d):(c.fnFilter("",d),e("#yadcf-filter-"+r+"-"+n).removeClass("inuse")),u()}function P(a,r,n,i){e.fn.dataTableExt.iApiIndex=Ae[r];var o,l,d,s=Ee[r],c=e(a).val(),f=[],p=t(s);if(d=w(p,n,r),e(document).data("#yadcf-filter-"+r+"-"+n+"_val",c),null!==c){for(o=c.length-1;o>=0;o--)if("-1"===c[o]){c.splice(o,1);break}for(o=0;o<c.length;o++)f.push(e.trim(c[o]));0!==f.length?(l=f.join("narutouzomaki"),l=l.replace(/([.*+?^=!:${}()|\[\]\/\\])/g,"\\$1"),l=l.split("narutouzomaki").join("|"),"contains"===i?s.fnFilter(l,d,!0,!1,!0):"exact"===i?s.fnFilter("^("+l+")$",d,!0,!1,!0):"startsWith"===i?s.fnFilter("^("+l+")",d,!0,!1,!0):"regex"===i&&s.fnFilter(l,d,!0,!1,!0)):s.fnFilter("",d)}else s.fnFilter("",d);u()}function L(e,t){var a;return"contains"===t?a=e:"exact"===t?(a=e.substring(1,e.length-1),a=a.substring(1,a.length-1)):"startsWith"===t?(a=e.substring(1,e.length),a=a.substring(1,a.length-1)):"regex"===t&&(a=e),a}function I(a,r,n,i){e.fn.dataTableExt.iApiIndex=Ae[r];var o,l=Ee[r],d=t(l);if(o=w(d,n,r),"clear"===a){if(""===he(l,n))return;return e("#yadcf-filter-"+r+"-"+n).val("").focus(),e("#yadcf-filter-"+r+"-"+n).removeClass("inuse"),e(document).removeData("#yadcf-filter-"+r+"-"+n+"_val"),l.fnFilter("",o),void u()}e("#yadcf-filter-"+r+"-"+n).addClass("inuse"),e(document).data("#yadcf-filter-"+r+"-"+n+"_val",a.value),x(l,a.value,i,o),u()}function T(t,a){t=d(t);var r=t.target.id.replace("yadcf-filter-",""),n=r.lastIndexOf("-"),i=r.substring(0,n),o=parseInt(r.substring(n+1),10),l=e(t.target).attr("filter_match_mode");I(a.item,i,o,l)}function D(e,t){return e-t}function E(e,t){return t-e}function A(e,t){var a,r,n=[];for(a=0;a<e.length;a++)null!==e[a]&&(void 0!==t.ignore_char&&(e[a]=e[a].toString().replace(t.ignore_char,"")),"single"===t.range_data_type?r=+e[a]:(r=e[a].split(t.range_data_type_delim),r=r[0]),isNaN(r)||n.push(r));return Math.min.apply(Math,n)}function O(e,t){var a,r,n=[];for(a=0;a<e.length;a++)null!==e[a]&&(void 0!==t.ignore_char&&(e[a]=e[a].toString().replace(t.ignore_char,"")),"single"===t.range_data_type?r=+e[a]:(r=e[a].split(t.range_data_type_delim),r=r[1]),isNaN(r)||n.push(r));return Math.max.apply(Math,n)}function N(t,a,r,n,i,o){e.fn.dataTableExt.afnFiltering.push(function(d,c,f,u){var p,y,_,m,v,g,S,b,h,x=!1,C=t,k=yadcf.generateTableSelectorJQFriendly2(d),F=i;if(C!==k)return!0;if(g=l(d.oInstance.selector)[n],"range_number_slider"===g.filter_type?(p=e("#"+a).text(),y=e("#"+r).text()):(p=e("#"+a).val(),y=e("#"+r).val()),S=w(d,n,t),void 0!==u?(c=u,void 0!==g.column_number_data?(S=g.column_number_data,_=s(c,S)):_=c[S]):_=c[S],!isFinite(p)||!isFinite(y))return!0;if(m=g.column_data_type,v=g.html_data_type,"html"===m||"rendered_html"===m){if(void 0===v&&(v="text"),0!==e(_).length)switch(v){case"text":_=e(_).text();break;case"value":_=e(_).val();break;case"id":_=_.id;break;case"selector":_=e(_).find(g.html_data_selector).text()}}else"object"==typeof _&&void 0!==g.html5_data&&(_=_["@"+g.html5_data]);if(void 0!==F&&(p=p.replace(F,""),y=y.replace(F,""),_=_?_.toString().replace(F,""):""),"range_number_slider"===g.filter_type){if(""===_&&(+p!==o.min||+y!==o.max))return!1}else if(""===_&&(""!==p||""!==y))return!1;return p=""!==p?+p:p,y=""!==y?+y:y,"single"===g.range_data_type?(_=""!==_?+_:_,""===p&&""===y?x=!0:""===p&&y>=_?x=!0:_>=p&&""===y?x=!0:_>=p&&y>=_?x=!0:(""===_||isNaN(_))&&(x=!0)):"range"===g.range_data_type&&(_=_.split(g.range_data_type_delim),b=""!==_[0]?+_[0]:_[0],h=""!==_[1]?+_[1]:_[1],""===p&&""===y?x=!0:""===p&&y>=h?x=!0:b>=p&&""===y?x=!0:b>=p&&y>=h?x=!0:""!==b&&!isNaN(b)||""!==h&&!isNaN(h)||(x=!0)),x})}function R(t,a,r){e.fn.dataTableExt.afnFiltering.push(function(n,i,o,d){var s,c,f,u=e("#"+a).val(),p=!1,y=t,_=yadcf.generateTableSelectorJQFriendly2(n);return y!==_||"-1"===u?!0:(f=w(n,r,t),s="-"===i[f]?0:i[f],c=l(n.oInstance.selector)[r].custom_func,p=c(u,s,i,d))})}function j(t,a,r,n,i){e.fn.dataTableExt.afnFiltering.push(function(o,d,c,f){var u,p,y,_,m,v,g,S,b=null!==document.getElementById(a)?document.getElementById(a).value:"",h=null!==document.getElementById(r)?document.getElementById(r).value:"",x=!1,C=t,k=yadcf.generateTableSelectorJQFriendly2(o);if(C!==k)return!0;if(_=l(o.oInstance.selector)[n],m=w(o,n,t),("function"==typeof _.column_number_data||"function"==typeof _.column_number_render)&&(S=!0),void 0!==f&&S!==!0?void 0!==_.column_number_data?(m=_.column_number_data,u=s(f,m)):u=f[m]:u=d[m],p=_.column_data_type,y=_.html_data_type,"html"===p||"rendered_html"===p){if(void 0===y&&(y="text"),0!==e(u).length)switch(y){case"text":u=e(u).text();break;case"value":u=e(u).val();break;case"id":u=u.id;break;case"selector":u=e(u).find(_.html_data_selector).text()}}else"object"==typeof u&&void 0!==_.html5_data&&(u=u["@"+_.html5_data]);if(""===u&&(""!==b||""!==h))return!1;try{(b.length===i.length+2||"bootstrap-datetimepicker"===_.datepicker_type)&&("jquery-ui"===_.datepicker_type?b=""!==b?e.datepicker.parseDate(i,b):b:"bootstrap-datetimepicker"===_.datepicker_type&&(b=""!==b?moment(b,i).toDate():b))}catch(F){}try{(h.length===i.length+2||"bootstrap-datetimepicker"===_.datepicker_type)&&("jquery-ui"===_.datepicker_type?h=""!==h?e.datepicker.parseDate(i,h):h:"bootstrap-datetimepicker"===_.datepicker_type&&(h=""!==h?moment(h,i).toDate():h))}catch(P){}try{"jquery-ui"===_.datepicker_type?u=""!==u?e.datepicker.parseDate(i,u):u:"bootstrap-datetimepicker"===_.datepicker_type&&(u=""!==u?moment(u,i).toDate():u)}catch(L){}return"hh:mm"!==i.toLowerCase()?""!==b&&b instanceof Date||""!==h&&h instanceof Date?""===b&&h>=u?x=!0:u>=b&&""===h?x=!0:u>=b&&h>=u&&(x=!0):x=!0:(v=moment(b),v=v.minutes()+60*v.hours(),isNaN(v)&&(v=""),g=moment(h),g=g.minutes()+60*g.hours(),isNaN(g)&&(g=""),u=moment(u),u=u.minutes()+60*u.hours(),""!==b&&moment(b,i).isValid()||""!==h&&moment(h,i).isValid()?""===v&&g>=u?x=!0:u>=v&&""===g?x=!0:u>=v&&g>=u&&(x=!0):x=!0),x})}function q(t,a,r,n,i,o){var d,s,c,f,p,y="yadcf-filter-"+a+"-from-"+r,_="yadcf-filter-"+a+"-to-"+r;s="yadcf-filter-wrapper-"+a+"-"+r,e("#"+s).length>0||(e.fn.dataTableExt.iApiIndex=Ae[a],c=Ee[a],f=l(c.selector)[r],e(t).append('<div onmousedown="yadcf.stopPropagation(event);" onclick="yadcf.stopPropagation(event);" id="'+s+'" class="yadcf-filter-wrapper"></div>'),t+=" div.yadcf-filter-wrapper",d=t,e(t).append('<div id="yadcf-filter-wrapper-inner-'+a+"-"+r+'" class="yadcf-filter-wrapper-inner -'+a+"-"+r+'"></div>'),t+=" div.yadcf-filter-wrapper-inner",p="onkeyup=\"yadcf.rangeNumberKeyUP('"+a+"',event);\"",f.externally_triggered===!0&&(p=""),e(t).append('<input onkeydown="yadcf.preventDefaultForEnter(event);" placeholder="'+i[0]+'" id="'+y+'" class="yadcf-filter-range-number yadcf-filter-range" '+p+"></input>"),e(t).append('<span class="yadcf-filter-range-number-seperator" ></span>'),e(t).append('<input onkeydown="yadcf.preventDefaultForEnter(event);" placeholder="'+i[1]+'" id="'+_+'" class="yadcf-filter-range-number yadcf-filter-range" '+p+"></input>"),n!==!1&&e(d).append('<button type="button" onmousedown="yadcf.stopPropagation(event);" onclick="yadcf.stopPropagation(event);yadcf.rangeClear(\''+a+"',event,"+r+'); return false;" class="yadcf-filter-reset-button">'+n+"</button>"),c.fnSettings().oFeatures.bStateSave===!0&&c.fnSettings().oLoadedState&&c.fnSettings().oLoadedState.yadcfState&&c.fnSettings().oLoadedState.yadcfState[a]&&c.fnSettings().oLoadedState.yadcfState[a][r]&&(e("#"+y).val(c.fnSettings().oLoadedState.yadcfState[a][r].from),""!==c.fnSettings().oLoadedState.yadcfState[a][r].from&&e("#"+y).addClass("inuse"),e("#"+_).val(c.fnSettings().oLoadedState.yadcfState[a][r].to),""!==c.fnSettings().oLoadedState.yadcfState[a][r].to&&e("#"+_).addClass("inuse")),u(),c.fnSettings().oFeatures.bServerSide!==!0&&N(a,y,_,r,o))}function B(a,r,n){var i,o,d,s,c,f,p,y,_;if("dp"===a.type?d=a.target:(o=a,d=r),s=e(d).attr("id").replace("yadcf-filter-","").replace("-date","").replace("-reset",""),c=s.lastIndexOf("-"),f=s.substring(0,c),s=s.substring(c+1),e.fn.dataTableExt.iApiIndex=Ae[f],i=Ee[f],y=t(i),_=l(i.selector)[s],"dp"===a.type&&(moment(e(d).val(),_.date_format).isValid()?o=e(d).val():n="clear",e(d).blur()),p=w(y,s,f),void 0===n)i.fnFilter(o,p),e("#yadcf-filter-"+f+"-"+s).addClass("inuse");else if("clear"===n){if(""===he(i,s))return;i.fnFilter("",p),e("#yadcf-filter-"+f+"-"+s).val("").removeClass("inuse")}u()}function M(t,a){var r,n,i,o,d,s,c,f,p,y;"dp"===t.type?p=t.target:(f=t,p=a),n=e(p).attr("id").replace("yadcf-filter-","").replace("-from-date","").replace("-to-date",""),i=n.lastIndexOf("-"),o=n.substring(0,i),n=n.substring(i+1),e.fn.dataTableExt.iApiIndex=Ae[o],r=Ee[o],y=l(r.selector)[n],"dp"===t.type?(p=t.target,t.date!==!1&&moment(e(p).val(),y.date_format).isValid()?e(p).addClass("inuse"):(e(p).removeClass("inuse"),e(p).data("DateTimePicker").minDate(!1)),e(p).blur()):e(p).addClass("inuse"),-1!==e(p).attr("id").indexOf("-from-")?(s=document.getElementById(e(p).attr("id")).value,c=document.getElementById(e(p).attr("id").replace("-from-","-to-")).value):(c=document.getElementById(e(p).attr("id")).value,s=document.getElementById(e(p).attr("id").replace("-to-","-from-")).value),r.fnSettings().oFeatures.bServerSide!==!0?r.fnDraw():r.fnFilter(s+"-yadcf_delim-"+c,n),r.fnSettings().oLoadedState||(r.fnSettings().oLoadedState={},r.fnSettings().oApi._fnSaveState(r.fnSettings())),r.fnSettings().oFeatures.bStateSave===!0&&(void 0!==r.fnSettings().oLoadedState.yadcfState&&void 0!==r.fnSettings().oLoadedState.yadcfState[o]?r.fnSettings().oLoadedState.yadcfState[o][n]={from:s,to:c}:(d={},d[o]=[],d[o][n]={from:s,to:c},r.fnSettings().oLoadedState.yadcfState=d),r.fnSettings().oApi._fnSaveState(r.fnSettings())),u()}function U(t,a,r,n,i,o){var d,s,c,f,p,y,_,m="yadcf-filter-"+a+"-from-date-"+r,v="yadcf-filter-"+a+"-to-date-"+r,g={},S="";s="yadcf-filter-wrapper-"+a+"-"+r,e("#"+s).length>0||(e.fn.dataTableExt.iApiIndex=Ae[a],c=Ee[a],f=l(c.selector)[r],"bootstrap-datepicker"===f.datepicker_type&&(S="input-daterange"),e(t).append('<div onmousedown="yadcf.stopPropagation(event);" onclick="yadcf.stopPropagation(event);" id="'+s+'" class="yadcf-filter-wrapper"></div>'),t+=" div.yadcf-filter-wrapper",d=t,e(t).append('<div id="yadcf-filter-wrapper-inner-'+a+"-"+r+'" class="yadcf-filter-wrapper-inner '+S+'"></div>'),t+=" div.yadcf-filter-wrapper-inner",p="onkeyup=\"yadcf.rangeDateKeyUP('"+a+"','"+o+"',event);\"",f.externally_triggered===!0&&(p=""),e(t).append('<input onkeydown="yadcf.preventDefaultForEnter(event);" placeholder="'+i[0]+'" id="'+m+'" class="yadcf-filter-range-date yadcf-filter-range" '+p+"></input>"),e(t).append('<span class="yadcf-filter-range-date-seperator" ></span>'),e(t).append('<input onkeydown="yadcf.preventDefaultForEnter(event);" placeholder="'+i[1]+'" id="'+v+'" class="yadcf-filter-range-date yadcf-filter-range" '+p+"></input>"),y=e("#"+m),_=e("#"+v),n!==!1&&e(d).append('<button type="button" onmousedown="yadcf.stopPropagation(event);" onclick="yadcf.stopPropagation(event);yadcf.rangeClear(\''+a+"',event,"+r+'); return false;" class="yadcf-filter-reset-button">'+n+"</button>"),"jquery-ui"===f.datepicker_type?g.dateFormat=o:"bootstrap-datetimepicker"===f.datepicker_type&&(g.format=o),f.externally_triggered!==!0&&"jquery-ui"===f.datepicker_type&&(g.onSelect=M),g=e.extend({},g,f.filter_plugin_options),"jquery-ui"===f.datepicker_type?(y.datepicker(e.extend(g,{onClose:function(e){_.datepicker("option","minDate",e)}})),_.datepicker(e.extend(g,{onClose:function(e){y.datepicker("option","maxDate",e)}}))):"bootstrap-datetimepicker"===f.datepicker_type?(g.useCurrent=!1,y.datetimepicker(g),_.datetimepicker(g),f.externally_triggered!==!0&&y.add(_).on("dp.hide",M)):"bootstrap-datepicker"===f.datepicker_type,c.fnSettings().oFeatures.bStateSave===!0&&c.fnSettings().oLoadedState&&c.fnSettings().oLoadedState.yadcfState&&c.fnSettings().oLoadedState.yadcfState[a]&&c.fnSettings().oLoadedState.yadcfState[a][r]&&(e("#"+m).val(c.fnSettings().oLoadedState.yadcfState[a][r].from),""!==c.fnSettings().oLoadedState.yadcfState[a][r].from&&e("#"+m).addClass("inuse"),e("#"+v).val(c.fnSettings().oLoadedState.yadcfState[a][r].to),""!==c.fnSettings().oLoadedState.yadcfState[a][r].to&&e("#"+v).addClass("inuse")),c.fnSettings().oFeatures.bServerSide!==!0&&j(a,m,v,r,o),u())}function Q(t,a,r,n,i,o){var d,s,c,f,p,y="yadcf-filter-"+a+"-"+r,_={};s="yadcf-filter-wrapper-"+a+"-"+r,e("#"+s).length>0||(e.fn.dataTableExt.iApiIndex=Ae[a],c=Ee[a],f=l(c.selector)[r],e(t).append('<div onmousedown="yadcf.stopPropagation(event);" onclick="yadcf.stopPropagation(event);" id="'+s+'" class="yadcf-filter-wrapper"></div>'),t+=" div.yadcf-filter-wrapper",d=t,p="onkeyup=\"yadcf.dateKeyUP('"+a+"','"+o+"',event);\"",f.externally_triggered===!0&&(p=""),e(t).append('<input onkeydown="yadcf.preventDefaultForEnter(event);" placeholder="'+i+'" id="'+y+'" class="yadcf-filter-date" '+p+"></input>"),n!==!1&&e(d).append('<button type="button" id="'+y+'-reset" onmousedown="yadcf.stopPropagation(event);" onclick="yadcf.stopPropagation(event);yadcf.dateSelectSingle(\''+a+"',yadcf.eventTargetFixUp(event).target, 'clear'); return false;\" class=\"yadcf-filter-reset-button\">"+n+"</button>"),"jquery-ui"===f.datepicker_type?_.dateFormat=o:"bootstrap-datetimepicker"===f.datepicker_type&&(_.format=o),f.externally_triggered!==!0&&"jquery-ui"===f.datepicker_type&&(_.onSelect=B),_=e.extend({},_,f.filter_plugin_options),"jquery-ui"===f.datepicker_type?e("#"+y).datepicker(_):"bootstrap-datetimepicker"===f.datepicker_type?(_.useCurrent=!1,e("#"+y).datetimepicker(_),f.externally_triggered!==!0&&("hh:mm"!==_.format.toLowerCase()?e("#"+y).on("dp.change",B):e("#"+y).on("dp.hide",B))):"bootstrap-datepicker"===f.datepicker_type&&e("#"+y).datepicker({}),""!==c.fnSettings().aoPreSearchCols[r].sSearch&&e("#yadcf-filter-"+a+"-"+r).val(c.fnSettings().aoPreSearchCols[r].sSearch).addClass("inuse"),u())}function J(t,a,r,n,i,o){var l,d,s=e(".yadcf-number-slider-filter-wrapper-inner.-"+i+"-"+o),c=e(".yadcf-number-slider-filter-wrapper-inner.-"+i+"-"+o);l='<div id="'+r+'" class="yadcf-filter-range-number-slider-min-tip-inner">'+t+"</div>",d='<div id="'+n+'" class="yadcf-filter-range-number-slider-max-tip-inner">'+a+"</div>",1===s.length?(s=e(".yadcf-number-slider-filter-wrapper-inner.-"+i+"-"+o+" .ui-slider-handle:first"),e(s).addClass("yadcf-filter-range-number-slider-min-tip").html(l),c=e(".yadcf-number-slider-filter-wrapper-inner.-"+i+"-"+o+" .ui-slider-handle:last"),e(c).addClass("yadcf-filter-range-number-slider-max-tip").html(d)):(e(e(s)[0]).find(".ui-slider-handle:first").addClass("yadcf-filter-range-number-slider-min-tip").html(l),e(e(c)[0]).find(".ui-slider-handle:last").addClass("yadcf-filter-range-number-slider-max-tip").html(d),e(e(s)[1]).find(".ui-slider-handle:first").addClass("yadcf-filter-range-number-slider-min-tip").html(l),e(e(c)[1]).find(".ui-slider-handle:last").addClass("yadcf-filter-range-number-slider-max-tip").html(d))}function K(t,a,r){a=d(a);var n,i,o,s,c,f,p,y=e(a.target).attr("id").replace("yadcf-filter-","").replace(t,"").replace("-slider-","");n=Ee[t],f=l(n.selector)[y],p=function(){e.fn.dataTableExt.iApiIndex=Ae[t],n.fnSettings().oFeatures.bServerSide!==!0?n.fnDraw():n.fnFilter(r.values[0]+"-yadcf_delim-"+r.values[1],y),i=+e(e(a.target).parent().find(".yadcf-filter-range-number-slider-min-tip-hidden")).text(),o=+e(e(a.target).parent().find(".yadcf-filter-range-number-slider-max-tip-hidden")).text(),i!==r.values[0]?(e(e(a.target).find(".ui-slider-handle")[0]).addClass("inuse"),s=!0):e(e(a.target).find(".ui-slider-handle")[0]).removeClass("inuse"),o!==r.values[1]?(e(e(a.target).find(".ui-slider-handle")[1]).addClass("inuse"),s=!0):e(e(a.target).find(".ui-slider-handle")[1]).removeClass("inuse"),s===!0?e(a.target).find(".ui-slider-range").addClass("inuse"):e(a.target).find(".ui-slider-range").removeClass("inuse"),n.fnSettings().oLoadedState||(n.fnSettings().oLoadedState={},n.fnSettings().oApi._fnSaveState(n.fnSettings())),n.fnSettings().oFeatures.bStateSave===!0&&(void 0!==n.fnSettings().oLoadedState.yadcfState&&void 0!==n.fnSettings().oLoadedState.yadcfState[t]?n.fnSettings().oLoadedState.yadcfState[t][y]={from:r.values[0],to:r.values[1]}:(c={},c[t]=[],c[t][y]={from:r.values[0],to:r.values[1]},n.fnSettings().oLoadedState.yadcfState=c),n.fnSettings().oApi._fnSaveState(n.fnSettings())),u()},void 0===f.filter_delay?p():Pe(function(){p()},f.filter_delay)}function $(t,a,r,n,i,o,d){var s,c,f,p,y,_,v,g,S="yadcf-filter-"+a+"-slider-"+r,b="yadcf-filter-"+a+"-min_tip-"+r,h="yadcf-filter-"+a+"-max_tip-"+r,x=i,C=o,k={min:i,max:o};c="yadcf-filter-wrapper-"+a+"-"+r,e("#"+c).length>0||(e.fn.dataTableExt.iApiIndex=Ae[a],f=Ee[a],g=Me[m(f)],p=l(f.selector)[r],g.oFeatures.bStateSave===!0&&g.oLoadedState&&g.oLoadedState.yadcfState&&g.oLoadedState.yadcfState[a]&&g.oLoadedState.yadcfState[a][r]&&(i!==g.oLoadedState.yadcfState[a][r].from&&(x=g.oLoadedState.yadcfState[a][r].from),o!==g.oLoadedState.yadcfState[a][r].to&&(C=g.oLoadedState.yadcfState[a][r].to)),isFinite(i)&&isFinite(o)&&isFinite(x)&&isFinite(C)&&(e(t).append('<div onmousedown="yadcf.stopPropagation(event);" onclick="yadcf.stopPropagation(event);" id="'+c+'" class="yadcf-filter-wrapper"></div>'),t+=" div.yadcf-filter-wrapper",s=t,e(t).append('<div id="yadcf-filter-wrapper-inner-'+a+"-"+r+'" class="yadcf-number-slider-filter-wrapper-inner -'+a+"-"+r+'"></div>'),t+=" div.yadcf-number-slider-filter-wrapper-inner",e(t).append('<div id="'+S+'" class="yadcf-filter-range-number-slider"></div>'),t=t+" #"+S,e(t).append('<span class="yadcf-filter-range-number-slider-min-tip-hidden hide">'+i+"</span>"),e(t).append('<span class="yadcf-filter-range-number-slider-max-tip-hidden hide">'+o+"</span>"),p.externally_triggered!==!0?(y=function(e,t){J(t.values[0],t.values[1],b,h,a,r),K(a,e,t)},_=function(t,n){J(n.values[0],n.values[1],b,h,a,r),(t.originalEvent||e(t.target).slider("option","yadcf-reset")===!0)&&(e(t.target).slider("option","yadcf-reset",!1),K(a,t,n))}):(y=function(e,t){J(t.values[0],t.values[1],b,h,a,r)},_=function(e,t){J(t.values[0],t.values[1],b,h,a,r)}),v={range:!0,min:i,max:o,values:[x,C],create:function(e,t){J(x,C,b,h,a,r)},slide:y,change:_},void 0!==p.filter_plugin_options&&e.extend(v,p.filter_plugin_options),e("#"+S).slider(v),n!==!1&&e(s).append('<button type="button" onmousedown="yadcf.stopPropagation(event);" onclick="yadcf.stopPropagation(event);yadcf.rangeNumberSliderClear(\''+a+'\',event); return false;" class="yadcf-filter-reset-button range-number-slider-reset-button">'+n+"</button>")),e.fn.dataTableExt.iApiIndex=Ae[a],f=Ee[a],g.oFeatures.bStateSave===!0&&g.oLoadedState&&g.oLoadedState.yadcfState&&g.oLoadedState.yadcfState[a]&&g.oLoadedState.yadcfState[a][r]&&(isFinite(i)&&i!==g.oLoadedState.yadcfState[a][r].from&&e(e(t).find(".ui-slider-handle")[0]).addClass("inuse"),isFinite(o)&&o!==g.oLoadedState.yadcfState[a][r].to&&e(e(t).find(".ui-slider-handle")[1]).addClass("inuse"),isFinite(i)&&isFinite(o)&&(i!==g.oLoadedState.yadcfState[a][r].from||o!==g.oLoadedState.yadcfState[a][r].to)&&e(e(t).find(".ui-slider-range")).addClass("inuse")),u(),g.oFeatures.bServerSide!==!0&&N(a,b,h,r,d,k))}function V(a){var r,n,i,o,d,s,c,f;void 0!==a.settings&&(a=a.settings()[0].oInstance),r=l(a.selector),n=yadcf.generateTableSelectorJQFriendly2(a),i=t(a);for(o in r)if(r.hasOwnProperty(o))switch(s=r[o],d=s.column_number,s.filter_type){case"multi_select":case"multi_select_custom_func":case"select":case"custom_func":switch(s.select_type){case"chosen":e("#yadcf-filter-"+n+"-"+d).chosen("destroy");break;case"select2":e("#yadcf-filter-"+n+"-"+d).select2("destroy");break;case"custom_select":void 0!==Te&&Te(e("#yadcf-filter-"+n+"-"+d))}break;case"auto_complete":e("#yadcf-filter-"+n+"-"+d).autocomplete("destroy");break;case"date":switch(s.select_type){case"jquery-ui":e("#yadcf-filter-"+n+"-"+d).datepicker("destroy");break;case"bootstrap-datetimepicker":e("#yadcf-filter-"+n+"-"+d).destroy()}break;case"range_date":switch(c="yadcf-filter-"+n+"-from-date-"+d,f="yadcf-filter-"+n+"-to-date-"+d,s.select_type){case"jquery-ui":e("#"+c).datepicker("destroy"),e("#"+f).datepicker("destroy");break;case"bootstrap-datetimepicker":e("#"+c).destroy(),e("#"+f).destroy()}break;case"range_number_slider":e("#yadcf-filter-"+n+"-slider-"+d).slider("destroy")}}function W(t,a,r){var n=_(t);e("#"+n+" .yadcf-filter-wrapper").remove(),f("1.10")?(e(document).off("draw.dt",t.selector),e(document).off("xhr.dt",t.selector),e(document).off("column-visibility.dt",t.selector),e(document).off("destroy.dt",t.selector)):(e(document).off("draw",t.selector),e(document).off("destroy",t.selector)),V(t)}function z(e,t){var a,r,n=e.replace(je,""),i=t.replace(je,"");return n===i?(a=parseInt(e.replace(qe,""),10),r=parseInt(t.replace(qe,""),10),a===r?0:a>r?1:-1):n>i?1:-1}function G(e,t){return("select"===t.filter_type||"auto_complete"===t.filter_type||"multi_select"===t.filter_type||"multi_select_custom_func"===t.filter_type||"custom_func"===t.filter_type)&&("alpha"===t.sort_as?"asc"===t.sort_order?e.sort():"desc"===t.sort_order&&(e.sort(),e.reverse()):"num"===t.sort_as?"asc"===t.sort_order?e.sort(D):"desc"===t.sort_order&&e.sort(E):"alphaNum"===t.sort_as?"asc"===t.sort_order?e.sort(z):"desc"===t.sort_order&&(e.sort(z),e.reverse()):"custom"===t.sort_as&&e.sort(t.sort_as_custom_func)),e}function Y(e){var t,a,r=[];for(t=f("1.10")?e._("tr",{filter:"applied"}):e.rows({filter:"applied"}).data().toArray(),a=0;a<t.length;a++)r.push({_aData:t[a]});return r}function X(a,r,n,i){var o,l,d,c,f,u,p,y,_={},m=[];for(p=void 0!==i?i:t(a),r.cumulative_filtering!==!0?(f=p.aoData,u=f.length):(f=Y(a),u=f.length),void 0!==r.col_filter_array&&(_=r.col_filter_array),y=w(p,r.column_number,n),isNaN(p.aoColumns[y].mData)&&"object"!=typeof p.aoColumns[y].mData&&(r.column_number_data=p.aoColumns[y].mData),isNaN(p.aoColumns[y].mRender)&&"object"!=typeof p.aoColumns[y].mRender&&(r.column_number_render=p.aoColumns[y].mRender),d=0;u>d;d++)if("html"===r.column_data_type)if(void 0===r.column_number_data?o=e(f[d]._aData[y]):(o=s(f[d]._aData,r.column_number_data),o=e(o)),o.length>0)for(c=0;c<o.length;c++){switch(r.html_data_type){case"text":l=e(o[c]).text();break;case"value":l=e(o[c]).val();break;case"id":l=o[c].id;break;case"selector":l=e(o[c]).find(r.html_data_selector).text()}""===e.trim(l)||_.hasOwnProperty(l)||(_[l]=l,m.push(l))}else l=o.selector,""===e.trim(l)||_.hasOwnProperty(l)||(_[l]=l,m.push(l));else if("text"===r.column_data_type)if(void 0!==r.text_data_delimiter)for(void 0===r.column_number_data?o=f[d]._aData[y].split(r.text_data_delimiter):(o=s(f[d]._aData,r.column_number_data),o=(o+"").split(r.text_data_delimiter)),c=0;c<o.length;c++)l=o[c],""===e.trim(l)||_.hasOwnProperty(l)||(_[l]=l,m.push(l));else{if(void 0===r.column_number_data){if(l=f[d]._aData[y],"object"==typeof l){if(void 0===r.html5_data)return void console.log("Warning: Looks like you have forgot to define the html5_data attribute for the "+r.column_number+" column");l=l["@"+r.html5_data]}}else l=void 0!==f[d]._aFilterData&&null!==f[d]._aFilterData?f[d]._aFilterData[y]:s(f[d]._aData,r.column_number_data);""===e.trim(l)||_.hasOwnProperty(l)||(_[l]=l,m.push(l))}else if("rendered_html"===r.column_data_type){if(o=f[d]._aFilterData[y],"string"!=typeof o)if(o=e(o),o.length>0)for(c=0;c<o.length;c++)switch(r.html_data_type){case"text":l=e(o[c]).text();break;case"value":l=e(o[c]).val();break;case"id":l=o[c].id;break;case"selector":l=e(o[c]).find(r.html_data_selector).text()}else l=o.selector;else l=o;""===e.trim(l)||_.hasOwnProperty(l)||(_[l]=l,m.push(l))}return r.col_filter_array=_,m}function H(a,r,i,o){var d,s,c,f,u,p,y,_,S,b,h,x,k,w,F,P,I,D,E,N,j,B,M,J,K,V,W,z,Y,H,Z,ee,te,ae,re,ne,ie;te=void 0===o?t(a):o,Me[m(a)]=te,M=yadcf.generateTableSelectorJQFriendly2(a),ie=De[M],n(te,M),Z=e(document).data(i+"_filters_position"),(""!==te.oScroll.sX||""!==te.oScroll.sY)&&(i=".yadcf-datatables-table-"+M),void 0!==te.oApi._fnGetUniqueThs&&(ee=te.oApi._fnGetUniqueThs(te));for(Y in r)if(r.hasOwnProperty(Y)){if(H=r[Y],j="",z="",c=H.data,E=[],N=[],f=H.filter_container_id,p=H.column_number,p=+p,y=p,void 0!==Ne[M]&&void 0!==Ne[M]&&void 0!==Ne[M].ColReorder&&(y=Ne[M].ColReorder[p]),H.column_number=p,u=void 0,isNaN(te.aoColumns[y].mData)&&"object"!=typeof te.aoColumns[y].mData&&(u=te.aoColumns[y].mData,H.column_number_data=u),isNaN(te.aoColumns[y].mRender)&&"object"!=typeof te.aoColumns[y].mRender&&(H.column_number_render=te.aoColumns[y].mRender),_=H.column_data_type,S=H.html_data_type,b=H.text_data_delimiter,h=H.filter_default_label,x=H.filter_reset_button_text,k=H.enable_auto_complete,w=H.sort_as,F=H.sort_order,P=H.date_format,P=P.replace("yyyy","yy"),"bootstrap-datetimepicker"===H.datepicker_type&&void 0!==H.filter_plugin_options&&void 0!==H.filter_plugin_options.format&&(P=H.filter_plugin_options.format),H.date_format=P,void 0===H.ignore_char||H.ignore_char instanceof RegExp||(I=new RegExp(H.ignore_char,"g"),H.ignore_char=I),D=H.filter_match_mode,void 0===p)return void alert("You must specify column number");if(k===!0&&(H.filter_type="auto_complete"),void 0===h&&("select"===H.filter_type||"custom_func"===H.filter_type?h=Be.select:"multi_select"===H.filter_type||"multi_select_custom_func"===H.filter_type?h=Be.select_multi:"auto_complete"===H.filter_type||"text"===H.filter_type?h=Be.filter:"range_number"===H.filter_type||"range_date"===H.filter_type?h=Be.range:"date"===H.filter_type&&(h=Be.date),H.filter_default_label=h),void 0===x&&(x="x"),void 0!==c)for(B=0;B<c.length;B++)E.push(c[B]);if((void 0===c||void 0!==H.append_data_to_table_data)&&(H.col_filter_array=void 0, | |
| N=X(a,H,M,te),"before"!==H.append_data_to_table_data?E=E.concat(N):(N=G(N,H),E=E.concat(N))),(void 0===H.append_data_to_table_data||"sorted"===H.append_data_to_table_data)&&(E=G(E,H)),"range_number_slider"===H.filter_type&&(J=A(E,H),K=O(E,H)),void 0===f&&void 0===H.filter_container_selector){if(te.aoColumns[y].bVisible===!1)continue;if("thead"!==Z)if(void 0===ee){for(V=y,W=0;W<te.aoColumns.length&&y>W;W++)te.aoColumns[W].bVisible===!1&&V--;y=V,s=i+" "+Z+" th:eq("+y+")"}else s=i+" "+Z+" th:eq("+e(ee[y]).index()+")";else s=void 0===H.filters_tr_index?i+" "+Z+" tr:eq("+e(ee[y]).parent().index()+") th:eq("+e(ee[y]).index()+")":i+" "+Z+" tr:eq("+H.filters_tr_index+") th:eq("+e(ee[y]).index()+")";d=e(s).find(".yadcf-filter")}else{if(void 0!==f&&(H.filter_container_selector="#"+f),0===e(H.filter_container_selector).length)return void console.log("ERROR: Filter container could not be found.");s=H.filter_container_selector,d=e(s).find(".yadcf-filter")}if("select"===H.filter_type||"custom_func"===H.filter_type||"multi_select"===H.filter_type||"multi_select_custom_func"===H.filter_type){if(H.data_as_is!==!0)if(H.omit_default_label!==!0&&("select"===H.filter_type||"custom_func"===H.filter_type?(j='<option value="-1">'+h+"</option>","select2"===H.select_type&&void 0!==H.select_type_options.placeholder&&H.select_type_options.allowClear===!0&&(j='<option value=""></option>')):("multi_select"===H.filter_type||"multi_select_custom_func"===H.filter_type)&&(j=void 0===H.select_type?'<option data-placeholder="true" value="-1">'+h+"</option>":"")),void 0===H.append_data_to_table_data)if("object"==typeof E[0])for(B=0;B<E.length;B++)j+='<option value="'+E[B].value+'">'+E[B].label+"</option>";else for(B=0;B<E.length;B++)j+='<option value="'+E[B]+'">'+E[B]+"</option>";else for(B=0;B<E.length;B++)j+="object"==typeof E[B]?'<option value="'+E[B].value+'">'+E[B].label+"</option>":'<option value="'+E[B]+'">'+E[B]+"</option>";else j=H.data;E=j}1===d.length?"select"===H.filter_type||"multi_select"===H.filter_type||"custom_func"===H.filter_type||"multi_select_custom_func"===H.filter_type?(("custom_func"===H.filter_type||"multi_select_custom_func"===H.filter_type)&&(re=e("#yadcf-filter-"+M+"-"+p).val()),d.empty(),d.append(E),""!==te.aoPreSearchCols[y].sSearch&&(z=te.aoPreSearchCols[y].sSearch,"select"===H.filter_type?(z=C(z,l(a.selector)[p].filter_match_mode),e("#yadcf-filter-"+M+"-"+p).val(z).addClass("inuse")):"multi_select"===H.filter_type&&(z=L(z,l(a.selector)[p].filter_match_mode),z=z.replace(/\\/g,""),z=z.split("|"),e("#yadcf-filter-"+M+"-"+p).val(z))),("custom_func"===H.filter_type||"multi_select_custom_func"===H.filter_type)&&(z=re,"-1"===z||void 0===z?e("#yadcf-filter-"+M+"-"+p).val(z):e("#yadcf-filter-"+M+"-"+p).val(z).addClass("inuse")),g(H.select_type,e("#yadcf-filter-"+M+"-"+p),H.select_type_options)):"auto_complete"===H.filter_type&&e(document).data("yadcf-filter-"+M+"-"+p,E):(void 0===f&&void 0===H.filter_container_selector?e(s+" div.DataTables_sort_wrapper").length>0&&e(s+" div.DataTables_sort_wrapper").css("display","inline-block"):(void 0!==f&&(H.filter_container_selector="#"+f),0===e("#yadcf-filter-wrapper-"+H.filter_container_selector).length&&e(H.filter_container_selector).append('<div id="yadcf-filter-wrapper-'+v(H.filter_container_selector)+'"></div>'),s="#yadcf-filter-wrapper-"+v(H.filter_container_selector)),"select"===H.filter_type||"custom_func"===H.filter_type?(e(s).append('<div id="yadcf-filter-wrapper-'+M+"-"+p+'" class="yadcf-filter-wrapper"></div>'),s+=" div.yadcf-filter-wrapper","select"===H.filter_type?(ae="onchange=\"yadcf.doFilter(this, '"+M+"', "+p+", '"+D+"');\"",H.externally_triggered===!0&&(ae=""),e(s).append('<select id="yadcf-filter-'+M+"-"+p+'" class="yadcf-filter '+H.style_class+'" '+ae+' onkeydown="yadcf.preventDefaultForEnter(event);" onmousedown="yadcf.stopPropagation(event);" onclick=\'yadcf.stopPropagation(event);\'>'+E+"</select>"),x!==!1&&e(s).find(".yadcf-filter").after('<button type="button" id="yadcf-filter-'+M+"-"+p+'-reset" onmousedown="yadcf.stopPropagation(event);" onclick="yadcf.stopPropagation(event);yadcf.doFilter(\'clear\', \''+M+"', "+p+'); return false;" class="yadcf-filter-reset-button">'+x+"</button>")):(ae="onchange=\"yadcf.doFilterCustomDateFunc(this, '"+M+"', "+p+');"',H.externally_triggered===!0&&(ae=""),e(s).append('<select id="yadcf-filter-'+M+"-"+p+'" class="yadcf-filter '+H.style_class+'" '+ae+' onkeydown="yadcf.preventDefaultForEnter(event);" onmousedown="yadcf.stopPropagation(event);" onclick=\'yadcf.stopPropagation(event);\'>'+E+"</select>"),x!==!1&&e(s).find(".yadcf-filter").after('<button type="button" onmousedown="yadcf.stopPropagation(event);" onclick="yadcf.stopPropagation(event);yadcf.doFilterCustomDateFunc(\'clear\', \''+M+"', "+p+'); return false;" class="yadcf-filter-reset-button">'+x+"</button>"),te.oFeatures.bStateSave===!0&&te.oLoadedState&&te.oLoadedState.yadcfState&&te.oLoadedState.yadcfState[M]&&te.oLoadedState.yadcfState[M][p]&&(z=te.oLoadedState.yadcfState[M][p].from,"-1"===z||void 0===z?e("#yadcf-filter-"+M+"-"+p).val(z):e("#yadcf-filter-"+M+"-"+p).val(z).addClass("inuse")),te.oFeatures.bServerSide!==!0&&R(M,"yadcf-filter-"+M+"-"+p,p)),""!==te.aoPreSearchCols[y].sSearch&&(z=te.aoPreSearchCols[y].sSearch,z=C(z,l(a.selector)[p].filter_match_mode),e("#yadcf-filter-"+M+"-"+p).val(z).addClass("inuse")),void 0!==H.select_type&&g(H.select_type,e("#yadcf-filter-"+M+"-"+p),H.select_type_options)):"multi_select"===H.filter_type||"multi_select_custom_func"===H.filter_type?(e(s).append('<div id="yadcf-filter-wrapper-'+M+"-"+p+'" class="yadcf-filter-wrapper"></div>'),s+=" div.yadcf-filter-wrapper","multi_select"===H.filter_type?(ae="onchange=\"yadcf.doFilterMultiSelect(this, '"+M+"', "+p+", '"+D+"');\"",H.externally_triggered===!0&&(ae=""),e(s).append('<select multiple data-placeholder="'+h+'" id="yadcf-filter-'+M+"-"+p+'" class="yadcf-filter '+H.style_class+'" '+ae+' onkeydown="yadcf.preventDefaultForEnter(event);" onmousedown="yadcf.stopPropagation(event);" onclick=\'yadcf.stopPropagation(event);\'>'+E+"</select>"),x!==!1&&e(s).find(".yadcf-filter").after('<button type="button" onmousedown="yadcf.stopPropagation(event);" onclick="yadcf.stopPropagation(event);yadcf.doFilter(\'clear\', \''+M+"', "+p+'); return false;" class="yadcf-filter-reset-button">'+x+"</button>"),""!==te.aoPreSearchCols[y].sSearch&&(z=te.aoPreSearchCols[y].sSearch,z=L(z,l(a.selector)[p].filter_match_mode),z=z.replace(/\\/g,""),z=z.split("|"),e("#yadcf-filter-"+M+"-"+p).val(z))):(ae="onchange=\"yadcf.doFilterCustomDateFunc(this, '"+M+"', "+p+');"',H.externally_triggered===!0&&(ae=""),e(s).append('<select multiple data-placeholder="'+h+'" id="yadcf-filter-'+M+"-"+p+'" class="yadcf-filter '+H.style_class+'" '+ae+' onkeydown="yadcf.preventDefaultForEnter(event);" onmousedown="yadcf.stopPropagation(event);" onclick=\'yadcf.stopPropagation(event);\'>'+E+"</select>"),x!==!1&&e(s).find(".yadcf-filter").after('<button type="button" onmousedown="yadcf.stopPropagation(event);" onclick="yadcf.stopPropagation(event);yadcf.doFilterCustomDateFunc(\'clear\', \''+M+"', "+p+'); return false;" class="yadcf-filter-reset-button">'+x+"</button>"),te.oFeatures.bStateSave===!0&&te.oLoadedState&&te.oLoadedState.yadcfState&&te.oLoadedState.yadcfState[M]&&te.oLoadedState.yadcfState[M][p]&&(z=te.oLoadedState.yadcfState[M][p].from,"-1"===z||void 0===z?e("#yadcf-filter-"+M+"-"+p).val(z):e("#yadcf-filter-"+M+"-"+p).val(z).addClass("inuse")),te.oFeatures.bServerSide!==!0&&R(M,"yadcf-filter-"+M+"-"+p,p)),void 0===H.filter_container_selector&&void 0===H.select_type_options.width&&(H.select_type_options=e.extend(H.select_type_options,{width:e(s).closest("th").width()+"px"})),void 0!==H.filter_container_selector&&void 0===H.select_type_options.width&&(H.select_type_options=e.extend(H.select_type_options,{width:e(s).closest(H.filter_container_selector).width()+"px"})),void 0!==H.select_type&&g(H.select_type,e("#yadcf-filter-"+M+"-"+p),H.select_type_options)):"auto_complete"===H.filter_type?(e(s).append('<div id="yadcf-filter-wrapper-'+M+"-"+p+'" class="yadcf-filter-wrapper"></div>'),s+=" div.yadcf-filter-wrapper",ae="onkeyup=\"yadcf.autocompleteKeyUP('"+M+"',event);\"",H.externally_triggered===!0&&(ae=""),e(s).append('<input onkeydown="yadcf.preventDefaultForEnter(event);" id="yadcf-filter-'+M+"-"+p+'" class="yadcf-filter" onmousedown="yadcf.stopPropagation(event);" onclick=\'yadcf.stopPropagation(event);\' placeholder=\''+h+"' filter_match_mode='"+D+"' "+ae+"></input>"),e(document).data("yadcf-filter-"+M+"-"+p,E),x!==!1&&e(s).find(".yadcf-filter").after('<button type="button" onmousedown="yadcf.stopPropagation(event);" onclick="yadcf.stopPropagation(event);yadcf.doFilterAutocomplete(\'clear\', \''+M+"', "+p+'); return false;" class="yadcf-filter-reset-button">'+x+"</button>")):"text"===H.filter_type?(e(s).append('<div id="yadcf-filter-wrapper-'+M+"-"+p+'" class="yadcf-filter-wrapper"></div>'),s+=" div.yadcf-filter-wrapper",ae="onkeyup=\"yadcf.textKeyUP(event,'"+M+"', "+p+');"',H.externally_triggered===!0&&(ae=""),ne="",H.exclude===!0&&(ne=H.externally_triggered!==!0?'<span class="yadcf-exclude-wrapper" onmousedown="yadcf.stopPropagation(event);" onclick="yadcf.stopPropagation(event);"><div class="yadcf-label small">'+H.exclude_label+'</div><input type="checkbox" title="'+H.exclude_label+'" onclick="yadcf.stopPropagation(event);yadcf.textKeyUP(event,\''+M+"',"+p+');"></span>':'<span class="yadcf-exclude-wrapper" onmousedown="yadcf.stopPropagation(event);" onclick="yadcf.stopPropagation(event);"><div class="yadcf-label small">'+H.exclude_label+'</div><input type="checkbox" title="'+H.exclude_label+'" onclick="yadcf.stopPropagation(event);"></span>'),e(s).append(ne+'<input type="text" onkeydown="yadcf.preventDefaultForEnter(event);" id="yadcf-filter-'+M+"-"+p+'" class="yadcf-filter '+H.style_class+"\" onmousedown=\"yadcf.stopPropagation(event);\" onclick='yadcf.stopPropagation(event);' placeholder='"+h+"' filter_match_mode='"+D+"' "+ae+"></input>"),x!==!1&&e(s).find(".yadcf-filter").after('<button type="button" id="yadcf-filter-'+M+"-"+p+'-reset" onmousedown="yadcf.stopPropagation(event);" onclick="yadcf.stopPropagation(event);yadcf.textKeyUP(event,\''+M+"', '"+p+"', 'clear'); return false;\" class=\"yadcf-filter-reset-button\">"+x+"</button>"),""!==te.aoPreSearchCols[y].sSearch&&(z=te.aoPreSearchCols[y].sSearch,H.exclude===!0&&(-1!==z.indexOf("^((?!")&&e("#yadcf-filter-wrapper-"+M+"-"+p).find(":checkbox").prop("checked",!0),z=z.substring(5,z.indexOf(").)"))),z=C(z,l(a.selector)[p].filter_match_mode),e("#yadcf-filter-"+M+"-"+p).val(z).addClass("inuse"))):"date"===H.filter_type?Q(s,M,p,x,h,P):"range_number"===H.filter_type?q(s,M,p,x,h,I):"range_number_slider"===H.filter_type?$(s,M,p,x,J,K,I):"range_date"===H.filter_type&&U(s,M,p,x,h,P)),void 0!==e(document).data("#yadcf-filter-"+M+"-"+p+"_val")&&"-1"!==e(document).data("#yadcf-filter-"+M+"-"+p+"_val")&&e(s).find(".yadcf-filter").val(e(document).data("#yadcf-filter-"+M+"-"+p+"_val")),"auto_complete"===H.filter_type&&(void 0!==H.filter_plugin_options?((void 0===H.filter_plugin_options.source||0===H.filter_plugin_options.source.length)&&(H.filter_plugin_options.source=e(document).data("yadcf-filter-"+M+"-"+p)),H.filter_plugin_options.select=T):H.filter_plugin_options={source:e(document).data("yadcf-filter-"+M+"-"+p),select:T},H.externally_triggered===!0&&delete H.filter_plugin_options.select,e("#yadcf-filter-"+M+"-"+p).autocomplete(H.filter_plugin_options),""!==te.aoPreSearchCols[y].sSearch&&(z=te.aoPreSearchCols[y].sSearch,z=C(z,l(a.selector)[p].filter_match_mode),e("#yadcf-filter-"+M+"-"+p).val(z).addClass("inuse")))}Re.length>0&&Re.shift()()}function Z(a,r,n){r=d(r),e.fn.dataTableExt.iApiIndex=Ae[a];var i,o,s,c,f,p=Ee[a];o=t(p),s=w(o,n,a),c=he(p,n),(""!==c.from||""!==c.to)&&(f=l(p.selector)[n],"range_date"===f.filter_type&&"bootstrap-datetimepicker"===f.datepicker_type&&(e(e(r.target).parent().find(".yadcf-filter-range")[0]).data("DateTimePicker").maxDate(!1),e(e(r.target).parent().find(".yadcf-filter-range")[1]).data("DateTimePicker").minDate(!1)),e(r.target).parent().find(".yadcf-filter-range").val(""),e(r.target).parent().find(".yadcf-filter-range-number").length>0&&e(e(r.target).parent().find(".yadcf-filter-range")[0]).focus(),p.fnSettings().oFeatures.bServerSide!==!0?p.fnDraw():p.fnFilter("-yadcf_delim-",s),p.fnSettings().oLoadedState||(p.fnSettings().oLoadedState={},p.fnSettings().oApi._fnSaveState(p.fnSettings())),p.fnSettings().oFeatures.bStateSave===!0&&(void 0!==p.fnSettings().oLoadedState.yadcfState&&void 0!==p.fnSettings().oLoadedState.yadcfState[a]?p.fnSettings().oLoadedState.yadcfState[a][n]={from:"",to:""}:(i={},i[a]=[],i[a][n]={from:"",to:""},p.fnSettings().oLoadedState.yadcfState=i),p.fnSettings().oApi._fnSaveState(p.fnSettings())),u(),e(r.target).parent().find(".yadcf-filter-range").removeClass("inuse"))}function ee(t,a){a=d(a),e.fn.dataTableExt.iApiIndex=Ae[t];var r,n,i,o,l=Ee[t];o=parseInt(e(a.target).prev().find(".yadcf-filter-range-number-slider").attr("id").replace("yadcf-filter-"+t+"-slider-",""),10),r=+e(e(a.target).parent().find(".yadcf-filter-range-number-slider-min-tip-hidden")).text(),n=+e(e(a.target).parent().find(".yadcf-filter-range-number-slider-max-tip-hidden")).text(),i=he(l,o),(+i.from!==r||+i.to!==n)&&(e("#"+e(a.target).prev().find(".yadcf-filter-range-number-slider").attr("id")).slider("option","yadcf-reset",!0),e("#"+e(a.target).prev().find(".yadcf-filter-range-number-slider").attr("id")).slider("option","values",[r,n]),e(e(a.target).prev().find(".ui-slider-handle")[0]).attr("tabindex",-1).focus(),e(e(a.target).prev().find(".ui-slider-handle")[0]).removeClass("inuse"),e(e(a.target).prev().find(".ui-slider-handle")[1]).removeClass("inuse"),e(a.target).prev().find(".ui-slider-range").removeClass("inuse"),l.fnDraw(),u())}function te(t,a,r){var n,i,o,s,c;r=d(r),o=r.target.id,i=document.getElementById(o).value,e.fn.dataTableExt.iApiIndex=Ae[t],n=Ee[t],s=parseInt(o.replace("yadcf-filter-"+t+"-",""),10),c=l(n.selector)[s];try{"jquery-ui"===c.datepicker_type&&i.length===a.length+2&&(i=""!==i?e.datepicker.parseDate(a,i):i)}catch(f){}i instanceof Date||moment(i,c.date_format).isValid()?(e("#"+o).addClass("inuse"),n.fnFilter(document.getElementById(o).value,s),u()):(""===i||""===e.trim(r.target.value))&&(e("#"+o).removeClass("inuse"),e("#"+r.target.id).removeClass("inuse"),n.fnFilter("",s),u())}function ae(a,r,n){n=d(n),e.fn.dataTableExt.iApiIndex=Ae[a];var i,o,s,c,f,p,y,_,m,v=Ee[a];f=parseInt(e(n.target).attr("id").replace("-from-date-","").replace("-to-date-","").replace("yadcf-filter-"+a,""),10),p=l(v.selector)[f],_=t(v),m=w(_,f,a),y=function(){-1!==n.target.id.indexOf("-from-")?(s=n.target.id,c=n.target.id.replace("-from-","-to-"),i=document.getElementById(s).value,o=document.getElementById(c).value):(c=n.target.id,s=n.target.id.replace("-to-","-from-"),o=document.getElementById(c).value,i=document.getElementById(s).value);try{i.length===r.length+2&&(i=""!==i?e.datepicker.parseDate(r,i):i)}catch(t){}try{o.length===r.length+2&&(o=""!==o?e.datepicker.parseDate(r,o):o)}catch(a){}(o instanceof Date&&i instanceof Date&&o>=i||""===i||""===o)&&(v.fnSettings().oFeatures.bServerSide!==!0?v.fnDraw():v.fnFilter(document.getElementById(s).value+"-yadcf_delim-"+document.getElementById(c).value,m),i instanceof Date?e("#"+s).addClass("inuse"):e("#"+s).removeClass("inuse"),o instanceof Date?e("#"+c).addClass("inuse"):e("#"+c).removeClass("inuse"),""===e.trim(n.target.value)&&e(n.target).hasClass("inuse")&&e("#"+n.target.id).removeClass("inuse")),u()},void 0===p.filter_delay?y(a,n):Pe(function(){y(a,n)},p.filter_delay)}function re(t,a){a=d(a),e.fn.dataTableExt.iApiIndex=Ae[t];var r,n,i,o,s,c,f,p,y=Ee[t];c=parseInt(e(a.target).attr("id").replace("-from-","").replace("-to-","").replace("yadcf-filter-"+t,""),10),f=l(y.selector)[c],p=function(){-1!==a.target.id.indexOf("-from-")?(i=a.target.id,o=a.target.id.replace("-from-","-to-"),r=document.getElementById(i).value,n=document.getElementById(o).value):(o=a.target.id,i=a.target.id.replace("-to-","-from-"),n=document.getElementById(o).value,r=document.getElementById(i).value),r=""!==r?+r:r,n=""!==n?+n:n,(!isNaN(n)&&!isNaN(r)&&n>=r||""===r||""===n)&&(y.fnSettings().oFeatures.bServerSide!==!0?y.fnDraw():y.fnFilter(r+"-yadcf_delim-"+n,c),""!==document.getElementById(i).value&&e("#"+i).addClass("inuse"),""!==document.getElementById(o).value&&e("#"+o).addClass("inuse"),""===e.trim(a.target.value)&&e(a.target).hasClass("inuse")&&e("#"+a.target.id).removeClass("inuse"),y.fnSettings().oLoadedState||(y.fnSettings().oLoadedState={},y.fnSettings().oApi._fnSaveState(y.fnSettings())),y.fnSettings().oFeatures.bStateSave===!0&&(void 0!==y.fnSettings().oLoadedState.yadcfState&&void 0!==y.fnSettings().oLoadedState.yadcfState[t]?y.fnSettings().oLoadedState.yadcfState[t][c]={from:r,to:n}:(s={},s[t]=[],s[t][c]={from:r,to:n},y.fnSettings().oLoadedState.yadcfState=s),y.fnSettings().oApi._fnSaveState(y.fnSettings()))),u()},void 0===f.filter_delay?p():Pe(function(){p()},f.filter_delay)}function ne(t,a,r,n){var i,o,s=l(t+"_"+r)[r],c=!1,f=!0,u=!0,p=Ee[t],y=e(a.target).val();if(a=d(a),i=new e.fn.dataTable.Api(p),void 0!==n||void 0==y||0===y.length)return void 0!==n&&(e(a.target).parent().find("select").val("-1").focus(),e(a.target).parent().find("selectn ").removeClass("inuse")),s.column_number instanceof Array?i.columns(s.column_number).search("").draw():i.search("").draw(),void S(s,e("#"+s.filter_container_id+" select"),"-1");if(e(a.target).addClass("inuse"),c=!0,f=!1,u=s.case_insensitive,null!==y){for(o=y.length-1;o>=0;o--)if("-1"===y[o]){y.splice(o,1);break}0!==y.length&&(y=y.join("narutouzomaki"),y=y.replace(/([.*+?^=!:${}()|\[\]\/\\])/g,"\\$1"),y=y.split("narutouzomaki").join("|"))}"exact"===s.filter_match_mode?y="^"+y+"$":"startsWith"===s.filter_match_mode&&(y="^"+y),s.column_number instanceof Array?i.columns(s.column_number).search(y,c,f,u).draw():i.search(y,c,f,u).draw()}function ie(t,a,r,n){var i,o,s=l(t+"_"+r)[r],c=!1,f=!0,u=!0,p=Ee[t];return a=d(a),o=new e.fn.dataTable.Api(p),void 0!==n||"-1"===a.target.value?(void 0!==n&&(e(a.target).parent().find("select").val("-1").focus(),e(a.target).parent().find("select").removeClass("inuse")),s.column_number instanceof Array?o.columns(s.column_number).search("").draw():o.search("").draw(),void S(s,e("#"+s.filter_container_id+" select"),"-1")):(e(a.target).addClass("inuse"),i=a.target.value,f=!1,u=s.case_insensitive,void(s.column_number instanceof Array?o.columns(s.column_number).search(i,c,f,u).draw():o.search(i,c,f,u).draw()))}function oe(t,a,r,n){var i,o,s,c=l(t+"_"+r)[r],f=!1,u=!0,p=!0,y=Ee[t];a=d(a),s=new e.fn.dataTable.Api(y),i=function(t,a,r){return void 0!==r||""===a.target.value?(void 0!==r?(e(a.target).prev().val("").focus(),e(a.target).prev().removeClass("inuse")):(e(a.target).val("").focus(),e(a.target).removeClass("inuse")),void(c.column_number instanceof Array?t.columns(c.column_number).search("").draw():t.search("").draw())):(e(a.target).addClass("inuse"),o=a.target.value,u=!1,p=c.case_insensitive,void(c.column_number instanceof Array?t.columns(c.column_number).search(o,f,u,p).draw():t.search(o,f,u,p).draw()))},void 0===c.filter_delay?i(s,a,n):Pe(function(){i(s,a,n)},c.filter_delay)}function le(a,r,n,i){var o,d,s,c,f=Ee[r],p=t(f),y=[37,38,39,40];-1===y.indexOf(a.keyCode)&&(o=w(p,n,r),s=l(f.selector)[n],d=function(t,a,r){if(e.fn.dataTableExt.iApiIndex=Ae[t],"clear"===r||""===e("#yadcf-filter-"+t+"-"+a).val()){if("clear"===r&&""===he(f,a))return;return e("#yadcf-filter-"+t+"-"+a).val("").focus(),e("#yadcf-filter-"+t+"-"+a).removeClass("inuse"),f.fnFilter("",o),void u()}s.exclude===!0&&(c=e("#yadcf-filter-"+t+"-"+a).closest(".yadcf-filter-wrapper").find(".yadcf-exclude-wrapper :checkbox").prop("checked")),e("#yadcf-filter-"+t+"-"+a).addClass("inuse"),x(f,e("#yadcf-filter-"+t+"-"+a).val(),s.filter_match_mode,o,c),u()},void 0===s.filter_delay?d(r,n,i):Pe(function(){d(r,n,i)},s.filter_delay))}function de(t,a){var r,n,i=[37,38,39,40];a=d(a),-1===i.indexOf(a.keyCode)&&""===a.target.value&&8===a.keyCode&&e(a.target).hasClass("inuse")&&(e.fn.dataTableExt.iApiIndex=Ae[t],r=Ee[t],n=parseInt(e(a.target).attr("id").replace("yadcf-filter-"+t+"-",""),10),e("#yadcf-filter-"+t+"-"+n).removeClass("inuse"),e(document).removeData("#yadcf-filter-"+t+"-"+n+"_val"),r.fnFilter("",n),u())}function se(e){var a;return a=t(e),void 0==a.sAjaxSource&&void 0==a.ajax&&a.oFeatures.bServerSide!==!0?!0:!1}function ce(t,a){var r,n=e(document).data(a+"_filters_position"),i=yadcf.generateTableSelectorJQFriendly2(t);n="thead"===n?".dataTables_scrollHead":".dataTables_scrollFoot",(""!==t.fnSettings().oScroll.sX||""!==t.fnSettings().oScroll.sY)&&(r=e(a).closest(".dataTables_scroll").find(n+" table"),r.addClass("yadcf-datatables-table-"+i))}function fe(e){var t;for(t in e)if(e.hasOwnProperty(t))return t}function ue(t,a,r,o){var d,s=yadcf.generateTableSelectorJQFriendly2(t);Ee[s]=t,De[s]=o,Ae[s]=r,ce(t,a),se(t)?(d=a,-1!==a.indexOf(":eq")&&(d=a.substring(0,a.lastIndexOf(":eq"))),H(t,l(d),a),l(d)[fe(l(d))].cumulative_filtering===!0&&e(document).off("search.dt",t.selector).on("search.dt",t.selector,function(e,r,n){var i=t.selector;-1!==a.indexOf(":eq")&&(i=a.substring(0,a.lastIndexOf(":eq"))),H(t,l(i),t.selector,r)})):(H(t,l(a),a),f("1.10")&&e(document).off("xhr.dt",t.selector).on("xhr.dt",t.selector,function(e,a,r){var i,o,l=m(t);if(void 0==r)return void console.log("datatables xhr.dt event came back with null as data (nothing for yadcf to do with it).");null!==a.oSavedState&&n(a,l);for(i in yadcf.getOptions(a.oInstance.selector))yadcf.getOptions(a.oInstance.selector).hasOwnProperty(i)&&void 0!==r["yadcf_data_"+i]&&(o=i,null!==a.oSavedState&&void 0!==Ne[l]&&(o=Ne[l].ColReorder[i]),yadcf.getOptions(a.oInstance.selector)[i].data=r["yadcf_data_"+o])})),f("1.10")?(e(document).off("draw.dt",t.selector).on("draw.dt",t.selector,function(e,a){H(t,yadcf.getOptions(a.oInstance.selector),a.oInstance.selector,a)}),e(document).off("column-visibility.dt",t.selector).on("column-visibility.dt",t.selector,function(e,t,a,r){var n={},i=l(t.oInstance.selector);r===!0&&void 0===t._oFixedColumns?(void 0!==Ne[s]&&void 0!==Ne[s].ColReorder?a=Ne[s].ColReorder[a]:void 0!=t.oSavedState&&void 0!==t.oSavedState.ColReorder&&(a=t.oSavedState.ColReorder[a]),n[a]=yadcf.getOptions(t.oInstance.selector)[a],void 0!==n[a]&&(n[a].column_number=a,void 0!==n[a]&&H(Ee[yadcf.generateTableSelectorJQFriendly2(t)],n,t.oInstance.selector,t))):void 0!==t._oFixedColumns&&H(Ee[yadcf.generateTableSelectorJQFriendly2(t)],i,t.oInstance.selector,t)}),e(document).off("column-reorder.dt",t.selector).on("column-reorder.dt",t.selector,function(e,a,r){var n=m(t);i(n)}),e(document).off("destroy.dt",t.selector).on("destroy.dt",t.selector,function(e,a){W(t,yadcf.getOptions(a.oInstance.selector),a.oInstance.selector)})):(e(document).off("draw",t.selector).on("draw",t.selector,function(e,a){H(t,yadcf.getOptions(a.oInstance.selector),a.oInstance.selector,a)}),e(document).off("destroy",t.selector).on("destroy",t.selector,function(e,a){W(t,yadcf.getOptions(a.oInstance.selector),a.oInstance.selector)})),t.fnSettings().oFeatures.bStateSave===!0&&(f("1.10")?e(t.selector).off("stateSaveParams.dt").on("stateSaveParams.dt",function(e,t,a){t.oLoadedState&&void 0!==t.oLoadedState.yadcfState?a.yadcfState=t.oLoadedState.yadcfState:a.naruto="kurama"}):e(t.selector).off("stateSaveParams").on("stateSaveParams",function(e,t,a){t.oLoadedState&&void 0!==t.oLoadedState.yadcfState?a.yadcfState=t.oLoadedState.yadcfState:a.naruto="kurama"}),se(t)&&(t.fnSettings().oApi._fnSaveState(t.fnSettings()),t.fnDraw(!1)))}function pe(t,a,r){var n,i,o=t.settings()[0].oInstance,l=0;"#"+t.table().node().id;if(void 0===r&&(r={}),"string"==typeof r&&(i=r,r={},r.filters_position=i),void 0===r.filters_position||"header"===r.filters_position?r.filters_position="thead":r.filters_position="tfoot",void 0!==r.language)for(i in Be)Be.hasOwnProperty(i)&&void 0!==r.language[i]&&(Be[i]=r.language[i]);if(e(document).data(o.selector+"_filters_position",r.filters_position),1===e(o.selector).length)c(o.selector,a,r),ue(o,o.selector,0,t);else{for(l;l<e(o.selector).length;l++)e.fn.dataTableExt.iApiIndex=l,n=o.selector+":eq("+l+")",c(o.selector,a,r),ue(o,n,l,t);e.fn.dataTableExt.iApiIndex=0}}function ye(a,r,n){var i,d,s,c,f,u,p,y,_,m,v="#"+n.filter_container_id,S=(e(v).find(".yadcf-filter"),yadcf.generateTableSelectorJQFriendlyNew(r)),b=o(n.column_number).column_number_str,h=l(r+"_"+b)[b];switch(e(v).append('<div id="yadcf-filter-wrapper-'+S+"-"+b+'" class="yadcf-filter-wrapper"></div>'),v+=" div.yadcf-filter-wrapper",m=-1!==b.indexOf("_")?b.split("_")[0]:b,h.filter_type){case"text":e(v).append('<input type="text" id="yadcf-filter-'+S+"-"+b+'" class="yadcf-filter" onmousedown="yadcf.stopPropagation(event);" onclick=\'yadcf.stopPropagation(event);\' placeholder=\''+h.filter_default_label+"' onkeyup=\"yadcf.textKeyUpMultiTables('"+r+"',event,'"+b+"');\"></input>"),h.filter_reset_button_text!==!1&&e(v).find(".yadcf-filter").after('<button type="button" id="yadcf-filter-'+S+"-"+b+'-reset" onmousedown="yadcf.stopPropagation(event);" onclick="yadcf.stopPropagation(event);yadcf.textKeyUpMultiTables(\''+r+"', event,'"+b+"','clear'); return false;\" class=\"yadcf-filter-reset-button\">"+h.filter_reset_button_text+"</button>"),s=void 0!==a[0].table?e("#"+a[0].table().node().id).dataTable():a[0],y=t(s),""!==y.aoPreSearchCols[m].sSearch&&(_=y.aoPreSearchCols[m].sSearch,_=C(_,h.filter_match_mode),e("#yadcf-filter-"+S+"-"+b).val(_).addClass("inuse"));break;case"select":case"multi_select":if(i=void 0===h.select_type?'<option data-placeholder="true" value="-1">'+h.filter_default_label+"</option>":"","select2"===h.select_type&&void 0!==h.select_type_options.placeholder&&h.select_type_options.allowClear===!0&&(i='<option value=""></option>'),void 0===h.data)for(h.data=[],c=r.split(","),f=0;f<c.length;f++)if(s=void 0!==a[f].table?e("#"+a[f].table().node().id).dataTable():a[f],se(s)){for(p=h.column_number,u=0;u<p.length;u++)h.column_number=p[u],h.data=h.data.concat(X(s,h,S));h.column_number=p}else e(document).off("draw.dt","#"+a[f].table().node().id).on("draw.dt","#"+a[f].table().node().id,function(t,a){var r,n="";for(p=h.column_number,u=0;u<p.length;u++)h.column_number=p[u],h.data=h.data.concat(X(s,h,S,a));for(h.column_number=p,h.data=G(h.data,h),r=0;r<h.data.length;r++)n+='<option value="'+h.data[r]+'">'+h.data[r]+"</option>";e("#"+h.filter_container_id+" select").empty().append(n),void 0!==h.select_type&&g(h.select_type,e("#"+h.filter_container_id+" select"),h.select_type_options)});if(h.data=G(h.data,h),s=void 0!==a[0].table?e("#"+a[0].table().node().id).dataTable():a[0],y=t(s),"object"==typeof h.data[0])for(d=0;d<h.data.length;d++)i+='<option value="'+h.data[d].value+'">'+h.data[d].label+"</option>";else for(d=0;d<h.data.length;d++)i+='<option value="'+h.data[d]+'">'+h.data[d]+"</option>";"select"===h.filter_type?(e(v).append('<select id="yadcf-filter-'+S+"-"+b+'" class="yadcf-filter" onchange="yadcf.doFilterMultiTables(\''+r+"',event,'"+b+"')\" onmousedown=\"yadcf.stopPropagation(event);\" onclick='yadcf.stopPropagation(event);'>"+i+"</select>"),""!==y.aoPreSearchCols[m].sSearch&&(_=y.aoPreSearchCols[m].sSearch,_=C(_,h.filter_match_mode),e("#yadcf-filter-"+S+"-"+b).val(_).addClass("inuse"))):"multi_select"===h.filter_type&&(e(v).append('<select multiple data-placeholder="'+h.filter_default_label+'" id="yadcf-filter-'+S+"-"+b+'" class="yadcf-filter" onchange="yadcf.doFilterMultiTablesMultiSelect(\''+r+"',event,'"+b+"')\" onmousedown=\"yadcf.stopPropagation(event);\" onclick='yadcf.stopPropagation(event);'>"+i+"</select>"),""!==y.aoPreSearchCols[m].sSearch&&(_=y.aoPreSearchCols[m].sSearch,_=L(_,h.filter_match_mode),_=_.replace(/\\/g,""),_=_.split("|"),e("#yadcf-filter-"+S+"-"+b).val(_))),"select"===h.filter_type?h.filter_reset_button_text!==!1&&e(v).find(".yadcf-filter").after('<button type="button" id="yadcf-filter-'+S+"-"+b+'-reset" onmousedown="yadcf.stopPropagation(event);" onclick="yadcf.stopPropagation(event);yadcf.doFilterMultiTables(\''+r+"', event,'"+b+"','clear'); return false;\" class=\"yadcf-filter-reset-button\">"+h.filter_reset_button_text+"</button>"):"multi_select"===h.filter_type&&h.filter_reset_button_text!==!1&&e(v).find(".yadcf-filter").after('<button type="button" id="yadcf-filter-'+S+"-"+b+'-reset" onmousedown="yadcf.stopPropagation(event);" onclick="yadcf.stopPropagation(event);yadcf.doFilterMultiTablesMultiSelect(\''+r+"', event,'"+b+"','clear'); return false;\" class=\"yadcf-filter-reset-button\">"+h.filter_reset_button_text+"</button>"),void 0!==h.select_type&&g(h.select_type,e("#yadcf-filter-"+S+"-"+b),h.select_type_options);break;default:alert("Filters Multiple Tables does not support "+h.filter_type)}}function _e(a,r){var n,i,l,d,s,f="",u={filter_type:"text",filter_container_id:"",filter_reset_button_text:"x",case_insensitive:!0};for(l=0;l<r.length;l++){for(s=[],i=r[l],void 0===i.filter_default_label&&("select"===i.filter_type||"custom_func"===i.filter_type?i.filter_default_label="Select value":"multi_select"===i.filter_type||"multi_select_custom_func"===i.filter_type?i.filter_default_label="Select values":"auto_complete"===i.filter_type||"text"===i.filter_type?i.filter_default_label="Type to filter":"range_number"===i.filter_type||"range_date"===i.filter_type?i.filter_default_label=["from","to"]:"date"===i.filter_type&&(i.filter_default_label="Select a date")),i=e.extend({},u,i),d=o(i.column_number).column_number_str,i.column_number_str=d,s.push(i),f="",n=0;n<a.length;n++)f+=void 0!==a[n].table?a[n].table().node().id+",":t(a[n]).sTableId;f=f.substring(0,f.length-1),c(f+"_"+d,s),Ee[f]=a,ye(a,f,i)}}function me(e,t){var a=[];a.push(e),_e(a,t)}function ve(e){void 0!==e.stopPropagation?e.stopPropagation():e.cancelBubble=!0}function ge(e){13===e.keyCode&&(e.preventDefault?e.preventDefault():e.returnValue=!1)}function Se(e,t){return function(){be(e,t,!0)}}function be(t,a,r){var n,i,o,d,s,c,f,u,p,y,_,m,v=!1;if(void 0!==t.settings&&(t=t.settings()[0].oInstance),n=yadcf.generateTableSelectorJQFriendly2(t),se(t)||r===!0){for(i=0;i<a.length;i++)switch(d=a[i][0],s=d,v=!1,void 0!==Ne[n]&&void 0!==Ne[n]&&void 0!==Ne[n].ColReorder&&(s=Ne[n].ColReorder[d]),y=l(t.selector)[d],c=a[i][1],y.filter_type){case"auto_complete":case"text":case"date":void 0!==c&&-1!==c.indexOf("_exclude_")&&(v=!0,c=c.replace("_exclude_","")),e("#yadcf-filter-"+n+"-"+d).val(c),""!==c?e("#yadcf-filter-"+n+"-"+d).addClass("inuse"):e("#yadcf-filter-"+n+"-"+d).removeClass("inuse"),o=h(t,s,c,y.filter_match_mode,!1,v),t.fnSettings().aoPreSearchCols[s].sSearch=o;break;case"select":e("#yadcf-filter-"+n+"-"+d).val(c),""!==c?e("#yadcf-filter-"+n+"-"+d).addClass("inuse"):e("#yadcf-filter-"+n+"-"+d).removeClass("inuse"),o=h(t,s,c,y.filter_match_mode,!1),t.fnSettings().aoPreSearchCols[s].sSearch=o,void 0!==y.select_type&&S(y,e("#yadcf-filter-"+n+"-"+d),"-1");break;case"multi_select":e("#yadcf-filter-"+n+"-"+d).val(c),o=h(t,s,c,y.filter_match_mode,!0),t.fnSettings().aoPreSearchCols[s].sSearch=o,void 0!==y.select_type&&S(y,e("#yadcf-filter-"+n+"-"+d),"-1");break;case"range_date":f="yadcf-filter-"+n+"-from-date-"+d,u="yadcf-filter-"+n+"-to-date-"+d,e("#"+f).val(c.from),""!==c.from?e("#"+f).addClass("inuse"):e("#"+f).removeClass("inuse"),e("#"+u).val(c.to),""!==c.to?e("#"+u).addClass("inuse"):e("#"+u).removeClass("inuse"),t.fnSettings().oFeatures.bServerSide===!0&&(_=c.from,m=c.to,t.fnSettings().aoPreSearchCols[s].sSearch=_+"-yadcf_delim-"+m),Ce(t,d,n,c.from,c.to);break;case"range_number":f="yadcf-filter-"+n+"-from-"+d,u="yadcf-filter-"+n+"-to-"+d,e("#"+f).val(c.from),""!==c.from?e("#"+f).addClass("inuse"):e("#"+f).removeClass("inuse"),e("#"+u).val(c.to),""!==c.to?e("#"+u).addClass("inuse"):e("#"+u).removeClass("inuse"),t.fnSettings().oFeatures.bServerSide===!0&&(t.fnSettings().aoPreSearchCols[s].sSearch=c.from+"-yadcf_delim-"+c.to),Ce(t,d,n,c.from,c.to);break; | |
| case"range_number_slider":p="yadcf-filter-"+n+"-slider-"+d,f="yadcf-filter-"+n+"-min_tip-"+d,u="yadcf-filter-"+n+"-max_tip-"+d,""!==c.from&&(_=e("#"+f).closest(".yadcf-filter-range-number-slider").find(".yadcf-filter-range-number-slider-min-tip-hidden").text(),m=e("#"+f).closest(".yadcf-filter-range-number-slider").find(".yadcf-filter-range-number-slider-max-tip-hidden").text(),e("#"+f).text(c.from),_!==c.from?(e("#"+f).parent().addClass("inuse"),e("#"+f).parent().parent().find("ui-slider-range").addClass("inuse")):(e("#"+f).parent().removeClass("inuse"),e("#"+f).parent().parent().find("ui-slider-range").removeClass("inuse")),e("#"+p).slider("values",0,c.from)),""!==c.to&&(e("#"+u).text(c.to),m!==c.to?(e("#"+u).parent().addClass("inuse"),e("#"+u).parent().parent().find(".ui-slider-range").addClass("inuse")):(e("#"+u).parent().removeClass("inuse"),e("#"+u).parent().parent().find(".ui-slider-range").removeClass("inuse")),e("#"+p).slider("values",1,c.to)),t.fnSettings().oFeatures.bServerSide===!0&&(t.fnSettings().aoPreSearchCols[s].sSearch=c.from+"-yadcf_delim-"+c.to),Ce(t,d,n,c.from,c.to);break;case"custom_func":case"multi_select_custom_func":e("#yadcf-filter-"+n+"-"+d).val(c),""!==c?e("#yadcf-filter-"+n+"-"+d).addClass("inuse"):e("#yadcf-filter-"+n+"-"+d).removeClass("inuse"),t.fnSettings().oFeatures.bServerSide===!0&&(t.fnSettings().aoPreSearchCols[s].sSearch=c),void 0!==y.select_type&&S(y,e("#yadcf-filter-"+n+"-"+d),c),Ce(t,d,n,c,"")}t.fnSettings().oFeatures.bServerSide!==!0?t.fnDraw():setTimeout(function(){t.fnDraw()},10)}else Re.push(Se(t,a))}function he(t,a){var r,n,i,o,d,s;switch(void 0!==t.settings&&(t=t.settings()[0].oInstance),d=l(t.selector)[a],o=yadcf.generateTableSelectorJQFriendly2(t),s=e("#yadcf-filter-"+o+"-"+a),d.filter_type){case"select":case"custom_func":r=s.val(),"-1"===r&&(r="");break;case"auto_complete":case"text":case"date":r=s.val(),s.prev().hasClass("yadcf-exclude-wrapper")&&s.prev().find("input").prop("checked")===!0&&(r="_exclude_"+r);break;case"multi_select":r=s.val(),null===r&&(r="");break;case"range_date":r={},n="yadcf-filter-"+o+"-from-date-"+a,i="yadcf-filter-"+o+"-to-date-"+a,r.from=e("#"+n).val(),r.to=e("#"+i).val();break;case"range_number":r={},n="yadcf-filter-"+o+"-from-"+a,i="yadcf-filter-"+o+"-to-"+a,r.from=e("#"+n).val(),r.to=e("#"+i).val();break;case"range_number_slider":r={},n="yadcf-filter-"+o+"-min_tip-"+a,i="yadcf-filter-"+o+"-max_tip-"+a,r.from=e("#"+n).text(),r.to=e("#"+i).text();break;default:console.log("exGetColumnFilterVal error: no such filter_type: "+d.filter_type)}return r}function xe(e,t,a){var r;e.fnSettings().oFeatures.bStateSave===!0&&(e.fnSettings().oLoadedState||(e.fnSettings().oLoadedState={},e.fnSettings().oApi._fnSaveState(e.fnSettings())),void 0!==e.fnSettings().oLoadedState.yadcfState&&void 0!==e.fnSettings().oLoadedState.yadcfState[a]?e.fnSettings().oLoadedState.yadcfState[a][t]=void 0:(r={},r[a]=[],r[a][t]=void 0,e.fnSettings().oLoadedState.yadcfState=r),e.fnSettings().oApi._fnSaveState(e.fnSettings()))}function Ce(e,t,a,r,n){var i;e.fnSettings().oFeatures.bStateSave===!0&&(e.fnSettings().oLoadedState||(e.fnSettings().oLoadedState={}),void 0!==e.fnSettings().oLoadedState.yadcfState&&void 0!==e.fnSettings().oLoadedState.yadcfState[a]?e.fnSettings().oLoadedState.yadcfState[a][t]={from:r,to:n}:(i={},i[a]=[],i[a][t]={from:r,to:n},e.fnSettings().oLoadedState.yadcfState=i),e.fnSettings().oApi._fnSaveState(e.fnSettings()))}function ke(a,r,n){var i,o,d,s,c,f,u,p,y,_,m=t(a);void 0!==a.settings&&(a=a.settings()[0].oInstance),f=l(a.selector),i=yadcf.generateTableSelectorJQFriendly2(a),m=t(a);for(p in f)if(f.hasOwnProperty(p)){if(u=f[p],o=u.column_number,void 0!==n&&-1===e.inArray(o,n))continue;switch(e(document).removeData("#yadcf-filter-"+i+"-"+o+"_val"),_=e("#yadcf-filter-"+i+"-"+o),u.filter_type){case"select":case"custom_func":_.val("-1").removeClass("inuse"),a.fnSettings().aoPreSearchCols[o].sSearch="",void 0!==u.select_type&&S(u,_,"-1");break;case"auto_complete":case"text":case"date":_.val("").removeClass("inuse"),a.fnSettings().aoPreSearchCols[o].sSearch="",_.prev().hasClass("yadcf-exclude-wrapper")&&_.prev().find("input").prop("checked",!1);break;case"multi_select":case"multi_select_custom_func":_.val("-1"),e(document).data("#yadcf-filter-"+i+"-"+o+"_val",void 0),a.fnSettings().aoPreSearchCols[o].sSearch="",void 0!==u.select_type&&S(u,_,"-1");break;case"range_date":d="yadcf-filter-"+i+"-from-date-"+o,s="yadcf-filter-"+i+"-to-date-"+o,e("#"+d).val(""),e("#"+d).removeClass("inuse"),e("#"+s).val(""),e("#"+s).removeClass("inuse"),a.fnSettings().oFeatures.bServerSide===!0&&(a.fnSettings().aoPreSearchCols[o].sSearch=""),xe(a,o,i);break;case"range_number":d="yadcf-filter-"+i+"-from-"+o,s="yadcf-filter-"+i+"-to-"+o,e("#"+d).val(""),e("#"+d).removeClass("inuse"),e("#"+s).val(""),e("#"+s).removeClass("inuse"),a.fnSettings().oFeatures.bServerSide===!0&&(a.fnSettings().aoPreSearchCols[o].sSearch=""),xe(a,o,i);break;case"range_number_slider":c="yadcf-filter-"+i+"-slider-"+o,d="yadcf-filter-"+i+"-min_tip-"+o,s="yadcf-filter-"+i+"-max_tip-"+o,e("#"+d).text(""),e("#"+d).parent().removeClass("inuse"),e("#"+d).parent().parent().find("ui-slider-range").removeClass("inuse"),e("#"+s).text(""),e("#"+s).parent().removeClass("inuse"),e("#"+s).parent().parent().find(".ui-slider-range").removeClass("inuse"),e("#"+c).slider("option","values",[e("#"+d).parent().parent().find(".yadcf-filter-range-number-slider-min-tip-hidden").text(),e("#"+d).parent().parent().find(".yadcf-filter-range-number-slider-max-tip-hidden").text()]),a.fnSettings().oFeatures.bServerSide===!0&&(a.fnSettings().aoPreSearchCols[o].sSearch=""),xe(a,o,i)}}if(r!==!0){if(m.oPreviousSearch.sSearch="",void 0!==m.aanFeatures.f)for(y=0;y<m.aanFeatures.f.length;y++)e("input",m.aanFeatures.f[y]).val("");a.fnDraw(m)}}function we(e,t,a){ke(e,a,t)}function Fe(e){var t,a,r,n,i,o=[];void 0!==e.settings&&(e=e.settings()[0].oInstance),t=l(e.selector);for(a in t)t.hasOwnProperty(a)&&(r=t[a],n=he(e,r.column_number),i=[],i.push(r.column_number),i.push(n),o.push(i));be(e,o,!0)}var Pe,Le,Ie,Te,De={},Ee={},Ae={},Oe={},Ne={},Re=[],je=/[^a-zA-Z]/g,qe=/[^0-9]/g,Be={select:"Select value",select_multi:"Select values",filter:"Type to filter",range:["From","To"],date:"Select a date"},Me={};return Pe=function(){var e=0;return function(t,a,r){return clearTimeout(e),e=setTimeout(function(){t(r)},a)}}(),e.fn.yadcf=function(t,a){var r,n,i=0;if(void 0===a&&(a={}),"string"==typeof a&&(r=a,a={},a.filters_position=r),void 0===a.filters_position||"header"===a.filters_position?a.filters_position="thead":a.filters_position="tfoot",void 0!==a.language)for(r in Be)Be.hasOwnProperty(r)&&void 0!==a.language[r]&&(Be[r]=a.language[r]);if(e(document).data(this.selector+"_filters_position",a.filters_position),1===e(this.selector).length)c(this.selector,t,a),ue(this,this.selector,0);else{for(i;i<e(this.selector).length;i++)e.fn.dataTableExt.iApiIndex=i,n=this.selector+":eq("+i+")",c(this.selector,t,a),ue(this,n,i);e.fn.dataTableExt.iApiIndex=0}return this},{init:pe,doFilter:F,doFilterMultiSelect:P,doFilterAutocomplete:I,autocompleteKeyUP:de,getOptions:l,rangeNumberKeyUP:re,rangeDateKeyUP:ae,rangeClear:Z,rangeNumberSliderClear:ee,stopPropagation:ve,exFilterColumn:be,exGetColumnFilterVal:he,exResetAllFilters:ke,dateKeyUP:te,dateSelectSingle:B,textKeyUP:le,doFilterCustomDateFunc:k,eventTargetFixUp:d,initMultipleTables:_e,initMultipleColumns:me,textKeyUpMultiTables:oe,doFilterMultiTables:ie,doFilterMultiTablesMultiSelect:ne,generateTableSelectorJQFriendlyNew:v,exFilterExternallyTriggered:Fe,exResetFilters:we,initSelectPluginCustomTriggers:b,preventDefaultForEnter:ge,generateTableSelectorJQFriendly2:m}}(jQuery); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| /** | |
| * Maplace.js | |
| * | |
| * Copyright (c) 2013 Daniele Moraschi | |
| * Licensed under the MIT license | |
| * For all details and documentation: | |
| * http://maplacejs.com | |
| * | |
| * @version 0.2.5 | |
| * @preserve | |
| */ | |
| !function(a,b){"function"==typeof define&&define.amd?define(["jquery"],b):"object"==typeof exports?module.exports=b(require("jquery")):a.Maplace=b(a.jQuery)}(this,function(a){"use strict";function b(b){this.VERSION="0.2.5",this.loaded=!1,this.markers=[],this.circles=[],this.oMap=!1,this.view_all_key="all",this.infowindow=null,this.maxZIndex=0,this.ln=0,this.oMap=!1,this.oBounds=null,this.map_div=null,this.canvas_map=null,this.controls_wrapper=null,this.current_control=null,this.current_index=null,this.Polyline=null,this.Polygon=null,this.Fusion=null,this.directionsService=null,this.directionsDisplay=null,this.o={debug:!1,map_div:"#gmap",controls_div:"#controls",generate_controls:!0,controls_type:"dropdown",controls_cssclass:"",controls_title:"",controls_on_map:!0,controls_applycss:!0,controls_position:google.maps.ControlPosition.RIGHT_TOP,type:"marker",view_all:!0,view_all_text:"View All",pan_on_click:!0,start:0,locations:[],shared:{},map_options:{mapTypeId:google.maps.MapTypeId.ROADMAP},stroke_options:{strokeColor:"#0000FF",strokeOpacity:.8,strokeWeight:2,fillColor:"#0000FF",fillOpacity:.4},directions_options:{travelMode:google.maps.TravelMode.DRIVING,unitSystem:google.maps.UnitSystem.METRIC,optimizeWaypoints:!1,provideRouteAlternatives:!1,avoidHighways:!1,avoidTolls:!1},circle_options:{radius:100,visible:!0},styles:{},fusion_options:{},directions_panel:null,draggable:!1,editable:!1,show_infowindows:!0,show_markers:!0,infowindow_type:"bubble",listeners:{},beforeViewAll:function(){},afterViewAll:function(){},beforeShow:function(a,b,c){},afterShow:function(a,b,c){},afterCreateMarker:function(a,b,c){},beforeCloseInfowindow:function(a,b){},afterCloseInfowindow:function(a,b){},beforeOpenInfowindow:function(a,b,c){},afterOpenInfowindow:function(a,b,c){},afterRoute:function(a,b,c){},onPolylineClick:function(a){},onPolygonClick:function(a){},circleRadiusChanged:function(a,b,c){},circleCenterChanged:function(a,b,c){},drag:function(a,b,c){},dragEnd:function(a,b,c){},dragStart:function(a,b,c){}},this.AddControl("dropdown",c),this.AddControl("list",d),b&&"directions"===b.type&&(!b.show_markers&&(b.show_markers=!1),!b.show_infowindows&&(b.show_infowindows=!1)),a.extend(!0,this.o,b)}var c,d;return c={activateCurrent:function(a){this.html_element.find("select").val(a)},getHtml:function(){var b,c,d=this,e="";if(this.ln>1){for(e+='<select class="dropdown controls '+this.o.controls_cssclass+'">',this.ShowOnMenu(this.view_all_key)&&(e+='<option value="'+this.view_all_key+'">'+this.o.view_all_text+"</option>"),c=0;c<this.ln;c+=1)this.ShowOnMenu(c)&&(e+='<option value="'+(c+1)+'">'+(this.o.locations[c].title||"#"+(c+1))+"</option>");e+="</select>",e=a(e).bind("change",function(){d.ViewOnMap(this.value)})}return b=this.o.controls_title,this.o.controls_title&&(b=a('<div class="controls_title"></div>').css(this.o.controls_applycss?{fontWeight:"bold",fontSize:this.o.controls_on_map?"12px":"inherit",padding:"3px 10px 5px 0"}:{}).append(this.o.controls_title)),this.html_element=a('<div class="wrap_controls"></div>').append(b).append(e),this.html_element}},d={html_a:function(b,c,d){var e=this,f=c||b+1,g=d||this.o.locations[b].title,h=a('<a data-load="'+f+'" id="ullist_a_'+f+'" href="#'+f+'" title="'+g+'"><span>'+(g||"#"+(b+1))+"</span></a>");return h.css(this.o.controls_applycss?{color:"#666",display:"block",padding:"5px",fontSize:this.o.controls_on_map?"12px":"inherit",textDecoration:"none"}:{}),h.on("click",function(b){b.preventDefault();var c=a(this).attr("data-load");e.ViewOnMap(c)}),h},activateCurrent:function(a){this.html_element.find("li").removeClass("active"),this.html_element.find("#ullist_a_"+a).parent().addClass("active")},getHtml:function(){var b,c,e=a("<ul class='ullist controls "+this.o.controls_cssclass+"'></ul>").css(this.o.controls_applycss?{margin:0,padding:0,listStyleType:"none"}:{});for(this.ShowOnMenu(this.view_all_key)&&e.append(a("<li></li>").append(d.html_a.call(this,!1,this.view_all_key,this.o.view_all_text))),c=0;c<this.ln;c++)this.ShowOnMenu(c)&&e.append(a("<li></li>").append(d.html_a.call(this,c)));return b=this.o.controls_title,this.o.controls_title&&(b=a('<div class="controls_title"></div>').css(this.o.controls_applycss?{fontWeight:"bold",padding:"3px 10px 5px 0",fontSize:this.o.controls_on_map?"12px":"inherit"}:{}).append(this.o.controls_title)),this.html_element=a('<div class="wrap_controls"></div>').append(b).append(e),this.html_element}},b.prototype.controls={},b.prototype.create_objMap=function(){var b,c=this,d=0;for(b in this.o.styles)this.o.styles.hasOwnProperty(b)&&(0===d&&(this.o.map_options.mapTypeControlOptions={mapTypeIds:[google.maps.MapTypeId.ROADMAP]}),d++,this.o.map_options.mapTypeControlOptions.mapTypeIds.push("map_style_"+d));if(this.loaded)c.oMap.setOptions(this.o.map_options);else try{this.map_div.css({position:"relative",overflow:"hidden"}),this.canvas_map=a("<div>").addClass("canvas_map").css({width:"100%",height:"100%"}).appendTo(this.map_div),this.oMap=new google.maps.Map(this.canvas_map.get(0),this.o.map_options)}catch(e){this.debug("create_objMap::"+this.map_div.selector,e.toString())}d=0;for(b in this.o.styles)this.o.styles.hasOwnProperty(b)&&(d++,this.oMap.mapTypes.set("map_style_"+d,new google.maps.StyledMapType(this.o.styles[b],{name:b})),this.oMap.setMapTypeId("map_style_"+d))},b.prototype.add_markers_to_objMap=function(){var a,b,c=this.o.type||"marker";switch(c){case"marker":for(a=0;a<this.ln;a++)b=this.create_objPoint(a),this.create.marker.call(this,a,b);break;default:this.create[c].apply(this)}},b.prototype.create_objPoint=function(b){var c=a.extend({},this.o.locations[b]),d=void 0===c.visible?void 0:c.visible;return!c.type&&(c.type=this.o.type),c.map=this.oMap,c.position=new google.maps.LatLng(c.lat,c.lon),c.zIndex=void 0===c.zIndex?1e4:c.zIndex+100,c.visible=void 0===d?this.o.show_markers:d,this.o.maxZIndex=c.zIndex>this.maxZIndex?c.zIndex:this.maxZIndex,c.image&&(c.icon=new google.maps.MarkerImage(c.image,new google.maps.Size(c.image_w||32,c.image_h||32),new google.maps.Point(0,0),new google.maps.Point((c.image_w||32)/2,(c.image_h||32)/2))),c},b.prototype.create_objCircle=function(b){var c,d,e;return e=a.extend({},b),c=a.extend({},this.o.stroke_options),d=a.extend({},this.o.circle_options),a.extend(c,b.stroke_options||{}),a.extend(e,c),a.extend(d,b.circle_options||{}),a.extend(e,d),e.center=b.position,e.draggable=!1,e.zIndex=b.zIndex>0?b.zIndex-10:1,e},b.prototype.add_markerEv=function(a,b,c){var d=this;google.maps.event.addListener(c,"click",function(e){d.o.beforeShow(a,b,c),!d.o.show_infowindows||(b.show_infowindow===!1?1:0)||d.open_infowindow(a,c,e),!d.o.pan_on_click||(b.pan_on_click===!1?1:0)||(d.oMap.panTo(b.position),b.zoom&&d.oMap.setZoom(b.zoom)),d.current_control&&d.o.generate_controls&&d.current_control.activateCurrent&&d.current_control.activateCurrent.call(d,a+1),d.current_index=a,d.o.afterShow(a,b,c)}),b.draggable&&this.add_dragEv(a,b,c)},b.prototype.add_circleEv=function(a,b,c){var d=this;google.maps.event.addListener(c,"click",function(){d.ViewOnMap(a+1)}),google.maps.event.addListener(c,"center_changed",function(){d.o.circleCenterChanged(a,b,c)}),google.maps.event.addListener(c,"radius_changed",function(){d.o.circleRadiusChanged(a,b,c)}),b.draggable&&this.add_dragEv(a,b,c)},b.prototype.add_dragEv=function(a,b,c){var d=this;google.maps.event.addListener(c,"drag",function(e){var f,g;if(c.getPosition)f=c.getPosition();else{if(!c.getCenter)return;f=c.getCenter()}if(d.circles[a]&&d.circles[a].setCenter(f),d.Polyline?g="Polyline":d.Polygon&&(g="Polygon"),g){for(var h=d[g].getPath(),i=h.getArray(),j=[],k=0;k<i.length;++k)j[k]=a===k?new google.maps.LatLng(f.lat(),f.lng()):new google.maps.LatLng(i[k].lat(),i[k].lng());d[g].setPath(new google.maps.MVCArray(j)),d.add_polyEv(g)}d.o.drag(a,b,c)}),google.maps.event.addListener(c,"dragend",function(){d.o.dragEnd(a,b,c)}),google.maps.event.addListener(c,"dragstart",function(){d.o.dragStart(a,b,c)}),google.maps.event.addListener(c,"center_changed",function(){d.markers[a]&&c.getCenter&&d.markers[a].setPosition(c.getCenter()),d.o.drag(a,b,c)})},b.prototype.add_polyEv=function(a){var b=this;google.maps.event.addListener(this[a].getPath(),"set_at",function(c,d){var e=b[a].getPath().getAt(c),f=new google.maps.LatLng(e.lat(),e.lng());b.markers[c]&&b.markers[c].setPosition(f),b.circles[c]&&b.circles[c].setCenter(f),b.o["on"+a+"Changed"](c,d,b[a].getPath().getArray())})},b.prototype.create={marker:function(a,b,c){var d;return"circle"!==b.type||c||(d=this.create_objCircle(b),b.visible||(d.draggable=b.draggable),c=new google.maps.Circle(d),this.add_circleEv(a,d,c),this.circles[a]=c),b.type="marker",c=new google.maps.Marker(b),this.add_markerEv(a,b,c),this.oBounds.extend(b.position),this.markers[a]=c,this.o.afterCreateMarker(a,b,c),c},circle:function(){var a,b,c,d;for(a=0;a<this.ln;a++)b=this.create_objPoint(a),"circle"===b.type&&(c=this.create_objCircle(b),b.visible||(c.draggable=b.draggable),d=new google.maps.Circle(c),this.add_circleEv(a,c,d),this.circles[a]=d),b.type="marker",this.create.marker.call(this,a,b,d)},polyline:function(){var b,c,d=a.extend({},this.o.stroke_options);for(d.path=[],d.draggable=this.o.draggable,d.editable=this.o.editable,d.map=this.oMap,d.zIndex=this.o.maxZIndex+100,b=0;b<this.ln;b++)c=this.create_objPoint(b),this.create.marker.call(this,b,c),d.path.push(c.position);this.Polyline?this.Polyline.setOptions(d):this.Polyline=new google.maps.Polyline(d),this.add_polyEv("Polyline")},polygon:function(){var b,c,d=this,e=a.extend({},this.o.stroke_options);for(e.path=[],e.draggable=this.o.draggable,e.editable=this.o.editable,e.map=this.oMap,e.zIndex=this.o.maxZIndex+100,b=0;b<this.ln;b++)c=this.create_objPoint(b),this.create.marker.call(this,b,c),e.path.push(c.position);this.Polygon?this.Polygon.setOptions(e):this.Polygon=new google.maps.Polygon(e),google.maps.event.addListener(this.Polygon,"click",function(a){d.o.onPolygonClick(a)}),this.add_polyEv("Polygon")},fusion:function(){this.o.fusion_options.styles=[this.o.stroke_options],this.o.fusion_options.map=this.oMap,this.Fusion?this.Fusion.setOptions(this.o.fusion_options):this.Fusion=new google.maps.FusionTablesLayer(this.o.fusion_options)},directions:function(){var b,c,d,e,f,g=this,h=[],i=0;for(b=0;b<this.ln;b++)c=this.create_objPoint(b),0===b?e=c.position:b===this.ln-1?f=c.position:(d=this.o.locations[b].stopover===!0?!0:!1,h.push({location:c.position,stopover:d})),this.create.marker.call(this,b,c);this.o.directions_options.origin=e,this.o.directions_options.destination=f,this.o.directions_options.waypoints=h,this.directionsService||(this.directionsService=new google.maps.DirectionsService),this.directionsDisplay?this.directionsDisplay.setOptions({draggable:this.o.draggable}):this.directionsDisplay=new google.maps.DirectionsRenderer({draggable:this.o.draggable}),this.directionsDisplay.setMap(this.oMap),this.o.directions_panel&&(this.o.directions_panel=a(this.o.directions_panel),this.directionsDisplay.setPanel(this.o.directions_panel.get(0))),this.o.draggable&&google.maps.event.addListener(this.directionsDisplay,"directions_changed",function(){i=g.compute_distance(g.directionsDisplay.directions),g.o.afterRoute(i)}),this.directionsService.route(this.o.directions_options,function(a,b){b===google.maps.DirectionsStatus.OK&&(i=g.compute_distance(a),g.directionsDisplay.setDirections(a)),g.o.afterRoute(i,b,a)})}},b.prototype.compute_distance=function(a){var b,c=0,d=a.routes[0],e=d.legs.length;for(b=0;e>b;b++)c+=d.legs[b].distance.value;return c},b.prototype.type_to_open={bubble:function(a){this.infowindow=new google.maps.InfoWindow({content:a.html||""})}},b.prototype.open_infowindow=function(a,b,c){this.CloseInfoWindow();var d=this.o.locations[a],e=this.o.infowindow_type;d.html&&this.type_to_open[e]&&(this.o.beforeOpenInfowindow(a,d,b),this.type_to_open[e].call(this,d),this.infowindow.open(this.oMap,b),this.o.afterOpenInfowindow(a,d,b))},b.prototype.get_html_controls=function(){return this.controls[this.o.controls_type]&&this.controls[this.o.controls_type].getHtml?(this.current_control=this.controls[this.o.controls_type],this.current_control.getHtml.apply(this)):""},b.prototype.generate_controls=function(){if(!this.o.controls_on_map)return this.controls_wrapper.empty(),void this.controls_wrapper.append(this.get_html_controls());var b=a('<div class="on_gmap '+this.o.controls_type+' gmap_controls"></div>').css(this.o.controls_applycss?{margin:"5px"}:{}),c=a(this.get_html_controls()).css(this.o.controls_applycss?{background:"#fff",padding:"5px",border:"1px solid #eee",boxShadow:"rgba(0, 0, 0, 0.298039) 0px 1px 4px -1px",maxHeight:this.map_div.find(".canvas_map").outerHeight()-80,minWidth:100,overflowY:"auto",overflowX:"hidden"}:{});b.append(c),this.oMap.controls[this.o.controls_position].push(b.get(0))},b.prototype.init_map=function(){var a=this;this.Polyline&&this.Polyline.setMap(null),this.Polygon&&this.Polygon.setMap(null),this.Fusion&&this.Fusion.setMap(null),this.directionsDisplay&&this.directionsDisplay.setMap(null);for(var b=this.markers.length-1;b>=0;b-=1)try{this.markers[b]&&this.markers[b].setMap(null)}catch(c){a.debug("init_map::markers::setMap",c.stack)}this.markers.length=0,this.markers=[];for(var d=this.circles.length-1;d>=0;d-=1)try{this.circles[d]&&this.circles[d].setMap(null)}catch(c){a.debug("init_map::circles::setMap",c.stack)}this.circles.length=0,this.circles=[],this.o.controls_on_map&&this.oMap.controls&&this.oMap.controls[this.o.controls_position].forEach(function(b,c){try{a.oMap.controls[this.o.controls_position].removeAt(c)}catch(d){a.debug("init_map::removeAt",d.stack)}}),this.oBounds=new google.maps.LatLngBounds},b.prototype.perform_load=function(){1===this.ln?(this.o.map_options.set_center?this.oMap.setCenter(new google.maps.LatLng(this.o.map_options.set_center[0],this.o.map_options.set_center[1])):(this.oMap.fitBounds(this.oBounds),this.ViewOnMap(1)),this.o.map_options.zoom&&this.oMap.setZoom(this.o.map_options.zoom)):0===this.ln?(this.o.map_options.set_center?this.oMap.setCenter(new google.maps.LatLng(this.o.map_options.set_center[0],this.o.map_options.set_center[1])):this.oMap.fitBounds(this.oBounds),this.oMap.setZoom(this.o.map_options.zoom||1)):(this.oMap.fitBounds(this.oBounds),"number"==typeof(this.o.start-0)&&this.o.start>0&&this.o.start<=this.ln?this.ViewOnMap(this.o.start):this.o.map_options.set_center?this.oMap.setCenter(new google.maps.LatLng(this.o.map_options.set_center[0],this.o.map_options.set_center[1])):this.ViewOnMap(this.view_all_key),this.o.map_options.zoom&&this.oMap.setZoom(this.o.map_options.zoom))},b.prototype.debug=function(a,b){return this.o.debug&&console.log(a,b),this},b.prototype.AddControl=function(a,b){return a&&b?(this.controls[a]=b,this):(self.debug("AddControl",'Missing "name" and "func" callback.'),!1)},b.prototype.CloseInfoWindow=function(){return this.infowindow&&(this.current_index||0===this.current_index)&&(this.o.beforeCloseInfowindow(this.current_index,this.o.locations[this.current_index]),this.infowindow.close(),this.infowindow=null,this.o.afterCloseInfowindow(this.current_index,this.o.locations[this.current_index])),this},b.prototype.ShowOnMenu=function(a){if(a===this.view_all_key&&this.o.view_all&&this.ln>1)return!0;if(a=parseInt(a,10),"number"==typeof(a-0)&&a>=0&&a<this.ln){var b=this.o.locations[a].on_menu===!1?!1:!0;if(b)return!0}return!1},b.prototype.ViewOnMap=function(a){if(a===this.view_all_key)this.o.beforeViewAll(),this.current_index=a,this.o.locations.length>0&&this.o.generate_controls&&this.current_control&&this.current_control.activateCurrent&&this.current_control.activateCurrent.apply(this,[a]),this.oMap.fitBounds(this.oBounds),this.CloseInfoWindow(),this.o.afterViewAll();else if(a=parseInt(a,10),"number"==typeof(a-0)&&a>0&&a<=this.ln)try{google.maps.event.trigger(this.markers[a-1],"click")}catch(b){this.debug("ViewOnMap::trigger",b.stack)}return this},b.prototype.SetLocations=function(a,b){return this.o.locations=a,b&&this.Load(),this},b.prototype.AddLocations=function(b,c){var d=this;return a.isArray(b)&&a.each(b,function(a,b){d.o.locations.push(b)}),a.isPlainObject(b)&&this.o.locations.push(b),c&&this.Load(),this},b.prototype.AddLocation=function(b,c,d){return a.isPlainObject(b)&&this.o.locations.splice(c,0,b),d&&this.Load(),this},b.prototype.RemoveLocations=function(b,c){var d=this,e=0;return a.isArray(b)?a.each(b,function(a,b){b-e<d.ln&&d.o.locations.splice(b-e,1),e++}):b<this.ln&&this.o.locations.splice(b,1),c&&this.Load(),this},b.prototype.Loaded=function(){return this.loaded},b.prototype._init=function(){this.ln=this.o.locations.length;for(var b=0;b<this.ln;b++){var c=a.extend({},this.o.shared);this.o.locations[b]=a.extend(c,this.o.locations[b]),this.o.locations[b].html&&(this.o.locations[b].html=this.o.locations[b].html.replace("%index",b+1),this.o.locations[b].html=this.o.locations[b].html.replace("%title",this.o.locations[b].title||""))}return this.map_div=a(this.o.map_div),this.controls_wrapper=a(this.o.controls_div),this},b.prototype.Load=function(b){a.extend(!0,this.o,b),b&&b.locations&&(this.o.locations=b.locations),this._init(),this.o.visualRefresh===!1?google.maps.visualRefresh=!1:google.maps.visualRefresh=!0,this.init_map(),this.create_objMap(),this.add_markers_to_objMap(),this.ln>1&&this.o.generate_controls||this.o.force_generate_controls?(this.o.generate_controls=!0,this.generate_controls()):this.o.generate_controls=!1;var c=this;if(this.loaded)this.perform_load();else{google.maps.event.addListenerOnce(this.oMap,"idle",function(){c.perform_load()}),google.maps.event.addListener(this.oMap,"resize",function(){c.canvas_map.css({width:c.map_div.width(),height:c.map_div.height()})});var d,e=function(a,b,c){b(c,a)};for(d in this.o.listeners){var f=this.oMap,g=this.o.listeners[d];this.o.listeners.hasOwnProperty(d)&&google.maps.event.addListener(this.oMap,d,e(event,g,f))}}return this.loaded=!0,this},b}); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment