// JavaScript Document
var Ticker = new Class({
	setOptions: function(options) {
		this.options = Object.extend({
			speed: 1500,
			delay: 5000,
			direction: 'horizontal',
			onComplete: Class.empty,
			onStart: Class.empty
		}, options || {});
	},
	initialize: function(el,options){
		this.setOptions(options);
		this.el = $(el);
		this.items = this.el.getElements('li');
		var w = 0;
		var h = 0;
		if(this.options.direction.toLowerCase()=='horizontal') {
			h = this.el.getSize().y;
				this.items.each(function(li,index) {
				w += li.getSize().x;
			});
	} else {
			w = this.el.getSize().x;
			this.items.each(function(li,index) {
				h += li.getSize().y;
			});
		}
		this.el.setStyles({
			position: 'absolute',
			top: 0,
			left: 0,
			width: w,
				height: h
		});
		this.fx = new Fx.Morph(this.el,{duration:this.options.speed,onComplete:function() {
			var i = (this.current==0)?this.items.length:this.current;
			this.items[i-1].inject(this.el,'inside');
			this.el.setStyles({
				'left':0,
				'top':0
			});
		this.items[i-1].setStyle('visibility','visible'); 
		}.bind(this)});
		this.current = 0;
		this.next();
		},
	
	pause: function() {
	    $clear(mytimer);
	    mytimer = null;
	},
	resume: function() {
	    if (mytimer == null) {
	    this.next();
	    }
	},
	next: function() {/**/
	if(this.firstrun==0)
		this.current=0;
		else
		this.current++;
		
		if (this.current >= this.items.length) this.current = 0;
		var pos = this.items[this.current];
		
		this.fx.start({
			'top': -pos.offsetTop,
			'left': -pos.offsetLeft
		});
		this.firstrun=1; 
		mytimer = this.next.bind(this).delay(this.options.delay+this.options.speed);
	}
});

var mytimer = null;

var SiteEngine = new Class ({
initialize : function(basehref){
	this.indexSlideshow();
	this.indexEvents();
	this.indexRecomend();
	this.certSlide();
	this.leftMenu();
	this.productContact();
	this.hideTitles();
	this.productsGeneral();
	this.regularContact();
	this.advancedSearch();
	this.newsletterForm();
	this.newsletterConfirmInfo();
},

newsletterConfirmInfo: function() {
	var nsinfo = $('mb_newsletter_confirm_info');
	if(nsinfo != null) {
		Mediabox.open('#mb_newsletter_confirm_info', 'Newsletter', '400 120');
	}
},
newsletterForm: function() {
	var newsletter_form = $('newsletter_form');
	var newsletter_ico = $('newsletter_ico');
	
	if(newsletter_ico != null) {
	
		new Tips(newsletter_ico,{className:'custom-tip'});
	
		newsletter_ico.addEvent('click', function(event) {
			event.preventDefault();
			if($('newsletter_window').getStyle('display')!='none')
			$('newsletter_window').setStyle('display','none');
			else
			$('newsletter_window').setStyle('display','block');
			}
		);
		
	}
	
	if(newsletter_form != null) {
	
	email_input = $('newsletter_email');
	
		newsletter_form.addEvent('submit',function(event){
			event.preventDefault();
			
			email_input.value = email_input.value.trim();
			
			if(email_input.value.test(/^[a-zA-Z0-9._-]+@([a-zA-Z0-9.-]+\.)+[a-zA-Z0-9.-]{2,4}$/)) {
				var href = this.getAttribute('action') + '?email='+email_input.value;
				if($('action_type').value == 1) 
				Mediabox.open(href, '', '400 250');
				else
				Mediabox.open(href, '', '400 150');
			} else {
				alert(email_input.getAttribute('rel'));
			}

		});
		
		
	$('newsletter_add_to').addEvent('click',function(){
		$('newsletter_window').setStyle('display','none');												 
		 $('action_type').value = 1;
		newsletter_form.action = this.getAttribute('rel');
		
	});
	$('newsletter_remove_from').addEvent('click',function(){
		$('newsletter_window').setStyle('display','none');														  
		 $('action_type').value = 0;														  
		newsletter_form.action = this.getAttribute('rel')
	});
	
	}
},

advancedSearch: function() {
	var form = $('adv_search');
	if(form != null) {
		
		select_1 = $('cat_sel');
		select_2 = $('scat_sel');
		
		select_1.addEvent('change', function() {
			var current_select_id = this.value;							  
			select_2.empty();
			
			$each(scatsearch[current_select_id], function(item){
					new Element('option', {text: item[1], value: item[0]}).inject(select_2);																																		
				});
			
			
		});
		
	}
},
productsGeneral: function() {
	$('content').getElements('.product_item .photo, .product_cart .photo').each(function(it, index){
		it.addEvents({
			'mouseover': function(){ this.addClass('hphoto') ;},
			'mouseleave': function(){ this.removeClass('hphoto') ;}
		
		});																				 
	});
	
	$('content').getElements('.read_more,.form_btn').each(function(it, index){
		it.set('opacity', 0.85);												 
		it.addEvents({
			'mouseover': function(){ this.set('opacity', 1);	},
			'mouseleave': function(){ this.set('opacity', 0.85);	}
		
		});																				 
	});
},

productContact: function() {
	if($('product_contact')!= null) {
	$('product_contact').getElements('[type=text], textarea').each(function(el){
    form_overs = new OverText(el);
	});
	
	$('product_contact').getElements('.ask_form_clear').addEvent('click',function(){$('product_contact').reset(); OverText.update();});
	
	var	form = $('product_contact');
	
	if(form != null){

	if(this.firstrun == null) {
		form.reset();	
		this.firstrun ++;
	}
	
	var slf = this;
	
	form.getElements('[type=text], textarea').each(function(el){
    new OverText(el);
	});
	
	send_btn = form.getElement('[type=image]');
	
	var tips = new Tips('#contact_form .error_ico',{'className':'error-tips'});
	
	form.getElements('[type=text], textarea').each(function(item,index){item.disabled = 0;});
	
	form.addEvent('submit', function(event){
	new Event(event).preventDefault();
	form.set('send', { method: 'post', 
		onRequest: function() {
			send_btn.dispose();
			form.getElements('[type=text], textarea').each(function(item,index){item.disabled = 1;});
			$('contact_form_response').set('opacity',0.6);
			},

		onComplete: function(response){
			$('contact_form_response').set('html',response);
			$('contact_form_response').set('opacity',1);				
			slf.productContact();
			}
		});
			form.send();
		});
	}
	
	}
},


regularContact: function() {
	if($('contact')!= null) {
	$('contact').getElements('[type=text], textarea').each(function(el){
    form_overs = new OverText(el);
	});
	
	$('contact').getElements('.ask_form_clear').addEvent('click',function(){$('contact').reset(); OverText.update();});
	
	var	form = $('contact');
	
	if(form != null){

	if(this.firstrun == null) {
		form.reset();	
		this.firstrun ++;
	}
	
	var slf = this;
	
	form.getElements('[type=text], textarea').each(function(el){
    new OverText(el);
	});
	
	send_btn = form.getElement('[type=image]');
	
	var tips = new Tips('#contact .error_ico',{'className':'error-tips'});
	
	form.getElements('[type=text], textarea').each(function(item,index){item.disabled = 0;});
	
	form.addEvent('submit', function(event){
	new Event(event).preventDefault();
	form.set('send', { method: 'post', 
		onRequest: function() {
			send_btn.dispose();
			form.getElements('[type=text], textarea').each(function(item,index){item.disabled = 1;});
			$('contact_form_response').set('opacity',0.6);
			},

		onComplete: function(response){
			$('contact_form_response').set('html',response);
			$('contact_form_response').set('opacity',1);				
			slf.regularContact();
			}
		});
			form.send();
		});
	}
	
	}
},

leftMenu: function() {
	var left_menu = $('left_menu');
	
	if(left_menu != null) {
		left_menu.getElements('li').each(function(main, index){
			var submenu = main.getElement('ul.submenu');									  
			if( submenu != null) {
				
				if(!main.hasClass('current'))
				submenu.setStyle('display','none');
				
				main.getElement('a').addEvent('click',function(event){
					event.preventDefault();
					if(submenu.getStyle('display') == 'none') {
						submenu.setStyle('display','block');
					}
					else
					{
						submenu.setStyle('display','none');						
					}
				});
			}
		});	
	
		left_menu.getElement('li:first-child').addClass('no-border');																	 
	
	}
},

indexSlideshow: function() {
	if($('index_header_anim') != null) {
		new viewer($$('#index_header_anim img'),{
			mode: ['alpha'],
			sizes: {w:980,h:370},
			interval: 7000,
			fxOptions: {'duration':1000}
		}).play(true);
	}
	
},

indexEvents: function() {
	if($('index_events') != null) {
		var nS1 = new noobSlide({
			box: $('events_slider_box'),
			items: $('events_slider_box').getElements('.event_slide'),
			size: 623,
			addButtons: {
				previous: $('events_slider_box_prev'),
				next: $('events_slider_box_next')
			}
		});
	
	$('events_slider_box').getElements('.items_collection').each(function(it,index){
		it.getElement('.event:first-child').addClass('no-border');																	 
	});
	
	}
},

indexRecomend: function() {
	if($('recomended') != null) {
		var nS1 = new noobSlide({
			box: $('recomended_slider_box'),
			items: $('recomended_slider_box').getElements('.item'),
			size: 326,
			addButtons: {
				previous: $('recomended_slider_box_prev'),
				next: $('recomended_slider_box_next')
			}
		});
	
	$('events_slider_box').getElements('.items_collection').each(function(it,index){
		it.getElement('.event:first-child').addClass('no-border');																	 
	});
	
	}
},

certSlide: function() {
	if($('certificates_ticker') != null)
	if($('certificates_ticker').getElements('li').length > 7) {
	  var hor = new Ticker('certificates_ticker', {speed : 200, delay : 5000, direction : 'horizontal'});
	}  
},

hideTitles:function() {
	$$('a[rel^=lightbox]').each(function(el,i){
	el.store('title',el.title);
	el.title = '';
	});
}

});


window.addEvent('domready',function(){
   thesite    = new SiteEngine(basehref);
});
