function sizeLimit(obj,size,div) {
	var	len	=	0 ;
	var	word	=	new Array ;
	word		=	obj.value.split("") ;
	for	(i = 0 ; i < word.length ; i++) {
		if	(escape(word[i]).length > 3)	{ len = len + 2 ; }
		else					{ len = len + 1 ; }
	}
	if	(len > size) {
		eval(div).innerHTML	=	'<FONT COLOR="red">多<B>' + (len - size) + '</B>格</FONT>' ;
		alert('欄位內容超出限制，請修正!') ;
		obj.focus() ;
	}
	else	{
		eval(div).innerHTML	=	'<FONT COLOR="blue">剩' + (size - len) + '格</FONT>' ;
	}
}

function chgMode() {
	var	value,mode,len,defa	;
	for	( part = 0 ; part < csiMode.length ; part ++ ) {
		fieldsEN	=	eval('fieldsEN'+part) ;
		fieldsMODE	=	eval('fieldsMODE'+part) ;
		csiButton	=	eval('csiButton'+part) ;
		csiOrButton	=	eval('csiOrButton'+part) ;
		csiImage	=	eval('csiImage'+part) ;
		csiOrImage	=	eval('csiOrImage'+part) ;
		csiMode[part]	=	1 ;
		csiOrMode[part]	=	0 ;
		for (x = 0 ; x < fieldsEN.length ; x++) {
			if (fieldsEN[x].indexOf('csiMode') >= 0) {
				csiMode[part]	*=	eval(fieldsEN[x]) ;
			}
			else if (fieldsEN[x].indexOf('csiOrMode') >= 0) {
				csiMode[part]	*=	eval(fieldsEN[x]) ;
			}
			else if	(fieldsEN[x].indexOf('csiMode') < 0 && fieldsEN[x].indexOf('csiOrMode') < 0 && eval('document.CSI.' + fieldsEN[x])) {
				fieldResult	=	false ;
				value		=	eval('document.CSI.'+fieldsEN[x]).value ;
				mode		=	eval('document.CSI.'+fieldsEN[x]).checked ;
				len		=	eval('document.CSI.'+fieldsEN[x]).length ;
				if	(fieldsMODE[x] == 'int')	{	//	For general objects to check if bigger than 0
					fieldResult	= (value > 0) ? true : false ;
				}
				else if (fieldsMODE[x] == '1')		{	//	For general objects to check if longger than 0 byte
					fieldResult	= value.length ;
				}
				else if	(len > 0)			{	//	For Radio objects
					for	(i = 0 ; i < len ; i++) {
						if	(eval('document.CSI.'+fieldsEN[x])[i].checked == true	)	fieldResult = true ;
						else if	(eval('document.CSI.'+fieldsEN[x])[i].selected == true &&
							 eval('document.CSI.'+fieldsEN[x])[i].value != ''	)	fieldResult = true ;
					}
				}
				else if (typeof(fieldsMODE[x]) == 'boolean')	{	//	For Checkbox objects
					fieldResult	=	mode ;
				}

				if	(eval('document.img'+fieldsEN[x]))	{
					if	(fieldResult == false || fieldResult == 0)	{
						fieldResult	=	false ;
						if	(fieldResult != csiBalls[part * 100 + x].mode)	{
							eval('document.img'+fieldsEN[x]).src	=	redBall.src ;
							csiBalls[part * 100 + x].mode		=	fieldResult ;
						}
						else	{ // unchanged
						}
					}
					else							{
						fieldResult	=	true ;
						if	(fieldResult != csiBalls[x].mode)	{
							eval('document.img'+fieldsEN[x]).src	=	greenBall.src ;
							csiBalls[part * 100 + x].mode		=	fieldResult ;
						}
						else	{ // unchanged
						}
					}
				}
				if	(fieldResult > 0)	{ csiMode[part] *= 1 ; }
				else if	(fieldResult == true)	{ csiMode[part] *= 1 ; }
				else if	(fieldResult == false)	{ csiMode[part] *= 0 ; }
				csiOrMode[part]	= fieldResult || csiOrMode[part] ;
			}
		}
		if	(csiMode[part])	{
			for	( i = 0 ; i < csiButton.length ; i ++ ) { eval('document.CSI.CMD'+csiButton[i]).disabled = false ; }
			for	( i = 0 ; i < csiImage.length ; i ++ )	{ eval('document.img'+csiImage[i]).src = greenBall.src ; }
		}
		else {
			for	( i = 0 ; i < csiButton.length ; i ++ ) { eval('document.CSI.CMD'+csiButton[i]).disabled = true ; }
			for	( i = 0 ; i < csiImage.length ; i ++ )	{ eval('document.img'+csiImage[i]).src = redBall.src ; }
		}
		if	(csiOrMode[part])	{
			for	( i = 0 ; i < csiOrButton.length ; i ++ )	{ eval('document.CSI.CMD'+csiOrButton[i]).disabled = false ; }
			for	( i = 0 ; i < csiOrImage.length ; i ++ )	{ eval('document.img'+csiOrImage[i]).src = greenBall.src ; }
		}
		else {
			for	( i = 0 ; i < csiOrButton.length ; i ++ )	{ eval('document.CSI.CMD'+csiOrButton[i]).disabled = true ; }
			for	( i = 0 ; i < csiOrImage.length ; i ++ )	{ eval('document.img'+csiOrImage[i]).src = redBall.src ; }
		}
	}
}
function initCsiBalls() {	//	單項最多允許 100 項欄位設定
	var	value,mode,len,defa	;
	for	( part = 0 ; part < csiMode.length ; part ++ ) {
		fieldsEN	=	eval('fieldsEN'+part) ;
		for (x = 0 ; x < fieldsEN.length ; x++) {
			csiBalls[part * 100 + x]	=	new csiBall(fieldsEN[x],false) ; // 先定義燈號物件
		}
	}
}
function csiBall(name,mode) {
	this.name	=	name ;
	this.mode	=	mode ;
}
function copyright() {
	window.status	=	'Designed by Idea Captor Studio +886-2-23687181' ;
}
function getDIV(id) {
	if	(document.getElementById)	{	return document.getElementById(id)	; }	//	N6,Moz,IE5,IE6
	else if	(document.all)			{	return document.all(id)			; }	//	IE4
	else if	(document.layers)		{	return document.layers[id]		; }	//	NN4
}
function doReplace(obj,old_string,new_string) {
	var last	=	0 ;
	var	source	=	obj.value ;
	var	found	=	source.indexOf(old_string) ;
	while (found != -1 && found >= last) {
		obj.value	=	source.replace(old_string,new_string) ;
		source		=	obj.value ;
		last		=	found ;
		found		=	source.indexOf(old_string) ;
	}
}
var isMouseDown	=	false ;
function setColor(obj,color)	{	obj.bgColor	=	color ;	}
function presetColor(obj,color)	{	obj.bgColor	=	color ;	}
function PickThisOnMouseDown(objName,value) {
	if	(isMouseDown) {
		var obj = eval('document.CSI.' + objName) ;
		var len	= obj.length ;
		for	(i = 0 ; i < len ; i++) {
			if (obj[i].value == value)  obj[i].checked = !obj[i].checked ;
		}
		chgMode() ;
	}
}
