
/* - ++resource++walhalla.design2011.scripts/class.horinaja.jquery.pro.js - */
// http://www.walhalla.de/portal_javascripts/++resource++walhalla.design2011.scripts/class.horinaja.jquery.pro.js?original=1
(function($){var types=['DOMMouseScroll','mousewheel'];$.event.special.mousewheel={setup: function(){if(this.addEventListener)
for(var i=types.length;i;)
this.addEventListener(types[--i],handler,false);else
this.onmousewheel=handler},teardown: function(){if(this.removeEventListener)
for(var i=types.length;i;)
this.removeEventListener(types[--i],handler,false);else
this.onmousewheel=null}};$.fn.extend({mousewheel: function(fn){return fn?this.bind("mousewheel",fn):this.trigger("mousewheel")},unmousewheel: function(fn){return this.unbind("mousewheel",fn)}});
function handler(event){var args=[].slice.call(arguments,1),delta=0,returnValue=true;event=$.event.fix(event||window.event);event.type="mousewheel";if(event.wheelDelta) delta=event.wheelDelta/120;if(event.detail) delta=-event.detail/3;args.unshift(event,Math.round(delta));return $.event.handle.apply(this,args)}})(jQuery);jQuery.fn.extend({everyTime: function(interval,label,fn,times,belay){return this.each(function(){jQuery.timer.add(this,interval,label,fn,times,belay)})},oneTime: function(interval,label,fn){return this.each(function(){jQuery.timer.add(this,interval,label,fn,1)})},stopTime: function(label,fn){return this.each(function(){jQuery.timer.remove(this,label,fn)})}});jQuery.event.special
jQuery.extend({timer:{global:[],guid:1,dataKey:"jQuery.timer",regex:/^([0-9]+(?:\.[0-9]*)?)\s*(.*s)?$/,powers:{'ms':1,'cs':10,'ds':100,'s':1000,'das':10000,'hs':100000,'ks':1000000},timeParse: function(value){if(value==undefined||value==null)
return null;var result=this.regex.exec(jQuery.trim(value.toString()));if(result[2]){var num=parseFloat(result[1]);var mult=this.powers[result[2]]||1;return num * mult} else{return value}},add: function(element,interval,label,fn,times,belay){var counter=0;if(jQuery.isFunction(label)){if(!times)
times=fn;fn=label;label=interval}
interval=jQuery.timer.timeParse(interval);if(typeof interval!='number'||isNaN(interval)||interval<=0)
return;if(times&&times.constructor!=Number){belay=!!times;times=0}
times=times||0;belay=belay||false;var timers=jQuery.data(element,this.dataKey)||jQuery.data(element,this.dataKey,{});if(!timers[label])
timers[label]={};fn.timerID=fn.timerID||this.guid++;var handler=function(){if(belay&&this.inProgress)
return;this.inProgress=true;if((++counter>times&&times!==0)||fn.call(element,counter)===false)
jQuery.timer.remove(element,label,fn);this.inProgress=false};handler.timerID=fn.timerID;if(!timers[label][fn.timerID])
timers[label][fn.timerID]=window.setInterval(handler,interval);this.global.push(element)},remove: function(element,label,fn){var timers=jQuery.data(element,this.dataKey),ret;if(timers){if(!label){for(label in timers)
this.remove(element,label,fn)} else if(timers[label]){if(fn){if(fn.timerID){window.clearInterval(timers[label][fn.timerID]);delete timers[label][fn.timerID]}} else{for(var fn in timers[label]){window.clearInterval(timers[label][fn]);delete timers[label][fn]}}
for(ret in timers[label]) break;if(!ret){ret=null;delete timers[label]}}
for(ret in timers) break;if(!ret)
jQuery.removeData(element,this.dataKey)}}}});jQuery(window).bind("unload", function(){jQuery.each(jQuery.timer.global, function(index,item){jQuery.timer.remove(item)})});(function($){$.fn.Horinaja=function(settings){options={capture:'',delai:0.3,duree:4,leftright:true,distanceLR:10,pagination:true};var options=$.extend(options,settings);return this.each(function(){$this=$(this);var capture=options.capture;var px=$('#'+capture+'').width();var height=$('#'+capture+'').height();var leftright=options.leftright;var distanceLR=options.distanceLR;var delai=(options.delai)*1000;var duree=(options.duree)*1000;var pagination=options.pagination;$('#'+capture+'>*').addClass('horinaja_moved');var nCell=$('#'+capture+' > .horinaja_moved > li').length;var po=0;var id=0;$('#'+capture+' > .horinaja_moved').wrap('<div class="capture"></div>');$('#'+capture).css({'overflow':'visible'});if(leftright){$('#'+capture+'').append('<div class="horinaja_leftright"><span class="horinaja_left"><a>&nbsp;</a></span><span class="horinaja_right"><a>&nbsp;</a></span></div>');var wSpan=$('#'+capture+' > .horinaja_leftright > span.horinaja_left').width();$('#'+capture+' > .horinaja_leftright > span.horinaja_left').css({'left':'-'+(parseInt(distanceLR)+parseInt(wSpan))+'px'});$('#'+capture+' > .horinaja_leftright > span.horinaja_right').css({'left':''+(parseInt(px)+parseInt(distanceLR))+'px'})}
function fadeP(it,opac){if(pagination){if(opac==0.99){$('#'+capture+' > ol.horinaja_pagination > li:eq('+it+')').fadeTo("fast",opac).removeClass('active')}else{$('#'+capture+' > ol.horinaja_pagination > li:eq('+it+')').fadeTo("fast",opac).addClass('active')}}}
function moveP(){if(po!=-((px*nCell)-px)){$('#'+capture+' > .capture > .horinaja_moved').animate({left:(po-px)+"px"},delai);po=po-px;fadeP(id,0.99);id=id+1;fadeP(id,1)}else{$('#'+capture+' > .capture > .horinaja_moved').animate({left:"0px"},delai);po=0;fadeP(id,0.99);id=0;fadeP(id,1)}}
$(this).everyTime(duree,capture,function(){moveP()});$('#'+capture+' > .capture > .horinaja_moved').css({'width':px*nCell+'px'});$('#'+capture+' > .capture > .horinaja_moved > li').css({'width':px,'float':'left'});if(pagination){$('#'+capture+' > .capture').after('<ol class="horinaja_pagination"></ol>');var wb=Math.floor(px/nCell);for(i=1;i!=(nCell+1);i++){$('#'+capture+' > ol.horinaja_pagination').append('<li><a>'+i+'</a></li>')}
$('#'+capture+' > ol.horinaja_pagination > li').fadeTo("fast",0.99);$('#'+capture+' > ol.horinaja_pagination > li:first').fadeTo("fast",1).addClass('active')}
if(pagination){$('#'+capture+' > ol.horinaja_pagination > li').each(function(i){$(this).bind('click',{index:i}, function(e){var occ=parseInt(e.data.index);fadeP(occ,1);fadeP(id,0.99);if(id>occ){var diff=id-occ;po=po+(px*diff);id=occ;$('#'+capture+' > .capture > .horinaja_moved').animate({left:(po)+"px"},delai)}else if(id<occ){diff=occ-id;po=po-(px*diff);id=occ;$('#'+capture+' > .capture > .horinaja_moved').animate({left:(po)+"px"},delai)}})})}
if(leftright){$('#'+capture+' > .horinaja_leftright > span > a').each(function(m){$(this).bind('click',{index:m}, function(e){var LorR=parseInt(e.data.index);if(LorR==1){if(po!=-((px*nCell)-px)){$('#'+capture+' > .capture > .horinaja_moved').animate({left:(po-px)+"px"},delai);po=po-px;fadeP(id,0.99);id=id+1;fadeP(id,1)}}else{if(po!=0){$('#'+capture+' > .capture > .horinaja_moved').animate({left:(po+px)+"px"},delai);po=po+px;fadeP(id,0.99);id=id-1;fadeP(id,1)}}})})}})}})(jQuery);

