Preview = {
	
	initialize : function() {
		
		$$("dt a.preview").each(function(element, key) {
		
			$(element).addEvent("click", function(){ Preview.toggle(this); });
		});
	},
	
	toggle : function(element) {
	
		var id = element.id.split("p-");
		id = id[1];
		
		$(element).toggleClass("on");
		
		if($(element).hasClass("on")) {
			
			Preview. closePreviews();
			
			$C('p', { 
				'class' 	: "loading",
				'id' 		: "l-" + id
			}).setHTML("Φόρτωση προεπισκόπησης...").injectIn($("c-" + id));

			var iframe = $C('iframe', { 
				'class' 		: "previewI",
				'id' 			: "i-" + id,
				'height'		: "300px",
				'width' 		: "98%",
				'scrolling' 	: "no",
				'style'			: "display:none;",
				'frameborder' 	: "0"
			}).injectIn($("c-" + id));
			
			iframe.setAttribute('src', "go.php?id=" + id);
			
			
			$("i-" + id).addEvent("load", function(){
				
				$("l-" + id).remove();
				this.show();
			});

		} 
		else {
			$("i-" + id).remove();
			if($("l-" + id))
				$("l-" + id).remove();
		}
	},
	
	closePreviews : function() {
		
		$$(".previewI").each(function(element, key) {
			
			var id = element.id.split("i-");
			id = id[1];
			
			Preview.toggle($("p-" + id));
		});
	}
	
};

Event.add( window, "DOMContentLoaded", function() {
	
	Preview.initialize();
	
	$CN("text").forEachBind( function() {
		Event.add ( this, "focus", function() {
				var node = this;
				Node.addClass( node, "focus" );
			}
		);
		Event.add ( this, "blur", function() {
				var node = this;
				Node.removeClass( node, "focus" );
	
				return; 
			}
		);
	});
});

function check() {

	var title = $('titlos_gr').value;
	var url = $('url').value;
	var descr = $('descr_gr').value;
	var onoma = $('onoma').value;
	var eponimo = $('eponimo').value;
	var email = $('email').value;
	var tilefono = $('tilefono').value;
//	var challenge = $('challenge').value;
	
   	var validemail= "^([a-zA-Z0-9_]|\\-|\\.)+@(([a-zA-Z0-9_]|\\-)+\\.)+[a-z]{2,4}$";
	var validphone = "[0-9]";

	if (!title) { 
		alert ("Δεν έχετε συμπληρώσει τον τίτλο του δικτυακού σας τόπου."); 
		$('titlos_gr').focus();
		return false;
		}
	
	if (!url|| url=='http://') { 
		alert ("Δεν έχετε συμπληρώσει τo URL του δικτυακού σας τόπου."); 
		$('url').focus();
		return false;
		}
		
	
	if(!url.isValidUrl())		{
		alert ("Το URL που δώσατε δεν είναι έγκυρο."); 
		$('url').focus();
		return false;
		}
	
	if (!descr) { 
		alert ("Δεν έχετε συμπληρώσει την περιγραφή του δικτυακού σας τόπου."); 
		$('descr_gr').focus();
		return false;
		}

	if (!onoma) { 
		alert ("Δεν έχετε συμπληρώσει το όνομά σας."); 
		$('onoma').focus();
		return false;
		}

	if (!eponimo) { 
		alert ("Δεν έχετε συμπληρώσει το επώνυμό σας."); 
		$('eponimo').focus();
		return false;
		}

	if (!email) { 
		alert ("Δεν έχετε συμπληρώσει το e-mail σας."); 
		$('email').focus();
		return false;
		}

	if (email.match(validemail) == null) { 
		alert ("Δεν έχετε δώσει σωστό E-mail."); 
		$('email').focus();
		return false; 
		}

	if (!tilefono) { 
		alert ("Δεν έχετε συμπληρώσει το τηλέφωνό σας."); 
		$('tilefono').focus();
		return false;
		}
	
	if (tilefono.match(validphone) == null) { 
		alert ("Δεν έχετε συμπληρώσει σωστά το τηλέφωνό σας."); 
		$('tilefono').focus();
		return false;
		}
		
	if ($('field-area').getValue() == "") { 
		alert ("Δεν έχετε συμπληρώσει την τοποθεσία σας."); 
		$('geopicker-iframe').contentWindow.$('field-area').focus();
		return false;
		}
			
/*	if(!challenge)	{
		alert ("Δεν έχετε συμπληρώσει τον κωδικό επιβεβαίωσης."); 
		$('challenge').focus();
		return false;
	}
*/
	if(!Core.isHuman) {
		return false;
	}

	$('form').setProperty('action', '');	
}

String.prototype.isValidUrl = function() {
	return /^http:\/\/[\S]{3,}?\.(gr|edu|org|travel|com|net|info|tv|biz|tk|eu|gg|am|bg|me)(\/|$)/.test( String(this));
}
