function dbchanged(){
	var item = document.getElementById('form1').dbname;
	getDbInfo(item.value);
	enableDb(item.value);
	
	
}
function getDbInfo(db){
	
	var request = createXMLHttpRequest();
	request.open("POST", "dbInfo" , true);
	request.onreadystatechange = readyStateChangeHandler;
	request.setRequestHeader( "Content-Type" ,  "application/x-www-form-urlencoded");
	request.send("db=" + db);
	
	function readyStateChangeHandler(){
		if(request.readyState == 4){
			if(request.status == 200){
				var selectChrom = document.getElementById('form1').chrom;
				var selectOrtho = document.getElementById('form1').ortho;
				var data = eval("(" + request.responseText + ")");
				
				if(data.status == -1){
					window.alert("Error");
				}
				else{
					var chroms = data[0].chrom;
					selectChrom.length = 0;
					addSelOption ( selectChrom , "All", "All");
					for (var i = 0; i < chroms.length; i ++) {
						addSelOption ( selectChrom , chroms[i][0], chroms[i][1]);
					}
					
					var orthos = data[0].ortho;
					selectOrtho.length = 0;
					for (var i = 0; i < orthos.length; i ++) {
						addSelOption ( selectOrtho , orthos[i][0], orthos[i][1]);
					}
				}
			}
			else{
				window.alert(request.statusText);
			}
		}
	}
}


function addSelOption( select, value, text ){
	select.length++;
	select.options[ select.length - 1].value = value ;
	select.options[ select.length - 1].text  = text;
}
function createXMLHttpRequest(){
	/* XMLHttpRequest オブジェクトを作成する   */
	if(window.addEventListener){
		/* Firefox 用 */
		return new XMLHttpRequest();
	}
	else{
		/* IE 用 */
		return new ActiveXObject("Microsoft.XMLHTTP");
	}
}

function enableDb(dbname){
	var isOther = true;
	if (dbname.search(/human_/) != -1) {
		isOther = false;
	}
	else{
	   clearHuman();
	}
	
	var retro = document.getElementById('form1').retro;
	for (i = 0; i < retro.length; i++) {
		retro[i].disabled = isOther; 
	}
    
	document.getElementById('form1').ldorfFrom.disabled = isOther;
    document.getElementById('form1').ldorfTo.disabled = isOther;
    document.getElementById('form1').as_5utr.disabled = isOther;
    document.getElementById('form1').as_cds.disabled = isOther;
    document.getElementById('form1').as_3utr.disabled = isOther;
    document.getElementById('form1').motif.disabled = isOther;
    document.getElementById('form1').go.disabled = isOther;
    document.getElementById('form1').sl.disabled = isOther;
    document.getElementById('form1').td.disabled = isOther;
    document.getElementById('form1').as_bridged.disabled = isOther;
    document.getElementById('form1').as_nested.disabled = isOther;
    document.getElementById('form1').as_multi.disabled = isOther;
    
    document.getElementById('form1').chk_wolf.disabled = isOther;
    document.getElementById('form1').chk_targetp.disabled = isOther;
    document.getElementById('form1').chk_tmhmm.disabled = isOther;
    document.getElementById('form1').chk_sosui.disabled = isOther;
    document.getElementById('form1').chk_nmd.disabled = isOther;
    document.getElementById('form1').wolf.disabled = isOther;
    document.getElementById('form1').targetp.disabled = isOther;

    document.getElementById('form1').motifPrg.disabled = isOther;
    document.getElementById('form1').motifText.disabled = isOther;
    document.getElementById('form1').goPrg.disabled = isOther;
    document.getElementById('form1').goText.disabled = isOther;
	
    enableWolf(document.getElementById('form1').chk_wolf);
    enableTargetp(document.getElementById('form1').chk_targetp);
}
function enableWolf(item){
    if(!item.checked){
    	document.getElementById('form1').wolf.value = "All";
    }
    document.getElementById('form1').wolf.disabled=!item.checked;
    
}

function enableTargetp(item){
    if(!item.checked){
    	document.getElementById('form1').targetp.value = "All";
    }
    document.getElementById('form1').targetp.disabled=!item.checked;
}

function clearAdvancedSearchItems(){
	clearCommon();
	clearHuman();
	dbchanged();
	return false;
}
function clearCommon(){
	
	document.getElementById('form1').keyword_type.value = "Keyword";
	document.getElementById('form1').keyword.value = "";
	
	document.getElementById('form1').chrom.value = "All";
	document.getElementById('form1').strand[2].checked = true;
	document.getElementById('form1').pos_from.value = "";
	document.getElementById('form1').pos_to.value = "";
	document.getElementById('form1').sp_site_seq.value = "All";
	
	document.getElementById('form1').varUniqFrom.value = "";
	document.getElementById('form1').varUniqTo.value = "";
	document.getElementById('form1').as_5t.checked = false;
	document.getElementById('form1').as_in.checked = false;
	document.getElementById('form1').as_3t.checked = false;
	document.getElementById('form1').orflenFrom.value = "";
	document.getElementById('form1').orflenTo.value = "";
	
	document.getElementById('form1').as_cs.checked = false;
	document.getElementById('form1').as_ia.checked = false;
	document.getElementById('form1').as_id.checked = false;
	document.getElementById('form1').as_me.checked = false;
	document.getElementById('form1').as_ri.checked = false;
	document.getElementById('form1').as_af.checked = false;
	document.getElementById('form1').as_al.checked = false;
	
	
	
	var conserved = document.getElementById('form1').conserved;
	for (i = 0; i < conserved.length; i++) {
		conserved[i].checked = false; 
	}
}
function clearHuman(){
	var retro = document.getElementById('form1').retro;
	for (i = 0; i < retro.length; i++) {
		retro[i].checked = false; 
	}
	
    document.getElementById('form1').ldorfFrom.value="";
    document.getElementById('form1').ldorfTo.cvalue="";
    document.getElementById('form1').as_5utr.checked = false;
    document.getElementById('form1').as_cds.checked = false;
    document.getElementById('form1').as_3utr.checked = false;
    document.getElementById('form1').motif.checked = false;
    document.getElementById('form1').go.checked = false;
    document.getElementById('form1').sl.checked = false;
    document.getElementById('form1').td.checked = false;
    document.getElementById('form1').as_bridged.checked = false;
    document.getElementById('form1').as_nested.checked = false;
    document.getElementById('form1').as_multi.checked = false;
    
    document.getElementById('form1').chk_wolf.checked =false;
    document.getElementById('form1').chk_targetp.checked =false;
    document.getElementById('form1').chk_tmhmm.checked =false;
    document.getElementById('form1').chk_sosui.checked =false;
    document.getElementById('form1').chk_nmd.checked =false;
    document.getElementById('form1').wolf.value="All";
    document.getElementById('form1').targetp.value="All";
    document.getElementById('form1').motifPrg.value="InterPro ID";
    document.getElementById('form1').motifText.value="";
    document.getElementById('form1').goPrg.value="GO ID";
    document.getElementById('form1').goText.value="";
}

