<!--

// サブミット
function ajax_do(frm, mod, args, func) {
	if(args == undefined) args = '';
	/*
	if(frm.ajax_args != undefined) {
		var ajax_args = frm.ajax_args.value;
		if(ajax_args.charAt(0) != '&') ajax_args = '&' + ajax_args;
		args += ajax_args;
	}
	*/
	var frm_args = getAllArgs(frm);
	args = (args == '' ? frm_args : frm_args + '&' + args);
	ajax_all('input_area', frm.action_org.value, mod, args, func);
}
function ajax_all(obj_id, act, mod, args, func) {
	var pars = 'a=' + act + '&m=' + mod + '&ajax=1';
	
	if(args != undefined && args != '') {
		if(args.charAt(0) != '&') args = '&' + args;
		pars += args;
	}
	
	pars += param_nocache();
	
	var props = new Array();
	props['method'] = 'get';
	props['parameters'] = pars;
	if(func != undefined) props['onComplete'] = func;

	new Ajax.Updater(obj_id, 'index.php', props);
}
function ajax_do_with_args(frm, mod, func) {
	ajax_all('input_area', frm.elements['a'].value, mod, getAllArgs(frm), func);
}


// フォームの基本引数を取得
function ajax_make_arg(frm, obj_name){
	var obj = frm.elements[obj_name];
	if(obj == undefined) return '';
	return '&' + obj_name + '=' + obj.value;
}
function getArgs(frm){
	var args = '';
	args += ajax_make_arg(frm, 'sort_column');
	args += ajax_make_arg(frm, 'sort_order');
	args += ajax_make_arg(frm, 'page_no');
	args += ajax_make_arg(frm, 'lines_per_page');
	args += ajax_make_arg(frm, 'del_ids');
	
	return args;
}

function getAllArgs(frm){
	var args = '';
	args += getAllArgsByTagName(frm, 'input');
	args += getAllArgsByTagName(frm, 'select');
	args += getAllArgsByTagName(frm, 'textarea');
	
	return args;
}
function getAllArgsByTagName(frm, tag_name){
	var args = '';
	var elements = document.getElementsByTagName(tag_name);
	for(var i = 0; i < elements.length; i++) {
		if(elements[i].form != frm) continue;

		var name = elements[i].name;
		var value = elements[i].value;
		
		if(name == 'a' || name == 'm') continue;
		if(name == '' || value == '') continue;
		
		if(tag_name == 'input' && (elements[i].type == 'radio' || elements[i].type == 'checkbox')) {
			if(!elements[i].checked) continue;
		}
		
		args += '&' + name + '=' + encodeURIComponent(value);
	}
	
	return args;
}

function getAllArgs2(frm){
	if(frm == undefined) frm = document.inputform;
	if(frm == undefined) frm = document.mainform;
	var args = '';
	args += getAllArgsByTagName2(frm, 'input');
	args += getAllArgsByTagName2(frm, 'select');
	args += getAllArgsByTagName2(frm, 'textarea');
	return args;
}
function getAllArgsByTagName2(frm, tag_name){
	var args = '';
	var elements = document.getElementsByTagName(tag_name);
	for(var i = 0; i < elements.length; i++) {
		if(elements[i].form != frm) continue;

		var name = elements[i].name;
		var value = elements[i].value;
		
		if(name == 'action_org' || name == 's') continue;
		if(name == '' || value == '' || value == '0') continue;
		
		if(tag_name == 'input' && (elements[i].type == 'radio' || elements[i].type == 'checkbox')) {
			if(!elements[i].checked) continue;
		}
		
		args += name + '=' + value + "\n";
	}
	
	return args;
}

// 削除
function ajax_delete(){
	var frm = document.inputform;
	if(sub_delete_proc(frm, 'ajax_del') == false) return false;
	ajax_do(frm, 'ajax_delete', getArgs(frm));

}

// 一覧
function ajax_list(){
	var frm = document.inputform;
	ajax_do(frm, frm.elements['m'].value, getArgs(frm));
}

// ページ行切替
function ajax_change_lines(lines){
	var frm = document.inputform;
	sub_change_lines_proc(frm, lines);
	ajax_list();
}

// ページ切替
function ajax_change_page(page_no){
	var frm = document.inputform;
	frm.elements['page_no'].value = page_no;
	ajax_list();
}
function ajax_add_page(offset, page_no, page_max){
	var frm = document.inputform;
	sub_add_page_proc(frm, offset, page_no, page_max);
	ajax_list();
}

// 並べ替え
function ajax_sort(sort_column, sort_order){
	var frm = document.inputform;
	sub_sort_proc(frm, sort_column, sort_order);
	ajax_list();
}

// 削除チェック
function ajax_change_check(each_name, all_id){
	var frm = document.inputform;
	change_check_proc(frm, each_name, all_id);
}

// 入力エリアを閉じる
function close_input_area(){
	setInnerHtml('input_area', '');
	location.href = '#';
}

//-->
