Page = {	
	init: function(){
		$('a').each(function(){
		 	if( $(this).attr('rel') == "external"  ){
		 		$(this).attr('target', '_blank');
		 	}
		 
	 });		
	//cboxElement
	$(".cboxElement").colorbox( {transition:'none', width:800, height:600, current: '{current} / {total}', 	previous: '&lsquo;', next: '&raquo;',
		close: 'schließen'} );

	$(".special_colorbox").colorbox({iframe:true, innerWidth:330, innerHeight:330});	
	//set Page-Height
	if( $('#place_holder').length > 0 ){
		$('#place_holder').height($('#submenu').height());		 
	}
	
	}	 
	
}

Util= {
	validateForm: function(id) {
		var result= true;				
		$("#"+id + " input, #"+id + " textarea, #"+id + " input.checkbox, #"+id + " select").each(function() {
			if($(this).attr("class") && $(this).attr("class").match("required")) {
			    $(this).val($(this).val().replace(/^\s+|\s+$/g, ''));
				var itemresult= Util.validate($(this).attr("id"));
				result= result && itemresult;
			}
		});		
		if(!result){
			$('#error .message').css('visibility', 'visible');
		}	
		return result;		
	},
	validate: function(id) {
		var result= true;
		var obj= $("#"+id);		
		var commands= $("#"+id).attr("class").split(" ");
		for(var i=0; i<commands.length; i++) {
			var command= commands[i].replace(/[0-9]/g, "");			
			switch(command) {
				case("minlength"):
					var length= parseInt(commands[i].replace(/minlength/g, ""));
					result= result && (obj.val().length>=length);
					break;
				case("maxlength"):
					var length= parseInt(commands[i]);
					result= result && (obj.val().length<=length);
					break;
				case("email"):
					result = result && ( obj.get(0).value.match(/\S@\S.\S{2,}/)!=null );
					break;
				case("checkbox"):
					if( $("#"+id+":checked").length <= 0 ){
						result = result && false;
						obj.parent().children("label").addClass("error");
					}else{
						obj.parent().children("label").removeClass("error");
					}			
					break;
				case("select"):
					result = result && !( $("#"+id).val() == '---' );					
					break;
				default:
					result= result && (obj.val().length!=0);
					break;
			}
		}
						
		if(!result) {
			obj.addClass("error");			
		} else {
			obj.removeClass("error");
		}
		return result;
	}
}
