function GetXmlHttpObject()
{
	try
	{    // Firefox, Opera 8.0+, Safari
		xmlHttp=new XMLHttpRequest();  
		return xmlHttp;  
	}
	catch (e)
	{    // Internet Explorer    
		try
		{      
			xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");  
			return xmlHttp;    
		}
		catch (e)
		{      
			try
			{
				xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
				return xmlHttp;
			}
			catch (e)
			{
				alert("Your browser does not support AJAX!"+e.message);
				return false;
			}
		}
	}
}

function add_to_basket(frm_id,prod_status)
{
	var prod_id,prod_code,qty,prod_price;
	prod_id		= eval("document.prod"+frm_id+".prod_id.value");
	prod_code	= eval("document.prod"+frm_id+".prod_code.value");
	qty			= eval("document.prod"+frm_id+".qty.value");
	prod_price	= eval("document.prod"+frm_id+".prod_price.value");
	
	if(IsNumeric_Qty(qty)==false)
	{
		alert("Please enter the numeric quantity");
		return false;
	}
	else if(qty<=0)
	{
		alert("Please enter the quantity more than 0");	
		return false;
	}
	if(IsNumeric(prod_id)==false)
	{
		//alert(prod_id);
		return false;
	}
	if(IsNumeric(prod_price)==false)
	{
		//alert(prod_price);
		return false;
	}
	xmlHttp = GetXmlHttpObject();
	if(xmlHttp == null)
	{
		alert("Browser does not support HTTP Request");
		return;
	}
	var url="add_to_basket.php?prod_id="+prod_id+"&prod_code="+prod_code+"&qty="+qty+"&prod_price="+prod_price+"&prod_status="+prod_status;
	xmlHttp.onreadystatechange = function()
	{
		if(xmlHttp.readyState==4 || xmlHttp.readyState == "complete")
		{
			if(xmlHttp.responseText == "err")
			{
				alert("You have entered the invalid input");
			}
			else
			{
				document.getElementById('item_amt').innerHTML = xmlHttp.responseText;
				alert("Item(s) has been added to your cart successfully...");
			}
			prod_id			= "";
			prod_code		= "";
			qty				= "";
			prod_price		= "";
			if(prod_status == "add")
			{
				eval("document.prod"+frm_id+".qty.value = '';")
			}
			return false;
		}
	}
	xmlHttp.open("GET",url,true)
	xmlHttp.send(null)
}
function fill_delivery_amount(deli_amt,tot_amt)
{
	var deli_response_amt;
	var tot_response_amt;
	var response_string = Array();
	xmlHttp = GetXmlHttpObject();
	if(xmlHttp == null)
	{
		alert("Browser does not support HTTP Request");
		return;
	}
	var url="delivery_type.php?deli_amt="+deli_amt+"&tot_amt="+tot_amt;
	xmlHttp.onreadystatechange = function()
	{
		if(xmlHttp.readyState==4 || xmlHttp.readyState == "complete")
		{
			response_string		= xmlHttp.responseText.split("---");
			
			document.getElementById('deli_amt').innerHTML = "&pound;"+response_string[1];
			document.getElementById('tot_amt').innerHTML = "&pound;"+response_string[0];
		}
	}
	xmlHttp.open("GET",url,true)
	xmlHttp.send(null)
	
}

function valid_login()
{
	var emailPat = /^[A-Za-z0-9_\-]+([.][A-Za-z0-9_\-]+)*[@][A-Za-z0-9_\-]+([.][A-Za-z0-9_\-]+)+$/
	var matchArray = login.txt_email.value.match(emailPat);
	if(document.login.txt_email.value=="")
	{
		alert("Please enter the email address");
		document.login.txt_email.focus();
		return false;
	}
	else
	{
		if (matchArray == null)
		{
			alert ("Please enter your valid email address.");
			document.login.txt_email.focus();
			return false;
		}
	}
	
	if(document.login.txt_password.value == "")
	{
		alert("Please enter the password");
		document.login.txt_password.focus();
		return false;
	}
	var username;
	var password;
	username		= document.login.txt_email.value;
	password		= document.login.txt_password.value;
	xmlHttp = GetXmlHttpObject();
	if(xmlHttp == null)
	{
		alert("Browser does not support HTTP Request");
		return;
	}
	var url="login.php?username="+username+"&password="+password;
	xmlHttp.onreadystatechange = function()
	{
		if(xmlHttp.readyState==4 || xmlHttp.readyState == "complete")
		{
			if(xmlHttp.responseText == "1")
			{
				window.location ='my_order.php';			
			}
			else
			{
				document.getElementById('loginstatus').innerHTML = "Invalid login detail...";	
				return false;
			}
		}
	}
	xmlHttp.open("GET",url,true)
	xmlHttp.send(null)
}
function IsNumeric(sText)
{
	var ValidChars = "0123456789.";
	var IsNumber=true;
	var Char;
	for (i = 0; i < sText.length && IsNumber == true; i++) 
	{ 
		Char = sText.charAt(i); 
		if (ValidChars.indexOf(Char) == -1) 
		{
			IsNumber = false;
		}
	}
	return IsNumber;
}
function IsNumeric_Qty(sText)
{
	var ValidChars = "0123456789";
	var IsNumber=true;
	var Char;
	for (i = 0; i < sText.length && IsNumber == true; i++) 
	{ 
		Char = sText.charAt(i); 
		if (ValidChars.indexOf(Char) == -1) 
		{
			IsNumber = false;
		}
	}
	return IsNumber;
}
function enquiry_popup(divname,status,form_name)
{
	xmlHttp = GetXmlHttpObject();
	if(xmlHttp == null)
	{
		alert("Browser does not support HTTP Request");
		return;
	}
	var url="make_an_enquiry_appoint_form.php?status="+status+"&frm_name="+form_name;
	xmlHttp.onreadystatechange = function()
	{
		if(xmlHttp.readyState==4 || xmlHttp.readyState == "complete")
		{
			document.getElementById(divname).innerHTML = xmlHttp.responseText;
			
			fireMyPopup(divname);
			
		}
	}
	xmlHttp.open("GET",url,true)
	xmlHttp.send(null)
}

function setOpacity(value,divname)
{
	document.getElementById(divname).style.opacity = value / 10;
	document.getElementById(divname).style.filter = 'alpha(opacity=' + value * 10 + ')';
}

function fadeInMyPopup(divname)
{
	for( var i = 0 ; i <= 100 ; i++ )
		setTimeout( 'setOpacity(' + (i / 10) + ',\''+divname+'\')' , 8 * i );
}

function fadeOutMyPopup(divname) 
{
	
	for( var i = 0 ; i <= 100 ; i++ ) 
	{
		setTimeout( 'setOpacity(' + (10 - i / 10) + ',\''+divname + '\')' , 8 * i );
	}
	setTimeout('closeMyPopup(\''+divname+'\')', 800 );
}

function closeMyPopup(divname)
{
	document.getElementById(divname).style.display = "none";
}

function fireMyPopup(divname) 
{
	
	setOpacity(0,divname);
	document.getElementById(divname).style.display = "block";
	fadeInMyPopup(divname);
}
function valid_forgot()
{
	var emailPat = /^[A-Za-z0-9_\-]+([.][A-Za-z0-9_\-]+)*[@][A-Za-z0-9_\-]+([.][A-Za-z0-9_\-]+)+$/
	var matchArray = frm.txt_email.value.match(emailPat);
	if(document.frm.txt_email.value=="")
	{
		alert("Please enter the email address");
		document.frm.txt_email.focus();
		return false;
	}
	else
	{
		if (matchArray == null)
		{
			alert ("Please enter your valid email address.");
			document.frm.txt_email.focus();
			return false;
		}
	}
	
}

function valid_enquiry_appoint(frm_name)
{
	var emailPat = /^[A-Za-z0-9_\-]+([.][A-Za-z0-9_\-]+)*[@][A-Za-z0-9_\-]+([.][A-Za-z0-9_\-]+)+$/
	var matchArray = FrmEnq.txt_email.value.match(emailPat);
	if(document.FrmEnq.frm_name.value == "enquiry")
	{
		if(document.FrmEnq.txt_firstname.value == '')
		{
			alert("Please enter the first name.");
			document.FrmEnq.txt_firstname.focus();
			return false;
		}
		
		if(document.FrmEnq.txt_email.value=="")
		{
			alert("Please enter the email address");
			document.FrmEnq.txt_email.focus();
			return false;
		}
		else
		{
			if (matchArray == null)
			{
				alert ("Please enter your valid email address.");
				document.FrmEnq.txt_email.focus();
				return false;
			}
		}
		if(document.FrmEnq.txt_comment.value == '')
		{
			alert("Please enter the comment / enquiry.");
			document.FrmEnq.txt_comment.focus();
			return false;
		}
	}
	else
	{
		if(document.FrmEnq.txt_firstname.value == '')
		{
			alert("Please enter your name.");
			document.FrmEnq.txt_firstname.focus();
			return false;
		}
		if(document.FrmEnq.txt_phone.value == '')
		{
			alert("Please enter contact number.");
			document.FrmEnq.txt_phone.focus();
			return false;
		}
		if(document.FrmEnq.txt_email.value=="")
		{
			alert("Please enter the email address");
			document.FrmEnq.txt_email.focus();
			return false;
		}
		else
		{
			if (matchArray == null)
			{
				alert ("Please enter your valid email address.");
				document.FrmEnq.txt_email.focus();
				return false;
			}
		}
		if(document.FrmEnq.txt_appoint_time.value == '')
		{
			alert("Please enter preferred appointment time.");
			document.FrmEnq.txt_appoint_time.focus();
			return false;
		}
	}
}

if (document.layers) { // Netscape
    document.captureEvents(Event.MOUSEMOVE);
    document.onmousemove = captureMousePosition;
} else if (document.all) { // Internet Explorer
    document.onmousemove = captureMousePosition;
} else if (document.getElementById) { // Netcsape 6
    document.onmousemove = captureMousePosition;
}
// Global variables
xMousePos = 0; // Horizontal position of the mouse on the screen
yMousePos = 0; // Vertical position of the mouse on the screen
xMousePosMax = 0; // Width of the page
yMousePosMax = 0; // Height of the page

function captureMousePosition(e) {
    if (document.layers) {
        // When the page scrolls in Netscape, the event's mouse position
        // reflects the absolute position on the screen. innerHight/Width
        // is the position from the top/left of the screen that the user is
        // looking at. pageX/YOffset is the amount that the user has 
        // scrolled into the page. So the values will be in relation to
        // each other as the total offsets into the page, no matter if
        // the user has scrolled or not.
        xMousePos = e.pageX;
        yMousePos = e.pageY;
        xMousePosMax = window.innerWidth+window.pageXOffset;
        yMousePosMax = window.innerHeight+window.pageYOffset;
		
    } else if (document.all) {
        // When the page scrolls in IE, the event's mouse position 
        // reflects the position from the top/left of the screen the 
        // user is looking at. scrollLeft/Top is the amount the user
        // has scrolled into the page. clientWidth/Height is the height/
        // width of the current page the user is looking at. So, to be
        // consistent with Netscape (above), add the scroll offsets to
        // both so we end up with an absolute value on the page, no 
        // matter if the user has scrolled or not.
        xMousePos = window.event.x;//+document.body.scrollLeft;
        yMousePos = window.event.y;//+document.body.scrollTop;
		xMousePos = xMousePos+200;
		yMousePos = yMousePos+200;
        xMousePosMax = document.body.clientWidth+document.body.scrollLeft;
        yMousePosMax = document.body.clientHeight+document.body.scrollTop;
		
    } else if (document.getElementById) {
		
        // Netscape 6 behaves the same as Netscape 4 in this regard 
        xMousePos = e.pageX+100;
        yMousePos = e.pageY;
        xMousePosMax = window.innerWidth+window.pageXOffset;
        yMousePosMax = window.innerHeight+window.pageYOffset;
		
    }
}

function show_big_image(img_name)
{
	var div_left;
	document.getElementById('big_img').style.left=xMousePos;
	document.getElementById('big_img').style.top=yMousePos;
	document.getElementById('big_img').style.display='block';
	document.getElementById('big_img').innerHTML="<img src='dynamicdata/prodImg/"+img_name+"' width='250' height='250'>";
}
function hide_big_image()
{
	var div_left;
	document.getElementById('big_img').style.left=1;
	document.getElementById('big_img').style.top=1;
	document.getElementById('big_img').style.display='none';
}
function forgot_popup(URLStr)
{ 
	var left,top,width,height;
	var popUpWin1 = 0;
	left=200;
	top=100;
	width=400;
	height=200;
	popUpWin1 = open(URLStr, 'ForgotPassword', 'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbar=no,resizable=no,copyhistory=yes,width='+width+',height='+height+',left='+left+', top='+top+',screenX='+left+',screenY='+top+'');
	//return(popUpWin1);
	return false;
}

function questionnaire_valid(first_no,second_no)
{
	
	var emailPat = /^[A-Za-z0-9_\-]+([.][A-Za-z0-9_\-]+)*[@][A-Za-z0-9_\-]+([.][A-Za-z0-9_\-]+)+$/
	var matchArray = document.frmque.txt_email.value.match(emailPat);
	if(document.frmque.txt_name.value == '')
	{
		alert("Please enter the name.");
		document.frmque.txt_name.focus();
		return false;
	}
	
	if(document.frmque.txt_email.value=="")
	{
		alert("Please enter the email address");
		document.frmque.txt_email.focus();
		return false;
	}
	else
	{
		if (matchArray == null)
		{
			alert ("Please enter your valid email address.");
			document.frmque.txt_email.focus();
			return false;
		}
	}
	if((document.frmque.txt_phone.value == '') && (document.frmque.txt_address.value == ''))
	{
		alert("Please enter the phone or address");
		document.frmque.txt_phone.focus();
		return false;
	}
	if(document.frmque.txt_secu_code.value == "")
	{
		alert("Please enter the addition of "+first_no+" + "+second_no);
		document.frmque.txt_secu_code.focus();
		return false;
	}
	if(document.frmque.txt_comment.value == '')
	{
		alert("Please tell us your reason for this consultation");
		document.frmque.txt_comment.focus();
		return false;
	}
}

function disabled_sex_boxes()
{
	if(document.frmque.chk_sex_no_ans.checked == true)
	{
		document.frmque.rdo_heterosexual[0].disabled = true;
		document.frmque.rdo_homosexual[0].disabled = true;
		document.frmque.rdo_bisexual[0].disabled = true;
		document.frmque.rdo_heterosexual[1].disabled = true;
		document.frmque.rdo_homosexual[1].disabled = true;
		document.frmque.rdo_bisexual[1].disabled = true;
	}
	else
	{
		document.frmque.rdo_heterosexual[0].disabled = false;
		document.frmque.rdo_homosexual[0].disabled = false;
		document.frmque.rdo_bisexual[0].disabled = false;	
		document.frmque.rdo_heterosexual[1].disabled = false;
		document.frmque.rdo_homosexual[1].disabled = false;
		document.frmque.rdo_bisexual[1].disabled = false;	
	}
}

function manage_date_first()
{
	if(document.frmque.txt_date_of_last_sexual1.value == "DD-MM-YYYY")
	{
		document.frmque.txt_date_of_last_sexual1.value = "";
	}
}
function manage_date_second()
{
	if(document.frmque.txt_date_of_last_sexual2.value == "DD-MM-YYYY")
	{
		document.frmque.txt_date_of_last_sexual2.value = "";
	}
}
function manage_date_third()
{
	if(document.frmque.txt_date_of_last_sexual3.value == "DD-MM-YYYY")
	{
		document.frmque.txt_date_of_last_sexual3.value = "";
	}
}
function manage_date_last_cervical_smear()
{
	if(document.frmque.txt_date_of_last_cervical_smear.value == "DD-MM-YYYY")
	{
		document.frmque.txt_date_of_last_cervical_smear.value = "";
	}
}
function type_of_sex1()
{
	if(document.frmque.cmd_type_of_sex1.value == "Other")	
	{
		document.frmque.txt_type_of_sex1.disabled = false;
		document.frmque.txt_type_of_sex1.style.display='block';			
	}
	else
	{
		document.frmque.txt_type_of_sex1.disabled = true;
		document.frmque.txt_type_of_sex1.style.display='none';	
	}
}
function type_of_sex2()
{
	if(document.frmque.cmd_type_of_sex2.value == "Other")	
	{
		document.frmque.txt_type_of_sex2.disabled = false;
		document.frmque.txt_type_of_sex2.style.display='block';			
	}
	else
	{
		document.frmque.txt_type_of_sex2.disabled = true;
		document.frmque.txt_type_of_sex2.style.display='none';	
	}
}
function type_of_sex3()
{
	if(document.frmque.cmd_type_of_sex3.value == "Other")	
	{
		document.frmque.txt_type_of_sex3.disabled = false;
		document.frmque.txt_type_of_sex3.style.display='block';			
	}
	else
	{
		document.frmque.txt_type_of_sex3.disabled = true;
		document.frmque.txt_type_of_sex3.style.display='none';	
	}
}

function contraception_used()
{
	if(document.frmque.rdo_contraception_used[0].checked == true)
	{
		document.frmque.txt_contraception_used.style.display='block';
		document.frmque.txt_contraception_used.disabled = false;
	}
	else
	{
		document.frmque.txt_contraception_used.style.display='none';
		document.frmque.txt_contraception_used.disabled = true;
	}
}