// JavaScript Document

var xmlHttp= null;

function initajax()
{
	try
	{
		// Firefox, Opera 8.0+, Safari
		xmlHttp=new XMLHttpRequest();
	}
	catch (e)
	{
		// Internet Explorer
		try
		{
			xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch (e)
		{
			try
			{
				xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch (e)
			{
		alert("Your browser does not support AJAX!");
				return false;
			}
		}
	}
	return xmlHttp;
}

function stateChanged() 
{
	if ((xmlHttp.readyState==4) || (xmlHttp.readyState=="complete"))
		document.getElementById("photodiv").innerHTML= xmlHttp.responseText;
}

function getphoto(pno)
{
	xmlHttp= initajax();
	if(xmlHttp==null)
	{
		alert ("Your browser does not support AJAX!");
		return false;
	}
	else
	{
		document.getElementById("photodiv").innerHTML= '<br /><br /><img src="./images/loading.gif" width="32" height="32" alt="Loader_img" /><br /><br />Loading..';
		var purl= './photo_list.php?pno='+pno;
		xmlHttp.onreadystatechange= stateChanged;
		xmlHttp.open("GET",purl,true);
		xmlHttp.send(null);
	}
	return false;
}

function chkValid(e,valid,rejKey,rejChr)
{
	var ctl = "null|0|8|9|13|27";
	var evt = (window.event) ? window.event.keyCode : (e) ? e.which : "";
	var chr = String.fromCharCode(evt).toUpperCase();
	var rej = ((evt && rejKey && rejKey.toString().indexOf(evt) != -1) || (chr && rejChr && rejChr.indexOf(chr) != -1));
	if (rejKey || rejChr)
	{
		if ((evt && rejKey && rejKey.toString().indexOf(evt) != -1) || (chr && rejChr && rejChr.indexOf(chr) != -1))
		{
			alert("Only Numerical Values are accepted!");
			return false;
		}
	}
	else
	{
		if ((evt && ctl.indexOf(evt) == -1) && (chr && valid.indexOf(chr) == -1))
		{
			alert("Only Numerical Values are accepted!");
			return false;
		}
	}
  return true;
}

function explode (delimiter, string, limit) {
    // Splits a string on string separator and return array of components. If limit is positive only limit number of components is returned. If limit is negative all components except the last abs(limit) are returned.  
    // 
    // version: 1006.1915
    // discuss at: http://phpjs.org/functions/explode    // +     original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +     improved by: kenneth
    // +     improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +     improved by: d3x
    // +     bugfixed by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)    // *     example 1: explode(' ', 'Kevin van Zonneveld');
    // *     returns 1: {0: 'Kevin', 1: 'van', 2: 'Zonneveld'}
    // *     example 2: explode('=', 'a=bc=d', 2);
    // *     returns 2: ['a', 'bc=d']
     var emptyArray = { 0: '' };
    
    // third argument is not required
    if ( arguments.length < 2 ||
        typeof arguments[0] == 'undefined' ||        typeof arguments[1] == 'undefined' ) {
        return null;
    }
 
    if ( delimiter === '' ||        delimiter === false ||
        delimiter === null ) {
        return false;
    }
     if ( typeof delimiter == 'function' ||
        typeof delimiter == 'object' ||
        typeof string == 'function' ||
        typeof string == 'object' ) {
        return emptyArray;    }
 
    if ( delimiter === true ) {
        delimiter = '1';
    }    
    if (!limit) {
        return string.toString().split(delimiter.toString());
    } else {
        // support for limit argument        var splitted = string.toString().split(delimiter.toString());
        var partA = splitted.splice(0, limit - 1);
        var partB = splitted.join(delimiter.toString());
        partA.push(partB);
        return partA;    }
}

function echeck(str,stat)
{
	var at="@";
	var dot=".";
	var lat=str.indexOf(at);
	var lstr=str.length;
	var ldot=str.indexOf(dot);
	if (str.indexOf(at)==-1)
	{
		if(stat==1)
			alert("Invalid Username");
		else
	   alert("Invalid E-mail ID");
	  return false;
	}

	if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr)
	{
	  if(stat==1)
			alert("Invalid Username");
		else
	   alert("Invalid E-mail ID");
	  return false;
	}

	if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr)
	{
	  if(stat==1)
			alert("Invalid Username");
		else
	   alert("Invalid E-mail ID");
	   return false;
	}
	
 	if (str.indexOf(at,(lat+1))!=-1)
	 {
	 		if(stat==1)
				alert("Invalid Username");
			else
	  	 alert("Invalid E-mail ID");
	  	return false;
	 }

	 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot)
	 {
			if(stat==1)
				alert("Invalid Username");
			else
				alert("Invalid E-mail ID");
			return false;
	 }

	if (str.indexOf(dot,(lat+2))==-1)
 	{
    if(stat==1)
			alert("Invalid Username");
		else
			alert("Invalid E-mail ID");
    return false;
	}

	if (str.indexOf(" ")!=-1)
	{
		if(stat==1)
			alert("Invalid Username");
		else
			alert("Invalid E-mail ID");
		return false;
	}
	return true;
}

function quote_valid()
{
	var cname= document.getElementById("cname").value;
	var cmail= document.getElementById("cmail").value;
	var cqval= document.getElementById("quote_type");
	var qsel =false;
	for(var i=1; i<=13; i++)
	{
		if(document.getElementById("selstext_"+i).checked)
		{
			qsel= true;
			break;
		}
	}
	if(!qsel)
		qsel= document.getElementById("selhtext_5").checked;
	//alert(qsel);
	var ccomm= document.getElementById("ccomm").value;
	var cfile= document.getElementById("dfile").value;
	var captval= document.getElementById("rcapt").value;
	
	if((cname==null)||(cname==''))
	{
		alert('Enter Your Name');
		document.getElementById("cname").focus();
		return false;
	}
	if((cmail==null)||(cmail==''))
	{
		alert('Enter Your E-Mail ID');
		document.getElementById("cmail").focus();
		return false;
	}
	else
	{
		if(!echeck(cmail,2))
		{
			document.getElementById("cmail").value='';
			document.getElementById("cmail").focus();
			return false;
		}
	}
	if(!qsel)
	{
		alert('Enter Your project type');
		document.getElementById("quote_type").focus();
		return false;
	}
	if((ccomm==null)||(ccomm==''))
	{
		alert('Enter Your Comments');
		document.getElementById("ccomm").focus();
		return false;
	}
	if((cfile!='') && (cfile!=null))
	{
		var cfextarr= explode('.', cfile);
		var filext= cfextarr[(cfextarr.length -1)];
		if((filext!= 'doc') && (filext!= 'docx') && (filext!= 'pdf') && (filext!= 'txt') && (filext!= 'zip') && (filext!= 'rar') && (filext!= 'jpg'))
		{
			var altext= "You've chosen an incorrect filetype ("+filext+")!\n";
			altext+= "Only doc, docx, text, pdf, zip, rar and jpg files less than 2 MB are supported";
			alert(altext);
			document.getElementById("dfile").focus();
			return false;
		}
	}
	if((captval==null)||(captval==''))
	{
		alert('Type the value in the image');
		document.getElementById("rcapt").focus();
		return false;
	}
	return true;
}

function frm_reset(frmid)
{
	document.getElementById(frmid).reset();
	return false;
}

function con_valid()
{
	var uname= document.getElementById("cname").value;
	var umail= document.getElementById("cmail").value;
	var ucomm= document.getElementById("ccomm").value;
	var captval= document.getElementById("rcapt").value;
	if((uname=='')||(uname==null))
	{
		alert("Enter your name");
		document.getElementById("cname").focus();
		return false;
	}
	if((umail=='')||(umail==null))
	{
		alert("Enter your e-mail");
		document.getElementById("cmail").focus();
		return false;
	}
	else
	{
		if(!echeck(umail, 2))
		{
			document.getElementById("cmail").value= '';
			document.getElementById("cmail").focus();
			return false;
		}
	}
	if((ucomm=='')||(ucomm==null))
	{
		alert("Enter your comments");
		document.getElementById("ccomm").focus();
		return false;
	}
	if((captval==null)||(captval==''))
	{
		alert('Type the value in the image');
		document.getElementById("rcapt").focus();
		return false;
	}
	return true;
}
