// <![CDATA[


function SetCookie (name, value) {
	var todayDate = largeExpDate = new Date ();
	largeExpDate.setTime(todayDate.getTime() + 365 * 24 * 3600 * 1000);
	document.cookie = name+'='+escape(value)+'; expires=' + largeExpDate.toGMTString();
}

function getCookie(Name){
	var search = Name + "="
	if (document.cookie.length > 0) {
		offset = document.cookie.indexOf(search);
		if (offset != -1) {
			offset += search.length;
			end = document.cookie.indexOf(";", offset);
			if (end == -1){
				end = document.cookie.length;
				return unescape(document.cookie.substring(offset, end))
			}
		}
	}
}

var message = {
	box: Object,
	cookie_name : '_message_view_',
	cookie_val : '',
	
	init: function(){
/*
	message.cookie_val = getCookie(message.cookie_name);
		if(message.cookie_val){
			return(false);
		}
	*/	
		var close_link = new Element('a',{
			'href': '#',
			'id': 'message_closer',
			'title': 'Chiudi la finestra.'
		});
		var close_img = new Element('img',{
			'src': 'images/layout/message/close.png',
			'alt': 'Chiudi la finestra.'
		});
		var box_layer = new Element('div', {
			'id':'box_message',
			'style': 'display: none',
			'class': ''});
		message.box = box_layer;
		message.box.update('<p class="alert bold">Promozione 1 euro sconto con BIT timbrati possibile in queste sale:</p>'+
		'<b>UCI MARCONI</b><br/>&nbsp;via E. Fermi 161 Roma<br />' +
		'<b>LUX Multisala</b><br />&nbsp;via Massaciuccoli, 39 - Salario - Roma<br />' +
		'<b>CINESTAR</b>&nbsp;Cassia<br/>&nbsp;via Vibio Mariano 20 Roma<br />' +
		'<b>CINEPLEX</b>&nbsp;Gulliver<br />&nbsp;via della Lucchina 90 Roma' +
		'<br/><span style="margin-top: 5px;" class="alert">dove si terr&agrave; il saluto in sala con gli attori alle ore 22.30.</span>');
		
		Insertion.Top(close_link, close_img);
		Insertion.Bottom(message.box, close_link);
		Insertion.Top('wrapper', message.box);
		
		close_link.observe("click", function(c_event){
			Event.stop(c_event);
/*			
			SetCookie(message.cookie_name,"_opENed_");
*/
			message.hide_message();
		});
		
//Show
		message.show_message.delay(1);		
	},
	show_message: function(){
		view_fx = new Effect.Appear(message.box,{duration: 0.4});
	},
	hide_message: function(){
		view_fx = new Effect.Fade(message.box,{duration: 0.4});
	}
	
	
	
};

var person = {
	init: function(){}
};

var fbum = {
	form_ele: Object,
	first_element: Object,
	form_id: 'newsletterform',
	form_valid: true,
	
	required_fields: new Array('email'),
	required_fields_name: new Array('email'),
	required_fields_rules: new Array('E'),

	init: function(){
//Newsletter interface
		fbum.form_ele = $(fbum.form_id);
		if(!fbum.form_ele) return(false);
		fbum.form_ele.focusFirstElement();
		
		Event.observe(fbum.form_ele , "submit", function(event){
			fbum.validate_form();
			if(fbum.form_valid == true){
				fbum.form_ele.submit;
			}else{
				event.stop();
			}
		});
	},
		
	validate_email: function(email_value){
		if (!email_value.match(/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})$/)){
			return (false);
		}else{
			return(true);
		}
	},
	
	validate_form: function(){
		var validation_msg = "";
		fbum.form_valid = true;
		fbum.required_fields.each(function(ele_id, ele_index){
			var check_ele = $(ele_id);
			if(check_ele){
				var field_value = check_ele.value.strip();
				
				switch (fbum.required_fields_rules[ele_index]) {
//	String
					case 'E':
						var check_email = fbum.validate_email(field_value);
						if(check_email == false){
							field_label = fbum.required_fields_name[ele_index];
							validation_msg ="Il campo "+field_label; 
							validation_msg += " non è un indirizzo email valido!\n";
							fbum.form_valid = false;
							alert("Attenzione!\n" + validation_msg);
							check_ele.focus();
							throw $break;
						}
						break;
//	Checkbox
					case 'C':
						if(!check_ele.checked){
							field_label = fbum.required_fields_name[ele_index];
							validation_msg ="Il campo obbligatorio "+field_label; 
							validation_msg += "  non è stato valorizzato!\n";
							fbum.form_valid = false;
							alert("Attenzione!\n" + validation_msg);
							check_ele.focus();
							throw $break;
						}
						break;
//	Username
					case 'U':
						if(field_value == ""){
							field_label = fbum.required_fields_name[ele_index];
							validation_msg ="Il campo obbligatorio "+ field_label; 
							validation_msg += " non è stato valorizzato!\n";
							fbum.form_valid = false;
							alert("Attenzione!\n" + validation_msg);
							check_ele.focus();
							throw $break;
						}
						break;
//	Default /string
					case 'S':
					case '':
					default:
						if(field_value == ""){
							field_label = fbum.required_fields_name[ele_index];
							validation_msg ="Il campo obbligatorio "+field_label; 
							validation_msg += " non è stato valorizzato!\n";
							fbum.form_valid = false;
							alert("Attenzione!\n" + validation_msg);
							check_ele.focus();
							throw $break;
						}
						break;
				}
			}else{
				fbum.form_valid = false;
				return(false);
			}
		});
	}
};

Event.observe(document, "dom:loaded", function(){
	fbum.init();
	person.init();
	
//	message.init();
});
// ]]>