var SiteClass = new Class({

	initialize: function(){
	}, // initialize

	
	domReady: function() {
		
		this.activateFlash();
		this.activateNewsletter();
		this.activateContactForm();
		
	}, // domReady

	activateFlash: function() {
	
		if($('brands')) {
			var version = deconcept.SWFObjectUtil.getPlayerVersion();
			if (document.getElementById && version["major"] < 9) {
				
			} else {
				var so = new SWFObject("/public/flash/logotypy.swf", "logotypy", "350", "200", "9", "#FFFFFF");
				so.addVariable("id", "0");
				so.addParam("scale", "noscale");
				so.addParam("wmode", "transparent");
				so.write("brands");
			}		
		}
	
	}, //activateFlash
	
	activateContactForm: function() {
		
		if($('contact-form')) {
			$('contact-form-loader').setStyle('display', 'none');
			$$('form#contact-form input[type=checkbox]').each(function(input) {
				input.setStyle('visibility', 'hidden');	
				var span = new Element('span', { 'class' : 'checkbox' });
				span.inject(input, 'before');
				input.checked = false;
				input.getParent().addEvent('click', function(){
					this.getChildren('input').each(function(input){ input.checked = !input.checked; });
					this.getChildren('span').each(function(span){ if(span.getNext().checked) { span.addClass('checked'); } else { span.removeClass('checked'); } });
					Site._formBlock = true;
				});
			});

			$('contact-form').addEvent('submit', function() {
				$('contact-form-loader').setStyle('display', 'block');
				var inputs = $$('form#contact-form input[type=text]');
				var errors = 0;
				var regex;
				for(var i = 0; i < inputs.length; i++) {
					regex = false;
					switch(inputs[i].name) {
						case 'name': regex = /^.{3,100}$/; break;
						case 'phone': regex = /^[-+\.w0-9 ]{9,30}$/; break;
						case 'mail': regex = /^[0-9a-zA-Z._-]+\@[0-9a-zA-Z_-]+\.[0-9a-zA-Z.]{2,100}$/; break;
					}
					if(regex) {
						if(regex.test(inputs[i].value) == false) {
							inputs[i].getParent().addClass('error');
							errors++;
						} else {
							inputs[i].getParent().removeClass('error');
						}
					}
				}
				
				var checked = false;
				$$('form#contact-form input[type=checkbox]').each(function(check){
					if(check.checked) checked = true;
				});
				if(checked) {
					$$('form#contact-form input[type=checkbox]').each(function(check){
						check.getPrevious().removeClass('error');
					});
				} else {
					errors++;
					$$('form#contact-form input[type=checkbox]').each(function(check){
						check.getPrevious().addClass('error');
					});
				}
				
				if(errors > 0) {
					$('contact-form-loader').setStyle('display', 'none');
					Site.setDialog('Wypełnij podświetlone pola');
					//alert('Wypełnij podświetlone pola');
				} else {
					$('contact-form').action = 'ajax/contact';
					$('contact-form').set('send', {
						onComplete: function(response) {
							$('contact-form-loader').setStyle('display', 'none');
							//$('message_div').innerHTML = response;
						},
						onFailure: function() {
							$('contact-form-loader').setStyle('display', 'none');
						},
						evalScripts: true
					});
					$('contact-form').send();
					
				}
				return false;
			});

		}
		
	}, // activateContactForm
	
	activateNewsletter: function () {
		var form = $('newsletter-form');
		if($('newsletter-form')) {
			try {
				$('loader').setStyle('display', 'none');
				form.addEvent('submit', function(){ 
					if($('newsletter-action').value == '') { $('newsletter-action').value = 'add'; }
					form.action = 'ajax/newsletter';
					$('loader').setStyle('display', 'block');
					form.set('send', {
						onComplete: function(response) {
							$('loader').setStyle('display', 'none');
							//$('message_div').innerHTML = response;
						},
						onFailure: function() {
							$('loader').setStyle('display', 'none');
						},
						evalScripts: true
					});
					form.send();
					return false; 
				});
				
				$('add').addEvent('click', function(){ $('newsletter-action').value = 'add'; });
				$('remove').addEvent('click', function(){ $('newsletter-action').value = 'remove'; });
			} catch(ex) {}
		}
	}, //activateNewsletter

	setDialog: function(txt) {
		
		var dialog = $('dialog');
		var dialog_inner = $('dialog_inner');
		var dialog_txt = $('dialog_txt');
		if(!dialog) {
			dialog = new Element('div', { 'id' : 'dialog' });
			$$('body').each(function(b){ dialog.inject(b, 'top'); });
			dialog_inner = new Element('div', { 'id' : 'dialog_inner' });
			dialog_inner.inject(dialog, 'top');
			var btn_close = new Element('a', { 'class' : 'close', 'href' : 'javascript:void(0);' });
			btn_close.inject(dialog, 'top');
			btn_close.addEvent('click', function(){
				this.getParent().setStyle('display', 'none');							  
			});
			dialog_txt = new Element('div', { 'id' : 'dialog_txt' });
			dialog_txt.inject(dialog_inner, 'top');
			var myMove = new Drag(dialog, {
				snap: 0,
				onSnap: function(el){
					el.setStyle('cursor', 'move');
				},
				onComplete: function(el){
					el.setStyle('cursor', 'default');
				}
			});
		}
		dialog_txt.innerHTML = txt;
		dialog.setStyle('display', 'block');
		this.setToCenter(dialog);
	}, //setDialog

	setToCenter: function(obj) {
		obj = $(obj);
		var body_scroll, body_size, obj_size;
		$$("body").each(function(b){ 
			body_scroll = b.getScroll(); 
			body_size = b.getSize();
		});
		obj_size = obj.getSize();
		obj.setStyle('left', (body_size.x/2)-(obj_size.x/2)+'px');
		obj.setStyle('top', ((body_size.y/2)-(obj_size.y/2)+body_scroll.y)+'px');
	}, // setToCenter
	
	showMail: function(user, domain, contry, attr) {
		var start = "<a href=\"mailto:" + user + "@" + domain + "." + contry + "\"" + attr + ">";
		var end = "</a>";
		document.write(start + user + "@" + domain + "." + contry + end);
		return false;
	} // showMail
	
});

var Site = new SiteClass();
window.addEvent('domready', function(){ Site.domReady(); });

