﻿/*
Supersized - Fullscreen Slideshow jQuery Plugin
Version 3.1.1
www.buildinternet.com/project/supersized
	
By Sam Dunn / One Mighty Roar (www.onemightyroar.com)
Released under MIT License / GPL License
*/

(function(a) { a(document).ready(function() { a("body").prepend('<div id="supersized-loader"></div>').prepend('<div id="supersized"></div>') }); a.supersized = function(o) { var c = { slideshow: 1, autoplay: 1, start_slide: 1, slide_interval: 5000, transition: 1, transition_speed: 750, new_window: 1, pause_hover: 0, keyboard_nav: 1, performance: 1, image_protect: 1, image_path: "img/", min_width: 0, min_height: 0, vertical_center: 1, horizontal_center: 1, fit_portrait: 0, fit_landscape: 0, navigation: 1, thumbnail_navigation: 0, slide_counter: 1, slide_captions: 1 }; var g = a("#supersized"); var d = "#pauseplay"; if (o) { var o = a.extend(c, o) } else { var o = a.extend(c) } var b = false; var j = false; var i = o.image_path; if (o.start_slide) { var h = o.start_slide - 1 } else { var h = Math.floor(Math.random() * o.slides.length) } var n = o.new_window ? ' target="_blank"' : ""; if (o.performance == 3) { g.addClass("speed") } else { if ((o.performance == 1) || (o.performance == 2)) { g.addClass("quality") } } if (o.slides.length > 1) { h - 1 < 0 ? loadPrev = o.slides.length - 1 : loadPrev = h - 1; var e = (o.slides[loadPrev].url) ? "href='" + o.slides[loadPrev].url + "'" : ""; a("<img/>").attr("src", o.slides[loadPrev].image).appendTo(g).wrap("<a " + e + n + "></a>") } e = (o.slides[h].url) ? "href='" + o.slides[h].url + "'" : ""; a("<img/>").attr("src", o.slides[h].image).appendTo(g).wrap('<a class="activeslide" ' + e + n + "></a>"); if (o.slides.length > 1) { h == o.slides.length - 1 ? loadNext = 0 : loadNext = h + 1; e = (o.slides[loadNext].url) ? "href='" + o.slides[loadNext].url + "'" : ""; a("<img/>").attr("src", o.slides[loadNext].image).appendTo(g).wrap("<a " + e + n + "></a>") } g.hide(); a("#controls-wrapper").hide(); a(window).load(function() { a("#supersized-loader").hide(); g.fadeIn("fast"); a("#controls-wrapper").show(); if (o.thumbnail_navigation) { h - 1 < 0 ? prevThumb = o.slides.length - 1 : prevThumb = h - 1; a("#prevthumb").show().html(a("<img/>").attr("src", o.slides[prevThumb].image)); h == o.slides.length - 1 ? nextThumb = 0 : nextThumb = h + 1; a("#nextthumb").show().html(a("<img/>").attr("src", o.slides[nextThumb].image)) } m(); if (o.slide_captions) { a("#slidecaption").html(o.slides[h].title) } if (!(o.navigation)) { a("#navigation").hide() } if (o.slideshow && o.slides.length > 1) { if (o.slide_counter) { a("#slidecounter .slidenumber").html(h + 1); a("#slidecounter .totalslides").html(o.slides.length) } slideshow_interval = setInterval(k, o.slide_interval); if (!(o.autoplay)) { clearInterval(slideshow_interval); j = true; if (a(d).attr("src")) { a(d).attr("src", i + "play_dull.png") } } if (o.thumbnail_navigation) { a("#nextthumb").click(function() { if (b) { return false } clearInterval(slideshow_interval); k(g, o); if (!(j)) { slideshow_interval = setInterval(k, o.slide_interval) } return false }); a("#prevthumb").click(function() { if (b) { return false } clearInterval(slideshow_interval); f(g, o); if (!(j)) { slideshow_interval = setInterval(k, o.slide_interval) } return false }) } if (o.navigation) { a("#navigation a").click(function() { a(this).blur(); return false }); a("#nextslide").click(function() { if (b) { return false } clearInterval(slideshow_interval); k(); if (!(j)) { slideshow_interval = setInterval(k, o.slide_interval) } return false }); if (a("#nextslide").attr("src")) { a("#nextslide").mousedown(function() { a(this).attr("src", i + "forward.png") }); a("#nextslide").mouseup(function() { a(this).attr("src", i + "forward_dull.png") }); a("#nextslide").mouseout(function() { a(this).attr("src", i + "forward_dull.png") }) } a("#prevslide").click(function() { if (b) { return false } clearInterval(slideshow_interval); f(); if (!(j)) { slideshow_interval = setInterval(k, o.slide_interval) } return false }); if (a("#prevslide").attr("src")) { a("#prevslide").mousedown(function() { a(this).attr("src", i + "back.png") }); a("#prevslide").mouseup(function() { a(this).attr("src", i + "back_dull.png") }); a("#prevslide").mouseout(function() { a(this).attr("src", i + "back_dull.png") }) } a(d).click(function() { if (b) { return false } if (j) { if (a(d).attr("src")) { a(d).attr("src", i + "pause_dull.png") } j = false; slideshow_interval = setInterval(k, o.slide_interval) } else { if (a(d).attr("src")) { a(d).attr("src", i + "play_dull.png") } clearInterval(slideshow_interval); j = true } return false }) } } }); if (o.keyboard_nav) { a(document.documentElement).keydown(function(p) { if ((p.keyCode == 37) || (p.keyCode == 40)) { if (a("#prevslide").attr("src")) { a("#prevslide").attr("src", i + "back.png") } } else { if ((p.keyCode == 39) || (p.keyCode == 38)) { if (a("#nextslide").attr("src")) { a("#nextslide").attr("src", i + "forward.png") } } } }); a(document.documentElement).keyup(function(p) { clearInterval(slideshow_interval); if ((p.keyCode == 37) || (p.keyCode == 40)) { if (a("#prevslide").attr("src")) { a("#prevslide").attr("src", i + "back_dull.png") } if (b) { return false } clearInterval(slideshow_interval); f(); if (!(j)) { slideshow_interval = setInterval(k, o.slide_interval) } return false } else { if ((p.keyCode == 39) || (p.keyCode == 38)) { if (a("#nextslide").attr("src")) { a("#nextslide").attr("src", i + "forward_dull.png") } if (b) { return false } clearInterval(slideshow_interval); k(); if (!(j)) { slideshow_interval = setInterval(k, o.slide_interval) } return false } else { if (p.keyCode == 32) { if (b) { return false } if (j) { if (a(d).attr("src")) { a(d).attr("src", i + "pause_dull.png") } j = false; slideshow_interval = setInterval(k, o.slide_interval) } else { if (a(d).attr("src")) { a(d).attr("src", i + "play_dull.png") } j = true } return false } } } }) } if (o.slideshow && o.pause_hover) { a(g).hover(function() { if (b) { return false } if (!(j) && o.navigation) { if (a(d).attr("src")) { a(d).attr("src", i + "pause.png") } clearInterval(slideshow_interval) } }, function() { if (!(j) && o.navigation) { if (a(d).attr("src")) { a(d).attr("src", i + "pause_dull.png") } slideshow_interval = setInterval(k, o.slide_interval) } }) } a(window).resize(function() { m() }); function m() { return g.each(function() { var p = a("img", g); a(p).each(function() { var r = (a(this).height() / a(this).width()).toFixed(2); var q = a(window).width(); var s = a(window).height(); var t; if ((s > o.min_height) || (q > o.min_width)) { if ((s / q) > r) { if (o.fit_landscape && r <= 1) { a(this).width(q); a(this).height(q * r) } else { a(this).height(s); a(this).width(s / r) } } else { if (o.fit_portrait && r > 1) { a(this).height(s); a(this).width(s / r) } else { a(this).width(q); a(this).height(q * r) } } } if (o.horizontal_center) { a(this).css("left", (q - a(this).width()) / 2) } if (o.vertical_center) { a(this).css("top", (s - a(this).height()) / 2) } }); if (o.image_protect) { a("img", g).bind("contextmenu", function() { return false }); a("img", g).bind("mousedown", function() { return false }) } return false }) } function k() { if (b) { return false } else { b = true } var r = o.slides; var q = g.find(".activeslide"); q.removeClass("activeslide"); if (q.length == 0) { q = g.find("a:last") } var p = q.next().length ? q.next() : g.find("a:first"); var s = p.prev().length ? p.prev() : g.find("a:last"); a(".prevslide").removeClass("prevslide"); s.addClass("prevslide"); h + 1 == r.length ? h = 0 : h++; if (o.performance == 1) { g.removeClass("quality").addClass("speed") } loadSlide = false; h == r.length - 1 ? loadSlide = 0 : loadSlide = h + 1; e = (o.slides[loadSlide].url) ? "href='" + o.slides[loadSlide].url + "'" : ""; a("<img/>").attr("src", o.slides[loadSlide].image).appendTo(g).wrap("<a " + e + n + "></a>"); if (o.thumbnail_navigation == 1) { h - 1 < 0 ? prevThumb = r.length - 1 : prevThumb = h - 1; a("#prevthumb").html(a("<img/>").attr("src", o.slides[prevThumb].image)); nextThumb = loadSlide; a("#nextthumb").html(a("<img/>").attr("src", o.slides[nextThumb].image)) } q.prev().remove(); if (o.slide_counter) { a("#slidecounter .slidenumber").html(h + 1) } if (o.slide_captions) { (o.slides[h].title) ? a("#slidecaption").html(o.slides[h].title) : a("#slidecaption").html("") } p.hide().addClass("activeslide"); switch (o.transition) { case 0: p.show(); b = false; break; case 1: p.fadeTo(o.transition_speed, 1, function() { l() }); break; case 2: p.animate({ top: -a(window).height() }, 0).show().animate({ top: 0 }, o.transition_speed, function() { l() }); break; case 3: p.animate({ left: a(window).width() }, 0).show().animate({ left: 0 }, o.transition_speed, function() { l() }); break; case 4: p.animate({ top: a(window).height() }, 0).show().animate({ top: 0 }, o.transition_speed, function() { l() }); break; case 5: p.animate({ left: -a(window).width() }, 0).show().animate({ left: 0 }, o.transition_speed, function() { l() }); break; case 6: p.animate({ left: a(window).width() }, 0).show().animate({ left: 0 }, o.transition_speed, function() { l() }); q.animate({ left: -a(window).width() }, o.transition_speed); break; case 7: p.animate({ left: -a(window).width() }, 0).show().animate({ left: 0 }, o.transition_speed, function() { l() }); q.animate({ left: a(window).width() }, o.transition_speed); break } } function f() { if (b) { return false } else { b = true } var r = o.slides; var q = g.find(".activeslide"); q.removeClass("activeslide"); if (q.length == 0) { q = a(g).find("a:first") } var p = q.prev().length ? q.prev() : a(g).find("a:last"); var s = p.next().length ? p.next() : a(g).find("a:first"); a(".prevslide").removeClass("prevslide"); s.addClass("prevslide"); h == 0 ? h = r.length - 1 : h--; if (o.performance == 1) { g.removeClass("quality").addClass("speed") } loadSlide = false; h - 1 < 0 ? loadSlide = r.length - 1 : loadSlide = h - 1; e = (o.slides[loadSlide].url) ? "href='" + o.slides[loadSlide].url + "'" : ""; a("<img/>").attr("src", o.slides[loadSlide].image).prependTo(g).wrap("<a " + e + n + "></a>"); if (o.thumbnail_navigation == 1) { prevThumb = loadSlide; a("#prevthumb").html(a("<img/>").attr("src", o.slides[prevThumb].image)); h == r.length - 1 ? nextThumb = 0 : nextThumb = h + 1; a("#nextthumb").html(a("<img/>").attr("src", o.slides[nextThumb].image)) } q.next().remove(); if (o.slide_counter) { a("#slidecounter .slidenumber").html(h + 1) } if (o.slide_captions) { (o.slides[h].title) ? a("#slidecaption").html(o.slides[h].title) : a("#slidecaption").html("") } p.hide().addClass("activeslide"); switch (o.transition) { case 0: p.show(); b = false; break; case 1: p.fadeTo(o.transition_speed, 1, function() { l() }); break; case 2: p.animate({ top: a(window).height() }, 0).show().animate({ top: 0 }, o.transition_speed, function() { l() }); break; case 3: p.animate({ left: -a(window).width() }, 0).show().animate({ left: 0 }, o.transition_speed, function() { l() }); break; case 4: p.animate({ top: -a(window).height() }, 0).show().animate({ top: 0 }, o.transition_speed, function() { l() }); break; case 5: p.animate({ left: a(window).width() }, 0).show().animate({ left: 0 }, o.transition_speed, function() { l() }); break; case 6: p.animate({ left: -a(window).width() }, 0).show().animate({ left: 0 }, o.transition_speed, function() { l() }); q.animate({ left: a(window).width() }, o.transition_speed); break; case 7: p.animate({ left: a(window).width() }, 0).show().animate({ left: 0 }, o.transition_speed, function() { l() }); q.animate({ left: -a(window).width() }, o.transition_speed); break } } function l() { b = false; if (o.performance == 1) { g.removeClass("speed").addClass("quality") } m() } } })(jQuery);
