input_items=new Array();
input_options=new Array();
//

//----------------------------------------------------------------
//----------------------------------------------------------------
function SetTitle(item_id,val){
	document.getElementById('q_title'+item_id).innerHTML=val;
	input_items[item_id][0]=val;
}
//----------------------------------------------------------------
function SetBox(item_id){
	var param;
	param =	'no='+ item_id +
			'&param='+input_items[item_id] +
			'&option='+input_options[item_id];
			
	//文字化け防止
	param += '&code='+document.getElementById('code').value;

	new Ajax.Request('lib/make_input.php',
	{
		method:'post',
		onSuccess:getResponse,
		onFailure:getError,
		postBody: param
	});
	
	function getResponse(req){
		document.getElementById('item'+item_id).innerHTML=req.responseText;
	}
	
	function getError(req){
		document.getElementById('item'+item_id).innerHTML = req.responseText;
	}
}
//----------------------------------------------------------------
function SetVal(item_id, no, val){
	input_items[item_id][no]=val;
	SetBox(item_id);
}
//----------------------------------------------------------------
function SetType(item_id,val){
	switch(val){
		case '1':
		document.getElementById('input_check'+item_id+'_li').style.display="";
		document.getElementById('input_size'+item_id+'_li').style.display="";
		document.getElementById('input_row'+item_id+'_li').style.display="none";
		document.getElementById('input_max'+item_id+'_li').style.display="";
		document.getElementById('input_option'+item_id+'_li').style.display="none";
		break;
		case '2':
		document.getElementById('input_check'+item_id+'_li').style.display="none";
		document.getElementById('input_size'+item_id+'_li').style.display="none";
		document.getElementById('input_row'+item_id+'_li').style.display="";
		document.getElementById('input_max'+item_id+'_li').style.display="none";
		document.getElementById('input_option'+item_id+'_li').style.display="";
		break;
		case '3':
		case '4':
		document.getElementById('input_check'+item_id+'_li').style.display="none";
		document.getElementById('input_size'+item_id+'_li').style.display="none";
		document.getElementById('input_row'+item_id+'_li').style.display="none";
		document.getElementById('input_max'+item_id+'_li').style.display="none";
		document.getElementById('input_option'+item_id+'_li').style.display="";
		break;
		case '5':
		document.getElementById('input_check'+item_id+'_li').style.display="";
		document.getElementById('input_size'+item_id+'_li').style.display="";
		document.getElementById('input_row'+item_id+'_li').style.display="";
		document.getElementById('input_max'+item_id+'_li').style.display="none";
		document.getElementById('input_option'+item_id+'_li').style.display="none";
		default:
	}
	SetVal(item_id, 1, val);
	SetBox(item_id);
}
//----------------------------------------------------------------
function NewRow(){
	ClosePanel();
	input_items.push( new Array("Question"+(input_items.length+1),"1","0","0") );
	input_options.push( new Array() );
	//document.getElementById('form_tbl').innerHTML="123456";
	AddRow( input_items.length-1 );
}
//----------------------------------------------------------------
//----------------------------------------------------------------
function AddRow( no ){
	var $param = 'no='+ no
			+'&param='+input_items[no]
			+'&option='+input_options[no]
			;
	new Ajax.Request('lib/add_row.php',
	{
		method:'post',
		onSuccess:getResponse,
		onFailure:getError,
		postBody: $param
	});
	
	function getResponse(req){
		//document.getElementById('form_tbl').innerHTML+=req.responseText;//IE6非対応のため変更
		tbody=document.getElementById('form_tbl').innerHTML;
		document.getElementById('form_div').innerHTML="<table id='form_tbl'>" + tbody + req.responseText + "</table>";
		ChangePanel(no);
	}
	
	function getError(req){
		document.getElementById('form_tbl').innerHTML+=req.responseText;
	}
}
//----------------------------------------------------------------
//----------------------------------------------------------------
function ChangePanel(panel_id){
	if(document.getElementById('panel'+panel_id).style.display != "none"){
		document.getElementById('panel'+panel_id).style.display="none";
	}
	else{
		ClosePanel();
		document.getElementById('panel'+panel_id).style.display="block";
	}
}
//----------------------------------------------------------------
function ClosePanel(){
	try{
		for(i=0; i<input_items.length; i++){
			document.getElementById('panel'+i).style.display="none";
		}
	}
	catch(myError){
	}
}
//----------------------------------------------------------------
function AddOptions(item_id){
	var val=document.getElementById('input_option'+item_id).value;
	var add_text='<li>'+ val +'</li>\n';
	
	document.getElementById('options'+item_id).innerHTML+= add_text;
	input_options[item_id].push(val);
	SetBox(item_id);
}
//----------------------------------------------------------------
function DeleteOptions(item_id){
	var length=input_options[item_id].length;
	if(length>0)	input_options[item_id].splice(length-1,1);
	SetBox(item_id);
	//
	document.getElementById('options'+item_id).innerHTML="";
	length=input_options[item_id].length;
	for(i=0; i<length; i++){
		add_text='<li>'+ input_options[item_id][i] +'</li>\n';
		document.getElementById('options'+item_id).innerHTML+= add_text;
	}

}
//----------------------------------------------------------------
function RefreshTbl(){
	//document.getElementById('form_tbl').innerHTML="";//IE6非対応のため変更
	document.getElementById('form_div').innerHTML="<table id='form_tbl'></table>";
	
	/*	
	for(i=0; i<input_items.length; i++){
		AddRow(i);
	}*/
	
	AddRow2(0);//非同期通信のため表示が入れ替わる。AddRow2にて改善。
}
//----------------------------------------------------------------
function DeleteItems(item_id){
	input_items.splice(item_id,1);
	input_options.splice(item_id,1);
	RefreshTbl();
}
//----------------------------------------------------------------
function PutForm(){
	var param;
	param = 'num_rows='+input_items.length;
	for(i=0; i<input_items.length; i++){
		param += '&item'+ i + '=' + input_items[i];
		param += '&option'+ i + '=' + input_options[i];
	}
	param += '&site_name='+document.getElementById('site_name').value;
	param += '&site_url='+document.getElementById('site_url').value;
	param += '&to_mail='+document.getElementById('to_mail').value;
	param += '&form_name='+document.getElementById('form_name').value;
	param += '&code='+document.getElementById('code').value;
	
	new Ajax.Request('lib/put_form.php',
	{
		method:'post',
		onSuccess:getResponse,
		onFailure:getError,
		postBody: param
	});
	
	function getResponse(req){
		//PutForm2(req.responseText);
		//document.getElementById('put_form_req').innerHTML=req.responseText;
		//location.href='http://localhost/cgi-bin/jamform1.cgi';
		document.getElementById('_download_').value =req.responseText;
		document.getElementById('_filename_').value ="index.php";
		document.forms[0].submit();
	}
	
	function getError(req){
		alert("error:don't make file");
	}
}
//----------------------------------------------------------------
function PutForm2(param){
	new Ajax.Request('http://localhost/cgi-bin/jamform1.cgi',
	{
		method:'post',
		onSuccess:getResponse,
		onFailure:getError,
		postBody: param
	});
	
	function getResponse(req){
		//document.getElementById('put_form_req').innerHTML=req.responseText;
		location.href='http://localhost/cgi-bin/download.cgi';
	}
	
	function getError(req){
		alert("error:don't make file");
	}
}
//----------------------------------------------------------------
//----------------------------------------------------------------
function AddRow2(no){
	if( no >= input_items.length){
		return;
	}

	var $param = 'no='+ no
			+'&param='+input_items[no]
			+'&option='+input_options[no]
			+'&encode=アーティスティックジャム'
			;
		
	new Ajax.Request('lib/add_row.php',
	{
		method:'post',
		onSuccess:getResponse,
		onFailure:getError,
		postBody: $param
	});
	
	function getResponse(req){
		tbody=document.getElementById('form_tbl').innerHTML;
		document.getElementById('form_div').innerHTML="<table id='form_tbl'>" + tbody + req.responseText + "</table>";
		no++;
		AddRow2(no);
	}
	
	function getError(req){
	}
}
//----------------------------------------------------------------
function InstallJamForm(){
	var param;
	param = 'num_rows='+input_items.length;
	param += '&site_name='+document.getElementById('site_name').value;
	param += '&site_url='+document.getElementById('site_url').value;
	param += '&to_mail='+document.getElementById('to_mail').value;
	param += '&form_name='+document.getElementById('form_name').value;
	param += '&file_name='+document.getElementById('file_name').value;
	param += '&update='+ update;
	new Ajax.Request('lib/put_form.php',
	{
		method:'post',
		onSuccess:getResponse,
		onFailure:getError,
		postBody: param
	});
	
	function getResponse(req){
		document.getElementById('put_form_req').innerHTML=req.responseText;
	}
	
	function getError(req){
		alert("error:don't make file");
	}
}
//----------------------------------------------------------------
//080720
function PutFormPerl(){
	var param;
	param = 'num_rows='+input_items.length;
	for(i=0; i<input_items.length; i++){
		param += '&item'+ i + '=' + input_items[i];
		param += '&option'+ i + '=' + input_options[i];
	}
	param += '&site_name='+document.getElementById('site_name').value;
	param += '&site_url='+document.getElementById('site_url').value;
	param += '&to_mail='+document.getElementById('to_mail').value;
	param += '&form_name='+document.getElementById('form_name').value;
	param += '&code='+document.getElementById('code').value;
	
	new Ajax.Request('lib/put_form_perl.php',
	{
		method:'post',
		onSuccess:getResponse,
		onFailure:getError,
		postBody: param
	});
	
	function getResponse(req){
		document.getElementById('_download_').value =req.responseText;
		document.getElementById('_filename_').value ="index.cgi";
		document.forms[0].submit();
	}
	
	function getError(req){
		alert("error:don't make file");
	}
}
