var req_keyword;
var req_count;

function req_esconv(keyword, count, start_pos, sort_key, sort_order)
{
	var cs = 0;
	if ($('chk_scd').checked)
		cs = 1;

	$('ESCONV_MSG').innerHTML = 'キーワード[' + keyword + ']で有報をサーチ..';
	$('ESCONV_TAB').innerHTML = '';
	$('ESCONV_TAB').appendChild(load_pic());
	var parameter = "k=" + encodeURIComponent(keyword) + "&c=" + count + 
					"&s=" + start_pos + "&o=" + sort_key + "&d=" + sort_order + "&cs=" + cs;
	req_keyword = keyword;
	req_count = count;
	var myAjax = new Ajax.Request(
		get_url('api/get_esconv.cgi'), // 呼び出し先のURL
		{
			method: 'post', // メソッド（getまたはpost）
			postBody: parameter, // ポストされるボディ部
			onSuccess: AjaxResultSuccess, // 呼び出しが成功したときに呼び出されるメソッド
			onFailure: AjaxFailed, // 呼び出しが失敗したときに呼び出されるメソッド
			onException: AjaxException // 例外が発生したときに呼び出されるメソッド
		}
		);
}

function search_esconv()
{
	var text = $('searchkey').value;
	if (text == $('searchkey').defaultValue)
		text = '';

	req_esconv(text, 50, "", "", "");
}

function AjaxResultSuccess(xmlhttp, json)
{
	var xmlobj = xmlhttp.responseXML;
	var codes_elem = xmlobj.getElementsByTagName("codes");
	var codes_count = parseInt(codes_elem[0].getAttribute("count"));
	var codes_from = parseInt(codes_elem[0].getAttribute("from"));
	var codes = xmlobj.getElementsByTagName("code");
	var p = $('ESCONV_TAB');
	p.innerHTML = '';
	var table = document.createElement('table');
	var tr = document.createElement('tr');
	var th1 = document.createElement('th');
	var th2 = document.createElement('th');
	var th3 = document.createElement('th');
	var th4 = document.createElement('th');
	th1.innerHTML = 'EDINET';
	th2.innerHTML = '証券コード';
	th3.innerHTML = '業種';
	th4.innerHTML = '会社名';
	tr.appendChild(th1);
	tr.appendChild(th2);
	tr.appendChild(th3);
	tr.appendChild(th4);
	var thead = document.createElement('thead');
	thead.appendChild(tr);
	table.appendChild(thead);

	var tbody = document.createElement('tbody');
	for (var i = 0; i < codes.length; i++)
	{
		var ecd  = codes[i].getAttribute('ecd') + "";
		var scd  = codes[i].getAttribute('scd') + "";
		var sector = sector_short_name(codes[i].getAttribute('sector'));
		var name = codes[i].getAttribute('nm') + "";
		var tr = document.createElement('tr');
		var td1 = document.createElement('td');
		var td2 = document.createElement('td');
		var td3 = document.createElement('td');
		var td4 = document.createElement('td');
		td1.innerHTML = ecd;
		td2.innerHTML = scd;
		td3.innerHTML = sector;
		if ( scd.length > 1)
		{
			var alink = document.createElement('a');
			alink.href = "http://profile.yahoo.co.jp/fundamental/" + scd.substring(0,4);
			alink.setAttribute('target', '_blank');
			alink.innerHTML = name;
			td4.appendChild(alink);
		}
		else
		{
			td4.innerHTML = name;
		}
		tr.appendChild(td1);
		tr.appendChild(td2);
		tr.appendChild(td3);
		tr.appendChild(td4);
		tbody.appendChild(tr);
	}
	table.appendChild(tbody);
	p.appendChild(table);
	if (codes_count > 0)
	{
		$('ESCONV_MSG').innerHTML +=
			'&nbsp;' + codes_count + '件中、&nbsp;' +
			(codes_from+1) + '-' + (codes.length+codes_from) + '件を表示しています';
	}
	else
	{
		$('ESCONV_MSG').innerHTML += '&nbsp;対象は見つかりませんでした';
	}
	$('ESCONV_PG').innerHTML = '';
	$('ESCONV_PG2').innerHTML = '';
	if (codes_from>0)
	{
    	var btn = nav_button("NAV_BUTTON_BACK");
   		btn.onclick = new Function(
			"req_esconv(\"" + req_keyword + "\",\"" + req_count + "\",\"" + (codes_from-req_count)  +  "\",\"\",\"\");"
		);
		$('ESCONV_PG').appendChild(btn);
		var btn2 = nav_button("NAV_BUTTON_BACK");
   		btn2.onclick = new Function(
			"req_esconv(\"" + req_keyword + "\",\"" + req_count + "\",\"" + (codes_from-req_count)  +  "\",\"\",\"\");"
		);
		$('ESCONV_PG2').appendChild(btn2);
	}
	if (codes.length+codes_from < codes_count)
	{
    	var btn = nav_button("NAV_BUTTON_NEXT");
   		btn.onclick = new Function(
			"req_esconv(\"" + req_keyword + "\",\"" + req_count + "\",\"" + (codes.length+codes_from)  +  "\",\"\",\"\");"
		);
		$('ESCONV_PG').appendChild(btn);
        var btn2 = nav_button("NAV_BUTTON_NEXT");
        btn2.onclick = new Function(
            "req_esconv(\"" + req_keyword + "\",\"" + req_count + "\",\"" + (codes.length+codes_from)  +  "\",\"\",\"\");"
        );
		$('ESCONV_PG2').appendChild(btn2);
	}
}

function nav_button(value)
{
	var btn = document.createElement('input');
	btn.setAttribute("type", "button");
	btn.setAttribute("name", "button");
	btn.className = "nav";
    btn.id = value;
	return btn;
}

