function showMesg(field)
{
  errStr="Please Input all the fields.\n You have left "+field+" empty";	
  alert(errStr);
  return false;
}

//Date: 17th March, 2008, Name: Nargis, Desc: Added validatePI function called from new_user.mas
function validatePI(nform)
{
  if(nform.searchpilastname.value == "") {
  return showMesg('Search Field');
  } else
  {
  locWindow = window.open('http://www.protbase.org/bioinfo/proteomics/newuser/determinePI.mhtml?searchpilastname='+nform.searchpilastname.value,'SearchPI','width=800,height=400,left=100,top=100,scrollbars=yes,menubar=yes');
  locWindow.focus();
  }
}

//Date: 18th March, 2008, Name: Nargis, Desc: Added tryAgainPI function called from determinePI.mhtml
function tryAgainPI(nform)
{
  window.opener.document.newuser.searchpilastname.value='';
  window.opener.document.newuser.searchpilastname.focus();
  window.close();
  return false;
  
}

//Date: 18th March, 2008, Name: Nargis, Desc: Added addNewPI function called from determinePI.mhtml
function addNewPI(nform)
{
  window.opener.document.newuser.pifname.disabled=false;
  window.opener.document.newuser.pilname.disabled=false;
  window.opener.document.newuser.piemail.disabled=false;
  window.opener.document.newuser.piprefix.disabled=false;
  window.opener.document.newuser.piphone.disabled=false;
  window.opener.document.newuser.piprefix.focus();
  window.close();
  return false;
  
}

//Date: 18th March, 2008, Name: Nargis, Desc: Added isPISelected function called from determinePI.mhtml
function isPISelected(nform,i)
{
  
  // set var radio_choice to false
  var radio_choice = false;
  var radioselected='';
  
     
if (i>1)
{
  // Loop from zero to the one minus the number of radio button selections
  for (counter = 0; counter < nform.users_id.length; counter++)
  {
  // If a radio button has been selected it will return true
  // (If not it will return false)
  if (nform.users_id[counter].checked)
  	{
  	radio_choice = true;
  	radioselected=counter;
  	  	
  	var FirstName="nform.piFirstName_"+radioselected;
  	var LastName="nform.piLastName_"+radioselected;
  	var Email="nform.piEmail_"+radioselected;
  	var Phone="nform.piPhone_"+radioselected;
  	var Prefix="nform.piPrefix_"+radioselected;
  	
  	}
  }
}
  
else
{
	if (nform.users_id.checked) //won't create array of radio buttons if there is only one
	{
	  	radio_choice = true;
	  		  	  	
	  	var FirstName="nform.piFirstName_0";
	  	var LastName="nform.piLastName_0";
	  	var Email="nform.piEmail_0";
	  	var Phone="nform.piPhone_0";
	  	var Prefix="nform.piPrefix_0";
	  	
  	}

}
  if (!radio_choice)
  {
  // If there were no selections made display an alert box
  alert("Please select a PI")
  return false;
  }
 window.opener.document.newuser.pifname.value = eval(FirstName).value;
 window.opener.document.newuser.pilname.value = eval(LastName).value;
  window.opener.document.newuser.piemail.value = eval(Email).value;
  window.opener.document.newuser.piphone.value = eval(Phone).value;
  window.opener.document.newuser.piprefix.value = eval(Prefix).value;
  
  window.opener.document.newuser.pifname.disabled=false;
    window.opener.document.newuser.pilname.disabled=false;
    window.opener.document.newuser.piemail.disabled=false;
    window.opener.document.newuser.piprefix.disabled=false;
    window.opener.document.newuser.piphone.disabled=false;
  window.opener.document.newuser.piprefix.focus();
  window.close();
  

  
}

//Date: 19th March, 2008, Name: Nargis, Desc: Added isIamPI function called from new_user.mas
function isIamPI(nform)
{
  nform.pifname.value=nform.fname.value;
  nform.pilname.value=nform.lname.value;
  nform.piemail.value=nform.email.value;
  nform.piprefix.value=nform.prefix.value; 
  nform.piphone.value=nform.phone.value
  
  nform.pifname.disabled=false;
  nform.pilname.disabled=false;
  nform.piemail.disabled=false;
  nform.piprefix.disabled=false;
  nform.piphone.disabled=false;
 
 
  
}


function validateNewUser(nform)
{
//Date: 5th March, 2008, Name: Nargis, Desc: Added new field prefix and piprefix

  if(nform.prefix.value == "")
  return showMesg('Prefix');
	
  if(nform.fname.value=="")
  return showMesg('First Name');	
  
  if(nform.lname.value=="")
  return showMesg('Last Name');	
  
  if(nform.email.value=="")
  return showMesg('Email');	
  
  if(nform.phone.value=="")
  return showMesg('Phone');	
  
  if(nform.pwd.value=="")
  return showMesg('Password');	
  
  if(nform.pwd2.value=="")
  return showMesg('Password');	
  
  if(nform.dept.value==0 && nform.deptname.value=="")
  return showMesg('Department');	
  
  if(nform.univ.value==0 && nform.univname.value=="")
  return showMesg('University/Company');	
  
if(nform.piprefix.value == "")
  return showMesg('PIs Prefix');	

  if(nform.pifname.value=="")
  return showMesg('PIs First Name');	
  
  if(nform.pilname.value=="")
  return showMesg('PIs Last Name');	
  
  if(nform.piemail.value=="")
  return showMesg('PIs Email');	
  
  if(nform.piphone.value=="")
  return showMesg('PIs Phone');	
  
  if(nform.pwd.value != nform.pwd2.value)
  {
    alert("Entered Passwords did not match !! \n Please Retype the Password");	
    return false;
  }
  
} 

function resetNewUser(nform)
{
//Date: 6th March, 2008, Name: Nargis, Desc: Added new field prefix and piprefix
  nform.prefix.value="";
  nform.fname.value="";	
  nform.lname.value="";
  nform.phone.value="";
  nform.email.value="";
  
  nform.pwd.value="";
  nform.pwd2.value="";
  nform.dept.value=0;
  nform.deptname.value="";
  nform.univ.value=0;
  nform.univname.value="";
  
  nform.azcc.checked=false;
  nform.swehsc.checked=false;
  nform.iampi.checked=false;
  
//Date: 6th March, 2008, Name: Nargis, Desc: Added new field prefix and piprefix  
  nform.piprefix.value="";
  nform.pifname.value="";	
  nform.pilname.value="";
  nform.piphone.value="";
  nform.piemail.value="";
  nform.searchpilastname.value="";


   
  return false;
}

/*<START> Nikunj: addFileUpload is used to add new file upload controls on the submit DIGE sample screen.*/
function addFileUpload(id,fileType,val)
{
//  alert("adding rows to "+id+" for "+fileType+" and count is "+val);

  var i=0,num,sampnum,row,td1a,str,j,cells,child,row2,td2a;
  num = val;
  if(val!='' && val>0) {
  	document.getElementById(id).setAttribute('border','1');
  } else {
	document.getElementById(id).setAttribute('border','0');
  }
  var tbody = document.getElementById(id).getElementsByTagName("TBODY")[0];
  
  child = tbody.rows;
  while(child.length) 
  {
	  for(i=0;i<child.length;i++)
	  { 
	     tbody.deleteRow(i); 
	  }
	  child = tbody.rows; 
  } 
//  alert("rows deleted");
  for(i=0;i<num;i++)
  {
  	  sampnum = i+1;
  	  
  	  row = document.createElement("tr");
          
	  //create "File No : " cell
	  td1abc= document.createElement("td");
          td1abc.setAttribute('bgColor', '#eeb099');
  
          td1abc.innerHTML="<b>File No : "+sampnum+"</b>";
          row.appendChild(td1abc);
          
          td2a= document.createElement("td");
          td2a.setAttribute('bgColor', '#eeb099');
	  if(fileType == "cy2"|| fileType =="cy3" || fileType=="cy5" || fileType=="overlay") {
		td2a.innerHTML = "<p>Description: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type='text' size='41' name='"+fileType+"Text"+sampnum+"'/>"+
		"<p>Raw Image: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type='file' size='30' name='raw_"+fileType+"Img"+sampnum+"'/>"+
		"<p>Annotated Image: &nbsp;<input type='file' size='30' name='ann_"+fileType+"Img"+sampnum+"'/>";
	  } else {
		td2a.innerHTML = "<p>Description: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type='text' size='41' name='"+fileType+"Text"+sampnum+"'/>"+
		"<p>Image: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input type='file' size='30' name='"+fileType+"Img"+sampnum+"'/>";
	  }
          row.appendChild(td2a);

	  tbody.appendChild(row);

  }

}
/*<END>*/

function addRow(id,samp)
{
  var i=0,num,sampnum,row,td1a,str,j,cells,child,row2,td2a,orgstr;
  num = samp;
  
  
  var orgarray = document.dummyform.dborgs.value.split(",,");
  orgstr = "<option value=''>";
  for(i=0; i<orgarray.length-1;i++)
  {
     orgstr+="<option value=\""+orgarray[i]+"\">"+orgarray[i];
     
  }
  
  var tbody = document.getElementById(id).getElementsByTagName("TBODY")[0];
  
  child = tbody.rows;
  while(child.length) 
  {
	  for(i=0;i<child.length;i++)
	  { 
	     tbody.deleteRow(i); 
	  }
	  child = tbody.rows; 
  } 
  
  for(i=0;i<num;i++)
  {
  	  sampnum = i+1;
  	  
  	  row = document.createElement("tr");                         
          td1a= document.createElement("td");
          td1a.setAttribute('bgColor', '#eeb099'); 
  
          td1a.innerHTML="<br><b>Sample No : "+sampnum+"</b><br>";
          row.appendChild(td1a);
          tbody.appendChild(row);    
        
	  row = document.createElement("TR");
	  td1a = document.createElement("TD");
	  
	    str= "<table><tr><td width=40%>";
	    str += "<table>";                                                                                            
	    str += "<tr><td><a href=javascript:smallWindow('pfc/epp.txt')>Eppendorf Label</a> *<br>(max 9 characters alphanumeric only)</td><td width=10%></td><td><input type=text name=edorf"+sampnum+"></td></tr>";
	    str += "<tr><td>Solubility </td><td width=10%></td><td><input type=text name=solu"+sampnum+"></td></tr>";
	    str += "<tr><td><a href=javascript:smallWindow('pfc/conc.txt')>Protein Concentration (mg/ml) *</a></td><td width=10%></td><td><input type=text name=conc"+sampnum+"></td></tr>";
            str += "<tr><td>Suspect Mol. Weight </td><td width=10%></td><td><input type=text name=suspwt"+sampnum+"></td></tr>";
	    str += "<tr><td>Suspected Formula </td><td width=10%></td><td><input type=text name=suspform"+sampnum+"></td></tr>";
	    
	    
            str += "<tr><td>Volume *</td><td width=10%></td><td><input type=text name=vol"+sampnum+"></td></tr>";
	    str += "<tr><td><a href=javascript:smallWindow('pfc/tissue.txt')>Tissue Type *</a></td><td width=10%></td><td><input type=text name=ttype"+sampnum+"></td></tr>";
	    str += "<tr><td><a href=javascript:smallWindow('pfc/celltype.txt')>Cell Type</a></td><td width=10%></td><td><input type=text name=ctype"+sampnum+"></td></tr>";
//	    str += "<tr><td><a href=javascript:smallWindow('pfc/cellcycle.txt')>Cell Cycle Phase</a></td><td width=10%></td><td><input type=text name=cphase"+sampnum+"></td></tr>";
//          str += "<tr><td><a href=javascript:smallWindow('pfc/component.txt')>Cell Component</a></td><td width=10%></td><td><input type=text name=ccomp"+sampnum+"></td></tr>";
//	    str += "<tr><td>Metabolic Label</td><td width=10%></td><td><input type=text name=metlab"+sampnum+"></td></tr>";
	    str += "<tr><td><a href=javascript:smallWindow('pfc/condition.txt')>Buffer Composition </a>*</td><td width=10%></td><td><input type=text name=cond"+sampnum+"></td></tr>";
//	    str += "<tr><td><a href=javascript:smallWindow('pfc/cond_degree.txt')>Condition Degree</a></td><td width=10%></td><td><input type=text name=condeg"+sampnum+"></td></tr>";
	    
	    str += "</table>";
	    str += "</td>";
		
	    str += "<td width=10%></td>";
	    			  
	    str += "<td width=40%>";
	    
	    str += "<table>";
	    str += "<tr><td><a href=javascript:smallWindow('pfc/org.txt')>Organism </a>*</td><td width=10%></td><td><SELECT name=org"+sampnum+">"+orgstr+"</select></td></tr>";
	    str += "<tr><td colspan=3> <font size=1>If the Organism does not appear in the above list find the scientific name using the <a href=http://www.ncbi.nlm.nih.gov/Taxonomy/taxonomyhome.html/ target=_blank>ncbi taxonomy</a> link and paste the value below</font></td></tr>";
	    str += "<tr><td><a href=javascript:smallWindow('pfc/org.txt')>Organism </a>*</td><td width=10%></td><td><input type=text name=norg"+sampnum+"></td></tr>";
	    
	   
	    
	    str += "</table>";
            
            str += "<br>";
            
            str += "<table>";
            str += "<tr><td><a href=javascript:smallWindow('pfc/sample_tech.txt')>Technique used to generate sample </a>*</td></tr>";
            str += "<tr><td><textarea  rows=3 cols=40 name=tech"+sampnum+"></textarea></td></tr>";
            
	    str += "<tr><td>Sample Description/Notes (For DIGE provide as much details)</td></tr>";
            str += "<tr><td><textarea  rows=3 cols=40 name=notes"+sampnum+"></textarea></td></tr>";
            str += "<tr><td>Suspected Structure (If you want to draw them, you can do so in the next page.)</td></tr>";
	    str += "<tr><td><textarea rows=2 cols=40 name=suspstruct"+sampnum+"></textarea></td></tr>";
            str += "</table>";
            
            str += "</td></tr>";
            str += "</table>";
            
            
            
            td1a.innerHTML = str;
            row.appendChild(td1a);
            tbody.appendChild(row);    
        
           
        
        if(i==0 && num >1 )
        {
           row = document.createElement("tr");                         
           td1a= document.createElement("td");
           td1a.setAttribute("bgColor","#eeb099");
           td1a.innerHTML="<input type=checkbox onClick=copySamples("+num+") ><b>   Check to copy the values in above text boxes for other samples <br>Make sure to change the eppendorf label (Sample Names) and any other field for the following samples </b><br>";
           row.appendChild(td1a);
           tbody.appendChild(row);   	
        	
        }
  }
  
 // document.sampform.actno.focus();
}

function copySamples(num)
{ 
  var i,nstr,ostr,j;	  
 
  for(i=2;i<=num;i++)
  {
    nstr = "edorf"+i;
    var tmp =  eval("document.sampform." + nstr);	
    tmp.value = document.sampform.edorf1.value;
    	
    nstr = "solu"+i;
    var tmp =  eval("document.sampform." + nstr);	
    tmp.value = document.sampform.solu1.value;
    
    nstr = "conc"+i;
    tmp =  eval("document.sampform." + nstr);	
    tmp.value = document.sampform.conc1.value;
    
    nstr = "suspwt"+i;
    tmp =  eval("document.sampform." + nstr);	
    tmp.value = document.sampform.suspwt1.value;
    
    nstr = "suspform"+i;
    tmp =  eval("document.sampform." + nstr);	
    tmp.value = document.sampform.suspform1.value;
    
    nstr = "vol"+i;
    var tmp =  eval("document.sampform." + nstr);	
    tmp.value = document.sampform.vol1.value; 
    
    nstr = "ttype"+i;
    var tmp =  eval("document.sampform." + nstr);	
    tmp.value = document.sampform.ttype1.value;
    
    nstr = "ctype"+i;
    var tmp =  eval("document.sampform." + nstr);	
    tmp.value = document.sampform.ctype1.value;
    
    /*nstr = "cphase"+i;
    var tmp =  eval("document.sampform." + nstr);	
    tmp.value = document.sampform.cphase1.value;*/
    
    /*nstr = "ccomp"+i;
    var tmp =  eval("document.sampform." + nstr);	
    tmp.value = document.sampform.ccomp1.value;*/
    
    /*nstr = "metlab"+i;
    var tmp =  eval("document.sampform." + nstr);	
    tmp.value = document.sampform.metlab1.value;*/
    
    nstr = "norg"+i;
    var tmp =  eval("document.sampform." + nstr);	
    tmp.value = document.sampform.norg1.value;
    
    nstr = "org"+i;
    var tmp =  eval("document.sampform." + nstr);	
    for(j=0;j<document.sampform.org1.options.length;j++)
    {
      if(document.sampform.org1.options[j].selected)	
      {
      	//alert(document.sampform.org1.options[j].value+' is selected');
        tmp.selectedIndex =j;
      }
      
    }
    
    
    nstr = "tech"+i;
    var tmp =  eval("document.sampform." + nstr);	
    tmp.value = document.sampform.tech1.value;
    
    nstr = "cond"+i;
    var tmp =  eval("document.sampform." + nstr);	
    tmp.value = document.sampform.cond1.value;
    
    /*nstr = "condeg"+i;
    var tmp =  eval("document.sampform." + nstr);	
    tmp.value = document.sampform.condeg1.value;*/
    
    nstr = "suspstruct"+i;
    tmp =  eval("document.sampform." + nstr);	
    tmp.value = document.sampform.suspstruct1.value;
    
    nstr = "notes"+i;
    tmp =  eval("document.sampform." + nstr);	
    tmp.value = document.sampform.notes1.value;
      
  }
	
}

function checkSubExptFormSamples(form,oldepValuesExists)
{
  var i;	
  var i,sampnum,nstr,tmp,nstr2,tmp2,ky;
  var smpHash = new Array();
  
   
  for(i=0;i<form.samples.value;i++)
  {
  	  sampnum = i+1;
  	  
  	  nstr = "edorf" + sampnum;
          tmp =  eval("form." + nstr);	
          if(tmp.value == '')
          {
            alert('Please Enter the Eppendorf Label for Sample '+sampnum);	
            return false;
          }
          
          if(tmp.value.search(/.{10,}/) == 0)
          {
            alert('The Eppendorf Label for Sample '+sampnum +' should have at most 9 characters');	
            return false;
          }
           
          nstr = "vol" + sampnum;
          tmp =  eval("form." + nstr);	
          if(tmp.value == '')
          {
            alert('Please Enter the Volume for Sample '+sampnum);	
            return false;
          }
          
          nstr = "conc" + sampnum;
          tmp =  eval("form." + nstr);	
          if(tmp.value == '')
          {
            alert('Please Enter the Concentration for Sample '+sampnum);	
            return false;
          }
          
          nstr = "ttype" + sampnum;
          tmp =  eval("form." + nstr);	
          if(tmp.value == '')
          {
            alert('Please Enter the Tissue Type for Sample '+sampnum);	
            return false;
          }
          
          nstr = "org" + sampnum;
          nstr2 = "norg" + sampnum;
          tmp =  eval("form." + nstr);	
          tmp2 =  eval("form." + nstr2);	
          
          if(tmp.value == '' && tmp2.value=='' )
          {
            alert('Please Enter the Organism for Sample '+sampnum);	
            return false;
          }
          
          nstr = "tech" + sampnum;
          tmp =  eval("form." + nstr);	
          if(tmp.value == '')
          {
            alert('Please Enter the Technique for Sample '+sampnum);	
            return false;
          }
          
          nstr = "cond" + sampnum;
          tmp =  eval("form." + nstr);	
          if(tmp.value == '')
          {
            alert('Please Enter the Condition for Sample '+sampnum);	
            return false;
          }
  }

//We are using the same functions while defining new samples, editing the samples
//and later on when adding them. When we are adding new samples during the editing
//process, we have a problem if the eppendorf names on the screen matches the names
//in the database. Thus to over come that, the old eppendorf names will be stored in
//the variable called oldsmpHash and the it will be identified by the existance of the
//variable 'oldepValuesExists'
  
  
  if(oldepValuesExists == 1)
  {
  	 for (ky in oldsmpHash){
  	 smpHash[ky] = 1;
  	}
  }
  
  for(i=0;i<form.samples.value;i++)
  {
  	  sampnum = i+1;
  	  
  	  nstr = "edorf" + sampnum;
          tmp =  eval("form." + nstr);	
          
          for (ky in smpHash)
          {
            if 	(tmp.value == ky )
            {
             if(oldepValuesExists == 1) 	
             {
               alert('The eppendorf labels for Sample '+sampnum +' clashes with another of your eppendorf names for this experiment. Please change them');			
             }
             else
             {
               alert('The eppendorf labels for Sample '+smpHash[ky]+' and Sample '+ sampnum +' are same. Please change them');		
             }	
             
             return false;
            }
             
          }
          smpHash[tmp.value] = sampnum;
          
  }    
  
  
  	
}

function checkSubExptForm(form)
{
  var i,sampnum,nstr,tmp,nstr2,tmp2,ky;
  var smpHash = new Array();
  
  /*
	  if(form.expt_id.value=='')
	  {
	    alert('Please Enter the Experiment Request Number.');	
	    return false;		
	  }
	  if(form.expt_id.value.search(/\d\d\d\d\d\d/) == -1)
	  {
	    alert('Please Enter Proper digits in the Experiment Request Number');	
	    return false;		
	  }
	  
	  if(form.subdate.value=='')
	  {
	    alert('Please Enter the Submitted Date.');	
	    return false;		
	  }
  */
  
  if(form.samples.value==0)
  {
    alert('Please Enter Number of Samples.');	
    return false;	
  }	
  
  /* Niranjan */
  if(form.samples.value != '' && isNaN(form.samples.value) == true) /* alt: search for '^ d* $' in value */
  {
    alert('Please Enter Proper digits for the Number of Samples');	
    return false;
   }

  if(form.pi.value=='')
  {
    alert('Please Select your PI.');	
    return false;		
  }
      
  if(form.actno.value=='' && form.pono.value=='' )
  {
    alert('Please Enter Either the Account Number or PO Number to be used for billing.');	
    return false;		
  }
  
  if(form.actno.value != '' && form.actno.value.search(/^\d{6}$/) == -1)
  {
    alert('Please Enter Proper digits in the Account Number');	
    return false;		
  }
  
  if(form.pono.value != '' && form.pono.value.search(/^[a-zA-Z0-9]+/) == -1) /* Niranjan - '^d*$' --> alternate method: isNaN */
  {
    alert('Please Enter Proper digits in the PO Number');	
    return false;		
  }
  
  if(form.goal.value=='' )
  {
    alert('Please Enter the Goal of the Experiment.');	
    return false;
  }
  
  
   /* <START> Nikunj - 23-OCT-2007 - Added check for Is Pathogen radio boxes and the nature of sample text area */
  if(form.is_pathogen[0].checked || form.is_pathogen[1].checked) {
    form.sample_nature.value = form.sample_nature.value.replace(/^\s+|\s+$/g,"");
    if(form.sample_nature.value == "" && !form.is_pathogen[1].checked) {
	alert('Please Enter the nature of the sample');
	return false;
    }
  } else {
    alert('Please Select whether the sample is a Pathogen.');
    return false;
  }
  /* <END> */
  
   
  
  
  return checkSubExptFormSamples(form,0); 
   	  
  
  
}
/* <START> Nikunj - 23-OCT-2007 - Added to enable/disable Sample Nature text area depending on the value of Is Pathogen Radio button  */
function checkIsPathogen(form, is_pathogen) {
  if(is_pathogen=='Yes') 
  { form.sample_nature.disabled=false } 
  else 
  {
    form.sample_nature.value="";
    form.sample_nature.disabled=true;
  }
}
/*<END>*/





function resetForms()
{
  if(document.sampform)
  {
    document.sampform.reset();	
  }	
}

function jumpPage(newLoc)
{
  newPage = newLoc.options[newLoc.selectedIndex].value;
  if(newPage != '')
  {
     window.location.href=newPage;
  }
}


function setPrice(field,price,naprice)
{
  var nonAcademic =0;
  
  /* 
     Finding out whether it is update or insert
     If insert the radio boxes will be there else
     the hidden field will be there.
     From there decide whether to calculate academic or non-academic rate. 
 */
  if(document.eparms.actype.value == 'insert')
  {
    if(!document.eparms.acad[0].checked && !document.eparms.acad[1].checked  )
    {
      alert('Please Select whether to charge Academic rates or Non-Academic Rates');	
      field.value=0;
      return false;
    }
  
    if(document.eparms.acad[1].checked)
    {
      nonAcademic = 1;	
    }	
  }
  else
  {
    if(document.eparms.uacad.value == 'false')
    {
       nonAcademic = 1;		
    }
  }	
	
   
  
  var pname = eval("document.eparms.P"+field.name);
  
  if(/\D/.test(field.value))
  {
    field.value=0;	
    alert('Please enter a number');	
    return false;
  }
  if(nonAcademic)
  {
    if (field.name == "fplc" || field.name == "typhoon" || field.name == "clean" || field.name == "data" || field.name == "albumin")
    {
      pname.value=naprice*field.value/60;
    }
    else
    {
      pname.value=naprice*field.value;	
    }
  }
  else
  {
    if (field.name == "fplc" || field.name == "typhoon" || field.name == "clean" || field.name == "data" || field.name == "albumin")
    {
      pname.value=price*field.value/60;
    }
    else
    {
      pname.value=price*field.value;
    }
  }
	
  
  
  document.eparms.total.reset;
  var children = document.eparms.elements;
  var t =0;
  var tmp;
  for(var i=0; i < children.length ; i++)
  {
     
     if( children[i] && /^P/.test(children[i].name) && children[i].value)	
     {
       tmp = eval(children[i].value);	
       t+=tmp;
     }
  }
  
  
  document.eparms.total.value = t;
}

function smallWindow(ffile)
{
	
   locWindow = window.open(ffile , 'locWin', 'width=600,height=50,scrollbars=no');	
   locWindow.focus();
}

function scrollWindow(ffile)
{
	
   locWindow = window.open(ffile , 'locWin', 'width=600,height=100,scrollbars=yes');	
   locWindow.focus();
}




// Finds the total price of the experiment when
// the user enters a miscellaneous charge
function setTotalPrice(field)
{
  document.eparms.total.reset;
  var children = document.eparms.elements;
  var t =0;
  var tmp;
  for(var i=0; i < children.length ; i++)
  {
     
     if( children[i] && /^P/.test(children[i].name) && children[i].value)	
     {
       tmp = eval(children[i].value);	
       t+=tmp;
     }
  }
  
  
  document.eparms.total.value = t;	
}


//For checking whether the fields have been
//Entered for the share Experiment form
function checkShareExpt(form)
{
   if(form.expt_id.value=='')
   {
      alert('Please Enter the Experiment Reference Number');	
      return false;
   }	
   if(form.other_name.value=='')
   {
      alert('Please Enter the Name of the User in the format -First Name,Last Name-');	
      return false;
   }	
    
}


 
function validateGelSubmission(form)
{
    var i;
  
    //Checking for 1d gel, whether the sample has been selected if
    //the corresponding entry in the lane information has been filled.
    
    for(i=0; i<form.sample.options.length;i++)
    {
      var lane = eval ("form."+form.sample.options[i].value);
      if(lane && lane.value != ""  && form.sample.options[i].selected == false ) 
      {
        alert('You have entered a lane for sample '+form.sample.options[i].value+' but not the sample \n Please select the sample too');
        return false;
      }
    } 
  
  if(form.sample.value == '' )
  {
      alert('Please Select a Sample');	
      return false;
  }	
  if(form.raw.value == '' )
  {
      alert('Please Upload the Raw Image');	
      return false;
  }
  if(form.ann.value == '' )
  {
      alert('Please Upload the Annotated Image');	
      return false;
  }
  if(form.xml.value == '' )
  {
      alert('Please Upload the XML File');	
      return false;
  }
  if(form.csv.value == '' )
  {
      alert('Please Upload the Text File');	
      return false;
  }
  if(form.arryl.value == '' )
  {
      alert('Please Enter a value for % Acrylamide');	
      return false;
  }
  if(form.mstart.value == '' )
  {
      alert('Please Enter a value for Mass Start');	
      return false;
  }
  if(form.mend.value == '' )
  {
      alert('Please Enter a value for Mass End');	
      return false;
  }
  if(form.pistart.value == '' )
  {
      alert('Please Enter a value for PI Start');	
      return false;
  }
  if(form.piend.value == '' )
  {
      alert('Please Enter a value for  PI End');	
      return false;
  }
  
  if(form.arryl.value != '' && form.arryl.value.search(/[^\d\.]/) != -1)
  {
      alert('Please Enter Appropriate Number for % Acrylamide ');	
      return false;
  }	
  if(form.mstart.value != '' && form.mstart.value.search(/[^\d\.]/) != -1)
  {
      alert('Please Enter Appropriate Number for  Mass Start ');	
      return false;
  }	
  if(form.mend.value != '' && form.mend.value.search(/[^\d\.]/) != -1)
  {
      alert('Please Enter Appropriate Number for  Mass End ');	
      return false;
  }	
  if(form.pistart.value != '' && form.pistart.value.search(/[^\d\.]/) != -1)
  {
      alert('Please Enter Appropriate Number for  PI Start ');	
      return false;
  }	
  if(form.piend.value != '' && form.piend.value.search(/[^\d\.]/) != -1)
  {
      alert('Please Enter Appropriate Number for  PI End ');	
      return false;
  }	 
   
  
	
}
/* <START> Nikunj - 18-DEC-2007 - Added validation for update IDBF screen */
function validateUpdateIDBF(expt, idbf) {
	var expt_id = expt.value.replace(/^\s+|\s+$/g,"");
	var idbf_no = idbf.value.replace(/^\s+|\s+$/g,"");
	if(expt_id=='') {
		alert("Please enter the comma separated list of Experiment Reference Number(s)");
		return false;
	} else if(idbf_no=='') {
		alert("Please enter a IDBF number");
		return false;
	}
	return true;
}
/* <END> */

/* <START> Nikunj - 19-JAN-2008 - Added validation for upload 2d-DIGE screen */
function validateDigeSubmission(form) {
    var cy2Dye,cy3Dye,cy5Dye;
    var cy2Count,cy3Count,cy5Count;
  
    //Checking for 2d dige, whether the sample has been selected if
    //the corresponding sample has been selected for a dye.
    
    cy2Dye = form.cy2Dye.value;
    cy3Dye = form.cy3Dye.value;
    cy5Dye = form.cy5Dye.value;

 

  
  if((cy5Dye == "none" && cy2Dye == "none" && cy3Dye == "none")) {
  	alert('Please Select a Sample for atleast one dye');	
        	return false;
  }
  
  if(!(cy5Dye == "none" && cy2Dye == "none" && cy3Dye == "none")) {
     if(((cy2Dye == cy3Dye) && cy2Dye != "none" && cy3Dye != "none") || ((cy3Dye == cy5Dye) && cy3Dye != "none" && cy5Dye != "none") || ((cy5Dye == cy2Dye) && cy5Dye != "none" && cy2Dye != "none")) {
	alert("Only one dye can be selected for one sample. Please check your selection of sample for the dyes.");
	return false;
     }
  }

 
  
  if(form.arryl.value == '' )
  {
      alert('Please Enter a value for % Acrylamide');	
      return false;
  }
  if(form.mstart.value == '' )
  {
      alert('Please Enter a value for Mass Start');	
      return false;
  }
  if(form.mend.value == '' )
  {
      alert('Please Enter a value for Mass End');	
      return false;
  }
  if(form.pistart.value == '' )
  {
      alert('Please Enter a value for PI Start');	
      return false;
  }
  if(form.piend.value == '' )
  {
      alert('Please Enter a value for  PI End');	
      return false;
  }
  
  if(form.arryl.value != '' && form.arryl.value.search(/[^\d\.]/) != -1)
  {
      alert('Please Enter Appropriate Number for % Acrylamide ');	
      return false;
  }	
  if(form.mstart.value != '' && form.mstart.value.search(/[^\d\.]/) != -1)
  {
      alert('Please Enter Appropriate Number for  Mass Start ');	
      return false;
  }	
  if(form.mend.value != '' && form.mend.value.search(/[^\d\.]/) != -1)
  {
      alert('Please Enter Appropriate Number for  Mass End ');	
      return false;
  }	
  if(form.pistart.value != '' && form.pistart.value.search(/[^\d\.]/) != -1)
  {
      alert('Please Enter Appropriate Number for  PI Start ');	
      return false;
  }	
  if(form.piend.value != '' && form.piend.value.search(/[^\d\.]/) != -1)
  {
      alert('Please Enter Appropriate Number for  PI End ');	
      return false;
  }	 

  cy2Count = form.cy2Count.value;
  cy3Count = form.cy3Count.value;
  cy5Count = form.cy5Count.value;
  cromatogramCount = form.cromatogramCount.value;
  graphCount = form.graphCount.value;
  overlayCount = form.overlayCount.value;

  if(cy2Count != "" && cy2Count > 0) {
	for(var i=1;i<=cy2Count;i++) {
		if(eval("form.cy2Text"+i+".value") == '') {
			alert('Please enter a Description for Cy2 Image File No :'+i);
			return false;
		}
		if(eval("form.raw_cy2Img"+i+".value") == '') {
			alert('Please upload a Raw Image for Cy2 Image File No :'+i);
			return false;
		}
		if(eval("form.ann_cy2Img"+i+".value") == '') {
			alert('Please upload an Annotated Image for Cy2 Image File No :'+i);
			return false;
		}
	}
  }

  if(cy3Count != "" && cy3Count > 0) {
	for(var i=1;i<=cy3Count;i++) {
		if(eval("form.cy3Text"+i+".value") == '') {
			alert('Please enter a Description for Cy3 Image File No :'+i);
			return false;
		}
		if(eval("form.raw_cy3Img"+i+".value") == '') {
			alert('Please upload a Raw Image for Cy3 Image File No :'+i);
			return false;
		}
		if(eval("form.ann_cy3Img"+i+".value") == '') {
			alert('Please upload an Annotated Image for Cy3 Image File No :'+i);
			return false;
		}
	}
  }

  if(cy5Count != "" && cy5Count > 0) {
	for(var i=1;i<=cy5Count;i++) {
		if(eval("form.cy5Text"+i+".value") == '') {
			alert('Please enter a Description for Cy5 Image File No :'+i);
			return false;
		}
		if(eval("form.raw_cy5Img"+i+".value") == '') {
			alert('Please upload a Raw Image for Cy5 Image File No :'+i);
			return false;
		}
		if(eval("form.ann_cy5Img"+i+".value") == '') {
			alert('Please upload an Annotated Image for Cy5 Image File No :'+i);
			return false;
		}
	}
  }

  if(cromatogramCount != "" && cromatogramCount > 0) {
	for(var i=1;i<=cromatogramCount;i++) {
		if(eval("form.cromatogramText"+i+".value") == '') {
			alert('Please enter a Description for Cromatogram Image File No :'+i);
			return false;
		}
		if(eval("form.cromatogramImg"+i+".value") == '') {
			alert('Please upload an Image for Cromatogram Image File No :'+i);
			return false;
		}
	}
  }

  if(graphCount != "" && graphCount > 0) {
	for(var i=1;i<=graphCount;i++) {
		if(eval("form.graphText"+i+".value") == '') {
			alert('Please enter a Description for Graph Image File No :'+i);
			return false;
		}
		if(eval("form.graphImg"+i+".value") == '') {
			alert('Please upload a Image for Graph Image File No :'+i);
			return false;
		}
	}
  }
  
  if(overlayCount != "" && overlayCount > 0) {
  	for(var i=1;i<=overlayCount;i++) {
  		if(eval("form.overlayText"+i+".value") == '') {
  			alert('Please enter a Description for overlay Image File No :'+i);
  			return false;
  		}
  		if(eval("form.raw_overlayImg"+i+".value") == '') {
  			alert('Please upload a Raw Image for overlay Image File No :'+i);
  			return false;
  		}
  		if(eval("form.ann_overlayImg"+i+".value") == '') {
  			alert('Please upload an Annotated Image for overlay Image File No :'+i);
  			return false;
  		}
  	}
  }
}
/* <END> */
