/*** Bildfehler.de  JavaScript ***/
var MySlider=new Class({Implements:[Events,Options],options:{steps:0,snap:18,defaultValue:-1,},initialize:function(c,a,b){this.element=$(c);this.knob=$(a);this.previousEnd=-1;this.visible=false;this.fullWidth=this.element.getStyle("width").toInt()-this.knob.getWidth();this.fullHeight=this.knob.getSize().y+this.knob.getStyle("margin-top").toInt()+this.knob.getStyle("margin-bottom").toInt();this.reset(b);if(!this.drag){this.drag=new Drag(this.knob,{limit:{x:[0,this.fullWidth]},modifiers:{x:"left",y:false},snap:0,onStart:function(d){d.addClass("dragging");this.previousEnd=-1;this.draggedKnob()}.bind(this),onDrag:this.draggedKnob.bind(this),onComplete:function(d){d.removeClass("dragging");this.end()}.bind(this)})}this.element.set("morph",{duration:800,transition:"cubic:in:out"})},reset:function(a){this.setOptions(a);this.steps=this.options.steps||this.fullWidth;this.stepSize=this.fullWidth/this.steps;this.setValue(this.options.defaultValue,true)},draggedKnob:function(){var a=this.drag.value.now.x;a=Math.round(this.snapToSteps(a));this.knob.setStyle("left",a.limit(0,this.fullWidth))},checkStep:function(){if(this.previousValue!=this.value){this.previousValue=this.value;this.fireEvent("onChange",this.value)}},end:function(){if(this.previousEnd!==this.value){this.previousEnd=this.value;this.fireEvent("onComplete",this.value+"");if(this.options.steps){this.knob.get("morph",{duration:"short",transition:"back:out"}).start({left:this.toPosition(this.value)})}}},snapToSteps:function(a){if(this.options.steps===0){this.value=a}else{var b=Math.floor((a+this.options.snap)%this.stepSize);if(b<=this.options.snap*2){this.value=Math.floor((a+this.options.snap)/this.fullWidth*this.steps);a=this.toPosition(this.value)}}this.checkStep();return a},toPosition:function(a){return a*this.stepSize},reveal:function(){if(!this.visible){this.element.morph({height:[0,this.fullHeight],opacity:[0,1]});this.visible=true}},hide:function(){if(this.visible){this.element.morph({height:0,opacity:[1,0]});(function(){this.setValue(this.options.defaultValue)}).delay(800,this);this.visible=false}},setValue:function(a){var b=arguments.length>1?arguments[1]:false;if(a==-1){a=this.steps}a=a.limit(0,this.steps);this.value=this.previousValue=a;if(b){this.knob.get("morph",{duration:"short",transition:"cubic:out"}).start({left:this.toPosition(a)})}else{this.knob.setStyle("left",this.toPosition(a))}}});var SlideShow=new Class({Implements:[Options],busy:false,finishedLoading:false,loadedSlides:[],options:{pictureServer:"http://www.bildfehler.de",pictureDirectory:"/_img/portfolio/",projectID:"",numberOfSlides:[],currentPic:0,hasVideo:false,bigVideo:false},initialize:function(a){this.setOptions(a);this.theSlider=null;this.preloadSpinner=$("PreloadSpinner");this.firstTime=true},show:function(a){if(this.busy){return false}var b=arguments.length>0?a:this.options.currentPic;if(this.options.numberOfSlides[b]<=1&&this.theSlider){this.theSlider.hide()}if(this.options.numberOfSlides==2&&this.loadedSlides.length>0){this.loadedSlides[0].get("morph",{duration:200,transition:"cubic:out"}).start({clip:"rect(0px, 644px, 384px, 644px)"})}this.options.currentPic=b;if(b==this.options.numberOfSlides.length&&this.options.hasVideo){this.showMovie()}else{if($("MovieBox")){$("MovieBox").set("html","")}this.preload()}this.firstTime=false},preload:function(){var b=this.options.numberOfSlides[this.options.currentPic];var a=this;if(!this.busy){var c=$("PictureBox").getChildren("div");if(c.length>0){c.each(function(e){if(e.hasClass("ImageLayer")){e.dispose()}})}this.loadedSlides.each(function(e){if(e){e.destroy()}});this.loadedSlides.empty();this.busy=true;this.finishedLoading=false;this.fadeBackground.delay(200,this,true);var d=[];for(i=b-1;i>=0;i--){d.push(this.options.pictureDirectory+this.options.projectID+"_"+(this.options.currentPic+1)+"abcdefghi".charAt(i)+".jpg")}new Asset.images(d,{onProgress:function(e,f){var g=new Element("div",{"class":"ImageLayer",id:"pic"+f,opacity:0});g.grab(this);g.setStyle("z-index",20-f).set("morph",{duration:500,transition:"cubic:out"});a.loadedSlides[f]=g},onComplete:function(){a.finishedLoading=true;$("PictureBox").adopt(a.loadedSlides);if(b==2){a.loadedSlides[0].setStyle("clip","rect(0px 644px 384px 644px)").setStyle("opacity",1)}a.loadedSlides[b-1].get("morph",{onComplete:function(){$("defaultimg").set("src",d[b-1]);a.busy=false}}).start({opacity:[0,1]});a.setupSlider();a.unfadeBackground()}})}},setupSlider:function(){var b=this.options.currentPic;var a=this.options.numberOfSlides[b];if(a<=1){return}if(!this.theSlider){this.theSlider=new MySlider($("SliderBox"),$("Knob"),{steps:a>2?a-1:0,onChange:function(c){this.doSliderChange(c)}.bind(this)})}else{this.theSlider.reset({steps:a>2?a-1:0})}$("Noppels").set("class","step"+a);this.theSlider.reveal()},doSliderChange:function(a){if(this.options.numberOfSlides[this.options.currentPic]<=2){a=2+Math.round(640/this.theSlider.steps*a);this.loadedSlides[0].setStyle("clip","rect(0px, 644px, 384px, "+a+"px)")}else{this.loadedSlides.each(function(c,b){c.set("opacity",(b==a)?1:0)});$("defaultimg").set("src",this.loadedSlides[a].getFirst().get("src"))}},fadeBackground:function(b){var a=$("MovieBackgroundLayer");if(!a){a=new Element("div",{id:"MovieBackgroundLayer","class":"ImageLayer"});a.setStyle("z-index",50);$("PictureBox").adopt(a)}if(b){if(this.finishedLoading){return}a.setOpacity(0.5).setStyle("visibility","visible");if(this.preloadSpinner){this.preloadSpinner.setStyle("visibility","visible")}}else{a.get("morph",{duration:500}).start({opacity:[0,0.9]})}},unfadeBackground:function(){if(this.preloadSpinner){this.preloadSpinner.setStyle("visibility","hidden")}if($("MovieBackgroundLayer")){$("MovieBackgroundLayer").setOpacity(0)}},showMovie:function(){if(!this.options.hasVideo){return}var a=this.options.bigVideo?592:320;var c=this.options.bigVideo?349:256;var b=this.options.bigVideo?".mp4":".mov";this.fadeBackground(false);el=$("MovieBox");if(el){el.set("html",'<object classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" width="'+a+'" height="'+c+'" codebase="http://www.apple.com/qtactivex/qtplugin.cab"><param name="src" value="/_media/'+this.options.projectID+b+'" /><param name="autoplay" value="true" /><param name="controller" value="true" /><embed src="/_media/'+this.options.projectID+b+'" width="'+a+'" height="'+c+'" scale="1" autoplay="true" controller="true" pluginspage="http://www.apple.com/quicktime/download/" type="video/quicktime"></embed></object>');if(this.options.bigVideo){el.addClass("bigVideo")}el.setStyle("display","block")}},getCurrentPic:function(){return this.options.currentPic}});var Bildfehler={theSlideShow:null,thumbLinks:[],start:function(){if($("Sideboard")&&$("SliderBox")&&$("Sideboard").ownerDocument){Bildfehler.setupSideboard()}if($("ThumbnailBox")){Bildfehler.makeNiceTooltips()}if($("HeaderH1")){Bildfehler.makeBannerLink()}},fixDots:function(){var a=$$("p");a.each(function(d,c){if(d.hasClass("credits")||d.hasClass("info")){var b=new Element("img",{width:10,height:10,src:"_img/dot_orange.png","class":"bulletpoint"}).inject(d,"top")}})},setupSideboard:function(){$("defaultimg").set("src","/_img/blank.gif");this.thumbLinks=($("Sideboard").getElement("div").getElements("a"));this.thumbLinks.each(function(b,a){b.addEvent("click",function(c){Bildfehler.doClick(a);return false})});this.theSlideShow=new SlideShow(slideShowOptions);this.theSlideShow.show()},doClick:function(a){var b=this.theSlideShow.getCurrentPic();if(a==b||a>=this.thumbLinks.length){return false}this.thumbLinks[b].removeClass("active");this.thumbLinks[a].addClass("active");this.theSlideShow.show(a)},makeNiceTooltips:function(){},makeBannerLink:function(){var a=$("HeaderH1");a.addEvent("click",function(b){window.location.href="http://www.bildfehler.de"});a.setStyle("cursor","pointer")}};if(document.getElementById){window.addEvent("domready",Bildfehler.start)};
