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