function checkAll(frm,checked)
{
	var a=frm['items'].length
	for(var i=0;i<frm['items'].length;i++)
	  {  
		 	var e = frm.items[i];
			if(e.type == "checkbox") 
					e.checked = checked;
	  } 
}
function SetAction(action,frm)
	{
	    var i=0;
	    var check=false;
        if(frm['items'].length){
		for(i=0;i<frm['items'].length;i++)
		{
	    	 if(frm.items[i].checked==true)	
			  {
			  	 check=true;
			     break;	
			   } 	   	
		}	}
		else 
		{
				if(frm.items.checked==true)
					check=true;
		}
		
	   if(check==false)
		  document.getElementById("Error").innerHTML="Error : Please check any checkbox before continue!<br /><br />";
		else
		{
		    frm.Action.value=action;
			var conf=confirm('Are you sure to '+action+' selected?');
			if(conf)
				frm.submit();
		}	
	}


function isValidEmail(emailid)	// Email Validation
{		
var email=/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/;
	return email.test(emailid);
}


function isValidURL(url_name)    	// URL Validation
	{
	var url_format=/[A-Za-z0-9\.-]{3,}\.[A-Za-z]{3}/;
	return url_format.test(url_name);
	}
// Alpha Numeric Validation
function isAlphaNumeric(str)	// Returns true if string only contains characters A-Z, a-z or 0-9

{
  var re = /[^a-zA-Z0-9]/g
	  return (re.test(str));
}
function isNumeric(str) //Numeric Validation
{
  var re = /[\D]/g
	  return (re.test(str));
}

function isWhiteSpaceOnly(str)	// Cannot check a password type input for whitespace
{
  var re = /[\S]/g
  return (re.test(str))
}

//illegal characters
function isIllegalChars(strng)
{
var illegalChars= /[\(\)\<\>\,\;\:\\\/\"\[\]]/;
	return (strng.match(illegalChars));
}

//Phone Validation
function isValidPhoneNo(strng)
{
//strip out acceptable non-numeric characters
var stripped = strng.replace(/[\(\)\.\+\-\ ]/g, '');
	return !isNaN(stripped);
}


//  this function checks the given string is empty or not
//  and return true or false accordingly.
	function is_empty(str)
	{
  		 str=trim(str);
		 if ((str.length==0)||(str==null))
			return true;
		 return false;
	}
// End of is_empty Function
	
	function trim(inputString) 
	{
	   // Removes leading and trailing spaces from the passed string. Also removes
	   // consecutive spaces and replaces it with one space. If something besides
	   // a string is passed in (null, custom object, etc.) then return the input.
	   if (typeof inputString != "string") { return inputString; }
	   var retValue = inputString;
	   var ch = retValue.substring(0, 1);
	   while (ch == " ") { // Check for spaces at the beginning of the string
		  retValue = retValue.substring(1, retValue.length);
		  ch = retValue.substring(0, 1);
	   }
	   ch = retValue.substring(retValue.length-1, retValue.length);
	   while (ch == " ") { // Check for spaces at the end of the string
		  retValue = retValue.substring(0, retValue.length-1);
		  ch = retValue.substring(retValue.length-1, retValue.length);
	   }
	   while (retValue.indexOf("  ") != -1) { // Note that there are two spaces in the string - look for multiple spaces within the string
		  retValue = retValue.substring(0, retValue.indexOf("  ")) + retValue.substring(retValue.indexOf("  ")+1, retValue.length); // Again, there are two spaces in each of the strings
	   }
	   return retValue; // Return the trimmed string back to the user
	} // Ends the "trim" function


//Open popUpWindow
var pop='';
function openwin(nm,width,height,w_per,h_per)
{
	var name=nm;
	var screen_h=window.screen.height;
	var screen_w=window.screen.width;
	var x_cor=parseInt((w_per/100)*screen_w);
	var y_cor=parseInt((h_per/100)*screen_h);
if (pop && !pop.closed)
			pop.close();

pop=eval("window.open('"+name+"','NewWIN','chrome[4],toolbar=no,left=5,top=5,width="+width+",height="+height+",directories=no,menubar=no,SCROLLBARS=yes,left='+x_cor+',top='+y_cor+'')");
	
pop.moveTo(x_cor,y_cor);

if (!pop.opener)
	popUpWin.opener = self;
	
if(window.focus)
		pop.focus();
}

/*************Validate the forms--------------------------------------*/
function check(frm, fld_arr)
{
	var msg=Array();
    var count=0;

	for (var word in fld_arr)
    {
		 if(frm[word].value=="")
		 {
			if(count==0) 
				frm[word].focus(); 
			 msg[count] = fld_arr[word];		
    		 count++;
          } 	
	} 

	return msg;
}

function display_message(arr_msg)
{	
	var msg='Please review the following error message before continue:<br>';
	for (var word in arr_msg)
    {
		msg+="&bull; "+arr_msg[word]+'<br>';
	}
	msg+="<br>";
	return msg;
}
function ShowSubMenu(v,img)
 {
var div=document.getElementById(v);
var img=document.getElementById(img);
	
		var aDiv=document.getElementsByTagName("img");
		for(var i=0;i<aDiv.length;i++)
		{
		if(aDiv[i].id.indexOf('img')>=0)
			{
		if(aDiv[i].id==img.id)
			{
			aDiv[i].src="images/down-arrow.gif";
			}
			else
			{
			aDiv[i].src="images/arrow1.gif";
			}
			}
		}
if(div!=null)
		{
			if(div.style.display=="none")
			{
				div.style.display="";
				img.src="images/down-arrow.gif";
				
			}
			else
			{
				div.style.display="none";
				img.src="images/arrow1.gif";
			}
		}
		
		var aDiv=document.getElementsByTagName("tr");
		for(var i=0;i<aDiv.length;i++)
		{
			if(aDiv[i].id!=v && aDiv[i].id.indexOf('menu')>=0)
			{
				aDiv[i].style.display="none";
			}
		}
}
//-----------------funtion to open URL--------------------------------------
var please_wait = null;
function open_url(url, target)
{
if (! document.getElementById) {
  		return false;
 	}

 	if (please_wait != null) {
  		document.getElementById(target).innerHTML = please_wait;
 	}

 	if (window.ActiveXObject) {
  		link = new ActiveXObject("Microsoft.XMLHTTP");
 	} else if (window.XMLHttpRequest) {
  		link = new XMLHttpRequest();
 	}

 	if (link == undefined) {
  		return false;
 	}
 	link.onreadystatechange = function() { response(url, target); }
 	link.open("GET", url, true);
 	link.send(null);
}

function response(url, target) {
 	if (link.readyState == 4) {
	 	document.getElementById(target).innerHTML = (link.status == 200) ? link.responseText : "Ooops!! A broken link!" + link.status;
	}
}

function set_loading_message(msg) {
 	please_wait = msg;
}

//// Email Validation

function is_email(email)
	{
		if(!email.match(/^[A-Za-z0-9\._\-+]+@[A-Za-z0-9_\-+]+(\.[A-Za-z0-9_\-+]+)+$/))
			return false;
		return true;
	}
//// Email Validation

//// Image upload validation on upload section
function validate_check()
 {
           if(document.frm.image_name.value=="")
		   {
			alert("Please upload image.");
			document.frm.image_name.focus();	
			return false;
		   }
		   
		   if(document.frm.image_name.value!="")
		   {
			document.getElementById("status").style.display ='block';	
			return true;
		   }
   }
/// Image upload validation on upload section

/// Project instruction validation 
function set_inst(numrec)
{
var numrec;
for(var i=1;i<=numrec;i++)
{
   if(numrec !=1)
	{

	if(document.getElementById('reference_status'+i).checked==false)
	{
		if(document.getElementById('service_id'+i).value=="")
		{
		alert("Please select your service name.");
		document.getElementById('service_id'+i).focus();
		return false;
		}
	}

	}

	else
	{
    if(document.getElementById('service_id'+i).value=="")
		{
		alert("Please select your service name.");
		document.getElementById('service_id'+i).focus();
		return false;
		}

	}
}
if(document.getElementById('instruction').value == "")
	{
	alert("Please enter instruction.");
	document.getElementById('instruction').focus();
    return false;
    }
}
/// End of project instruction validation 

///Feed  back validation from client

function feedback()
{
if(document.getElementById('fld_feedback').value=="")
	{
	alert("Please enter feedback.");
	document.getElementById('fld_feedback').focus();
	return false;
	}


}

///Feed  back validation from client

///Edit profile Validation


function newpass()
{ 
var name=document.getElementById('new_pass').value; 
document.getElementById('new_pass').value=name.replace(/^(?:\s)*/g,'').replace(/(?:\s)*$/g,'');
}

function show()

{
if(document.getElementById('newpw_check').checked==true)
	{
    document.getElementById('newpw').style.display='block';
	
	}
	else
	{
    document.getElementById('newpw').style.display='none';
	}

}

function validate()
{

if(document.getElementById('fld_email').value == "")

	{
     alert("Please enter email address.");
	 document.getElementById('fld_email').focus();
	 return false;
	}

if(!is_email(document.getElementById('fld_email').value))
	{
     alert("Please enter a valid email address.");
	 document.getElementById('fld_email').focus();
	 return false;

	}

if(is_empty(document.getElementById('fld_name').value))

	{
     document.getElementById('fld_name').value="";
     alert("Please enter name.");
	 document.getElementById('fld_name').focus();
	 return false;
	}



if(document.getElementById('newpw_check').checked==true)
	{
if(document.getElementById('new_pass').value == "")

	{
     alert("Please enter new password.");
	 document.getElementById('new_pass').focus();
	 return false;
	}

if(document.getElementById('new_pass').value.length < 6)

	{
     alert("Password must be of minimum 6 characters.");
	 document.getElementById('new_pass').focus();
	 return false;
	}

if(document.getElementById('newpw_retype').value=="")

	{
     alert("Please retype new password.");
	 document.getElementById('newpw_retype').focus();
	 return false;
	}

if(document.getElementById('new_pass').value != document.getElementById('newpw_retype').value)
	{

	alert("New password and retype new password must be same.");
	document.getElementById('newpw_retype').focus();
	return false;

	}
	}
}

///end of Edit profile Validation

// Forget password validation

function forget()
{
	
if(document.getElementById('fld_email').value =="")
	{
    alert("Please enter email address.");
	document.getElementById('fld_email').focus();
    return false;
    }

if(!is_email(document.getElementById('fld_email').value))
	{
    alert("Please enter  a valid email address.");
	document.getElementById('fld_email').focus();
    return false;
    }

}


// validation of select service for the images 

function select_service(i,num)

{
	
   if(num !=1)
	{

	if(document.getElementById('reference_status'+i).checked==false)
		{
		    if(document.getElementById('service_id'+i).value=="")
				{
				    alert("Please select your service name.");
					document.getElementById('service_id'+i).focus();
					return false;
				}
		}

    }

	else
	{
    if(document.getElementById('service_id'+i).value=="")
	{
					alert("Please select your service name.");
					document.getElementById('service_id'+i).focus();
					return false;
				}


	}
}
function show_service(i)
{
 var i;
 if(document.getElementById('reference_status'+i).checked==false)
	{
    document.getElementById('show_divid'+i).style.display='block';
    }
	else
	{
    document.getElementById('show_divid'+i).style.display='none';
	}
}

// validation of select service for the images 