{"version":3,"file":"jquery.flexslider.min.js","sources":["jquery.flexslider.js"],"sourcesContent":["/*\n * jQuery FlexSlider v2.1\n * http://www.woothemes.com/flexslider/\n *\n * Copyright 2012 WooThemes\n * Free to use under the GPLv2 license.\n * http://www.gnu.org/licenses/gpl-2.0.html\n *\n * Contributing author: Tyler Smith (@mbmufffin)\n */\n\n;(function ($) {\n\n //FlexSlider: Object Instance\n $.flexslider = function(el, options) {\n var slider = $(el),\n vars = $.extend({}, $.flexslider.defaults, options),\n namespace = vars.namespace,\n touch = (\"ontouchstart\" in window) || window.DocumentTouch && document instanceof DocumentTouch,\n eventType = (touch) ? \"touchend\" : \"click\",\n vertical = vars.direction === \"vertical\",\n reverse = vars.reverse,\n carousel = (vars.itemWidth > 0),\n fade = vars.animation === \"fade\",\n asNav = vars.asNavFor !== \"\",\n methods = {};\n\n // Store a reference to the slider object\n $.data(el, \"flexslider\", slider);\n\n // Privat slider methods\n methods = {\n init: function() {\n slider.animating = false;\n slider.currentSlide = vars.startAt;\n slider.animatingTo = slider.currentSlide;\n slider.atEnd = (slider.currentSlide === 0 || slider.currentSlide === slider.last);\n slider.containerSelector = vars.selector.substr(0,vars.selector.search(' '));\n slider.slides = $(vars.selector, slider);\n slider.container = $(slider.containerSelector, slider);\n slider.count = slider.slides.length;\n // SYNC:\n slider.syncExists = $(vars.sync).length > 0;\n // SLIDE:\n if (vars.animation === \"slide\") vars.animation = \"swing\";\n slider.prop = (vertical) ? \"top\" : \"marginLeft\";\n slider.args = {};\n // SLIDESHOW:\n slider.manualPause = false;\n // TOUCH/USECSS:\n slider.transitions = !vars.video && !fade && vars.useCSS && (function() {\n var obj = document.createElement('div'),\n props = ['perspectiveProperty', 'WebkitPerspective', 'MozPerspective', 'OPerspective', 'msPerspective'];\n for (var i in props) {\n if ( obj.style[ props[i] ] !== undefined ) {\n slider.pfx = props[i].replace('Perspective','').toLowerCase();\n slider.prop = \"-\" + slider.pfx + \"-transform\";\n return true;\n }\n }\n return false;\n }());\n // CONTROLSCONTAINER:\n if (vars.controlsContainer !== \"\") slider.controlsContainer = $(vars.controlsContainer).length > 0 && $(vars.controlsContainer);\n // MANUAL:\n if (vars.manualControls !== \"\") slider.manualControls = $(vars.manualControls).length > 0 && $(vars.manualControls);\n\n // RANDOMIZE:\n if (vars.randomize) {\n slider.slides.sort(function() { return (Math.round(Math.random())-0.5); });\n slider.container.empty().append(slider.slides);\n }\n\n slider.doMath();\n\n // ASNAV:\n if (asNav) methods.asNav.setup();\n\n // INIT\n slider.setup(\"init\");\n\n // CONTROLNAV:\n if (vars.controlNav) methods.controlNav.setup();\n\n // DIRECTIONNAV:\n if (vars.directionNav) methods.directionNav.setup();\n\n // KEYBOARD:\n if (vars.keyboard && ($(slider.containerSelector).length === 1 || vars.multipleKeyboard)) {\n $(document).bind('keyup', function(event) {\n var keycode = event.keyCode;\n if (!slider.animating && (keycode === 39 || keycode === 37)) {\n var target = (keycode === 39) ? slider.getTarget('next') :\n (keycode === 37) ? slider.getTarget('prev') : false;\n slider.flexAnimate(target, vars.pauseOnAction);\n }\n });\n }\n // MOUSEWHEEL:\n if (vars.mousewheel) {\n slider.bind('mousewheel', function(event, delta, deltaX, deltaY) {\n event.preventDefault();\n var target = (delta < 0) ? slider.getTarget('next') : slider.getTarget('prev');\n slider.flexAnimate(target, vars.pauseOnAction);\n });\n }\n\n // PAUSEPLAY\n if (vars.pausePlay) methods.pausePlay.setup();\n\n // SLIDSESHOW\n if (vars.slideshow) {\n if (vars.pauseOnHover) {\n slider.hover(function() {\n if (!slider.manualPlay && !slider.manualPause) slider.pause();\n }, function() {\n if (!slider.manualPause && !slider.manualPlay) slider.play();\n });\n }\n // initialize animation\n (vars.initDelay > 0) ? setTimeout(slider.play, vars.initDelay) : slider.play();\n }\n\n // TOUCH\n if (touch && vars.touch) methods.touch();\n\n // FADE&&SMOOTHHEIGHT || SLIDE:\n if (!fade || (fade && vars.smoothHeight)) $(window).bind(\"resize focus\", methods.resize);\n\n\n // API: start() Callback\n setTimeout(function(){\n vars.start(slider);\n }, 200);\n },\n asNav: {\n setup: function() {\n slider.asNav = true;\n slider.animatingTo = Math.floor(slider.currentSlide/slider.move);\n slider.currentItem = slider.currentSlide;\n slider.slides.removeClass(namespace + \"active-slide\").eq(slider.currentItem).addClass(namespace + \"active-slide\");\n slider.slides.click(function(e){\n e.preventDefault();\n var $slide = $(this),\n target = $slide.index();\n if (!$(vars.asNavFor).data('flexslider').animating && !$slide.hasClass('active')) {\n slider.direction = (slider.currentItem < target) ? \"next\" : \"prev\";\n slider.flexAnimate(target, vars.pauseOnAction, false, true, true);\n }\n });\n }\n },\n controlNav: {\n setup: function() {\n if (!slider.manualControls) {\n methods.controlNav.setupPaging();\n } else { // MANUALCONTROLS:\n methods.controlNav.setupManual();\n }\n },\n setupPaging: function() {\n var type = (vars.controlNav === \"thumbnails\") ? 'control-thumbs' : 'control-paging',\n j = 1,\n item;\n\n slider.controlNavScaffold = $('