(function(){Function.prototype.inheritFrom=function(a,b){var c=function(){};c.prototype=a.prototype;this.prototype=new c;this.prototype.constructor=this;this.prototype.baseConstructor=a;this.prototype.superClass=a.prototype;if(b){for(var d in b){this.prototype[d]=b[d]}}};Number.prototype.jSliderNice=function(a){var b=/^(-)?(\d+)([\.,](\d+))?$/;var c=Number(this);var d=String(c);var e;var f="";var g=" ";if(e=d.match(b)){var h=e[2];var i=e[4]?Number("0."+e[4]):0;if(i){var j=Math.pow(10,a?a:2);i=Math.round(i*j);sNewDecPart=String(i);f=sNewDecPart;if(sNewDecPart.length<a){var k=a-sNewDecPart.length;for(var l=0;l<k;l++){f="0"+f}}f=","+f}else{if(a&&a!=0){for(var l=0;l<a;l++){f+="0"}f=","+f}}var m;if(Number(h)<1e3){m=h+f}else{var n="";var l;for(l=1;l*3<h.length;l++)n=g+h.substring(h.length-l*3,h.length-(l-1)*3)+n;m=h.substr(0,3-l*3+h.length)+n+f}if(e[1])return"-"+m;else return m}else{return d}};this.jSliderIsArray=function(a){if(typeof a=="undefined")return false;if(a instanceof Array||!(a instanceof Object)&&Object.prototype.toString.call(a)=="[object Array]"||typeof a.length=="number"&&typeof a.splice!="undefined"&&typeof a.propertyIsEnumerable!="undefined"&&!a.propertyIsEnumerable("splice")){return true}return false}})();(function(){var a={};this.jSliderTmpl=function b(c,d){var e=!/\W/.test(c)?a[c]=a[c]||b(c):new Function("obj","var p=[],print=function(){p.push.apply(p,arguments);};"+"with(obj){p.push('"+c.replace(/[\r\t\n]/g," ").split("<%").join("\t").replace(/((^|%>)[^\t]*)'/g,"$1\r").replace(/\t=(.*?)%>/g,"',$1,'").split("\t").join("');").split("%>").join("p.push('").split("\r").join("\\'")+"');}return p.join('');");return d?e(d):e}})();(function(a){this.Draggable=function(){this._init.apply(this,arguments)};Draggable.prototype={oninit:function(){},events:function(){},onmousedown:function(){this.ptr.css({position:"absolute"})},onmousemove:function(a,b,c){this.ptr.css({left:b,top:c})},onmouseup:function(){},isDefault:{drag:false,clicked:false,toclick:true,mouseup:false},_init:function(){if(arguments.length>0){this.ptr=a(arguments[0]);this.outer=a(".draggable-outer");this.is={};a.extend(this.is,this.isDefault);var b=this.ptr.offset();this.d={left:b.left,top:b.top,width:this.ptr.width(),height:this.ptr.height()};this.oninit.apply(this,arguments);this._events()}},_getPageCoords:function(a){if(a.targetTouches&&a.targetTouches[0]){return{x:a.targetTouches[0].pageX,y:a.targetTouches[0].pageY}}else return{x:a.pageX,y:a.pageY}},_bindEvent:function(a,b,c){var d=this;if(this.supportTouches_)a.get(0).addEventListener(this.events_[b],c,false);else a.bind(this.events_[b],c)},_events:function(){var b=this;this.supportTouches_=a.browser.webkit&&navigator.userAgent.indexOf("Mobile")!=-1;this.events_={click:this.supportTouches_?"touchstart":"click",down:this.supportTouches_?"touchstart":"mousedown",move:this.supportTouches_?"touchmove":"mousemove",up:this.supportTouches_?"touchend":"mouseup"};this._bindEvent(a(document),"move",function(a){if(b.is.drag){a.stopPropagation();a.preventDefault();b._mousemove(a)}});this._bindEvent(a(document),"down",function(a){if(b.is.drag){a.stopPropagation();a.preventDefault()}});this._bindEvent(a(document),"up",function(a){b._mouseup(a)});this._bindEvent(this.ptr,"down",function(a){b._mousedown(a);return false});this._bindEvent(this.ptr,"up",function(a){b._mouseup(a)});this.ptr.find("a").click(function(){b.is.clicked=true;if(!b.is.toclick){b.is.toclick=true;return false}}).mousedown(function(a){b._mousedown(a);return false});this.events()},_mousedown:function(b){this.is.drag=true;this.is.clicked=false;this.is.mouseup=false;var c=this.ptr.offset();var d=this._getPageCoords(b);this.cx=d.x-c.left;this.cy=d.y-c.top;a.extend(this.d,{left:c.left,top:c.top,width:this.ptr.width(),height:this.ptr.height()});if(this.outer&&this.outer.get(0)){this.outer.css({height:Math.max(this.outer.height(),a(document.body).height()),overflow:"hidden"})}this.onmousedown(b)},_mousemove:function(a){this.is.toclick=false;var b=this._getPageCoords(a);this.onmousemove(a,b.x-this.cx,b.y-this.cy)},_mouseup:function(b){var c=this;if(this.is.drag){this.is.drag=false;if(this.outer&&this.outer.get(0)){if(a.browser.mozilla){this.outer.css({overflow:"hidden"})}else{this.outer.css({overflow:"visible"})}if(a.browser.msie&&a.browser.version=="6.0"){this.outer.css({height:"100%"})}else{this.outer.css({height:"auto"})}}this.onmouseup(b)}}}})(jQuery);(function(a){function c(){this.baseConstructor.apply(this,arguments)}a.jjslider=function(b,c){var d=a(b);if(!d.data("jslider"))d.data("jslider",new jSlider(b,c));return d.data("jslider")};a.fn.jjslider=function(b,c){function g(a){return a!=null}function f(a){return a!==undefined}var d,e=arguments;this.each(function(){var h=a.jjslider(this,b);if(typeof b=="string"){switch(b){case"value":if(f(e[1])&&f(e[2])){var i=h.getPointers();if(g(i[0])&&g(e[1])){i[0].set(e[1]);i[0].setIndexOver()}if(g(i[1])&&g(e[2])){i[1].set(e[2]);i[1].setIndexOver()}}else if(f(e[1])){var i=h.getPointers();if(g(i[0])&&g(e[1])){i[0].set(e[1]);i[0].setIndexOver()}}else d=h.getValue();break;case"prc":if(f(e[1])&&f(e[2])){var i=h.getPointers();if(g(i[0])&&g(e[1])){i[0]._set(e[1]);i[0].setIndexOver()}if(g(i[1])&&g(e[2])){i[1]._set(e[2]);i[1].setIndexOver()}}else if(f(e[1])){var i=h.getPointers();if(g(i[0])&&g(e[1])){i[0]._set(e[1]);i[0].setIndexOver()}}else d=h.getPrcValue();break;case"calculatedValue":var j=h.getValue().split(";");d="";for(var k=0;k<j.length;k++){d+=(k>0?";":"")+h.nice(j[k])}break;case"skin":h.setSkin(e[1]);break}}else if(!b&&!c){if(!jSliderIsArray(d))d=[];d.push(jjslider)}});if(jSliderIsArray(d)&&d.length==1)d=d[0];return d||this};var b={settings:{from:1,to:10,step:1,smooth:true,limits:true,round:0,value:"5;7",dimension:""},className:"jslider",selector:".jslider-",template:jSliderTmpl('<span class="<%=className%>">'+"<table><tr><td>"+'<div class="<%=className%>-bg">'+'<i class="l"><i></i></i><i class="r"><i></i></i>'+'<i class="v"><i></i></i>'+"</div>"+'<div class="<%=className%>-pointer"><i></i></div>'+'<div class="<%=className%>-pointer <%=className%>-pointer-to"><i></i></div>'+'<div class="<%=className%>-label"><span><%=settings.from%></span></div>'+'<div class="<%=className%>-label <%=className%>-label-to"><span><%=settings.to%></span><%=settings.dimension%></div>'+'<div class="<%=className%>-value"><span></span><%=settings.dimension%></div>'+'<div class="<%=className%>-value <%=className%>-value-to"><span></span><%=settings.dimension%></div>'+'<div class="<%=className%>-scale"><%=scale%></div>'+"</td></tr></table>"+"</span>")};this.jSlider=function(){return this.init.apply(this,arguments)};jSlider.prototype={init:function(c,d){this.settings=a.extend(true,{},b.settings,d?d:{});this.inputNode=a(c).hide();this.settings.interval=this.settings.to-this.settings.from;this.settings.value=this.inputNode.attr("value");if(this.settings.calculate&&a.isFunction(this.settings.calculate))this.nice=this.settings.calculate;if(this.settings.onstatechange&&a.isFunction(this.settings.onstatechange))this.onstatechange=this.settings.onstatechange;this.is={init:false};this.o={};this.create()},onstatechange:function(){},create:function(){var d=this;this.domNode=a(b.template({className:b.className,settings:{from:this.nice(this.settings.from),to:this.nice(this.settings.to),dimension:this.settings.dimension},scale:this.generateScale()}));this.inputNode.after(this.domNode);this.drawScale();if(this.settings.skin&&this.settings.skin.length>0)this.setSkin(this.settings.skin);this.sizes={domWidth:this.domNode.width(),domOffset:this.domNode.offset()};a.extend(this.o,{pointers:{},labels:{0:{o:this.domNode.find(b.selector+"value").not(b.selector+"value-to")},1:{o:this.domNode.find(b.selector+"value").filter(b.selector+"value-to")}},limits:{0:this.domNode.find(b.selector+"label").not(b.selector+"label-to"),1:this.domNode.find(b.selector+"label").filter(b.selector+"label-to")}});a.extend(this.o.labels[0],{value:this.o.labels[0].o.find("span")});a.extend(this.o.labels[1],{value:this.o.labels[1].o.find("span")});if(!d.settings.value.split(";")[1]){this.settings.single=true;this.domNode.addDependClass("single")}if(!d.settings.limits)this.domNode.addDependClass("limitless");this.domNode.find(b.selector+"pointer").each(function(a){var b=d.settings.value.split(";")[a];if(b){d.o.pointers[a]=new c(this,a,d);var e=d.settings.value.split(";")[a-1];if(e&&new Number(b)<new Number(e))b=e;b=b<d.settings.from?d.settings.from:b;b=b>d.settings.to?d.settings.to:b;d.o.pointers[a].set(b,true)}});this.o.value=this.domNode.find(".v");this.is.init=true;a.each(this.o.pointers,function(a){d.redraw(this)});(function(b){a(window).resize(function(){b.onresize()})})(this)},setSkin:function(a){if(this.skin_)this.domNode.removeDependClass(this.skin_,"_");this.domNode.addDependClass(this.skin_=a,"_")},setPointersIndex:function(b){a.each(this.getPointers(),function(a){this.index(a)})},getPointers:function(){return this.o.pointers},generateScale:function(){if(this.settings.scale&&this.settings.scale.length>0){var a="";var b=this.settings.scale;var c=Math.round(100/(b.length-1)*10)/10;for(var d=0;d<b.length;d++){a+='<span style="left: '+d*c+'%">'+(b[d]!="|"?"<ins>"+b[d]+"</ins>":"")+"</span>"}return a}else return"";return""},drawScale:function(){this.domNode.find(b.selector+"scale span ins").each(function(){a(this).css({marginLeft:-a(this).outerWidth()/2})})},onresize:function(){var b=this;this.sizes={domWidth:this.domNode.width(),domOffset:this.domNode.offset()};a.each(this.o.pointers,function(a){b.redraw(this)})},limits:function(a,b){if(!this.settings.smooth){var c=this.settings.step*100/this.settings.interval;a=Math.round(a/c)*c}var d=this.o.pointers[1-b.uid];if(d&&b.uid&&a<d.value.prc)a=d.value.prc;if(d&&!b.uid&&a>d.value.prc)a=d.value.prc;if(a<0)a=0;if(a>100)a=100;return Math.round(a*10)/10},redraw:function(a){if(!this.is.init)return false;this.setValue();if(this.o.pointers[0]&&this.o.pointers[1])this.o.value.css({left:this.o.pointers[0].value.prc+"%",width:this.o.pointers[1].value.prc-this.o.pointers[0].value.prc+"%"});this.o.labels[a.uid].value.html(this.nice(a.value.origin));this.redrawLabels(a)},redrawLabels:function(a){function b(a,b,d){b.margin=-b.label/2;label_left=b.border+b.margin;if(label_left<0)b.margin-=label_left;if(b.border+b.label/2>c.sizes.domWidth){b.margin=0;b.right=true}else b.right=false;a.o.css({left:d+"%",marginLeft:b.margin,right:"auto"});if(b.right)a.o.css({left:"auto",right:0});return b}var c=this;var d=this.o.labels[a.uid];var e=a.value.prc;var f={label:d.o.outerWidth(),right:false,border:e*this.sizes.domWidth/100};if(!this.settings.single){var g=this.o.pointers[1-a.uid];var h=this.o.labels[g.uid];switch(a.uid){case 0:if(f.border+f.label/2>h.o.offset().left-this.sizes.domOffset.left){h.o.css({visibility:"hidden"});h.value.html(this.nice(g.value.origin));d.o.css({visibility:"visible"});e=(g.value.prc-e)/2+e;if(g.value.prc!=a.value.prc){d.value.html(this.nice(a.value.origin)+" – "+this.nice(g.value.origin));f.label=d.o.outerWidth();f.border=e*this.sizes.domWidth/100}}else{h.o.css({visibility:"visible"})}break;case 1:if(f.border-f.label/2<h.o.offset().left-this.sizes.domOffset.left+h.o.outerWidth()){h.o.css({visibility:"hidden"});h.value.html(this.nice(g.value.origin));d.o.css({visibility:"visible"});e=(e-g.value.prc)/2+g.value.prc;if(g.value.prc!=a.value.prc){d.value.html(this.nice(g.value.origin)+" – "+this.nice(a.value.origin));f.label=d.o.outerWidth();f.border=e*this.sizes.domWidth/100}}else{h.o.css({visibility:"visible"})}break}}f=b(d,f,e);if(h){var f={label:h.o.outerWidth(),right:false,border:g.value.prc*this.sizes.domWidth/100};f=b(h,f,g.value.prc)}this.redrawLimits()},redrawLimits:function(){if(this.settings.limits){var a=[true,true];for(key in this.o.pointers){if(!this.settings.single||key==0){var b=this.o.pointers[key];var c=this.o.labels[b.uid];var d=c.o.offset().left-this.sizes.domOffset.left;var e=this.o.limits[0];if(d<e.outerWidth())a[0]=false;var e=this.o.limits[1];if(d+c.o.outerWidth()>this.sizes.domWidth-e.outerWidth())a[1]=false}}for(var f=0;f<a.length;f++){if(a[f])this.o.limits[f].fadeIn("fast");else this.o.limits[f].fadeOut("fast")}}},setValue:function(){var a=this.getValue();this.inputNode.attr("value",a);this.onstatechange.call(this,a)},getValue:function(){if(!this.is.init)return false;var b=this;var c="";a.each(this.o.pointers,function(a){if(this.value.prc!=undefined&&!isNaN(this.value.prc))c+=(a>0?";":"")+b.prcToValue(this.value.prc)});return c},getPrcValue:function(){if(!this.is.init)return false;var b=this;var c="";a.each(this.o.pointers,function(a){if(this.value.prc!=undefined&&!isNaN(this.value.prc))c+=(a>0?";":"")+this.value.prc});return c},prcToValue:function(a){if(this.settings.heterogeneity&&this.settings.heterogeneity.length>0){var b=this.settings.heterogeneity;var c=0;var d=this.settings.from;for(var e=0;e<=b.length;e++){if(b[e])var f=b[e].split("/");else var f=[100,this.settings.to];f[0]=new Number(f[0]);f[1]=new Number(f[1]);if(a>=c&&a<=f[0]){var g=d+(a-c)*(f[1]-d)/(f[0]-c)}c=f[0];d=f[1]}}else{var g=this.settings.from+a*this.settings.interval/100}return this.round(g)},valueToPrc:function(a,b){if(this.settings.heterogeneity&&this.settings.heterogeneity.length>0){var c=this.settings.heterogeneity;var d=0;var e=this.settings.from;for(var f=0;f<=c.length;f++){if(c[f])var g=c[f].split("/");else var g=[100,this.settings.to];g[0]=new Number(g[0]);g[1]=new Number(g[1]);if(a>=e&&a<=g[1]){var h=b.limits(d+(a-e)*(g[0]-d)/(g[1]-e))}d=g[0];e=g[1]}}else{var h=b.limits((a-this.settings.from)*100/this.settings.interval)}return h},round:function(a){a=Math.round(a/this.settings.step)*this.settings.step;if(this.settings.round)a=Math.round(a*Math.pow(10,this.settings.round))/Math.pow(10,this.settings.round);else a=Math.round(a);return a},nice:function(a){a=a.toString().replace(/,/gi,".");a=a.toString().replace(/ /gi,"");if(Number.prototype.jSliderNice)return(new Number(a)).jSliderNice(this.settings.round).replace(/-/gi,"−");else return new Number(a)}};c.inheritFrom(Draggable,{oninit:function(a,b,c){this.uid=b;this.parent=c;this.value={};this.settings=this.parent.settings},onmousedown:function(a){this._parent={offset:this.parent.domNode.offset(),width:this.parent.domNode.width()};this.ptr.addDependClass("hover");this.setIndexOver()},onmousemove:function(a,b){var c=this._getPageCoords(a);this._set(this.calc(c.x))},onmouseup:function(b){if(this.parent.settings.callback&&a.isFunction(this.parent.settings.callback))this.parent.settings.callback.call(this.parent,this.parent.getValue());this.ptr.removeDependClass("hover")},setIndexOver:function(){this.parent.setPointersIndex(1);this.index(2)},index:function(a){this.ptr.css({zIndex:a})},limits:function(a){return this.parent.limits(a,this)},calc:function(a){var b=this.limits((a-this._parent.offset.left)*100/this._parent.width);return b},set:function(a,b){this.value.origin=this.parent.round(a);this._set(this.parent.valueToPrc(a,this),b)},_set:function(a,b){if(!b)this.value.origin=this.parent.prcToValue(a);this.value.prc=a;this.ptr.css({left:a+"%"});this.parent.redraw(this)}})})(jQuery)
