var slide=1;
var user_select=true;
var loader;

function is_email(str) {
	var at="@"
	var dot="."
	var lat=str.indexOf(at)
	var lstr=str.length
	var ldot=str.indexOf(dot)
	var b=true;

	if (str=="") b=false;
	if (str.indexOf(at)==-1) b=false;
	if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr) b=false;
	if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr) b=false;
	if (str.indexOf(at,(lat+1))!=-1) b=false;
	if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot) b=false;
	if (str.indexOf(dot,(lat+2))==-1) b=false;
	if (str.indexOf(" ")!=-1) b=false;

	if (b) {
		var x=false;
		/*
		if (str.indexOf(".com")>0) x=true;
		if (str.indexOf(".co.uk")>0) x=true;
		if (str.indexOf(".net")>0) x=true;
		if (str.indexOf(".org")>0) x=true;
		if (str.indexOf(".gov")>0) x=true;
		if (str.indexOf(".eu")>0) x=true;
		if (str.indexOf(".tv")>0) x=true;
		if (str.indexOf(".me")>0) x=true;
		if (str.indexOf(".es")>0) x=true;
		if (str.indexOf(".info")>0) x=true;
		if (str.indexOf(".biz")>0) x=true;
		if (str.indexOf(".ac.uk")>0) x=true;
		if (str.indexOf(".gb")>0) x=true;
		if (str.indexOf(".ie")>0) x=true;
		if (str.indexOf(".name")>0) x=true;
		if (str.indexOf(".uk")>0) x=true;
		if (str.indexOf(".us")>0) x=true;
		if (str.indexOf(".edu")>0) x=true;
		*/
		b=true;
	}

	if (b) {
		return true;
	} else {
		return false;
	}					
}

function is_blank(str) {
	var space=" ";
	var b=true;

	if (str.length==0) return true;

	for (i=0; i<str.length && b==true; i++) { 
		c=str.charAt(i);
		if (c!=space) b=false;
	}
	return b;
}

function check_fields(f) {
	var str = "";
	
	if (is_blank(f.txtName.value)) {
		str = "Please insert your name before submitting the enquiry form";
	} else if (!is_email(f.txtEmail.value)) {
		str = "Please insert a valid email address before submitting the enquiry form";
	} else if (is_blank(f.txtTelNo.value)) {
		str = "Please insert your telephone number before submitting the enquiry form";
	} else if (is_blank(f.txtEnquiry.value)) {
		str = "Please insert your enquiry before submitting the enquiry form";		
	}
	
	if (str=="") {
		return true;
	} else {
		alert(str);
		return false;
	}
}

function jump(u) {
	document.location.href = u;
}

function swap_image(i,h) {
	if (h) clearInterval(interval);
	if (i==4) i=1;
	if (i!=slide) {
		$("#slide_"+slide).fadeOut(1000);
		$("#slide_"+i).fadeIn(1000);
		slide=i;
	}
}

function resume() {
	interval = setInterval( "swap_image(slide+1,false)", 5000 );
}

function createBookmarkLink(title,url) {
title = "The Cheshire Day Nursery - " + title; 
url = "http://www.thecheshiredaynursery.co.uk/" + url

if (window.sidebar) { // Mozilla Firefox Bookmark
	window.sidebar.addPanel(title, url,"");
} else if( window.external ) { // IE Favorite
	window.external.AddFavorite( url, title); }
else if(window.opera && window.print) { // Opera Hotlist
	return true; }
}

function clear_input(x,s) {
	if (x.value==s) x.value='';
}

function show_loader() {
	$("#loader").center();
	$("#loader").show();
}

function delete_child() {
	var objX;
	objX=document.getElementById("image_loader");
	if (objX) {         
		objX.removeChild(document.getElementById("image_large"));
	}
	objX.innerHTML="";
}

function load_wait() {
	var objX;
	objX = document.getElementById("image_large");
	if (objX.complete) {
		$("#loader").hide();
		$("#image_viewer").move_to_center();		
	} else {
		$("#loader").center();
		$("#loader").show();
		loader = setTimeout("load_wait()",200);
	}
}

function show_next(i) {
	if (i==-1) { 
		i=images.length-1; 
	} else if (i==images.length) { 
		i=0; 
	}
	//alert(images[i]);
	$("#gallery_buttons").hide();
	$("#image_loader").fadeOut(200);
	setTimeout("load_image('"+images[i]+"',"+i+",false);",200);
}

function load_image(s,i,r) {
	slide = i;
	delete_child();
	var objX = document.createElement('img');
	objX.id = "image_large";
	objX.src = s;
	objX.className = "image_border";
	document.getElementById("image_loader").appendChild(objX);
	if (r) {
		$("#image_loader").hide();
		$("#gallery_buttons").hide();
		$("#overlay").fadeTo(200,0.7);
		$("#image_viewer").width(400);
		$("#image_viewer").height(250);
		$("#image_viewer").center();
		$("#image_viewer").fadeIn(400);
	}
	setTimeout("load_wait()",200);
}

function hide() {
	clearTimeout(loader);
	$(".floatbox").fadeOut(200);
	$("#overlay").fadeOut(200);
	$("#loader").hide();
	$("#image_viewer").hide();
	setTimeout('$(".floatbox").hide();',400);
}

function set_opacity(e,i) {
	$("#"+e).css("opacity", i*0.1)
}

function fade_opacity(e,i) {
	$("#"+e).fadeTo(300, i*0.1)
}

<!-- JQUERY additional functions -->
jQuery.fn.set_position = function (align) {
	this.css("position","absolute");
	this.css("top", ($("#image_viewer").height()/2)-25 + "px");
	switch (align) {
		case "left":
			this.css("left", -29 + "px");
			break;
		case "right":
			this.css("left", $("#image_viewer").width() + "px");
			break;
		case "center":
			this.css("top", -29 + "px");
			this.css("left", ($("#image_viewer").width()/2)-26 + "px");
			break;
	}
	//alert(($("#image_viewer").css("top")));
}

jQuery.fn.center = function () {
    this.css("position","absolute");
    this.css("top", ( $(window).height() - (this.height()) ) / 2+$(window).scrollTop() + "px");
    this.css("left", ( $(window).width() - (this.width()) ) / 2+$(window).scrollLeft() + "px");
    return;
}

jQuery.fn.move_to_center = function () {
    this.css("position","absolute");
	
	var x_height = $("#image_loader").height();
	var x_width = $("#image_loader").width();
	
    var x_top = ( $(window).height() - (x_height) ) / 2+$(window).scrollTop();
    var x_left = ( $(window).width() - (x_width) ) / 2+$(window).scrollLeft();
		
	if (x_top<0) { x_top=0; }
	if (x_left<0) { x_left=0; }
	
	 x_top=x_top+"px";
	 x_left=x_left-8+"px";
	
	$("#image_viewer").animate({ "left": + parseInt(x_left), "top": x_top, "width": x_width, "height": x_height } , 200, 'linear',  
	function() { 
	   	$("#image_loader").fadeIn(500);
  	    $("#btnPrev").set_position("left");
		$("#btnNext").set_position("right");
		$("#btnClose").set_position("center");
		$("#gallery_buttons").fadeIn(500);
	});
	return;
}

<!-- END JQUERY additional functions -->
