﻿var src, largeImage, imgs, imageSource, timer, rname, sname, url, currimg, current_img; var c=0; var frmerror=0;
jQuery.fn.fadeToggle = function(s, fn){
	return (this.is(":visible")) ? this.fadeOut(s, fn) : this.fadeIn(s, fn);
};
function validateName(fld){
	var alphaExp = /^[a-zA-Z\- ]+$/ ;
	if(!fld.match(alphaExp)){
		return ('false');
	}else{
		return ('true');
	}
}
function validateEmail(fld) {
    var emailFilter = /^[^@]+@[^@.]+\.[^@]*\w\w$/ ;
    var illegalChars= /[\(\)\<\>\,\;\:\\\"\[\]]/ ;
   
    if (fld == "") {
        return 'false';
    } else if (!emailFilter.test(fld)) {
        return 'false';
    } else if (fld.match(illegalChars)) {
        return 'false';
    } else {
        return 'true';
    }
}
function GetXmlHttpObject(){
	var xmlHttp=null;
	try{xmlHttp=new XMLHttpRequest();// Firefox, Opera 8.0+, Safari
	}catch (e){
		try{// Internet Explorer
			xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
		}catch (e){
			xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
		}
	}
	return xmlHttp;
}
//click function
$(function(){
	//image selection controls
    $("#controls a").click(function(){
		imageSource = $(this).attr("href");
		current_img = $("#loader img").attr("src");
		$("#controls a").removeClass("active");
		$(this).addClass("active");
		stopCount();
		$("#sendimg").css({"display" : "none"});
		//imageSource = $(this).attr("href");
		$("#loader").addClass("loading");
		showImage(imageSource);
		return false;
	});
	//email a friend link
	$("#emailfriend a").click(function(){
		stopCount();
		$("#sendimg").fadeToggle();
		return false;
	});
	//close button
	$("#sendimgclose").click(function(){
		$("#sendimg").fadeToggle();
		return false;
	});
	//form submission
	$("#imgsubmit").click(function(){
		frmerror=0;
		/*$("input[name='recipemail']").removeClass("red");
		$("input[name='sendername']").removeClass("red");
		$("input[name='sendemail']").removeClass("red");*/
		var recmail = $("input[name='recipemail']");
		var sendname = $("input[name='sendername']");
		var sendmail = $("input[name='sendemail']");
		recmail.removeClass("red");
		sendname.removeClass("red");
		sendmail.removeClass("red");
		
		//rname = $("input[name='recipemail']").val();
		rname = recmail.val();
		rname = jQuery.trim(rname);
		if(validateEmail(rname)=='false'){
			$("input[name='recipemail']").addClass("red");
			frmerror++;
		}
		//sname = $("input[name='sendername']").val();
		sname = sendname.val();
		sname = jQuery.trim(sname);
		if(validateName(sname)=='false'){
			$("input[name='sendername']").addClass("red");
			frmerror++;
		}
		//smail = $("input[name='sendemail']").val();
		smail = sendmail.val();
		smail = jQuery.trim(smail);
		if(validateEmail(smail)=='false'){
			$("input[name='sendemail']").addClass("red");
			frmerror++;
		}
		//alert(frmerror);
		if(frmerror==0){
			//$('#target').attr("disabled", true);
			recmail.attr("disabled", true);
			sendname.attr("disabled", true);
			sendmail.attr("disabled", true);
			$("#sendinner").addClass("loading");
			xmlHttp=GetXmlHttpObject();
			if (xmlHttp==null){
				$("#sendinner").html("Your browser does not support AJAX!");
				return;
			}
			url="sendEmail.php";
			url=url+"?send="+sname+"&recipe="+rname+"&smail="+smail+"&currimg="+currimg;
			url=url+"&sid="+Math.random();
			xmlHttp.onreadystatechange=function(){
				$("#sendinner").removeClass("loading");
				if (xmlHttp.readyState == 4 || xmlHttp.readyState == "complete") {
					if (xmlHttp.status == 200) {
						doc=xmlHttp.responseText;
						$("#sendinner").html("<p>"+doc+"</p>");
					} else {
						$("#sendinner").html("<p>There was an error connecting to the Email Engine</p>");
					}
				}
			}
			xmlHttp.open("GET",url,true);
			xmlHttp.send(null);
		}
		return false;
	});
});


function timedCount(){
	$("#controls li a").removeClass("active");
	$("#controls li:nth-child("+(c+1)+") a").addClass("active");
	$("#loader").addClass("loading");
	showImage(imgs[c]);
	if(imgs.length>1){
		timer=setTimeout("timedCount()",8500);
	}
	if(c==imgs.length-1){c=0;}
	else{c=c+1;}
}
function stopCount(){
	clearTimeout(timer);
}
//function after the click
function showImage(src){
	currimg = src;
	$("#loader img").fadeOut("normal").remove();
	largeImage = new Image();
	$(largeImage).load(function(){
		$(this).hide();
		$(this).fadeOut("fast");
		$("#loader").append(this).removeClass("loading");
		$(this).fadeIn("slow");
	});
	$(largeImage).attr("src", src);
}

//when document loads
$(document).ready(function(){
	imgs = $("#controls a");
	largeImage = new Image();
	$(largeImage).load(function(){
		$(this).hide();
		//$("#loader").append(this).removeClass("loading");
		$(this).fadeIn("slow");
	});
	timedCount();
});