// JavaScript Document 
//jsFunction.js

/* 13/9/2548 */

/** create by Piek@user */

/*
function formatCurrency(obj) 
{
	num = obj.value;
	num = num.toString().replace(/\$|\,/g,'');
	if(isNaN(num))	{alert('ต้องกรอกเป็นจำนวนเงินเท่านั้น'); obj.focus(); return '';};
	sign = (num == (num = Math.abs(num)));
	num = Math.floor(num*100+0.50000000001);
	cents = num%100;
	num = Math.floor(num/100).toString();
	if(cents<10)cents = "0" + cents;
	for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
		num = num.substring(0,num.length-(4*i+3))+','+num.substring(num.length-(4*i+3));
	return (((sign)?'':'-') + num + '.' + cents);
}
*/
function jsFn_LOVSGroup(obj,lovspath,args,type,para,result)
{
/** example :
	subdistrict :
		return jsFn_LOVSGroup(this, 'xxx/LOV/LOVSubdistrictAction', new Array('0-subdistrictcode', '1-subdistrictnameth'), 'subdistrict', new Array('districtcode', 'provincecode'));
	district :
		return jsFn_LOVSGroup(this, 'xxx/LOV/LOVDistrictAction', new Array('2-districtcode', '3-districtnameth'), 'district', new Array('provincecode'), new Array('subdistrictcode', 'subdistrictnameth'));
	provice : 
		return jsFn_LOVSGroup(this, 'xxx/LOV/LOVProvinceAction', new Array('4-provincecode', '5-provincenameth'), 'province', new Array(null), new Array('subdistrictcode', 'subdistrictnameth', 'districtcode', 'districtnameth'));
*/

	form = obj.form;
	var returnitem = '';
	var isFirst = true;
	for(var i=0;i<args.length;i++)
	{
		if(isFirst == true){returnitem += '&returnitem=' + args[i];	isFirst = false;}
		else{returnitem += ',' + args[i];}
	}
	var parameter = '';
	switch(type)
	{
		case 'subdistrict' :
			/** required 0-districtcode,1-provincecode */
			var para0 = eval('document.' + form.name +'.' + para[0]);
			var para1 = eval('document.' + form.name +'.' + para[1]);
			if(para0.value =='' || para1.value =='')
			{
				var str = "กรุณาเลือก\n";
				if(para0.value==''){str +="\t- อำเภอ/เขต\n";}
				if(para1.value==''){str +="\t- จังหวัด\n";}
				alert(str);return false;
			}
			parameter+='&districtcode='+para0.value;
			break;
		case 'district' :
			/** required 0-provincecode */
			var para0 = eval('document.' + form.name +'.' + para[0]);
			if(para0.value==''){alert('กรุณาเลือกจังหวัด');return false;}
			parameter+='&provincecode='+para0.value;
			break;
		case 'province' :
			/** no require */
			break;
		case 'brand' :
			/** no require */
			break;
		case 'model' :
			/** required 0-brandcode */
			var para0 = eval('document.' + form.name +'.' + para[0]);
			if(para0.value==''){alert('กรุณาเลือกยี่ห้อรถ');return false;}
			parameter+='&modeltype=model&brandcode='+para0.value;
			break;
	}
	if(lovspath != '' && returnitem != '') 
		ShowWindow(lovspath+'.do?form='+form.name+returnitem+parameter,600,550);
	else 
		alert('ไม่สามารถเรียก LOV ของ '+obj.id+' ได้  กรุณาตรวจสอบ parameter อีกครั้ง');

	switch(type)
	{
		case 'subdistrict' : 
			/** no result */
			break;
		case 'district' :
			/** result 0-subdistrictcode='', 1-subdistrictname='' */
			cleanValue(result);
			break;
		case 'province' :
			/** result 0-subdistrictcode='', 1-subdistrictname='', 2-districtcode='', 3-districtname='' */
			cleanValue(result);
			break;
		case 'brand' :
			/** result 0-modelcode='', 1-modelname='' */
			cleanValue(result);
			break;
		case 'model' :
			/** no result */
			break;
	}
	return false;
}

function cleanValue(args)
{
	for(var ii=0;ii<args.length;ii++)
	{
		if(document.getElementById(args[ii]) !=null) document.getElementById(args[ii]).value='';
	}
}

function jsFn_readOnly(args,flag)
{
	for(var ii=0;ii<args.length;ii++)
	{
		if(document.getElementById(args[ii]) !=null) document.getElementById(args[ii]).readOnly=flag;
	}
}

function jsFn_disabled(args,flag)
{
	for(var ii=0;ii<args.length;ii++)
	{
		if(document.getElementById(args[ii]) !=null) document.getElementById(args[ii]).disabled=flag;
	}
}

function jsFn_styleDisplay(args,flag)
{
	var temp='inline';
	if(flag) temp='none';
	for(var ii=0;ii<args.length;ii++)
	{
		if(document.getElementById(args[ii]) !=null) document.getElementById(args[ii]).style.display=temp;
	}	
}

function jsFn_submitForm(frm,path)
{
	frm.message.value='submitform';
	frm.actionforward.value=path;
	frm.submit();
}

function jsFn_LOVSPopup(obj,lovspath,args,paraname,paravalue)
{
	form = obj.form;
	var returnitem = '';
	var para='';
	var isFirst = true;
	for(var i=0;i<args.length;i++)
	{
		if(isFirst == true){returnitem += '&returnitem=' + args[i];	isFirst = false;}
		else{returnitem += ',' + args[i];}
	}
	if(paraname != null && paraname.length !=null)
		for(var ii=0;ii<paraname.length;ii++)
		{
			para += '&' + paraname[ii] + '=' + paravalue[ii];
		}

	if(lovspath != '' && returnitem != '') 
		ShowWindow(lovspath+'.do?form='+form.name+returnitem+para,600,550);
	else 
		alert('ไม่สามารถเรียก LOV ของ '+obj.id+' ได้  กรุณาตรวจสอบ parameter อีกครั้ง');
	return false;
}

function jsFn_forward(path,args)
{
	var isFirst=true;
	var para="";
	for(var i=0;i<args.length;i++)
	{
		if(isFirst == true){para += '%3F' + args[i];	isFirst = false;}
		else{para += '%26' + args[i];}
	}
	window.location=path+para;
}

function jsFn_hasChecked(form,type,text)
{
	var cbox = eval("document." + form.name + "." + type);
	if(cbox == null)
		{alert('ไม่มีรายการที่ต้องการ' + (text == null ? "ลบ" : text)); return false;}
	else if(cbox != null && cbox.length == null && cbox.checked == false){ alert( 'กรุณาเลือกรายการที่ต้องการ' + (text == null ? "ลบ" : text)); return false; }			
	else if(cbox != null && cbox.length == null && cbox.checked == true){ return true; }			
	else if(cbox != null && cbox.length != null)
	{
			var haveCheck = false;
			for(var i=0;i<cbox.length;i++)
			{
				if (cbox[i].checked)	{haveCheck = true; }
			}
			if(!haveCheck) { alert( 'กรุณาเลือกรายการที่ต้องการ' + (text == null ? "ลบ" : text)); return false; }			
			return true;
	}
	return false;
}

function jsFn_checkedAll(obj,type)
{
	var cbox = eval("document." + obj.form.name + "." + type);
	if(cbox == null)
		{alert('ไม่มีรายการสำหรับเลือก');obj.checked=false;}
	else if(cbox != null && cbox.length == null) {cbox.checked = obj.checked;}// a checkbox is checked
	else if(cbox != null && cbox.length != null)//checkboxes are checked
		{
			for(var i=0;i<cbox.length;i++)
			{cbox[i].checked = obj.checked;}
		}
}

function jsFn_isCheckedAll(obj,type)
{
	var cbox = eval("document." + obj.form.name + "." + obj.id);
	var abox = eval("document." + obj.form.name + "." + type);
	if(cbox.length == null){abox.checked=cbox.checked;}
	else if(cbox.length != null)
	{
		var haveCheck = true;
		for(var i=0;i<cbox.length;i++)
		{ if(!cbox[i].checked){haveCheck=false; break;}}			
		abox.checked=haveCheck;
	}
}


