1Drupal.locale = { 'pluralFormula': function ($n) { return Number(($n!=1)); }, 'strings': {"":{"Enabled":"Attivato","Next":"Seguente","Cancel":"Annulla","Disabled":"Disattivato","Edit":"Modifica","Search":"Cerca","None":"Nessuno","This action cannot be undone.":"L\u0027operazione non \u00e8 reversibile.","Sunday":"Domenica","Monday":"Luned\u00ec","Tuesday":"Marted\u00ec","Wednesday":"Mercoled\u00ec","Thursday":"Gioved\u00ec","Friday":"Venerd\u00ec","Saturday":"Sabato","Add":"Aggiungi","Upload":"Carica","Configure":"Configura","All":"Tutti","Done":"Fatto","1 hour":"1 ora","@count hours":"@count ore","1 day":"1 giorno","@count days":"@count giorni","OK":"OK","This field is required.":"Questo campo \u00e8 obbligatorio.","Prev":"Precedente","Mon":"Lun","Tue":"Mar","Wed":"Mer","Thu":"Gio","Fri":"Ven","Sat":"Sab","Sun":"Dom","January":"Gennaio","February":"Febbraio","March":"Marzo","April":"Aprile","May":"Mag","June":"Giugno","July":"Luglio","August":"Agosto","September":"Settembre","October":"Ottobre","November":"Novembre","December":"Dicembre","Show":"Mostra","Allowed HTML tags":"Elementi HTML consentiti","Select all rows in this table":"Seleziona tutte le righe in questa tabella","Deselect all rows in this table":"Deseleziona tutte le righe in questa tabella","Today":"Oggi","Jan":"Gen","Feb":"Feb","Mar":"Mar","Apr":"Apr","Jun":"Giu","Jul":"Lug","Aug":"Ago","Sep":"Set","Oct":"Ott","Nov":"Nov","Dec":"Dic","Su":"Do","Mo":"Lu","Tu":"Ma","We":"Noi","Th":"Gi","Fr":"Ve","Sa":"Sa","Not published":"Non pubblicato","Please wait...":"Attendere prego...","Hide":"Nascondi","1 min":"1 min","@count min":"@count min","1 sec":"1 sec","@count sec":"@count sec","mm\/dd\/yy":"mm\/gg\/aa","By @name on @date":"Da @name il @date","By @name":"Da @name","Not in menu":"Non nel menu","Alias: @alias":"Alias: @alias","No alias":"Nessun alias","0 sec":"0 sec","New revision":"Nuova revisione","Drag to re-order":"Trascina per riordinare","Changes made in this table will not be saved until the form is submitted.":"I cambiamenti fatti a questa tabella non saranno salvati finch\u00e8 il form non viene inviato.","1 byte":"1 byte","@count bytes":"@count byte","The changes to these blocks will not be saved until the \u003Cem\u003ESave blocks\u003C\/em\u003E button is clicked.":"I cambiamenti a questi blocchi non saranno salvati finch\u00e9 il bottone \u003Cem\u003ESalva blocchi\u003C\/em\u003E \u00e8 cliccato.","Starting upload...":"Inizio caricamento...","@size KB":"@size KB","@size MB":"@size MB","@size GB":"@size GB","This permission is inherited from the authenticated user role.":"Questo permesso viene ereditato dal ruolo utente autenticato.","No revision":"Nessuna revisione","Requires a title":"Richiede un titolo","Not restricted":"Non limitato","(active tab)":"(scheda attiva)","An AJAX HTTP error occurred.":"Si \u00e8 verificato un errore HTTP in AJAX.","HTTP Result Code: !status":"Codice HTTP di risposta: !status","An AJAX HTTP request terminated abnormally.":"Una richiesta AJAX HTTP \u00e8 terminata in modo anomalo.","Debugging information follows.":"Di seguito le informazioni di debug.","Path: !uri":"Percorso: !uri","StatusText: !statusText":"StatusText: !statusText","ResponseText: !responseText":"ResponseText: !responseText","ReadyState: !readyState":"ReadyState: !readyState","Not customizable":"Non personalizzabile","Restricted to certain pages":"Limitato a certe pagine","The block cannot be placed in this region.":"Il blocco non pu\u00f2 essere posizionato in questa regione.","Hide summary":"Nascondi sommario","Edit summary":"Modifica sommario","Add a new file":"Aggiungi un nuovo file","Don\u0027t display post information":"Non mostrare le informazioni di pubblicazione","The selected file %filename cannot be uploaded. Only files with the following extensions are allowed: %extensions.":"Il file selezionato %filename non pu\u00f2 essere caricato. Sono consentiti solo file con le seguenti estensioni: %extensions.","Re-order rows by numerical weight instead of dragging.":"Riordina le righe utilizzando il peso numerico invece del trascinamento.","Show row weights":"Visualizza i pesi delle righe","Hide row weights":"Nascondi i pesi delle righe","Autocomplete popup":"Popup di autocompletamento","Searching for matches...":"Ricerca in corso...","The response failed verification so will not be processed.":"La risposta non ha superato la verifica, quindi non verr\u00e0 elaborata.","The callback URL is not local and n
1ot trusted: !url":"L\u0027URL di callback non \u00e8 locale o non \u00e8 affidabile: !url","CustomMessage: !customMessage":"Messaggio personalizzato: !customMessage"}} };; 2(function(c,q){var m="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///ywAAAAAAQABAAACAUwAOw==";c.fn.imagesLoaded=function(f){function n(){var b=c(j),a=c(h);d&&(h.length?d.reject(e,b,a):d.resolve(e));c.isFunction(f)&&f.call(g,e,b,a)}function p(b){k(b.target,"error"===b.type)}function k(b,a){b.src===m||-1!==c.inArray(b,l)||(l.push(b),a?h.push(b):j.push(b),c.data(b,"imagesLoaded",{isBroken:a,src:b.src}),r&&d.notifyWith(c(b),[a,e,c(j),c(h)]),e.length===l.length&&(setTimeout(n),e.unbind(".imagesLoaded", 3p)))}var g=this,d=c.isFunction(c.Deferred)?c.Deferred():0,r=c.isFunction(d.notify),e=g.find("img").add(g.filter("img")),l=[],j=[],h=[];c.isPlainObject(f)&&c.each(f,function(b,a){if("callback"===b)f=a;else if(d)d[b](a)});e.length?e.bind("load.imagesLoaded error.imagesLoaded",p).each(function(b,a){var d=a.src,e=c.data(a,"imagesLoaded");if(e&&e.src===d)k(a,e.isBroken);else if(a.complete&&a.naturalWidth!==q)k(a,0===a.naturalWidth||0===a.naturalHeight);else if(a.readyState||a.complete)a.src=m,a.src=d}): 4n();return d?d.promise(g):g}})(jQuery); 5; 6/** 7 * @file 8 * Javascript required for a simple collapsible div. 9 * 10 * Creating a collapsible div with this doesn't take too much. There are 11 * three classes necessary: 12 * 13 * - ctools-collapsible-container: This is the overall container that will be 14 * collapsible. This must be a div. 15 * - ctools-collapsible-handle: This is the title area, and is what will be 16 * visible when it is collapsed. This can be any block element, such as div 17 * or h2. 18 * - ctools-collapsible-content: This is the ocntent area and will only be 19 * visible when expanded. This must be a div. 20 * 21 * Adding 'ctools-collapsible-remember' to the container class will cause the 22 * state of the container to be stored in a cookie, and remembered from page 23 * load to page load. This will only work if the container has a unique ID, so 24 * very carefully add IDs to your containers. 25 * 26 * If the class 'ctools-no-container' is placed on the container, the container 27 * will be the handle. The content will be found by appending '-content' to the 28 * id of the handle. The ctools-collapsible-handle and 29 * ctools-collapsible-content classes will not be required in that case, and no 30 * restrictions on what of data the container is are placed. Like 31 * ctools-collapsible-remember this requires an id to eist. 32 * 33 * The content will be 'open' unless the container class has 'ctools-collapsed' 34 * as a class, which will cause the container to draw collapsed. 35 */ 36 37(function ($) { 38 // All CTools tools begin with this if they need to use the CTools namespace. 39 if (!Drupal.CTools) { 40 Drupal.CTools = {}; 41 } 42 43 /** 44 * Object to store state. 45 * 46 * This object will remember the state of collapsible containers. The first 47 * time a state is requested, it will check the cookie and set up the variable. 48 * If a state has been changed, when the window is unloaded the state will be 49 * saved. 50 */ 51 Drupal.CTools.Collapsible = { 52 state: {}, 53 stateLoaded: false, 54 stateChanged: false, 55 cookieString: 'ctools-collapsible-state=', 56 57 /** 58 * Get the current collapsed state of a container. 59 * 60 * If set to 1, the container is open. If set to -1, the container is 61 * collapsed. If unset the state is unknown, and the default state should 62 * be used. 63 */ 64 getState: function (id) { 65 if (!this.stateLoaded) { 66 this.loadCookie(); 67 } 68 69 return this.state[id]; 70 }, 71 72 /** 73 * Set the collapsed state of a container for subsequent page loads. 74 * 75 * Set the state to 1 for open, -1 for collapsed. 76 */ 77 setState: function (id, state) { 78 if (!this.stateLoaded) { 79 this.loadCookie(); 80 } 81 82 this.state[id] = state; 83 84 if (!this.stateChanged) { 85 this.stateChanged = true; 86 $(window).unload(this.unload); 87 } 88 }, 89 90 /** 91 * Check the cookie and load the state variable. 92 */ 93 loadCookie: function () { 94 // If there is a previous instance of this cookie 95 if (document.cookie.length > 0) { 96 // Get the number of characters that have the list of values 97 // from our string index. 98 offset = document.cookie.indexOf(this.cookieString); 99 100 // If its positive, there is a list! 101 if (offset != -1) { 102 offset += this.cookieString.length; 103 var end = document.cookie.indexOf(';', offset); 104 if (end == -1) { 105 end = document.cookie.length; 106 } 107 108 // Get a list of all values that are saved on our string 109 var cookie = unescape(document.cookie.substring(offset, end)); 110 111 if (cookie != '') { 112 var cookieList = cookie.split(','); 113 for (var i = 0; i < cookieList.length; i++) { 114 var info = cookieList[i].split(':'); 115 this.state[info[0]] = info[1]; 116 } 117 } 118 } 119 } 120 121 this.stateLoaded = true; 122 }, 123 124 /** 125 * Turn the state variable into a string and store it in the cookie. 126 */
127 storeCookie: function () { 128 var cookie = ''; 129 130 // Get a list of IDs, saparated by comma 131 for (i in this.state) { 132 if (cookie != '') { 133 cookie += ','; 134 } 135 cookie += i + ':' + this.state[i]; 136 } 137 138 // Save this values on the cookie 139 document.cookie = this.cookieString + escape(cookie) + ';path=/'; 140 }, 141 142 /** 143 * Respond to the unload event by storing the current state. 144 */ 145 unload: function() { 146 Drupal.CTools.Collapsible.storeCookie(); 147 } 148 }; 149 150 // Set up an array for callbacks. 151 Drupal.CTools.CollapsibleCallbacks = []; 152 Drupal.CTools.CollapsibleCallbacksAfterToggle = []; 153 154 /** 155 * Bind collapsible behavior to a given container. 156 */ 157 Drupal.CTools.bindCollapsible = function () { 158 var $container = $(this); 159 160 // Allow the specification of the 'no container' class, which means the 161 // handle and the container can be completely independent. 162 if ($container.hasClass('ctools-no-container') && $container.attr('id')) { 163 // In this case, the container *is* the handle and the content is found 164 // by adding '-content' to the id. Obviously, an id is required. 165 var handle = $container; 166 var content = $('#' + $container.attr('id') + '-content'); 167 } 168 else { 169 var handle = $container.children('.ctools-collapsible-handle'); 170 var content = $container.children('div.ctools-collapsible-content'); 171 } 172 173 if (content.length) { 174 // Create the toggle item and place it in front of the toggle. 175 var toggle = $('<span class="ctools-toggle"></span>'); 176 handle.before(toggle); 177 178 // If the remember class is set, check to see if we have a remembered 179 // state stored. 180 if ($container.hasClass('ctools-collapsible-remember') && $container.attr('id')) { 181 var state = Drupal.CTools.Collapsible.getState($container.attr('id')); 182 if (state == 1) { 183 $container.removeClass('ctools-collapsed'); 184 } 185 else if (state == -1) { 186 $container.addClass('ctools-collapsed'); 187 } 188 } 189 190 // If we should start collapsed, do so: 191 if ($container.hasClass('ctools-collapsed')) { 192 toggle.toggleClass('ctools-toggle-collapsed'); 193 content.hide(); 194 } 195 196 var afterToggle = function () { 197 if (Drupal.CTools.CollapsibleCallbacksAfterToggle) { 198 for (i in Drupal.CTools.CollapsibleCallbacksAfterToggle) { 199 Drupal.CTools.CollapsibleCallbacksAfterToggle[i]($container, handle, content, toggle); 200 } 201 } 202 } 203 204 var clickMe = function () { 205 if (Drupal.CTools.CollapsibleCallbacks) { 206 for (i in Drupal.CTools.CollapsibleCallbacks) { 207 Drupal.CTools.CollapsibleCallbacks[i]($container, handle, content, toggle); 208 } 209 } 210 211 // If the container is a table element slideToggle does not do what 212 // we want, so use toggle() instead. 213 if ($container.is('table')) { 214 content.toggle(0, afterToggle); 215 } 216 else { 217 content.slideToggle(100, afterToggle); 218 } 219 220 $container.toggleClass('ctools-collapsed'); 221 toggle.toggleClass('ctools-toggle-collapsed'); 222 223 // If we're supposed to remember the state of this class, do so. 224 if ($container.hasClass('ctools-collapsible-remember') && $container.attr('id')) { 225 var state = toggle.hasClass('ctools-toggle-collapsed') ? -1 : 1; 226 Drupal.CTools.Collapsible.setState($container.attr('id'), state); 227 } 228 229 return false; 230 } 231 232 // Let both the toggle and the handle be clickable. 233 toggle.click(clickMe); 234 handle.click(clickMe); 235 } 236 }; 237 238 /** 239 * Support Drupal's 'behaviors' system for binding. 240 */ 241 Drupal.behaviors.CToolsCollapsible = { 242 attach: function(context) { 243 $('.ctools-collapsible-container', context).once('ctools-collapsible', Drupal.CTools.bindCollapsible); 244 } 245 } 246})(jQuery); 247; 248(function ($) { 249 250Drupal.behaviors.facetapi = { 251 attach: function(context, settings) { 252 // Iterates over facet settings, applies functionality like the "Show more" 253 // links for block realm facets. 254 // @todo We need some sort of JS API so we don't have to make decisions 255 // based on the realm. 256 if (settings.facetapi) { 257 for (var index in settings.facetapi.facets) { 258 if (null != settings.facetapi.facets[index].makeCheckboxes) { 259 Drupal.facetapi.makeCheckboxes(settings.facetapi.facets[index].id); 260 } 261 if (null != settings.facetapi.facets[index].limit) { 262 // Applies soft limit to the list. 263 Drupal.facetapi.applyLimit(settings.facetapi.facets[index]); 264 } 265 } 266 } 267 } 268} 269 270/** 271 * Class containing functionality for Facet API. 272 */ 273Drupal.facetapi = {} 274 275/** 276 * Applies the soft limit to facets in the block realm. 277 */ 278Drupal.facetapi.applyLimit = function(settings) { 279 if (settings.limit > 0 && !$('ul#' + settings.id).hasClass('facetapi-processed')) { 280 // Only process this code once per page load. 281 $('ul#' + settings.id).addClass('facetapi-processed'); 282 283 // Ensures our limit is zero-based, hides facets over the limit. 284 var limit = settings.limit - 1; 285 $('ul#' + settings.id).find('li:gt(' + limit + ')').hide(); 286 287 // Adds "Show more" / "Show fewer" links as appropriate. 288 $('ul#' + settings.id).filter(function() { 289 return $(this).find('li').length > settings.limit; 290 }).each(function() { 291 $('<a href="#" class="facetapi-limit-link"></a>').text(Drupal.t(settings.showMoreText)).click(function() { 292 if ($(this).siblings().find('li:hidden').length > 0) { 293 $(this).siblings().find('li:gt(' + limit + ')').slideDown(); 294 $(this).addClass('open').text(Drupal.t(settings.showFewerText)); 295 } 296 else {
297 $(this).siblings().find('li:gt(' + limit + ')').slideUp(); 298 $(this).removeClass('open').text(Drupal.t(settings.showMoreText)); 299 } 300 return false; 301 }).insertAfter($(this)); 302 }); 303 } 304} 305 306/** 307 * Constructor for the facetapi redirect class. 308 */ 309Drupal.facetapi.Redirect = function(href) { 310 this.href = href; 311} 312 313/** 314 * Method to redirect to the stored href. 315 */ 316Drupal.facetapi.Redirect.prototype.gotoHref = function() { 317 window.location.href = this.href; 318} 319 320/** 321 * Turns all facet links into checkboxes. 322 * Ensures the facet is disabled if a link is clicked. 323 */ 324Drupal.facetapi.makeCheckboxes = function(facet_id) { 325 var $facet = $('#' + facet_id), 326 $links = $('a.facetapi-checkbox', $facet); 327 328 // Find all checkbox facet links and give them a checkbox. 329 $links.once('facetapi-makeCheckbox').each(Drupal.facetapi.makeCheckbox); 330 $links.once('facetapi-disableClick').click(function (e) { 331 Drupal.facetapi.disableFacet($facet); 332 }); 333} 334 335/** 336 * Disable all facet links and checkboxes in the facet and apply a 'disabled' 337 * class. 338 */ 339Drupal.facetapi.disableFacet = function ($facet) { 340 $facet.addClass('facetapi-disabled'); 341 $('a.facetapi-checkbox').click(Drupal.facetapi.preventDefault); 342 $('input.facetapi-checkbox', $facet).attr('disabled', true); 343} 344 345/** 346 * Event listener for easy prevention of event propagation. 347 */ 348Drupal.facetapi.preventDefault = function (e) { 349 e.preventDefault(); 350} 351 352/** 353 * Replace an unclick link with a checked checkbox. 354 */ 355Drupal.facetapi.makeCheckbox = function() { 356 var $link = $(this), 357 active = $link.hasClass('facetapi-active'); 358 359 if (!active && !$link.hasClass('facetapi-inactive')) { 360 // Not a facet link. 361 return; 362 } 363 364 // Derive an ID and label for the checkbox based on the associated link. 365 // The label is required for accessibility, but it duplicates information 366 // in the link itself, so it should only be shown to screen reader users. 367 var id = this.id + '--checkbox', 368 description = $link.find('.element-invisible').html(), 369 label = $('<label class="element-invisible" for="' + id + '">' + description + '</label>'), 370 checkbox = $('<input type="checkbox" class="facetapi-checkbox" id="' + id + '" />'), 371 // Get the href of the link that is this DOM object. 372 href = $link.attr('href'), 373 redirect = new Drupal.facetapi.Redirect(href); 374 375 checkbox.click(function (e) { 376 Drupal.facetapi.disableFacet($link.parents('ul.facetapi-facetapi-checkbox-links')); 377 redirect.gotoHref(); 378 }); 379 380 if (active) { 381 checkbox.attr('checked', true); 382 // Add the checkbox and label, hide the link. 383 $link.before(label).before(checkbox).hide(); 384 } 385 else { 386 $link.before(label).before(checkbox); 387 } 388} 389 390})(jQuery); 391;
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.