/** * @file * Attaches behaviors for the Clientside Validation jQuery module. */ (function ($, Drupal) { /** * Attaches jQuery validate behavoir to forms. * * @type {Drupal~behavior} * * @prop {Drupal~behaviorAttach} attach * Attaches the outline behavior to the right context. */ Drupal.behaviors.cvJqueryValidate = { attach: function (context) { $(context).find('form').each(function() { $(this).validate(); }); } }; })(jQuery, Drupal); ; /** * DO NOT EDIT THIS FILE. * See the following change record for more information, * https://www.drupal.org/node/2815083 * @preserve **/ Drupal.debounce = function (func, wait, immediate) { var timeout = void 0; var result = void 0; return function () { for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) { args[_key] = arguments[_key]; } var context = this; var later = function later() { timeout = null; if (!immediate) { result = func.apply(context, args); } }; var callNow = immediate && !timeout; clearTimeout(timeout); timeout = setTimeout(later, wait); if (callNow) { result = func.apply(context, args); } return result; }; };; /** * @file * Attaches behaviors for the Clientside Validation jQuery module. */ (function ($, Drupal, debounce, CKEDITOR) { /** * Attaches jQuery validate behavoir to forms. * * @type {Drupal~behavior} * * @prop {Drupal~behaviorAttach} attach * Attaches the outline behavior to the right context. */ Drupal.behaviors.cvJqueryValidateCKEditor = { attach: function (context) { if (typeof CKEDITOR === 'undefined') { return; } var ignore = ':hidden'; var not = []; for (var instance in CKEDITOR.instances) { if (CKEDITOR.instances.hasOwnProperty(instance)) { not.push('#' + instance); } } ignore += not.length ? ':not(' + not.join(', ') + ')' : ''; $('form').each(function () { var validator = $(this).data('validator'); if (!validator) { return; } validator.settings.ignore = ignore; validator.settings.errorPlacement = function(place, $element) { var id = $element.attr('id'); var afterElement = $element[0]; if (CKEDITOR.instances.hasOwnProperty(id)) { afterElement = CKEDITOR.instances[id].container.$; } place.insertAfter(afterElement); }; }); var updateText = function (instance) { return debounce(function (e) { instance.updateElement(); var event = $.extend(true, {}, e.data.$); delete event.target; delete event.explicitOriginalTarget; delete event.originalTarget; delete event.currentTarget; $(instance.element.$).trigger(new $.Event(e.name, event)); }, 250); }; CKEDITOR.on('instanceReady', function () { for (var instance in CKEDITOR.instances) { if (CKEDITOR.instances.hasOwnProperty(instance)) { CKEDITOR.instances[instance].document.on("keyup", updateText(CKEDITOR.instances[instance])); CKEDITOR.instances[instance].document.on("paste", updateText(CKEDITOR.instances[instance])); CKEDITOR.instances[instance].document.on("keypress", updateText(CKEDITOR.instances[instance])); CKEDITOR.instances[instance].document.on("blur", updateText(CKEDITOR.instances[instance])); CKEDITOR.instances[instance].document.on("change", updateText(CKEDITOR.instances[instance])); } } }); } }; })(jQuery, Drupal, Drupal.debounce, (typeof CKEDITOR === 'undefined') ? undefined : CKEDITOR); ; /* * Superfish v1.4.8 - jQuery menu widget * Copyright (c) 2008 Joel Birch * * Dual licensed under the MIT and GPL licenses: * http://www.opensource.org/licenses/mit-license.php * http://www.gnu.org/licenses/gpl.html * * CHANGELOG: http://users.tpg.com.au/j_birch/plugins/superfish/changelog.txt */ /* * This is not the original jQuery Superfish plugin. * Please refer to the README for more information. */ (function($){ $.fn.superfish = function(op){ var sf = $.fn.superfish, c = sf.c, $arrow = $([' »'].join('')), over = function(){ var $$ = $(this), menu = getMenu($$); clearTimeout(menu.sfTimer); $$.showSuperfishUl().siblings().hideSuperfishUl(); }, out = function(){ var $$ = $(this), menu = getMenu($$), o = sf.op; clearTimeout(menu.sfTimer); menu.sfTimer=setTimeout(function(){ if ($$.children('.sf-clicked').length == 0){ o.retainPath=($.inArray($$[0],o.$path)>-1); $$.hideSuperfishUl(); if (o.$path.length && $$.parents(['li.',o.hoverClass].join('')).length<1){over.call(o.$path);} } },o.delay); }, getMenu = function($menu){ var menu = $menu.parents(['ul.',c.menuClass,':first'].join(''))[0]; sf.op = sf.o[menu.serial]; return menu; }, addArrow = function($a){ $a.addClass(c.anchorClass).append($arrow.clone()); }; return this.each(function() { var s = this.serial = sf.o.length; var o = $.extend({},sf.defaults,op); o.$path = $('li.'+o.pathClass,this).slice(0,o.pathLevels), p = o.$path; for (var l = 0; l < p.length; l++){ p.eq(l).addClass([o.hoverClass,c.bcClass].join(' ')).filter('li:has(ul)').removeClass(o.pathClass); } sf.o[s] = sf.op = o; $('li:has(ul)',this)[($.fn.hoverIntent && !o.disableHI) ? 'hoverIntent' : 'hover'](over,out).each(function() { if (o.autoArrows) addArrow( $(this).children('a:first-child, span.nolink:first-child') ); }) .not('.'+c.bcClass) .hideSuperfishUl(); var $a = $('a, span.nolink',this); $a.each(function(i){ var $li = $a.eq(i).parents('li'); $a.eq(i).focus(function(){over.call($li);}).blur(function(){out.call($li);}); }); o.onInit.call(this); }).each(function() { var menuClasses = [c.menuClass]; if (sf.op.dropShadows){ menuClasses.push(c.shadowClass); } $(this).addClass(menuClasses.join(' ')); }); }; var sf = $.fn.superfish; sf.o = []; sf.op = {}; sf.c = { bcClass: 'sf-breadcrumb', menuClass: 'sf-js-enabled', anchorClass: 'sf-with-ul', arrowClass: 'sf-sub-indicator', shadowClass: 'sf-shadow' }; sf.defaults = { hoverClass: 'sfHover', pathClass: 'overideThisToUse', pathLevels: 1, delay: 800, animation: {opacity:'show'}, speed: 'fast', autoArrows: true, dropShadows: true, disableHI: false, // true disables hoverIntent detection onInit: function(){}, // callback functions onBeforeShow: function(){}, onShow: function(){}, onHide: function(){} }; $.fn.extend({ hideSuperfishUl : function(){ var o = sf.op, not = (o.retainPath===true) ? o.$path : ''; o.retainPath = false; var $ul = $(['li.',o.hoverClass].join(''),this).add(this).not(not).removeClass(o.hoverClass) .children('ul').addClass('sf-hidden'); o.onHide.call($ul); return this; }, showSuperfishUl : function(){ var o = sf.op, sh = sf.c.shadowClass+'-off', $ul = this.addClass(o.hoverClass) .children('ul.sf-hidden').hide().removeClass('sf-hidden'); o.onBeforeShow.call($ul); $ul.animate(o.animation,o.speed,function(){ o.onShow.call($ul); }); return this; } }); })(jQuery);; /*! * hoverIntent v1.8.0 // 2014.06.29 // jQuery v1.9.1+ * http://cherne.net/brian/resources/jquery.hoverIntent.html * * You may use hoverIntent under the terms of the MIT license. Basically that * means you are free to use hoverIntent as long as this header is left intact. * Copyright 2007, 2014 Brian Cherne */ (function($){$.fn.hoverIntent=function(handlerIn,handlerOut,selector){var cfg={interval:100,sensitivity:6,timeout:0};if(typeof handlerIn==="object"){cfg=$.extend(cfg,handlerIn)}else{if($.isFunction(handlerOut)){cfg=$.extend(cfg,{over:handlerIn,out:handlerOut,selector:selector})}else{cfg=$.extend(cfg,{over:handlerIn,out:handlerIn,selector:handlerOut})}}var cX,cY,pX,pY;var track=function(ev){cX=ev.pageX;cY=ev.pageY};var compare=function(ev,ob){ob.hoverIntent_t=clearTimeout(ob.hoverIntent_t);if(Math.sqrt((pX-cX)*(pX-cX)+(pY-cY)*(pY-cY)) 0){ mm.removeClass('sf-multicolumn'); var ol = refined.find('div.sf-multicolumn-column > ol'); for (var o = 0; o < ol.length; o++){ ol.eq(o).replaceWith(''); } var elements = ['div.sf-multicolumn-column','.sf-multicolumn-wrapper > ol','li.sf-multicolumn-wrapper']; for (var i = 0; i < elements.length; i++){ obj = refined.find(elements[i]); for (var t = 0; t < obj.length; t++){ obj.eq(t).replaceWith(obj.eq(t).html()); } } refined.find('.sf-multicolumn-column').removeClass('sf-multicolumn-column'); } refined.add(refined.find('*')).css({width:''}); return refined; } // Creating ', childUL = list.find('> ul'); // Using the function for the sub-menu of this item. for (var u = 0; u < childUL.length; u++){ items += toSelect(childUL.eq(u), level + 1); } } } return items; } // Create the new version, hide the original. function convert(menu){ var menuID = menu.attr('id'), // Creating a refined version of the menu. refinedMenu = refine(menu); // Currently the plugin provides two reactions to small screens. // Converting the menu to a element does not exist already. if ($('#' + menuID + '-select').length == 0){ // Creating the