(function($){$.fn.highlight=function(tapStart,tapEnd){if(!this){return false}return this.each(function(){var me=$(this);var timerTabStart;var timerTabEnd;function touchStart(event){timerTabStart=setTimeout(function(){tapStart(me);timerTabEnd=setTimeout(function(){tapEnd(me);clearTimeout(timerTabEnd);clearTimeout(timerTabStart)},1000)},100)}function touchMove(event){tapEnd(me);clearTimeout(timerTabEnd);clearTimeout(timerTabStart)}function click(event){timer=setTimeout(function(){tapStart(me);setTimeout(function(){tapEnd(me);clearTimeout(timerTabEnd);clearTimeout(timerTabStart)},800)},100)}var isTouchable=("ontouchend" in document);if(isTouchable){this.addEventListener("touchstart",touchStart,false);this.addEventListener("touchmove",touchMove,false)}else{this.addEventListener("click",click,false)}})}})(jQuery);function Slider(id,options){var defaults={orientationSupport:true};var options=$.extend({},defaults,options);var bar=$("#bar"+id);var handle_min=$("#handle_min"+id);var handle_max=$("#handle_max"+id);var input_min=$("#input_min"+id);var input_max=$("#input_max"+id);var label_min=$("#label_min"+id);var label_max=$("#label_max"+id);var steps=parseInt(bar.attr("data-steps"));var attrValuesMin=handle_min.attr("data-values").split(",");var attrValuesMax=handle_max.attr("data-values").split(",");var valuesMin=handle_min.attr("data-texts").split(",");var valuesMax=handle_max.attr("data-texts").split(",");var sMin=parseInt(handle_min.attr("data-selected"));var sMax=parseInt(handle_max.attr("data-selected"));var handleWidth;var barWidth;var sDiff;var stepWidth;var maxStepLimit;var minStepLimit;var supportsOrientationChange="onorientationchange" in window,orientationEvent=supportsOrientationChange?"orientationchange":"resize";function init(){if(options.orientationSupport){window.addEventListener(orientationEvent,orientationChange,false)}handleWidth=handle_min.outerWidth();barWidth=bar.outerWidth();sDiff=steps-attrValuesMax.length+1;roundoffError=getRoundoffError(barWidth);stepWidth=getStepWidth(barWidth);setMinHandle(sMin);setMaxHandle(sMax);setMin(sMin);setMax(sMax);minStepLimit=getMinStepLimit(sMin,sMax);maxStepLimit=getMaxStepLimit(sMin,sMax)}function orientationChange(){handle_min.hide();handle_max.hide();barWidth=bar.outerWidth();roundoffError=getRoundoffError(barWidth);stepWidth=getStepWidth(barWidth);setMinHandle(sMin);setMaxHandle(sMax);handle_min.show();handle_max.show()}function setMin(pos){if(pos==0){label_min.parent().addClass("none")}else{label_min.parent().removeClass("none")}input_min.attr("value",attrValuesMin[pos]);label_min.text(valuesMin[pos])}function setMax(pos){if(pos==attrValuesMax.length-1){label_max.parent().addClass("none")}else{label_max.parent().removeClass("none")}input_max.attr("value",attrValuesMax[pos]);label_max.text(valuesMax[pos])}function setMinHandle(pos){var errorStep=roundoffError/steps;var balance=Math.floor(errorStep*pos);handle_min.css("left",pos*stepWidth+balance)}function setMaxHandle(pos){var errorStep=roundoffError/steps;var balance=Math.floor(errorStep*pos)+(roundoffError-(Math.floor(errorStep*(attrValuesMax.length-1))));var maxStepWidth=(pos+sDiff)*stepWidth;handle_max.css("left",maxStepWidth+balance+handleWidth)}function getStepWidth(barWidth){return Math.floor((barWidth-2*handleWidth)/steps)}function getRoundoffError(barWidth){return(barWidth-2*handleWidth)%(steps)}function getMinStepLimit(sMin,sMax){if(sMax===valuesMax.length-1){return steps-1}var indexSelected=valuesMax.indexOf(valuesMax[sMax])-1;return steps-valuesMax.length+indexSelected}function getMaxStepLimit(sMin,sMax){if(sMin===0){return -1}var indexSelected=steps-valuesMin.indexOf(valuesMin[sMin])-1;return valuesMax.length-indexSelected}function getStepCorrRise(pos){var errorStep=roundoffError/steps;var floorStep=Math.floor(errorStep*pos);return stepWidth+Math.floor(errorStep*(pos+1))-floorStep}function getStepCorrLow(pos){var errorStep=roundoffError/steps;var floorStep=Math.floor(errorStep*pos);return stepWidth-Math.floor(errorStep*(pos-1))+floorStep}init();var origMinX=0;var finalMinX=0;var movedMinX=0;var distMin=0;handle_min.bind("touchstart",function(e){origMinX=e.originalEvent.touches[0].pageX});handle_min.bind("touchmove",function(e){e.preventDefault();finalMinX=e.originalEvent.touches[0].pageX;movedMinX=origMinX-finalMinX;distMin+=movedMinX;if(distMin/stepWidth>1&&sMin>=0){for(var i=0;i<Math.abs(distMin/stepWidth);i++){if(sMin<=0){break}var handleLeft=$(this).position().left;var dist=getStepCorrLow(sMin);$(this).css("left",handleLeft-dist);distMin-=dist;sMin--;setMin(sMin);maxStepLimit=getMaxStepLimit(sMin,sMax)}}else{if(distMin/stepWidth<-1&&attrValuesMin.length-1>=sMin&&sMin<=minStepLimit){for(var i=0;i<Math.abs(distMin/stepWidth);i++){if(attrValuesMin.length-1<=sMin||sMin>=minStepLimit){break}var handleLeft=$(this).position().left;var dist=getStepCorrRise(sMin);$(this).css("left",handleLeft+dist);distMin+=dist;sMin++;setMin(sMin);maxStepLimit=getMaxStepLimit(sMin,sMax)}}}origMinX=finalMinX});handle_min.bind("touchend",function(e){origMinX=0;finalMinX=0;movedMinX=0;distMin=0});var origMaxX=0;var finalMaxX=0;var movedMaxX=0;var distMax=0;handle_max.bind("touchstart",function(e){origMaxX=e.originalEvent.touches[0].pageX});handle_max.bind("touchmove",function(e){e.preventDefault();finalMaxX=e.originalEvent.touches[0].pageX;movedMaxX=origMaxX-finalMaxX;distMax+=movedMaxX;if(distMax/stepWidth>1&&0<=sMax&&sMax>=maxStepLimit){for(var i=0;i<Math.abs(distMax/stepWidth);i++){if(0>=sMax||sMax<=maxStepLimit){break}var handleLeft=$(this).position().left;var dist=getStepCorrRise(attrValuesMax.length-1-sMax);$(this).css("left",handleLeft-dist);distMax-=dist;sMax--;setMax(sMax);minStepLimit=getMinStepLimit(sMin,sMax)}}else{if(distMax/stepWidth<-1&&attrValuesMax.length-1>=sMax){for(var i=0;i<Math.abs(distMax/stepWidth);i++){if(attrValuesMax.length-1<=sMax){break}var handleLeft=$(this).position().left;var dist=getStepCorrLow(attrValuesMax.length-1-sMax);$(this).css("left",handleLeft+dist);distMax+=dist;sMax++;setMax(sMax);minStepLimit=getMinStepLimit(sMin,sMax)}}}origMaxX=finalMaxX});handle_max.bind("touchend",function(e){origMaxX=0;finalMaxX=0;movedMaxX=0;distMax=0})}(function($){$.fn.swipe=function(left,right,options){var defaults={x:50};var _options=$.extend(defaults,options);if(!this){return false}return this.each(function(){var me=$(this);var origX=0;var finalX=0;var changedX=0;function touchStart(event){origX=event.touches[0].pageX}function touchMove(event){finalX=event.touches[0].pageX;changedX=origX-finalX;if(changedX>_options.x){event.preventDefault();left(me);origX=finalX}else{if(changedX<_options.x*-1){event.preventDefault();right(me);origX=finalX}}}function touchEnd(event){origX=0;finalX=0;changedX=0}var isTouchable=("ontouchend" in document);if(isTouchable){this.addEventListener("touchstart",touchStart,false);this.addEventListener("touchmove",touchMove,false);this.addEventListener("touchend",touchEnd,false)}})}})(jQuery);(function($){$.fn.tap=function(tapFunction,options){var defaults={threshold:{x:0,y:0}};var _options=$.extend(defaults,options);if(!this){return false}return this.each(function(){var me=$(this);var origX=0;var origY=0;var finalX=0;var finalY=0;var changedX=0;var changedY=0;function touchStart(event){origX=event.touches[0].pageX;origY=event.touches[0].pageY}function touchMove(event){finalX=event.touches[0].pageX;finalY=event.touches[0].pageY;changedX=origX-finalX;changedY=origY-finalY;origX=finalX;origY=finalY}function touchEnd(event){if(Math.abs(changedX)<=_options.threshold.x&&Math.abs(changedY)<=_options.threshold.y){tapFunction(me)}origX=0;origY=0;finalX=0;finalY=0;changedX=0;changedY=0}function touchCancel(event){}function click(event){tapFunction(me)}var isTouchable=("ontouchend" in document);if(isTouchable){this.addEventListener("touchstart",touchStart,false);this.addEventListener("touchmove",touchMove,false);this.addEventListener("touchend",touchEnd,false);this.addEventListener("touchcancel",touchCancel,false)}else{this.addEventListener("click",click,false)}})}})(jQuery);
