var xmlhttp = false;

try {
    xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
    try {
	xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    } catch (e2) {
	xmlhttp = false;
    }
}

if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
    xmlhttp = new XMLHttpRequest();
}


function CheckFasta(){
	document.getElementById('text').disabled=true;
	
    if (document.getElementById('text').value==''&&document.getElementById('files').value==''){
	alert("Please Enter Sequences !");
	document.getElementById('text').disabled = false;
    }
    else{
	var url="/cgi-bin/genefisher2_validate";
	
	document.getElementById('isvalidFasta').innerHTML="Performing Sequence validation, please wait ... ";
	
	var queryString = "text="+document.getElementById('text').value;

	///Code for POST-Method-------------------------------------
	// data to send using POST
	xmlhttp.open("POST",url,true);

	
	//send request to server
	//----------------------------------------------------------
	
	xmlhttp.onreadystatechange=handleResponse; 
	xmlhttp.send(queryString);    
	
    }
}

function handleResponse() {

var regexpr=/is not valid/i;
var regexpr2=/valid FASTA/i;
var regexp= /\d{3}/;

    if (xmlhttp.readyState==4){
	var response = xmlhttp.responseText;
       
	if (response!="") { 
	  	

	 if (regexpr2.test(response)){ 
		
		document.getElementById('isvalidFasta').innerHTML=response;
		youCanSubmit();
		
	    } 
	 if (regexpr.test(response)){
		
		document.getElementById('isvalidFasta').innerHTML=response;
		document.getElementById('text').disabled = false;
		}
	   
	   
	
	    if(regexp.test(response)){
		
		document.getElementById('isvalidFasta').innerHTML=response;
	    }
		
	}
	else{
	document.getElementById('addSeq').style.visibility="visible";
	document.getElementById('isvalidFasta').innerHTML="An unexpected problem occured, please try again!";
	    //alert("A Problem Occured, Please try Again!");
	}
    }	
    
}
function youCanSubmit() {
		
		document.getElementById('text').disabled=true;
		//document.getElementById('seqTypeDNA').disabled=true;
		//document.getElementById('seqTypeAA').disabled=true;
		document.getElementById('checkFasta').style.visibility="hidden";
		document.getElementById('checkColor').color="GREY";
		document.getElementById('Submit').style.visibility="visible";
		document.getElementById('addSeq').style.visibility="visible";

}



//makes Textarea editable again and hides Submit Button 
function AddSequence() {
	document.getElementById('text').disabled = false;
	//document.getElementById('seqTypeDNA').disabled=false;
	//document.getElementById('seqTypeAA').disabled=false;
	document.getElementById('Submit').style.visibility="hidden";
	document.getElementById('checkFasta').style.visibility="visible";
	document.getElementById('addSeq').style.visibility="hidden";
	document.getElementById('checkColor').color="RED";
}


//removes Example displayed in textarea on startup
function remExample() {
if(document.getElementById('text').disabled==false){
	document.getElementById("text").value="";}
}


//deletes entries from former requests and sets page back to start conditions
function ResetAll() {
	//document.getElementById('seqTypeDNA').disabled=false;
	//document.getElementById('seqTypeAA').disabled=false;
	document.getElementById('isvalidFasta').innerHTML="";
	document.getElementById('text').disabled=false;
	document.getElementById('Submit').style.visibility="hidden";
	document.getElementById('checkFasta').style.visibility="visible";
	document.getElementById('checkColor').color="RED";
	//document.getElementById('seqTypeAA').checked=false;
	//document.getElementById('seqTypeDNA').checked=false;
	document.getElementById('files').value="";
	document.getElementById('addSeq').style.visibility="hidden";
}

//allows Submission of the form (Files) and reset of the page

function AllowSubmit() {
	//if(document.getElementById('seqTypeDNA').checked==false && document.getElementById('seqTypeAA').checked==false){
	
	//alert("Please enter the type of your sequence!");
	//ResetAll();
	//}
	//else{
	document.getElementById('text').disabled=true;
	document.getElementById('text').value="";
	document.getElementById('isvalidFasta').innerHTML="";
	document.getElementById('checkFasta').style.visibility="hidden";
	document.getElementById('checkColor').color="GREY";
	document.getElementById('Submit').style.visibility="visible";
	document.getElementById('addSeq').style.visibility="visible";
	//}
}
function checkSeqType() {
	//if(document.getElementById('seqTypeDNA').checked==false && document.getElementById('seqTypeAA').checked==false){
	
	//alert("Please enter the type of your sequence!");
	//ResetAll();
	//}
	//else{
		CheckFasta();
	//}
}




function setExampleAA() {
var sequence=">PRIO_BOVIN"+"\n"+"MVKSHIGSWILVLFVAMWSDVGLCKKRPKPGGGWNTGGSRYPGQGSPGGNRYPPQGGGGWGQPHGGGWGQPHGGGWGQPHGGGWGQPHGGGWGQPHGGGG"+"\n"+">PRIO_TRAST"+"\n"+"MVKSHIGSWILVLFVAMWSDVALCKKRPKPYPGQGSPGGNRYPSQGGGGWGQPHGGGWGQPHGGGWGQPHGGGWGQPHGGGWGQPHGGGG"+"\n"+">PRIO_ODOHE"+"\n"+"MVKSHIGSWILVLFVAMWSDVGLCKKRPKPGGGWNTGGSRYPGQGSPGGNRYPPQGGGGWGQPHGGGWGQPHGGGWGQPHGGGWGQPHGGGG";

if(document.getElementById('text').disabled==false){
	document.getElementById('text').value=sequence;
}

}
function setExampleNA() {

var sequence=">human"+"\n"+"tctgcctccatccttttctcacagcaatgaattttgcaatctgaacccaagtgaaaaacaaaattgcctgaattgtactgtatgtagctgcactacaacagattcttaccgtctccacaaggtcagagattgtaaatggtcaatactgacttttttttttattcccttgactcaagaccgctaacttcaatttcagaacgtgttttaaacctttgtgtgctggtttataaataat"+"\n"+">baboon"+"\n"+"tctgcctctgtccttttctcacagcaatgaattttgcaatctgaacccaagtgaaaaacaaaattgcctgaattgtactgtatgtagctgcactacaacagattcttaccgtctccacaaggtcagagattgtaaatggtcaatactgacttttttttttattcccttgactcaagaccgctaacttcaatttcagaacgtgttttaaacctttgtgtgctggtttataaataat"+"\n"+">mole"+"\n"+"tctgcctccgtccttttctcacagcaatgaattttgcaatctgaacccaagtgaaaaaacaaaattgcctgaattgtactgtatgtagctgcactacaacagattcttaccgtctccacaaggtcagagattgtaaatggtcaatactgacttttttttttattcccttgactcaagaccgctaacttcaatttcagaacgtgttttaaacctttgtgtgctggtttataaataat"+"\n"+">bat"+"\n"+"tctgcctccatccttttctcacagcaatgaattttgcaatctgaacccaagtgaaaaacaaaattgcctgaattgtactgtatgtagctgcactacaacagattcttaccgtctccacaaggtcagagattgtaaatggtcaatactgacttttttttttattcccttgactcaagaccgctaacttcaatttcagaacgtgttttaaacctttgtgtgctggtttataaataat"+"\n"+">polecat"+"\n"+"ccgtccttctctcacagcaatgaattttgcaatctgaacccaagtgaaaaacaaaattgcctgaattgtactgtatgtagctgcactacaacagattcttaccgtctccacaaggtcagagattgtaaatggtcaatactgacttttttttttattcccttgactcaagaccgctaacttcaatttcagaacgtgttttaaacctttgtgtgctggtttataaataat"+"\n"+">serval"+"\n"+"cgtccttctctcacagcaatgaattttgcaatctgaacccaagtgaaaaaaacaaaattgcctgaattgtactgtatgtagctgcactacaacagattcttaccgtctccacaaggtcagagattgtaaatggtcaatactgacttttttttttattcccttgactcaagaccgctaacttcaatttcagaacgtgttttaaacctttgtgtgctggtttataaataat"+"\n"+">porpoise"+"\n"+"tctgcctccgtccttttctcacagcaatgaattttgcaatctgaacccaagtgaaaaaaaaacaaaattgcctgaattgtactgtatgtagctgcactacaacagattcttaccgtctccacaaggtcagagattgtaaatggtcaatactgacttttttttttattcccttgactcaagaccgctaacttcaatttcagaacgtgttttaaacctttgtgtgctggtttataaataat"+"\n"+">fin_whale"+"\n"+"tctgcctccgtccttttctcacagcaatgaattttgcaatctgaacccaagtgaaaaaacaaaattgcctgaattgtactgtatgtagctgcactacaacagattcttaccgtctccacaaggtcagagattgtaaatggtcaatactgacttttttttttattcccttgactcaagaccgctaacttcaatttcagaacgtattttaaacctttgtgtgctggtttataaataat"+"\n"+">elephant"+"\n"+"tctgcctccgtccttttctcacagcaatgaagtttgcaatctgaacccaagtgaaaaacaaaattgcctgaattgtactgtatgtagctgcactacaacagattcttaccgtctccacaaggtcagagattgtaaatggtcaatactgacttttttttttattcccttgactcaagaccgctaacttcaatttcagaacgtgttttaaacctttgtgtgctggtttataaataat"+"\n"+">elk"+"\n"+"tctgcctccgtccttttctcacagcaatgaattttgcaatctgaacccaagtgaaaaaacaaaattgcctgaattgtactgtatgtagctgcactacaacagattcttaccgtctccacaaggtcagagattgtaaatggtcaatactgacttttttttttattcccttgactcaagaccgctaacttcaatttcagaacgtgttttaaacctttgtgtgctggtttataaataat"+"\n"+">muntiac"+"\n"+"tctgcctccgtccttttctcacagcaatgaattttgcaatctgaacccaagtgaaaaaacaaaattgcctgaattgtactgtatgtagctgcactacaacagattcttaccgtctccacaaggtcagagattgtaaatggtcaatactgacttttttttttattcccttgactcaagaccgctaacttcaatttcagaacgtgttttaaacctttgtgtgctggtttataaataat"+"\n"+">sheep"+"\n"+"tctgcctccgtccttttctcacagcaatgaattttgcaatctgaacccaagtgaaaaaacaaaattgcctgaattgtactgtatgtagctgcactacaacagattcttaccgtctccacaaggtcagagattgtaaatggtcaatactgacttttttttttattcccttgactcaagaccgctaacttcaatttcagaacgtgttttaaacctttgtgtgctggtttataaataat"+"\n"+">camel"+"\n"+"tctgcctccgtccttttctcacagcaatgaattttgcaatctgaacccaagtgaaaaaaacaaaattgcctgaattgtactgtatgtagctgcactacaacagattcttaccgtctccacaaggtcagagattgtaaatggtcaatactgacttttttttttattcccttgactcaagaccgctaacttcaatttcagaacgtgttttaaacctttgtgtgctggtttataaataat"+"\n"+">rat"+"\n"+"tctgcctccgtccttttctcacagcaatgaattctgcaatctgaacccaagtgaaaaaacaaaattgcctgaattgtactgtatgtagctgcactacaacagattcttaccgtttccacaaggtcagagattgtaaatggtcaatactgactttttttttttattcccttgactcaagaccgctaacttcaatttcagaacgtgttttaaacctttgtgtgctggtttataaataat"+"\n"+">mouse"+"\n"+"tctgcctccgtccttttctcacagcaatgaattctgcaatctgaacccaagtgaaaaaacaaaattgcctgaattgtactgtatgtagctgcactacaacagattcttaccgtttccacaaggtcagagattgtaaatggtcaatactgactttttttttttattcccttgactcaagaccgctaacttcaatttcagaacgtgttttaaacctttgtgtgctggtttataaataat"+"\n"+">rabbit"+"\n"+"aacagattcttaccgtctccacaaggtcagagattgtaaatggtcaatactgacttttttttttattccctcaagaccgctaacttcaatttcagaacgtgttttaaacctttgtgtgctggtttataaataat"+"\n"+">chicken"+"\n"+"tccttgtttctcaaagcaatgaattttgcaatctgaacccaagtgaaaaaaaaaaatttgcctgaattgtactgtatgtagctgcactacaacagattcttaccgtctccacaaggtcagagattgtaaatggtcaatactgacttttttttattcccttgactcaagaccgctaacttcaatttcagaacgtgttttaaacctttgtgtgctggtttataacgtgt"+"\n"+">zebra_finch"+"\n"+"tccttgtttctcaaagcaatgaattttgcaatctgaacccaagtgaaaaaaaaaaattgcctgaattgtactgtatgtagctgcactacaacagattcttaccgtctccacaaggtcagagattgtaaatggtcaatactgacttttttttattcccttgactcaagaccgctaacttcaatttcagaacgtgttttaaacctttgtgtgctggtttataacgtgt"+"\n"+">ostrich"+"\n"+"tctgcctccgtccttgtttcccaaagcaatgaattttgcaatctgaacccaagtgaaaaaaaattgcctgaattgtactgtatgtagctgcactacaacagattcttaccgtctccacaaggtcagagattgtaaatggtcaatactgacttttttttattcccttgactcaagaccgctaacttcaatttcagaacgtgttttaaacctgtgtgctggtttataacgtgt"+"\n"+">aligator"+"\n"+"tctgcctccgtccttgtttcccaaagcaatgaattttgcaatctgaacccaagtgaaaaaaaattgcctgaattgtactgtatgtagctgcactacaacagattcttaccgtctccacaaggtcagagattgtaaatggtcaatactgacttttttttattcccttgactcaagaccgctaacttcaatttcagaacgtgttttaaacctgtgtgctggtttataacgtgt"+"\n"+">turtle"+"\n"+"tctgcctccgtccttgtttctcaaagcaatgaattttgcaatctgaacccaagtgaaaaaattgcctgaattgtactgtatgtagctgcactacaacagattcttaccgtctccacaaggtcagagattgtaaatggtcaatactgacttttttttattcccttgactcaagaccgcgaacttcaatttcagaacgtgttttaaacctgtgtgctggtttataacgtgt"+"\n"+">cangarooh"+"\n"+"attttgcaatctgaacccaagtgaaaaaaaacaaaaaaaaaaacataattgcctgaattgtactgtatgtagctgcactacaacagattcttaccgtctccacaaggtcagagattgtaaatggtcaatactgacttttttttttattcccttgactcaagaccgctaacttcaatttcagaacgtgttttaaacctttgtgtgctggtttataaaataat";
if(document.getElementById('text').disabled==false){
	document.getElementById('text').value=sequence;
}
	
}

