/**
** SlotMachine techno-kom.de
** @requires mootools
** @url http://www.360px.de
** @author s.henning@sedbi.de
** @version 1.0
** @date 3.6.11
**/

// >>> START KONFIGURATION
// Wechsel (ms):
var iChange = 5000;
// Geschwindigkeit Wechsel (ms):
var iSpeed = 1000;
// ID von UL-Element (wichtig! Mutterelement, muss stimmen!):
var idUL = 'slmachine';
// Text Hover über Slot:
var sHint = 'Klicken Sie auf das Bild um es zu vergrössern';
// Ordner in dem sich alles Files zu slmachine befinden mit abschliessendem Slash(!) (relativ zum ausführenden Document):
var dirSlMachine = 'uploads/tf/slmachine/';
// Loader Image (muss sich in Ordner dirSlMachine befinden!):
var loaderImage = 'loader.gif';
var loaderImageWidth = 40;
var loaderImageHeight = 40;
var loaderBorder = 3; //ebenfalls in CSS ändern (#slnavi #slnaviInner, #slparent div)
var fNaviOpacity = 0.4;
// ENDE KONFIGURATION <<<

/*/sl-machine/*/ function onc(){endSl();};var sCss='<link type="text/css" rel="stylesheet" href="'+dirSlMachine+'/slmachine.css">';/*document.write(sCss.toString());*/ window.addEvent('load',function(){var oEl=$(idUL).getElements('LI');var oElParent0=oEl[0];var oElLink0=$$(oElParent0.getElements('IMG'));var oSlMachine0=new SlMachine({iDuration:iChange,iTrimtime:iSpeed,sContainer:oElParent0,aItem:oElLink0,sDir:oElParent0.getAttribute('REL'),sLoaderImg:loaderImage,iLoaderH:loaderImageHeight,iLoaderW:loaderImageWidth,iLoaderBorder:loaderBorder,sLoaderDir:dirSlMachine,fOpacity:fNaviOpacity});oSlMachine0.start();var oElParent1=oEl[1];var oElLink1=$$(oElParent1.getElements('IMG'));var oSlMachine1=new SlMachine({iDuration:iChange,iTrimtime:iSpeed,sContainer:oElParent1,aItem:oElLink1,sDir:oElParent1.getAttribute('REL'),sLoaderImg:loaderImage,iLoaderH:loaderImageHeight,iLoaderW:loaderImageWidth,iLoaderBorder:loaderBorder,sLoaderDir:dirSlMachine,fOpacity:fNaviOpacity});oSlMachine1.start();oSlMachine0.importSlM(oSlMachine1);oSlMachine1.importSlM(oSlMachine0);});var req=new Request({url:dirSlMachine+'slmachine.php',method:'post',onSuccess:function(txt){},onFailure:function(){$(idUL).setStyles({color:'red','background-color':'#FFE5E5','line-height':'50px',padding:'10px',border:'3px solid #7B0002'});$(idUL).set('text','Ungültiger Pfad:'+dirSlMachine+'slmachine.php');}}).send();var SlMachine=new Class({Implements:[Options],options:{iLoaderH:0,iLoaderW:0,iLoaderHmem:0,iLoaderWmem:0,iLoaderCurrH:0,iLoaderCurrW:0,iLoaderTop:0,iLoaderLeft:0,iLoaderBoarder:0,iDuration:0,iTrimtime:0,iCurrItem:0,iCurrNr:0,iNextNr:0,iPrevNr:0,fOpacity:0,bPaused:false,bStartSL:true,sCurrImg:null,sCurrSrc:null,sDir:null,sContainer:null,aItem:null,oPeriod:null,oPeriod1:null,slmImport:null},initialize:function(options){this.setOptions(options);this.iItems=this.options.aItem.length;this.options.iLoaderHmem=this.options.iLoaderH;this.options.iLoaderWmem=this.options.iLoaderW;this.options.aItem.each(function(oEl){oEl.setStyle('top',(oEl.getSize().y * -1));});var oEl=new Element('div',{'id':'z'});this.options.sContainer.adopt(oEl);this.options.sContainer.setStyle('visibility','visible');var oThis=this;oEl.onmouseover=function(){oThis.showHint();};oEl.onmouseout=function(){oThis.hideHint();};oEl.onclick=function(){oThis.startSl();};},importSlM:function(oImport){this.options.slmImport=oImport;},start:function(){this.slSlot(this.options.iCurrItem);this.options.oPeriod=this.slSlot.periodical(this.options.iDuration,this);},slSlot:function(iNextItem){if(this.options.bPaused==true){clearInterval(this.options.oPeriod);clearInterval(this.options.slmImport.options.oPeriod);return;}var oCurrItem=this.options.aItem[this.options.iCurrItem];if(iNextItem !=null){this.options.iCurrItem=iNextItem;}else{this.options.iCurrItem++;if(this.options.iCurrItem >=this.iItems)this.options.iCurrItem=0;}var oNewItem=this.options.aItem[this.options.iCurrItem];var oNewMorph=new Fx.Morph(oNewItem,{duration:this.options.iTrimtime});this.options.sCurrSrc=oNewItem.getAttribute('src');oNewMorph.start({'top':[(oNewItem.getSize().y * -1),0]});if(oCurrItem !=oNewItem){var oCurrMorph=new Fx.Morph(oCurrItem,{duration:this.options.iTrimtime});oCurrMorph.start({'top':[(this.options.sContainer.getSize().y)]});}},showHint:function(){if($('slhint'))$('slhint').destroy();var oEl=new Element('span',{'id':'slhint'});oEl.appendText(sHint);this.options.sContainer.adopt(oEl);oEl.fade('hide');oEl.fade(0.8);},hideHint:function(){$('slhint').fade('out');},startSl:function(){this.options.bPaused=true;this.options.slmImport.options.bPaused=true;this.options.bStartSL=true;var aScroll=window.getScrollSize();var oEl=new Element('div',{'id':'sllayer',styles:{height:aScroll.y+'px',width:aScroll.x+'px'}});$$('body')[0].adopt(oEl);oEl.fade('hide');var oElBg=new Element('div',{'id':'slbg',styles:{height:aScroll.y+'px',width:aScroll.x+'px'}});$$('body')[0].adopt(oElBg);oElBg.fade('hide');var self=this;var aSize=$$('body')[0].getSize();var oElParent=new Element('div',{'id':'slparent',styles:{height:aSize.y+'px',width:aSize.x+'px'}});oElParent.fade('hide');$$('body')[0].adopt(oElParent);this.options.iLoaderTop=parseInt((aSize.y - this.options.iLoaderH - this.options.iLoaderBorder)/ 2);this.options.iLoaderLeft=parseInt((aSize.x - this.options.iLoaderW - this.options.iLoaderBorder)/ 2);var oElDiv=new Element('div',{'id':'slcontent',styles:{top:this.options.iLoaderTop+'px',left:this.options.iLoaderLeft+'px'}});oElParent.adopt(oElDiv);var oElImg=new Element('div',{'id':'slimg',styles:{width:parseInt(this.options.iLoaderW)+'px',height:parseInt(this.options.iLoaderH)+'px','background-image':'url('+this.options.sLoaderDir+this.options.sLoaderImg+')','background-repeat':'no-repeat'}});oElDiv.adopt(oElImg);var oElNavi=new Element('div',{'id':'slnavi',styles:{height:aSize.y+'px',width:aSize.x+'px'}});oElNavi.fade('hide');$$('body')[0].adopt(oElNavi);/*oElNavi.onclick=function(){self.endSl();};*/ var oElNaviInner=new Element('div',{'id':'slnaviInner',styles:{top:this.options.iLoaderTop+'px',left:this.options.iLoaderLeft+'px'}});oElNavi.adopt(oElNaviInner);var oElImgNavi=new Element('div',{'id':'slimgNavi',styles:{width:parseInt(this.options.iLoaderW)+'px',height:parseInt(this.options.iLoaderH)+'px'}});oElNaviInner.adopt(oElImgNavi);oEl.fade(0.8);oElBg.fade(1);oElParent.fade(1);oElNavi.fade(1);this.initImg();},endSl:function(){this.options.bPaused=false;this.options.slmImport.options.bPaused=false;this.start();this.options.slmImport.start();this.options.iLoaderH=this.options.iLoaderHmem;this.options.iLoaderW=this.options.iLoaderWmem;this.options.sLoaderImg;$('slparent').fade(0);$('sllayer').fade(0);$('slbg').fade(0);window.setTimeout(function(){$('slparent').destroy();$('sllayer').destroy();$('slbg').destroy();$('slnavi').destroy();},500);},initImg:function(bPeriod){var self=this;var req=new Request({url:dirSlMachine+'slmachine.php',method:'post',onSuccess:function(txt){var oJson=eval('('+txt+')');if(oJson.error==true){$('slimg').destroy();var oElDiv=new Element('div',{'id':'slerror'});$('slcontent').adopt(oElDiv);oElDiv.setStyles({color:'red','background-color':'#FFE5E5','line-height':'25px','padding':'20px 10px','text-align':'left','border':'3px solid #7B0002','width':'88%','position':'relative'});oElDiv.set('text',oJson.msg);self.initNavi(true);}else{$('slimg').fade(0);var oImg=new Image();oImg.onload=function(){window.setTimeout(function(){self.handleImg();},400)};oImg.src=oJson.msg;self.options.iLoaderCurrH=oJson.height;self.options.iLoaderCurrW=oJson.width;self.options.sCurrImg=oJson.msg;self.options.iNextNr=oJson.nextnr;self.options.iPrevNr=oJson.prevnr;}},onFailure:function(){$(idUL).setStyles({color:'red','background-color':'#FFE5E5','line-height':'50px',padding:'10px',border:'3px solid #7B0002'});$(idUL).set('text','Ungültiger Pfad:'+dirSlMachine+'slmachine.php');}}).send('slm=2&dir='+this.options.sDir+'&img='+this.options.sCurrSrc+'&nr='+this.options.iCurrNr+'&start='+this.options.bStartSL);},handleImg:function(){var self=this;var myEffect=new Fx.Morph('slcontent',{duration:500,transition:Fx.Transitions.Sine.easeOut,onComplete:function(){$('slimg').setStyles({width:self.options.iLoaderCurrW,height:self.options.iLoaderCurrH,border:'none'});$('slimg').setStyle('background-image','url('+self.options.sCurrImg+')');$('slimg').fade(1);if(self.options.bStartSL==false){$('slleft').fade(self.options.fOpacity);}}});var iDiffTop=(parseInt(this.options.iLoaderCurrH / 2))-(parseInt(this.options.iLoaderH)/ 2);var iNewTop=parseInt(this.options.iLoaderTop - iDiffTop);var iNewTopTmp=(iNewTop<0)? 0:iNewTop;var iDiffLeft=(parseInt(this.options.iLoaderCurrW / 2))-(parseInt(this.options.iLoaderW)/ 2);var iNewLeft=parseInt(this.options.iLoaderLeft - iDiffLeft);var iNewLeftTmp=(iNewLeft<0)? 0:iNewLeft;myEffect.start({'height':[this.options.iLoaderH,this.options.iLoaderCurrH],'width':[this.options.iLoaderW,this.options.iLoaderCurrW],'top':[this.options.iLoaderTop,iNewTopTmp],'left':[this.options.iLoaderLeft,iNewLeftTmp]});var myEffect=new Fx.Morph('slnaviInner',{duration:500,transition:Fx.Transitions.Sine.easeOut,onComplete:function(){$('slimgNavi').setStyles({width:self.options.iLoaderCurrW,height:self.options.iLoaderCurrH,border:'none'});$('slimgNavi').fade(1);if(self.options.bStartSL==true)self.initNavi();}});myEffect.start({'height':[this.options.iLoaderH,this.options.iLoaderCurrH],'width':[this.options.iLoaderW,this.options.iLoaderCurrW],'top':[this.options.iLoaderTop,iNewTopTmp],'left':[this.options.iLoaderLeft,iNewLeftTmp]});this.options.iLoaderH=this.options.iLoaderCurrH;this.options.iLoaderW=this.options.iLoaderCurrW;this.options.iLoaderTop=iNewTop;this.options.iLoaderLeft=iNewLeft;},initNavi:function(bError){var self=this;var oElA0=new Element('div',{'id':'slleft',events:{click:function(){self.options.bStartSL=false;self.options.iCurrNr=self.options.iPrevNr;self.initImg();},mouseout:function(){this.fade(self.options.fOpacity);}}});$('slnaviInner').adopt(oElA0);oElA0.addEvent('mouseover',function(){this.tween('opacity',self.options.fOpacity,1);});var oElA1=new Element('div',{'id':'slright',events:{click:function(){self.options.bStartSL=false;self.options.iCurrNr=self.options.iNextNr;self.initImg();},mouseout:function(){this.fade(self.options.fOpacity);}}});$('slnaviInner').adopt(oElA1);oElA1.addEvent('mouseover',function(){this.tween('opacity',self.options.fOpacity,1);});var oElA2=new Element('div',{'id':'slclose',events:{click:function(){self.endSl();},mouseout:function(){this.fade(self.options.fOpacity);}}});$('slnaviInner').adopt(oElA2);oElA2.addEvent('mouseover',function(event){this.tween('opacity',self.options.fOpacity,1);});if(bError==true){oElA0.destroy();oElA1.destroy();}}});
