PageSourceSearch

https://trasparenza.cittametropolitana.pa.it/javascript/slickGrid/slick.core-2.1.min.js

js cittametropolitana.pa.it collected 2026-09-24 23:58:10 UTC 3,975 bytes, 18 lines download raw bytes

1(function($){$.extend(true,window,{"Slick":{"Event":Event,"EventData":EventData,"EventHandler":EventHandler,"Range":Range,"NonDataRow":NonDataItem,"Group":Group,"GroupTotals":GroupTotals,"EditorLock":EditorLock,"GlobalEditorLock":new EditorLock()}});function EventData(){var isPropagationStopped=false;var isImmediatePropagationStopped=false;this.stopPropagation=function(){isPropagationStopped=true;};this.isPropagationStopped=function(){return isPropagationStopped;};this.stopImmediatePropagation=function(){isImmediatePropagationStopped=true;};this.isImmediatePropagationStopped=function(){return isImmediatePropagationStopped;}}
2function Event(){var handlers=[];this.subscribe=function(fn){handlers.push(fn);};this.unsubscribe=function(fn){for(var i=handlers.length-1;i>=0;i--){if(handlers[i]===fn){handlers.splice(i,1);}}};this.notify=function(args,e,scope){e=e||new EventData();scope=scope||this;var returnValue;for(var i=0;i<handlers.length&&!(e.isPropagationStopped()||e.isImmediatePropagationStopped());i++){returnValue=handlers[i].call(scope,e,args);}
3return returnValue;};}
4function EventHandler(){var handlers=[];this.subscribe=function(event,handler){handlers.push({event:event,handler:handler});event.subscribe(handler);return this;};this.unsubscribe=function(event,handler){var i=handlers.length;while(i--){if(handlers[i].event===event&&handlers[i].handler===handler){handlers.splice(i,1);event.unsubscribe(handler);return;}}
5return this;};this.unsubscribeAll=function(){var i=handlers.length;while(i--){handlers[i].event.unsubscribe(handlers[i].handler);}
6handlers=[];return this;}}
7function Range(fromRow,fromCell,toRow,toCell){if(toRow===undefined&&toCell===undefined){toRow=fromRow;toCell=fromCell;}
8this.fromRow=Math.min(fromRow,toRow);this.fromCell=Math.min(fromCell,toCell);this.toRow=Math.max(fromRow,toRow);this.toCell=Math.max(fromCell,toCell);this.isSingleRow=function(){return this.fromRow==this.toRow;};this.isSingleCell=function(){return this.fromRow==this.toRow&&this.fromCell==this.toCell;};this.contains=function(row,cell){return row>=this.fromRow&&row<=this.toRow&&cell>=this.fromCell&&cell<=this.toCell;};this.toString=function(){if(this.isSingleCell()){return"("+this.fromRow+":"+this.fromCell+")";}
9else{return"("+this.fromRow+":"+this.fromCell+" - "+this.toRow+":"+this.toCell+")";}}}
10function NonDataItem(){this.__nonDataRow=true;}
11function Group(){this.__group=true;this.__updated=false;this.count=0;this.value=null;this.title=null;this.collapsed=false;this.totals=null;}
12Group.prototype=new NonDataItem();Group.prototype.equals=function(group){return this.value===group.value&&this.count===group.count&&this.collapsed===group.collapsed;};function GroupTotals(){this.__groupTotals=true;this.group=null;}
13GroupTotals.prototype=new NonDataItem();function EditorLock(){var activeEditController=null;this.isActive=function(editController){return(editController?activeEditController===editController:activeEditController!==null);};this.activate=function(editController){if(editController===activeEditController){return;}
14if(activeEditController!==null){throw"SlickGrid.EditorLock.activate: an editController is still active, can't activate another editController";}
15if(!editController.commitCurrentEdit){throw"SlickGrid.EditorLock.activate: editController must implement .commitCurrentEdit()";}
16if(!editController.cancelCurrentEdit){throw"SlickGrid.EditorLock.activate: editController must implement .cancelCurrentEdit()";}
17activeEditController=editController;};this.deactivate=function(editController){if(activeEditController!==editController){throw"SlickGrid.EditorLock.deactivate: specified editController is not the currently active one";}
18activeEditController=null;};this.commitCurrentEdit=function(){return(activeEditController?activeEditController.commitCurrentEdit():true);};this.cancelCurrentEdit=function cancelCurrentEdit(){return(activeEditController?activeEditController.cancelCurrentEdit():true);};}})(jQuery);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.