").append(n.parseHTML(a)).find(d):a)}).always(c&&function(a,b){g.each(function(){c.apply(this,f||[a.responseText,b,a])})}),this},n.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(a,b){n.fn[b]=function(a){return this.on(b,a)}}),n.expr.filters.animated=function(a){return n.grep(n.timers,function(b){return a===b.elem}).length};function mc(a){return n.isWindow(a)?a:9===a.nodeType?a.defaultView||a.parentWindow:!1}n.offset={setOffset:function(a,b,c){var d,e,f,g,h,i,j,k=n.css(a,"position"),l=n(a),m={};"static"===k&&(a.style.position="relative"),h=l.offset(),f=n.css(a,"top"),i=n.css(a,"left"),j=("absolute"===k||"fixed"===k)&&n.inArray("auto",[f,i])>-1,j?(d=l.position(),g=d.top,e=d.left):(g=parseFloat(f)||0,e=parseFloat(i)||0),n.isFunction(b)&&(b=b.call(a,c,n.extend({},h))),null!=b.top&&(m.top=b.top-h.top+g),null!=b.left&&(m.left=b.left-h.left+e),"using"in b?b.using.call(a,m):l.css(m)}},n.fn.extend({offset:function(a){if(arguments.length)return void 0===a?this:this.each(function(b){n.offset.setOffset(this,a,b)});var b,c,d={top:0,left:0},e=this[0],f=e&&e.ownerDocument;if(f)return b=f.documentElement,n.contains(b,e)?("undefined"!=typeof e.getBoundingClientRect&&(d=e.getBoundingClientRect()),c=mc(f),{top:d.top+(c.pageYOffset||b.scrollTop)-(b.clientTop||0),left:d.left+(c.pageXOffset||b.scrollLeft)-(b.clientLeft||0)}):d},position:function(){if(this[0]){var a,b,c={top:0,left:0},d=this[0];return"fixed"===n.css(d,"position")?b=d.getBoundingClientRect():(a=this.offsetParent(),b=this.offset(),n.nodeName(a[0],"html")||(c=a.offset()),c.top+=n.css(a[0],"borderTopWidth",!0),c.left+=n.css(a[0],"borderLeftWidth",!0)),{top:b.top-c.top-n.css(d,"marginTop",!0),left:b.left-c.left-n.css(d,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var a=this.offsetParent;while(a&&!n.nodeName(a,"html")&&"static"===n.css(a,"position"))a=a.offsetParent;return a||Qa})}}),n.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(a,b){var c=/Y/.test(b);n.fn[a]=function(d){return Y(this,function(a,d,e){var f=mc(a);return void 0===e?f?b in f?f[b]:f.document.documentElement[d]:a[d]:void(f?f.scrollTo(c?n(f).scrollLeft():e,c?e:n(f).scrollTop()):a[d]=e)},a,d,arguments.length,null)}}),n.each(["top","left"],function(a,b){n.cssHooks[b]=Ua(l.pixelPosition,function(a,c){return c?(c=Sa(a,b),Oa.test(c)?n(a).position()[b]+"px":c):void 0})}),n.each({Height:"height",Width:"width"},function(a,b){n.each({
padding:"inner"+a,content:b,"":"outer"+a},function(c,d){n.fn[d]=function(d,e){var f=arguments.length&&(c||"boolean"!=typeof d),g=c||(d===!0||e===!0?"margin":"border");return Y(this,function(b,c,d){var e;return n.isWindow(b)?b.document.documentElement["client"+a]:9===b.nodeType?(e=b.documentElement,Math.max(b.body["scroll"+a],e["scroll"+a],b.body["offset"+a],e["offset"+a],e["client"+a])):void 0===d?n.css(b,c,g):n.style(b,c,d,g)},b,f?d:void 0,f,null)}})}),n.fn.extend({bind:function(a,b,c){return this.on(a,null,b,c)},unbind:function(a,b){return this.off(a,null,b)},delegate:function(a,b,c,d){return this.on(b,a,c,d)},undelegate:function(a,b,c){return 1===arguments.length?this.off(a,"**"):this.off(b,a||"**",c)}}),n.fn.size=function(){return this.length},n.fn.andSelf=n.fn.addBack,"function"==typeof define&&define.amd&&define("jquery",[],function(){return n});var nc=a.jQuery,oc=a.$;return n.noConflict=function(b){return a.$===n&&(a.$=oc),b&&a.jQuery===n&&(a.jQuery=nc),n},b||(a.jQuery=a.$=n),n});/*!
* jQuery Cycle2; version: 2.1.6 build: 20141007
* http://jquery.malsup.com/cycle2/
* Copyright (c) 2014 M. Alsup; Dual licensed: MIT/GPL
*/
/* Cycle2 core engine */
;(function($) {
"use strict";
var version = '2.1.6';
$.fn.cycle = function( options ) {
// fix mistakes with the ready state
var o;
if ( this.length === 0 && !$.isReady ) {
o = { s: this.selector, c: this.context };
$.fn.cycle.log('requeuing slideshow (dom not ready)');
$(function() {
$( o.s, o.c ).cycle(options);
});
return this;
}
return this.each(function() {
var data, opts, shortName, val;
var container = $(this);
var log = $.fn.cycle.log;
if ( container.data('cycle.opts') )
return; // already initialized
if ( container.data('cycle-log') === false ||
( options && options.log === false ) ||
( opts && opts.log === false) ) {
log = $.noop;
}
log('--c2 init--');
data = container.data();
for (var p in data) {
// allow props to be accessed sans 'cycle' prefix and log the overrides
if (data.hasOwnProperty(p) && /^cycle[A-Z]+/.test(p) ) {
val = data[p];
shortName = p.match(/^cycle(.*)/)[1].replace(/^[A-Z]/, lowerCase);
log(shortName+':', val, '('+typeof val +')');
data[shortName] = val;
}
}
opts = $.extend( {}, $.fn.cycle.defaults, data, options || {});
opts.timeoutId = 0;
opts.paused = opts.paused || false; // #57
opts.container = container;
opts._maxZ = opts.maxZ;
opts.API = $.extend ( { _container: container }, $.fn.cycle.API );
opts.API.log = log;
opts.API.trigger = function( eventName, args ) {
opts.container.trigger( eventName, args );
return opts.API;
};
container.data( 'cycle.opts', opts );
container.data( 'cycle.API', opts.API );
// opportunity for plugins to modify opts and API
opts.API.trigger('cycle-bootstrap', [ opts, opts.API ]);
opts.API.addInitialSlides();
opts.API.preInitSlideshow();
if ( opts.slides.length )
opts.API.initSlideshow();
});
};
$.fn.cycle.API = {
opts: function() {
return this._container.data( 'cycle.opts' );
},
addInitialSlides: function() {
var opts = this.opts();
var slides = opts.slides;
opts.slideCount = 0;
opts.slides = $(); // empty set
// add slides that already exist
slides = slides.jquery ? slides : opts.container.find( slides );
if ( opts.random ) {
slides.sort(function() {return Math.random() - 0.5;});
}
opts.API.add( slides );
},
preInitSlideshow: function() {
var opts = this.opts();
opts.API.trigger('cycle-pre-initialize', [ opts ]);
var tx = $.fn.cycle.transitions[opts.fx];
if (tx && $.isFunction(tx.preInit))
tx.preInit( opts );
opts._preInitialized = true;
},
postInitSlideshow: function() {
var opts = this.opts();
opts.API.trigger('cycle-post-initialize', [ opts ]);
var tx = $.fn.cycle.transitions[opts.fx];
if (tx && $.isFunction(tx.postInit))
tx.postInit( opts );
},
initSlideshow: function() {
var opts = this.opts();
var pauseObj = opts.container;
var slideOpts;
opts.API.calcFirstSlide();
if ( opts.container.css('position') == 'static' )
opts.container.css('position', 'relative');
$(opts.slides[opts.currSlide]).css({
opacity: 1,
display: 'block',
visibility: 'visible'
});
opts.API.stackSlides( opts.slides[opts.currSlide], opts.slides[opts.nextSlide], !opts.reverse );
if ( opts.pauseOnHover ) {
// allow pauseOnHover to specify an element
if ( opts.pauseOnHover !== true )
pauseObj = $( opts.pauseOnHover );
pauseObj.hover(
function(){ opts.API.pause( true ); },
function(){ opts.API.resume( true ); }
);
}
// stage initial transition
if ( opts.timeout ) {
slideOpts = opts.API.getSlideOpts( opts.currSlide );
opts.API.queueTransition( slideOpts, slideOpts.timeout + opts.delay );
}
opts._initialized = true;
opts.API.updateView( true );
opts.API.trigger('cycle-initialized', [ opts ]);
opts.API.postInitSlideshow();
},
pause: function( hover ) {
var opts = this.opts(),
slideOpts = opts.API.getSlideOpts(),
alreadyPaused = opts.hoverPaused || opts.paused;
if ( hover )
opts.hoverPaused = true;
else
opts.paused = true;
if ( ! alreadyPaused ) {
opts.container.addClass('cycle-paused');
opts.API.trigger('cycle-paused', [ opts ]).log('cycle-paused');
if ( slideOpts.timeout ) {
clearTimeout( opts.timeoutId );
opts.timeoutId = 0;
// determine how much time is left for the current slide
opts._remainingTimeout -= ( $.now() - opts._lastQueue );
if ( opts._remainingTimeout < 0 || isNaN(opts._remainingTimeout) )
opts._remainingTimeout = undefined;
}
}
},
resume: function( hover ) {
var opts = this.opts(),
alreadyResumed = !opts.hoverPaused && !opts.paused,
remaining;
if ( hover )
opts.hoverPaused = false;
else
opts.paused = false;
if ( ! alreadyResumed ) {
opts.container.removeClass('cycle-paused');
// #gh-230; if an animation is in progress then don't queue a new transition; it will
// happen naturally
if ( opts.slides.filter(':animated').length === 0 )
opts.API.queueTransition( opts.API.getSlideOpts(), opts._remainingTimeout );
opts.API.trigger('cycle-resumed', [ opts, opts._remainingTimeout ] ).log('cycle-resumed');
}
},
add: function( slides, prepend ) {
var opts = this.opts();
var oldSlideCount = opts.slideCount;
var startSlideshow = false;
var len;
if ( $.type(slides) == 'string')
slides = $.trim( slides );
$( slides ).each(function(i) {
var slideOpts;
var slide = $(this);
if ( prepend )
opts.container.prepend( slide );
else
opts.container.append( slide );
opts.slideCount++;
slideOpts = opts.API.buildSlideOpts( slide );
if ( prepend )
opts.slides = $( slide ).add( opts.slides );
else
opts.slides = opts.slides.add( slide );
opts.API.initSlide( slideOpts, slide, --opts._maxZ );
slide.data('cycle.opts', slideOpts);
opts.API.trigger('cycle-slide-added', [ opts, slideOpts, slide ]);
});
opts.API.updateView( true );
startSlideshow = opts._preInitialized && (oldSlideCount < 2 && opts.slideCount >= 1);
if ( startSlideshow ) {
if ( !opts._initialized )
opts.API.initSlideshow();
else if ( opts.timeout ) {
len = opts.slides.length;
opts.nextSlide = opts.reverse ? len - 1 : 1;
if ( !opts.timeoutId ) {
opts.API.queueTransition( opts );
}
}
}
},
calcFirstSlide: function() {
var opts = this.opts();
var firstSlideIndex;
firstSlideIndex = parseInt( opts.startingSlide || 0, 10 );
if (firstSlideIndex >= opts.slides.length || firstSlideIndex < 0)
firstSlideIndex = 0;
opts.currSlide = firstSlideIndex;
if ( opts.reverse ) {
opts.nextSlide = firstSlideIndex - 1;
if (opts.nextSlide < 0)
opts.nextSlide = opts.slides.length - 1;
}
else {
opts.nextSlide = firstSlideIndex + 1;
if (opts.nextSlide == opts.slides.length)
opts.nextSlide = 0;
}
},
calcNextSlide: function() {
var opts = this.opts();
var roll;
if ( opts.reverse ) {
roll = (opts.nextSlide - 1) < 0;
opts.nextSlide = roll ? opts.slideCount - 1 : opts.nextSlide-1;
opts.currSlide = roll ? 0 : opts.nextSlide+1;
}
else {
roll = (opts.nextSlide + 1) == opts.slides.length;
opts.nextSlide = roll ? 0 : opts.nextSlide+1;
opts.currSlide = roll ? opts.slides.length-1 : opts.nextSlide-1;
}
},
calcTx: function( slideOpack():b.jsonpCallback,h?b[h]=b[h].replace(kc,"$1"+e):b.jsonp!==!1&&(b.url+=(Fb.test(b.url)?"&":"?")+b.jsonp+"="+e),b.converters["script json"]=function(){return g||n.error(e+" was not called"),g[0]},b.dataTypes[0]="json",f=a[e],a[e]=function(){g=arguments},d.always(function(){void 0===f?n(a).removeProp(e):a[e]=f,b[e]&&(b.jsonpCallback=c.jsonpCallback,jc.push(e)),g&&n.isFunction(f)&&f(g[0]),g=f=void 0}),"script"):void 0}),n.parseHTML=function(a,b,c){if(!a||"string"!=typeof a)return null;"boolean"==typeof b&&(c=b,b=!1),b=b||d;var e=x.exec(a),f=!c&&[];return e?[b.createElement(e[1])]:(e=ja([a],b,f),f&&f.length&&n(f).remove(),n.merge([],e.childNodes))};var lc=n.fn.load;n.fn.load=function(a,b,c){if("string"!=typeof a&&lc)return lc.apply(this,arguments);var d,e,f,g=this,h=a.indexOf(" ");return h>-1&&(d=n.trim(a.slice(h,a.length)),a=a.slice(0,h)),n.isFunction(b)?(c=b,b=void 0):b&&"object"==typeof b&&(e="POST"),g.length>0&&n.ajax({url:a,type:e||"GET",dataType:"html",data:b}).done(function(a){f=arguments,g.html(d?n("
").append(n.parseHTML(a)).find(d):a)}).always(c&&function(a,b){g.each(function(){c.apply(this,f||[a.responseText,b,a])})}),this},n.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(a,b){n.fn[b]=function(a){return this.on(b,a)}}),n.expr.filters.animated=function(a){return n.grep(n.timers,function(b){return a===b.elem}).length};function mc(a){return n.isWindow(a)?a:9===a.nodeType?a.defaultView||a.parentWindow:!1}n.offset={setOffset:function(a,b,c){var d,e,f,g,h,i,j,k=n.css(a,"position"),l=n(a),m={};"static"===k&&(a.style.position="relative"),h=l.offset(),f=n.css(a,"top"),i=n.css(a,"left"),j=("absolute"===k||"fixed"===k)&&n.inArray("auto",[f,i])>-1,j?(d=l.position(),g=d.top,e=d.left):(g=parseFloat(f)||0,e=parseFloat(i)||0),n.isFunction(b)&&(b=b.call(a,c,n.extend({},h))),null!=b.top&&(m.top=b.top-h.top+g),null!=b.left&&(m.left=b.left-h.left+e),"using"in b?b.using.call(a,m):l.css(m)}},n.fn.extend({offset:function(a){if(arguments.length)return void 0===a?this:this.each(function(b){n.offset.setOffset(this,a,b)});var b,c,d={top:0,left:0},e=this[0],f=e&&e.ownerDocument;if(f)return b=f.documentElement,n.contains(b,e)?("undefined"!=typeof e.getBoundingClientRect&&(d=e.getBoundingClientRect()),c=mc(f),{top:d.top+(c.pageYOffset||b.scrollTop)-(b.clientTop||0),left:d.left+(c.pageXOffset||b.scrollLeft)-(b.clientLeft||0)}):d},position:function(){if(this[0]){var a,b,c={top:0,left:0},d=this[0];return"fixed"===n.css(d,"position")?b=d.getBoundingClientRect():(a=this.offsetParent(),b=this.offset(),n.nodeName(a[0],"html")||(c=a.offset()),c.top+=n.css(a[0],"borderTopWidth",!0),c.left+=n.css(a[0],"borderLeftWidth",!0)),{top:b.top-c.top-n.css(d,"marginTop",!0),left:b.left-c.left-n.css(d,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var a=this.offsetParent;while(a&&!n.nodeName(a,"html")&&"static"===n.css(a,"position"))a=a.offsetParent;return a||Qa})}}),n.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(a,b){var c=/Y/.test(b);n.fn[a]=function(d){return Y(this,function(a,d,e){var f=mc(a);return void 0===e?f?b in f?f[b]:f.document.documentElement[d]:a[d]:void(f?f.scrollTo(c?n(f).scrollLeft():e,c?e:n(f).scrollTop()):a[d]=e)},a,d,arguments.length,null)}}),n.each(["top","left"],function(a,b){n.cssHooks[b]=Ua(l.pixelPosition,function(a,c){return c?(c=Sa(a,b),Oa.test(c)?n(a).position()[b]+"px":c):void 0})}),n.each({Height:"height",Width:"width"},function(a,b){n.each({
padding:"inner"+a,content:b,"":"outer"+a},function(c,d){n.fn[d]=function(d,e){var f=arguments.length&&(c||"boolean"!=typeof d),g=c||(d===!0||e===!0?"margin":"border");return Y(this,function(b,c,d){var e;return n.isWindow(b)?b.document.documentElement["client"+a]:9===b.nodeType?(e=b.documentElement,Math.max(b.body["scroll"+a],e["scroll"+a],b.body["offset"+a],e["offset"+a],e["client"+a])):void 0===d?n.css(b,c,g):n.style(b,c,d,g)},b,f?d:void 0,f,null)}})}),n.fn.extend({bind:function(a,b,c){return this.on(a,null,b,c)},unbind:function(a,b){return this.off(a,null,b)},delegate:function(a,b,c,d){return this.on(b,a,c,d)},undelegate:function(a,b,c){return 1===arguments.length?this.off(a,"**"):this.off(b,a||"**",c)}}),n.fn.size=function(){return this.length},n.fn.andSelf=n.fn.addBack,"function"==typeof define&&define.amd&&define("jquery",[],function(){return n});var nc=a.jQuery,oc=a.$;return n.noConflict=function(b){return a.$===n&&(a.$=oc),b&&a.jQuery===n&&(a.jQuery=nc),n},b||(a.jQuery=a.$=n),n});/*!
* jQuery Cycle2; version: 2.1.6 build: 20141007
* http://jquery.malsup.com/cycle2/
* Copyright (c) 2014 M. Alsup; Dual licensed: MIT/GPL
*/
/* Cycle2 core engine */
;(function($) {
"use strict";
var version = '2.1.6';
$.fn.cycle = function( options ) {
// fix mistakes with the ready state
var o;
if ( this.length === 0 && !$.isReady ) {
o = { s: this.selector, c: this.context };
$.fn.cycle.log('requeuing slideshow (dom not ready)');
$(function() {
$( o.s, o.c ).cycle(options);
});
return this;
}
return this.each(function() {
var data, opts, shortName, val;
var container = $(this);
var log = $.fn.cycle.log;
if ( container.data('cycle.opts') )
return; // already initialized
if ( container.data('cycle-log') === false ||
( options && options.log === false ) ||
( opts && opts.log === false) ) {
log = $.noop;
}
log('--c2 init--');
data = container.data();
for (var p in data) {
// allow props to be accessed sans 'cycle' prefix and log the overrides
if (data.hasOwnProperty(p) && /^cycle[A-Z]+/.test(p) ) {
val = data[p];
shortName = p.match(/^cycle(.*)/)[1].replace(/^[A-Z]/, lowerCase);
log(shortName+':', val, '('+typeof val +')');
data[shortName] = val;
}
}
opts = $.extend( {}, $.fn.cycle.defaults, data, options || {});
opts.timeoutId = 0;
opts.paused = opts.paused || false; // #57
opts.container = container;
opts._maxZ = opts.maxZ;
opts.API = $.extend ( { _container: container }, $.fn.cycle.API );
opts.API.log = log;
opts.API.trigger = function( eventName, args ) {
opts.container.trigger( eventName, args );
return opts.API;
};
container.data( 'cycle.opts', opts );
container.data( 'cycle.API', opts.API );
// opportunity for plugins to modify opts and API
opts.API.trigger('cycle-bootstrap', [ opts, opts.API ]);
opts.API.addInitialSlides();
opts.API.preInitSlideshow();
if ( opts.slides.length )
opts.API.initSlideshow();
});
};
$.fn.cycle.API = {
opts: function() {
return this._container.data( 'cycle.opts' );
},
addInitialSlides: function() {
var opts = this.opts();
var slides = opts.slides;
opts.slideCount = 0;
opts.slides = $(); // empty set
// add slides that already exist
slides = slides.jquery ? slides : opts.container.find( slides );
if ( opts.random ) {
slides.sort(function() {return Math.random() - 0.5;});
}
opts.API.add( slides );
},
preInitSlideshow: function() {
var opts = this.opts();
opts.API.trigger('cycle-pre-initialize', [ opts ]);
var tx = $.fn.cycle.transitions[opts.fx];
if (tx && $.isFunction(tx.preInit))
tx.preInit( opts );
opts._preInitialized = true;
},
postInitSlideshow: function() {
var opts = this.opts();
opts.API.trigger('cycle-post-initialize', [ opts ]);
var tx = $.fn.cycle.transitions[opts.fx];
if (tx && $.isFunction(tx.postInit))
tx.postInit( opts );
},
initSlideshow: function() {
var opts = this.opts();
var pauseObj = opts.container;
var slideOpts;
opts.API.calcFirstSlide();
if ( opts.container.css('position') == 'static' )
opts.container.css('position', 'relative');
$(opts.slides[opts.currSlide]).css({
opacity: 1,
display: 'block',
visibility: 'visible'
});
opts.API.stackSlides( opts.slides[opts.currSlide], opts.slides[opts.nextSlide], !opts.reverse );
if ( opts.pauseOnHover ) {
// allow pauseOnHover to specify an element
if ( opts.pauseOnHover !== true )
pauseObj = $( opts.pauseOnHover );
pauseObj.hover(
function(){ opts.API.pause( true ); },
function(){ opts.API.resume( true ); }
);
}
// stage initial transition
if ( opts.timeout ) {
slideOpts = opts.API.getSlideOpts( opts.currSlide );
opts.API.queueTransition( slideOpts, slideOpts.timeout + opts.delay );
}
opts._initialized = true;
opts.API.updateView( true );
opts.API.trigger('cycle-initialized', [ opts ]);
opts.API.postInitSlideshow();
},
pause: function( hover ) {
var opts = this.opts(),
slideOpts = opts.API.getSlideOpts(),
alreadyPaused = opts.hoverPaused || opts.paused;
if ( hover )
opts.hoverPaused = true;
else
opts.paused = true;
if ( ! alreadyPaused ) {
opts.container.addClass('cycle-paused');
opts.API.trigger('cycle-paused', [ opts ]).log('cycle-paused');
if ( slideOpts.timeout ) {
clearTimeout( opts.timeoutId );
opts.timeoutId = 0;
// determine how much time is left for the current slide
opts._remainingTimeout -= ( $.now() - opts._lastQueue );
if ( opts._remainingTimeout < 0 || isNaN(opts._remainingTimeout) )
opts._remainingTimeout = undefined;
}
}
},
resume: function( hover ) {
var opts = this.opts(),
alreadyResumed = !opts.hoverPaused && !opts.paused,
remaining;
if ( hover )
opts.hoverPaused = false;
else
opts.paused = false;
if ( ! alreadyResumed ) {
opts.container.removeClass('cycle-paused');
// #gh-230; if an animation is in progress then don't queue a new transition; it will
// happen naturally
if ( opts.slides.filter(':animated').length === 0 )
opts.API.queueTransition( opts.API.getSlideOpts(), opts._remainingTimeout );
opts.API.trigger('cycle-resumed', [ opts, opts._remainingTimeout ] ).log('cycle-resumed');
}
},
add: function( slides, prepend ) {
var opts = this.opts();
var oldSlideCount = opts.slideCount;
var startSlideshow = false;
var len;
if ( $.type(slides) == 'string')
slides = $.trim( slides );
$( slides ).each(function(i) {
var slideOpts;
var slide = $(this);
if ( prepend )
opts.container.prepend( slide );
else
opts.container.append( slide );
opts.slideCount++;
slideOpts = opts.API.buildSlideOpts( slide );
if ( prepend )
opts.slides = $( slide ).add( opts.slides );
else
opts.slides = opts.slides.add( slide );
opts.API.initSlide( slideOpts, slide, --opts._maxZ );
slide.data('cycle.opts', slideOpts);
opts.API.trigger('cycle-slide-added', [ opts, slideOpts, slide ]);
});
opts.API.updateView( true );
startSlideshow = opts._preInitialized && (oldSlideCount < 2 && opts.slideCount >= 1);
if ( startSlideshow ) {
if ( !opts._initialized )
opts.API.initSlideshow();
else if ( opts.timeout ) {
len = opts.slides.length;
opts.nextSlide = opts.reverse ? len - 1 : 1;
if ( !opts.timeoutId ) {
opts.API.queueTransition( opts );
}
}
}
},
calcFirstSlide: function() {
var opts = this.opts();
var firstSlideIndex;
firstSlideIndex = parseInt( opts.startingSlide || 0, 10 );
if (firstSlideIndex >= opts.slides.length || firstSlideIndex < 0)
firstSlideIndex = 0;
opts.currSlide = firstSlideIndex;
if ( opts.reverse ) {
opts.nextSlide = firstSlideIndex - 1;
if (opts.nextSlide < 0)
opts.nextSlide = opts.slides.length - 1;
}
else {
opts.nextSlide = firstSlideIndex + 1;
if (opts.nextSlide == opts.slides.length)
opts.nextSlide = 0;
}
},
calcNextSlide: function() {
var opts = this.opts();
var roll;
if ( opts.reverse ) {
roll = (opts.nextSlide - 1) < 0;
opts.nextSlide = roll ? opts.slideCount - 1 : opts.nextSlide-1;
opts.currSlide = roll ? 0 : opts.nextSlide+1;
}
else {
roll = (opts.nextSlide + 1) == opts.slides.length;
opts.nextSlide = roll ? 0 : opts.nextSlide+1;
opts.currSlide = roll ? opts.slides.length-1 : opts.nextSlide-1;
}
},
calcTx: function( slideOpts, manual ) {
var opts = slideOpts;
var tx;
if ( opts._tempFx )
tx = $.fn.cycle.transitions[opts._tempFx];
else if ( manual && opts.manualFx )
tx = $.fn.cycle.transitions[opts.manualFx];
if ( !tx )
tx = $.fn.cycle.transitions[opts.fx];
opts._tempFx = null;
this.opts()._tempFx = null;
if (!tx) {
tx = $.fn.cycle.transitions.fade;
opts.API.log('Transition "' + opts.fx + '" not found. Using fade.');
}
return tx;
},
prepareTx: function( manual, fwd ) {
var opts = this.opts();
var after, curr, next, slideOpts, tx;
if ( opts.slideCount < 2 ) {
opts.timeoutId = 0;
return;
}
if ( manual && ( !opts.busy || opts.manualTrump ) ) {
opts.API.stopTransition();
opts.busy = false;
clearTimeout(opts.timeoutId);
opts.timeoutId = 0;
}
if ( opts.busy )
return;
if ( opts.timeoutId === 0 && !manual )
return;
curr = opts.slides[opts.currSlide];
next = opts.slides[opts.nextSlide];
slideOpts = opts.API.getSlideOpts( opts.nextSlide );
tx = opts.API.calcTx( slideOpts, manual );
opts._tx = tx;
if ( manual && slideOpts.manualSpeed !== undefined )
slideOpts.speed = slideOpts.manualSpeed;
// if ( opts.nextSlide === opts.currSlide )
// opts.API.calcNextSlide();
// ensure that:
// 1. advancing to a different slide
// 2. this is either a manual event (prev/next, pager, cmd) or
// a timer event and slideshow is not paused
if ( opts.nextSlide != opts.currSlide &&
(manual || (!opts.paused && !opts.hoverPaused && opts.timeout) )) { // #62
opts.API.trigger('cycle-before', [ slideOpts, curr, next, fwd ]);
if ( tx.before )
tx.before( slideOpts, curr, next, fwd );
after = function() {
opts.busy = false;
// #76; bail if slideshow has been destroyed
if (! opts.container.data( 'cycle.opts' ) )
return;
if (tx.after)
tx.after( slideOpts, curr, next, fwd );
opts.API.trigger('cycle-after', [ slideOpts, curr, next, fwd ]);
opts.API.queueTransition( slideOpts);
opts.API.updateView( true );
};
opts.busy = true;
if (tx.transition)
tx.transition(slideOpts, curr, next, fwd, after);
else
opts.API.doTransition( slideOpts, curr, next, fwd, after);
opts.API.calcNextSlide();
opts.API.updateView();
} else {
opts.API.queueTransition( slideOpts );
}
},
// perform the actual animation
doTransition: function( slideOpts, currEl, nextEl, fwd, callback) {
var opts = slideOpts;
var curr = $(currEl), next = $(nextEl);
var fn = function() {
// make sure animIn has something so that callback doesn't trigger immediately
next.animate(opts.animIn || { opacity: 1}, opts.speed, opts.easeIn || opts.easing, callback);
};
next.css(opts.cssBefore || {});
curr.animate(opts.animOut || {}, opts.speed, opts.easeOut || opts.easing, function() {
curr.css(opts.cssAfter || {});
if (!opts.sync) {
fn();
}
});
if (opts.sync) {
fn();
}
},
queueTransition: function( slideOpts, specificTimeout ) {
var opts = this.opts();
var timeout = specificTimeout !== undefined ? specificTimeout : slideOpts.timeout;
if (opts.nextSlide === 0 && --opts.loop === 0) {
opts.API.log('terminating; loop=0');
opts.timeout = 0;
if ( timeout ) {
setTimeout(function() {
opts.API.trigger('cycle-finished', [ opts ]);
}, timeout);
}
else {
opts.API.trigger('cycle-finished', [ opts ]);
}
// reset nextSlide
opts.nextSlide = opts.currSlide;
return;
}
if ( opts.continueAuto !== undefined ) {
if ( opts.continueAuto === false ||
(.each(['caption','overlay'], function() {
var name = this;
var template = slideOpts[name+'Template'];
var el = opts.API.getComponent( name );
if( el.length && template ) {
el.html( opts.API.tmpl( template, slideOpts, opts, currSlide ) );
el.show();
}
else {
el.hide();
}
});
});
$(document).on( 'cycle-destroyed', function( e, opts ) {
var el;
$.each(['caption','overlay'], function() {
var name = this, template = opts[name+'Template'];
if ( opts[name] && template ) {
el = opts.API.getComponent( 'caption' );
el.empty();
}
});
});
})(jQuery);
/*! command plugin for Cycle2; version: 20140415 */
(function($) {
"use strict";
var c2 = $.fn.cycle;
$.fn.cycle = function( options ) {
var cmd, cmdFn, opts;
var args = $.makeArray( arguments );
if ( $.type( options ) == 'number' ) {
return this.cycle( 'goto', options );
}
if ( $.type( options ) == 'string' ) {
return this.each(function() {
var cmdArgs;
cmd = options;
opts = $(this).data('cycle.opts');
if ( opts === undefined ) {
c2.log('slideshow must be initialized before sending commands; "' + cmd + '" ignored');
return;
}
else {
cmd = cmd == 'goto' ? 'jump' : cmd; // issue #3; change 'goto' to 'jump' internally
cmdFn = opts.API[ cmd ];
if ( $.isFunction( cmdFn )) {
cmdArgs = $.makeArray( args );
cmdArgs.shift();
return cmdFn.apply( opts.API, cmdArgs );
}
else {
c2.log( 'unknown command: ', cmd );
}
}
});
}
else {
return c2.apply( this, arguments );
}
};
// copy props
$.extend( $.fn.cycle, c2 );
$.extend( c2.API, {
next: function() {
var opts = this.opts();
if ( opts.busy && ! opts.manualTrump )
return;
var count = opts.reverse ? -1 : 1;
if ( opts.allowWrap === false && ( opts.currSlide + count ) >= opts.slideCount )
return;
opts.API.advanceSlide( count );
opts.API.trigger('cycle-next', [ opts ]).log('cycle-next');
},
prev: function() {
var opts = this.opts();
if ( opts.busy && ! opts.manualTrump )
return;
var count = opts.reverse ? 1 : -1;
if ( opts.allowWrap === false && ( opts.currSlide + count ) < 0 )
return;
opts.API.advanceSlide( count );
opts.API.trigger('cycle-prev', [ opts ]).log('cycle-prev');
},
destroy: function() {
this.stop(); //#204
var opts = this.opts();
var clean = $.isFunction( $._data ) ? $._data : $.noop; // hack for #184 and #201
clearTimeout(opts.timeoutId);
opts.timeoutId = 0;
opts.API.stop();
opts.API.trigger( 'cycle-destroyed', [ opts ] ).log('cycle-destroyed');
opts.container.removeData();
clean( opts.container[0], 'parsedAttrs', false );
// #75; remove inline styles
if ( ! opts.retainStylesOnDestroy ) {
opts.container.removeAttr( 'style' );
opts.slides.removeAttr( 'style' );
opts.slides.removeClass( opts.slideActiveClass );
}
opts.slides.each(function() {
var slide = $(this);
slide.removeData();
slide.removeClass( opts.slideClass );
clean( this, 'parsedAttrs', false );
});
},
jump: function( index, fx ) {
// go to the requested slide
var fwd;
var opts = this.opts();
if ( opts.busy && ! opts.manualTrump )
return;
var num = parseInt( index, 10 );
if (isNaN(num) || num < 0 || num >= opts.slides.length) {
opts.API.log('goto: invalid slide index: ' + num);
return;
}
if (num == opts.currSlide) {
opts.API.log('goto: skipping, already on slide', num);
return;
}
opts.nextSlide = num;
clearTimeout(opts.timeoutId);
opts.timeoutId = 0;
opts.API.log('goto: ', num, ' (zero-index)');
fwd = opts.currSlide < opts.nextSlide;
opts._tempFx = fx;
opts.API.prepareTx( true, fwd );
},
stop: function() {
var opts = this.opts();
var pauseObj = opts.container;
clearTimeout(opts.timeoutId);
opts.timeoutId = 0;
opts.API.stopTransition();
if ( opts.pauseOnHover ) {
if ( opts.pauseOnHover !== true )
pauseObj = $( opts.pauseOnHover );
pauseObj.off('mouseenter mouseleave');
}
opts.API.trigger('cycle-stopped', [ opts ]).log('cycle-stopped');
},
reinit: function() {
var opts = this.opts();
opts.API.destroy();
opts.container.cycle();
},
remove: function( index ) {
var opts = this.opts();
var slide, slideToRemove, slides = [], slideNum = 1;
for ( var i=0; i < opts.slides.length; i++ ) {
slide = opts.slides[i];
if ( i == index ) {
slideToRemove = slide;
}
else {
slides.push( slide );
$( slide ).data('cycle.opts').slideNum = slideNum;
slideNum++;
}
}
if ( slideToRemove ) {
opts.slides = $( slides );
opts.slideCount--;
$( slideToRemove ).remove();
if (index == opts.currSlide)
opts.API.advanceSlide( 1 );
else if ( index < opts.currSlide )
opts.currSlide--;
else
opts.currSlide++;
opts.API.trigger('cycle-slide-removed', [ opts, index, slideToRemove ]).log('cycle-slide-removed');
opts.API.updateView();
}
}
});
// listen for clicks on elements with data-cycle-cmd attribute
$(document).on('click.cycle', '[data-cycle-cmd]', function(e) {
// issue cycle command
e.preventDefault();
var el = $(this);
var command = el.data('cycle-cmd');
var context = el.data('cycle-context') || '.cycle-slideshow';
$(context).cycle(command, el.data('cycle-arg'));
});
})(jQuery);
/*! hash plugin for Cycle2; version: 20130905 */
(function($) {
"use strict";
$(document).on( 'cycle-pre-initialize', function( e, opts ) {
onHashChange( opts, true );
opts._onHashChange = function() {
onHashChange( opts, false );
};
$( window ).on( 'hashchange', opts._onHashChange);
});
$(document).on( 'cycle-update-view', function( e, opts, slideOpts ) {
if ( slideOpts.hash && ( '#' + slideOpts.hash ) != window.location.hash ) {
opts._hashFence = true;
window.location.hash = slideOpts.hash;
}
});
$(document).on( 'cycle-destroyed', function( e, opts) {
if ( opts._onHashChange ) {
$( window ).off( 'hashchange', opts._onHashChange );
}
});
function onHashChange( opts, setStartingSlide ) {
var hash;
if ( opts._hashFence ) {
opts._hashFence = false;
return;
}
hash = window.location.hash.substring(1);
opts.slides.each(function(i) {
if ( $(this).data( 'cycle-hash' ) == hash ) {
if ( setStartingSlide === true ) {
opts.startingSlide = i;
}
else {
var fwd = opts.currSlide < i;
opts.nextSlide = i;
opts.API.prepareTx( true, fwd );
}
return false;
}
});
}
})(jQuery);
/*! loader plugin for Cycle2; version: 20131121 */
(function($) {
"use strict";
$.extend($.fn.cycle.defaults, {
loader: false
});
$(document).on( 'cycle-bootstrap', function( e, opts ) {
var addFn;
if ( !opts.loader )
return;
// override API.add for this slideshow
addFn = opts.API.add;
opts.API.add = add;
function add( slides, prepend ) {
var slideArr = [];
if ( $.type( slides ) == 'string' )
slides = $.trim( slides );
else if ( $.type( slides) === 'array' ) {
for (var i=0; i < slides.length; i++ )
slides[i] = $(slides[i])[0];
}
slides = $( slides );
var slideCount = slides.length;
if ( ! slideCount )
return;
slides.css('visibility','hidden').appendTo('body').each(function(i) { // appendTo fixes #56
var count = 0;
var slide = $(this);
var images = slide.is('img') ? slide : slide.find('img');
slide.data('index', i);
// allow some images to be marked as unimportant (and filter out images w/o src value)
images = images.filter(':not(.cycle-loader-ignore)').filter(':not([src=""])');
if ( ! images.length ) {
--slideCount;
slideArr.push( slide );
return;
}
count = images.length;
images.each(function() {
// add images that are already loaded
if ( this.complete ) {
imageLoaded();
}
else {
$(this).load(function() {
imageLoaded();
}).on("error", function() {
if ( --count === 0 ) {
// ignore this slide
opts.API.log('slide skipped; img not loaded:', this.src);
if ( --slideCount === 0 && opts.loader == 'wait') {
addFn.apply( opts.API, [ slideArr, prepend ] );
}
}
});
}
});
function imageLoaded() {
if ( --count === 0 ) {
--slideCount;
addSlide( slide );
}
}
});
if ( slideCount )
opts.container.addClass('cycle-loading');
function addSlide( slide ) {
var curr;
if ( opts.loader == 'wait' ) {
slideArr.push( slide );
if ( slideCount === 0 ) {
// #59; sort slides into original markup order
slideArr.sort( sorter );
addFn.apply( opts.API, [ slideArr, prepend ] );
opts.container.removeClass('cycle-loading');
}
}
else {
curr = $(opts.slides[opts.currSlide]);
addFn.apply( opts.API, [ slide, prepend ] );
curr.show();
opts.container.removeClass('cycle-loading');
}
}
function sorter(a, b) {
return a.data('index') - b.data('index');
}
}
});
})(jQuery);
/*! pager plugin for Cycle2; version: 20140415 */
(function($) {
"use strict";
$.extend($.fn.cycle.defaults, {
pager: '> .cycle-pager',
pagerActiveClass: 'cycle-pager-active',
pagerEvent: 'click.cycle',
pagerEventBubble: undefined,
pagerTemplate: '
• '
});
$(document).on( 'cycle-bootstrap', function( e, opts, API ) {
// add method to API
API.buildPagerLink = buildPagerLink;
});
$(document).on( 'cycle-slide-added', function( e, opts, slideOpts, slideAdded ) {
if ( opts.pager ) {
opts.API.buildPagerLink ( opts, slideOpts, slideAdded );
opts.API.page = page;
}
});
$(document).on( 'cycle-slide-removed', function( e, opts, index, slideRemoved ) {
if ( opts.pager ) {
var pagers = opts.API.getComponent( 'pager' );
pagers.each(function() {
var pager = $(this);
$( pager.children()[index] ).remove();
});
}
});
$(document).on( 'cycle-update-view', function( e, opts, slideOpts ) {
var pagers;
if ( opts.pager ) {
pagers = opts.API.getComponent( 'pager' );
pagers.each(function() {
$(this).children().removeClass( opts.pagerActiveClass )
.eq( opts.currSlide ).addClass( opts.pagerActiveClass );
});
}
});
$(document).on( 'cycle-destroyed', function( e, opts ) {
var pager = opts.API.getComponent( 'pager' );
if ( pager ) {
pager.children().off( opts.pagerEvent ); // #202
if ( opts.pagerTemplate )
pager.empty();
}
});
function buildPagerLink( opts, slideOpts, slide ) {
var pagerLink;
var pagers = opts.API.getComponent( 'pager' );
pagers.each(function() {
var pager = $(this);
if ( slideOpts.pagerTemplate ) {
var markup = opts.API.tmpl( slideOpts.pagerTemplate, slideOpts, opts, slide[0] );
pagerLink = $( markup ).appendTo( pager );
}
else {
pagerLink = pager.children().eq( opts.slideCount - 1 );
}
pagerLink.on( opts.pagerEvent, function(e) {
if ( ! opts.pagerEventBubble )
e.preventDefault();
opts.API.page( pager, e.currentTarget);
});
});
}
function page( pager, target ) {
/*jshint validthis:true */
var opts = this.opts();
if ( opts.busy && ! opts.manualTrump )
return;
var index = pager.children().index( target );
var nextSlide = index;
var fwd = opts.currSlide < nextSlide;
if (opts.currSlide == nextSlide) {
return; // no op, clicked pager for the currently displayed slide
}
opts.nextSlide = nextSlide;
opts._tempFx = opts.pagerFx;
opts.API.prepareTx( true, fwd );
opts.API.trigger('cycle-pager-activated', [opts, pager, target ]);
}
})(jQuery);
/*! prevnext plugin for Cycle2; version: 20140408 */
(function($) {
"use strict";
$.extend($.fn.cycle.defaults, {
next: '> .cycle-next',
nextEvent: 'click.cycle',
disabledClass: 'disabled',
prev: '> .cycle-prev',
prevEvent: 'click.cycle',
swipe: false
});
$(document).on( 'cycle-initialized', function( e, opts ) {
opts.API.getComponent( 'next' ).on( opts.nextEvent, function(e) {
e.preventDefault();
opts.API.next();
});
opts.API.getComponent( 'prev' ).on( opts.prevEvent, function(e) {
e.preventDefault();
opts.API.prev();
});
if ( opts.swipe ) {
var nextEvent = opts.swipeVert ? 'swipeUp.cycle' : 'swipeLeft.cycle swipeleft.cycle';
var prevEvent = opts.swipeVert ? 'swipeDown.cycle' : 'swipeRight.cycle swiperight.cycle';
opts.container.on( nextEvent, function(e) {
opts._tempFx = opts.swipeFx;
opts.API.next();
});
opts.container.on( prevEvent, function() {
opts._tempFx = opts.swipeFx;
opts.API.prev();
});
}
});
$(document).on( 'cycle-update-view', function( e, opts, slideOpts, currSlide ) {
if ( opts.allowWrap )
return;
var cls = opts.disabledClass;
var next = opts.API.getComponent( 'next' );
var prev = opts.API.getComponent( 'prev' );
var prevBoundry = opts._prevBoundry || 0;
var nextBoundry = (opts._nextBoundry !== undefined)?opts._nextBoundry:opts.slideCount - 1;
if ( opts.currSlide == nextBoundry )
next.addClass( cls ).prop( 'disabled', true );
else
next.removeClass( cls ).prop( 'disabled', false );
if ( opts.currSlide === prevBoundry )
prev.addClass( cls ).prop( 'disabled', true );
else
prev.removeClass( cls ).prop( 'disabled', false );
});
$(document).on( 'cycle-destroyed', function( e, opts ) {
opts.API.getComponent( 'prev' ).off( opts.nextEvent );
opts.API.getComponent( 'next' ).off( opts.prevEvent );
opts.container.off( 'swipeleft.cycle swiperight.cycle swipeLeft.cycle swipeRight.cycle swipeUp.cycle swipeDown.cycle' );
});
})(jQuery);
/*! progressive loader plugin for Cycle2; version: 20130315 */
(function($) {
"use strict";
$.extend($.fn.cycle.defaults, {
progressive: false
});
$(document).on( 'cycle-pre-initialize', function( e, opts ) {
if ( !opts.progressive )
return;
var API = opts.API;
var nextFn = API.next;
var prevFn = API.prev;
var prepareTxFn = API.prepareTx;
var type = $.type( opts.progressive );
var slides, scriptEl;
if ( type == 'array' ) {
slides = opts.progressive;
}
else if ($.isFunction( opts.progressive ) ) {
slides = opts.progressive( opts );
}
else if ( type == 'string' ) {
scriptEl = $( opts.progressive );
slides = $.trim( scriptEl.html() );
if ( !slides )
return;
// is it json array?
if ( /^(\[)/.test( slides ) ) {
try {
slides = $.parseJSON( slides );
}
catch(err) {
API.log( 'error parsing progressive slides', err );
return;
}
}
else {
// plain text, split on delimeter
slides = slides.split( new RegExp( scriptEl.data('cycle-split') || '\n') );
// #95; look for empty slide
if ( ! slides[ slides.length - 1 ] )
slides.pop();
}
}
if ( prepareTxFn ) {
API.prepareTx = function( manual, fwd ) {
var index, slide;
if ( manual || slides.length === 0 ) {
prepareTxFn.apply( opts.API, [ manual, fwd ] );
return;
}
if ( fwd && opts.currSlide == ( opts.slideCount-1) ) {
slide = slides[ 0 ];
slides = slides.slice( 1 );
opts.container.one('cycle-slide-added', function(e, opts ) {
setTimeout(function() {
opts.API.advanceSlide( 1 );
},50);
});
opts.API.add( slide );
}
else if ( !fwd && opts.currSlide === 0 ) {
index = slides.length-1;
slide = slides[ index ];
slides = slides.slice( 0, index );
opts.container.one('cycle-slide-added', function(e, opts ) {
setTimeout(function() {
opts.currSlide = 1;
opts.API.advanceSlide( -1 );
},x = fx;
opts.API.prepareTx( true, fwd );
},
stop: function() {
var opts = this.opts();
var pauseObj = opts.container;
clearTimeout(opts.timeoutId);
opts.timeoutId = 0;
opts.API.stopTransition();
if ( opts.pauseOnHover ) {
if ( opts.pauseOnHover !== true )
pauseObj = $( opts.pauseOnHover );
pauseObj.off('mouseenter mouseleave');
}
opts.API.trigger('cycle-stopped', [ opts ]).log('cycle-stopped');
},
reinit: function() {
var opts = this.opts();
opts.API.destroy();
opts.container.cycle();
},
remove: function( index ) {
var opts = this.opts();
var slide, slideToRemove, slides = [], slideNum = 1;
for ( var i=0; i < opts.slides.length; i++ ) {
slide = opts.slides[i];
if ( i == index ) {
slideToRemove = slide;
}
else {
slides.push( slide );
$( slide ).data('cycle.opts').slideNum = slideNum;
slideNum++;
}
}
if ( slideToRemove ) {
opts.slides = $( slides );
opts.slideCount--;
$( slideToRemove ).remove();
if (index == opts.currSlide)
opts.API.advanceSlide( 1 );
else if ( index < opts.currSlide )
opts.currSlide--;
else
opts.currSlide++;
opts.API.trigger('cycle-slide-removed', [ opts, index, slideToRemove ]).log('cycle-slide-removed');
opts.API.updateView();
}
}
});
// listen for clicks on elements with data-cycle-cmd attribute
$(document).on('click.cycle', '[data-cycle-cmd]', function(e) {
// issue cycle command
e.preventDefault();
var el = $(this);
var command = el.data('cycle-cmd');
var context = el.data('cycle-context') || '.cycle-slideshow';
$(context).cycle(command, el.data('cycle-arg'));
});
})(jQuery);
/*! hash plugin for Cycle2; version: 20130905 */
(function($) {
"use strict";
$(document).on( 'cycle-pre-initialize', function( e, opts ) {
onHashChange( opts, true );
opts._onHashChange = function() {
onHashChange( opts, false );
};
$( window ).on( 'hashchange', opts._onHashChange);
});
$(document).on( 'cycle-update-view', function( e, opts, slideOpts ) {
if ( slideOpts.hash && ( '#' + slideOpts.hash ) != window.location.hash ) {
opts._hashFence = true;
window.location.hash = slideOpts.hash;
}
});
$(document).on( 'cycle-destroyed', function( e, opts) {
if ( opts._onHashChange ) {
$( window ).off( 'hashchange', opts._onHashChange );
}
});
function onHashChange( opts, setStartingSlide ) {
var hash;
if ( opts._hashFence ) {
opts._hashFence = false;
return;
}
hash = window.location.hash.substring(1);
opts.slides.each(function(i) {
if ( $(this).data( 'cycle-hash' ) == hash ) {
if ( setStartingSlide === true ) {
opts.startingSlide = i;
}
else {
var fwd = opts.currSlide < i;
opts.nextSlide = i;
opts.API.prepareTx( true, fwd );
}
return false;
}
});
}
})(jQuery);
/*! loader plugin for Cycle2; version: 20131121 */
(function($) {
"use strict";
$.extend($.fn.cycle.defaults, {
loader: false
});
$(document).on( 'cycle-bootstrap', function( e, opts ) {
var addFn;
if ( !opts.loader )
return;
// override API.add for this slideshow
addFn = opts.API.add;
opts.API.add = add;
function add( slides, prepend ) {
var slideArr = [];
if ( $.type( slides ) == 'string' )
slides = $.trim( slides );
else if ( $.type( slides) === 'array' ) {
for (var i=0; i < slides.length; i++ )
slides[i] = $(slides[i])[0];
}
slides = $( slides );
var slideCount = slides.length;
if ( ! slideCount )
return;
slides.css('visibility','hidden').appendTo('body').each(function(i) { // appendTo fixes #56
var count = 0;
var slide = $(this);
var images = slide.is('img') ? slide : slide.find('img');
slide.data('index', i);
// allow some images to be marked as unimportant (and filter out images w/o src value)
images = images.filter(':not(.cycle-loader-ignore)').filter(':not([src=""])');
if ( ! images.length ) {
--slideCount;
slideArr.push( slide );
return;
}
count = images.length;
images.each(function() {
// add images that are already loaded
if ( this.complete ) {
imageLoaded();
}
else {
$(this).load(function() {
imageLoaded();
}).on("error", function() {
if ( --count === 0 ) {
// ignore this slide
opts.API.log('slide skipped; img not loaded:', this.src);
if ( --slideCount === 0 && opts.loader == 'wait') {
addFn.apply( opts.API, [ slideArr, prepend ] );
}
}
});
}
});
function imageLoaded() {
if ( --count === 0 ) {
--slideCount;
addSlide( slide );
}
}
});
if ( slideCount )
opts.container.addClass('cycle-loading');
function addSlide( slide ) {
var curr;
if ( opts.loader == 'wait' ) {
slideArr.push( slide );
if ( slideCount === 0 ) {
// #59; sort slides into original markup order
slideArr.sort( sorter );
addFn.apply( opts.API, [ slideArr, prepend ] );
opts.container.removeClass('cycle-loading');
}
}
else {
curr = $(opts.slides[opts.currSlide]);
addFn.apply( opts.API, [ slide, prepend ] );
curr.show();
opts.container.removeClass('cycle-loading');
}
}
function sorter(a, b) {
return a.data('index') - b.data('index');
}
}
});
})(jQuery);
/*! pager plugin for Cycle2; version: 20140415 */
(function($) {
"use strict";
$.extend($.fn.cycle.defaults, {
pager: '> .cycle-pager',
pagerActiveClass: 'cycle-pager-active',
pagerEvent: 'click.cycle',
pagerEventBubble: undefined,
pagerTemplate: '
• '
});
$(document).on( 'cycle-bootstrap', function( e, opts, API ) {
// add method to API
API.buildPagerLink = buildPagerLink;
});
$(document).on( 'cycle-slide-added', function( e, opts, slideOpts, slideAdded ) {
if ( opts.pager ) {
opts.API.buildPagerLink ( opts, slideOpts, slideAdded );
opts.API.page = page;
}
});
$(document).on( 'cycle-slide-removed', function( e, opts, index, slideRemoved ) {
if ( opts.pager ) {
var pagers = opts.API.getComponent( 'pager' );
pagers.each(function() {
var pager = $(this);
$( pager.children()[index] ).remove();
});
}
});
$(document).on( 'cycle-update-view', function( e, opts, slideOpts ) {
var pagers;
if ( opts.pager ) {
pagers = opts.API.getComponent( 'pager' );
pagers.each(function() {
$(this).children().removeClass( opts.pagerActiveClass )
.eq( opts.currSlide ).addClass( opts.pagerActiveClass );
});
}
});
$(document).on( 'cycle-destroyed', function( e, opts ) {
var pager = opts.API.getComponent( 'pager' );
if ( pager ) {
pager.children().off( opts.pagerEvent ); // #202
if ( opts.pagerTemplate )
pager.empty();
}
});
function buildPagerLink( opts, slideOpts, slide ) {
var pagerLink;
var pagers = opts.API.getComponent( 'pager' );
pagers.each(function() {
var pager = $(this);
if ( slideOpts.pagerTemplate ) {
var markup = opts.API.tmpl( slideOpts.pagerTemplate, slideOpts, opts, slide[0] );
pagerLink = $( markup ).appendTo( pager );
}
else {
pagerLink = pager.children().eq( opts.slideCount - 1 );
}
pagerLink.on( opts.pagerEvent, function(e) {
if ( ! opts.pagerEventBubble )
e.preventDefault();
opts.API.page( pager, e.currentTarget);
});
});
}
function page( pager, target ) {
/*jshint validthis:true */
var opts = this.opts();
if ( opts.busy && ! opts.manualTrump )
return;
var index = pager.children().index( target );
var nextSlide = index;
var fwd = opts.currSlide < nextSlide;
if (opts.currSlide == nextSlide) {
return; // no op, clicked pager for the currently displayed slide
}
opts.nextSlide = nextSluto",protect:!1},ajax:{settings:{data:{fancybox:!0}}},iframe:{tpl:'
',preload:!0,scrolling:"no",css:{}},baseClass:"",slideClass:"",baseTpl:'
',spinnerTpl:'
',errorTpl:'
The requested content cannot be loaded. Please try again later.
',closeTpl:'
',parentEl:"body",touch:!0,keyboard:!0,focus:!0,closeClickOutside:!0,beforeLoad:n.noop,afterLoad:n.noop,beforeMove:n.noop,afterMove:n.noop,onComplete:n.noop,onInit:n.noop,beforeClose:n.noop,afterClose:n.noop,onActivate:n.noop,onDeactivate:n.noop},a=n(t),r=n(e),c=0,l=function(t){return t&&t.hasOwnProperty&&t instanceof n},u=function(){return t.requestAnimationFrame||t.webkitRequestAnimationFrame||t.mozRequestAnimationFrame||function(e){t.setTimeout(e,1e3/60)}}(),d=function(o){var s;return"function"==typeof n&&o instanceof n&&(o=o[0]),s=o.getBoundingClientRect(),s.bottom>0&&s.right>0&&s.left<(t.innerWidth||e.documentElement.clientWidth)&&s.top<(t.innerHeight||e.documentElement.clientHeight)},p=function(t,o,s){var a=this;a.opts=n.extend(!0,{index:s},i,o||{}),a.id=a.opts.id||++c,a.group=[],a.currIndex=parseInt(a.opts.index,10)||0,a.prevIndex=null,a.prevPos=null,a.currPos=0,a.firstRun=null,a.createGroup(t),a.group.length&&(a.$lastFocus=n(e.activeElement).blur(),a.slides={},a.init(t))};n.extend(p.prototype,{init:function(){var t,e,o=this,s=!1;o.scrollTop=r.scrollTop(),o.scrollLeft=r.scrollLeft(),n.fancybox.getInstance()||(t=n("body").width(),n("html").addClass("fancybox-enabled"),n.fancybox.isTouch?(n.each(o.group,function(t,e){if("image"!==e.type&&"iframe"!==e.type)return s=!0,!1}),s&&n("body").css({position:"fixed",width:t,top:o.scrollTop*-1})):(t=n("body").width()-t,t>1&&n('