var Slider = { tot: 0, timer: 3500, timer_id: 0, currElm: 0, direction: '-', tween: null, comingTween: null, step: 150, w: 0, limit: 0, container: null, interval: null, maskWidth: 0, t: 10, limit: 0, tabselected: 1, tabIntervalID: 0, init: function() { var tags = $$('#slider .content a'); tags.forEach( function (t) { Slider.w += parseInt(t.getChildren('img').getProperty('width')); if (t.getProperty('rel') == 'comingsoon')
{ t.addEvent('mouseenter', function() { Slider.showComingSoon(this);}); t.addEvent('mouseleave', function() { Slider.hideComingSoon();});}
}); $$('#slider .content').setStyle('width', Slider.w); Slider.tot = tags.length; $$('.horizontal-slider .next').addEvent('click', function() { return false;}); $$('.horizontal-slider .prev').addEvent('click', function() { return false;}); $$('.horizontal-slider .next').addEvent('mouseover', Slider.goNext); $$('.horizontal-slider .prev').addEvent('mouseover', Slider.goPrev); $$('.horizontal-slider .next').addEvent('mouseout', Slider.restartTimer); $$('.horizontal-slider .prev').addEvent('mouseout', Slider.restartTimer); Slider.container = $$('#slider .content'); Slider.maskWidth = parseInt($('slider').getStyle('width')); Slider.limit = parseInt(Slider.container.getStyle('width')) - Slider.maskWidth; Slider.startAutoSlider(); Slider.tween = new Fx.Morph($('sliderContent'), {duration: 1000, transition: Fx.Transitions.Back.easeOut}); Slider.comingTween = new Fx.Morph($('sliderComingSoon'), {duration: 600, transition: Fx.Transitions.Sine.easeOut}); Debug.setText('Slider Initialized'); var tag = $$('#cornershop-slider-tab a'); tag.forEach(function(t) { $(t).addEvent('click', function() { Slider.showTab($(this).getProperty('rel')); return false;});}); if ($('cornershop-slider-tab'))
{ Slider.tabIntervalID = Slider.showTabFired.periodical(5500); $('promotion-block').addEvent('mouseenter', function() { $clear(Slider.tabIntervalID);}); $('promotion-block').addEvent('mouseleave', function() { $clear(Slider.tabIntervalID); Slider.tabIntervalID = Slider.showTabFired.periodical(5500);});}
}, showTab: function(element) { Slider.tabselected = parseInt(element.replace('cs_tab', '')); var tag = $$('#cornershop-slider-tab a'); tag.forEach(function(t) { $(t).getParent().removeClass('selected'); if ($(t).getProperty('rel') == element)
{ $(t).getParent().addClass('selected');}
}); var tabs = $$('.cs_tab'); tabs.forEach(function(t) { $(t).setStyles({ 'display': 'none', 'opacity': 0
});}); $(element).setStyles({ 'display': 'block', 'opacity': 1
});}, showTabFired: function() { var tot = $$('#cornershop-slider-tab ul li').length; if (Slider.tabselected+1 > tot)
{ Slider.tabselected = 1;}
else
{ Slider.tabselected += 1;}
var element = $$('#cornershop-slider-tab ul li')[Slider.tabselected-1]; var id = element.getProperty('id'); id = id.replace('corn_', 'cs_tab'); var tag = $$('#cornershop-slider-tab a'); tag.forEach(function(t) { $(t).getParent().removeClass('selected'); if ($(t).getProperty('rel') == id)
{ $(t).getParent().addClass('selected');}
}); var tabs = $$('.cs_tab'); tabs.forEach(function(t) { hidetw = new Fx.Morph($(t), {duration: 300, transition: Fx.Transitions.Back.easeOut}); hidetw.onComplete = function() { $(id).setStyles({ 'display': 'block', 'opacity': 0
}); showtw = new Fx.Morph($(id), {duration: 200, transition: Fx.Transitions.Back.easeOut}); showtw.onComplete = function() { var tabs = $$('.cs_tab'); tabs.forEach(function(t) { $(t).setStyles({ 'display': 'none', 'opacity': 0
});}); $(id).setStyles({ 'display': 'block', 'opacity': 1
});}
showtw.start({ 'opacity': 1
});}
hidetw.start({ 'opacity': 0
});});}, resetSlider: function() { Slidertot = 0; Slidertimer = 3500; Slidertimer_id = 0; SlidercurrElm = 0; Sliderdirection = '-'; Slidertween = null; SlidercomingTween = null; Sliderstep = 150; Sliderw = 0; Sliderlimit = 0; Slidercontainer = null; Sliderinterval = null; SlidermaskWidth = 0; Slidert = 10; Sliderlimit = 0;}, startAutoSlider: function() { Slider.timer_id = Slider.moveAutoScroller.periodical(Slider.timer);}, moveAutoScroller: function() { if (Slider.direction == '-')
{ var pos = parseInt(Slider.container.getStyle('left')) - Slider.step; if (pos > -(Slider.limit))
{ Slider.currElm++;}
else
{ var pos = -(Slider.limit); Slider.direction = '+';}
}
else
{ var pos = parseInt(Slider.container.getStyle('left')) + Slider.step; if (pos < 0)
{ Slider.currElm--;}
else
{ var pos = 0; Slider.direction = '-';}
}
Slider.tween.start({'left': pos});}, stopTimer: function() { Slider.tween.cancel(); $clear(Slider.timer_id);}, restartTimer: function() { Slider.startAutoSlider(); Slider.deleteEnterFrame();}, goNext: function() { Slider.stopTimer(); Slider.deleteEnterFrame(); Slider.interval = Slider.setEnterFrame.periodical(Slider.t, null, '-');}, goPrev: function() { Slider.stopTimer()
Slider.deleteEnterFrame(); Slider.interval = Slider.setEnterFrame.periodical(Slider.t, null, '+');}, setEnterFrame: function( dir ) { if (dir == '-')
{ if ( parseInt(Slider.container.getStyle('left')) > -(Slider.limit) ) { Slider.container.setStyle('left', parseInt(Slider.container.getStyle('left')) - 1);}
}
else
{ if ( parseInt(Slider.container.getStyle('left')) < 0 ) { Slider.container.setStyle('left', parseInt(Slider.container.getStyle('left')) + 1);}
}
}, deleteEnterFrame: function( id ) { $clear(Slider.interval);}, showComingSoon: function( elm ) { Slider.stopTimer(); if (Slider.comingTween != null) { Slider.comingTween.cancel();}
$('sliderComingSoon').setStyles({ 'display': 'block', 'left': $(elm).getPosition().x
}); elm.addEvent('mousemove', function(event) { event = Event(event); $('sliderComingSoon').setStyles({ 'left': event.page.x+15, 'top': event.page.y-15
}); event.stop();});}, hideComingSoon: function() { $('sliderComingSoon').setStyles({ 'display': 'none'
}); Slider.restartTimer();}
}; window.addEvent('domready', Slider.init);