/*
	navigating code combobox main javascript
	made by everblue 2003.10.29
*/

var jkForm, jjForm, jyForm, subjForm;

// find code index from name
function findJKIdxByCode( argJKCode )  {
	for( i=0; i<JKCodeArr.length; i++ )
		if( argJKCode != "" && JKCodeArr[i] == argJKCode )
			return i;
	return -1;
}
function findJKIdxByName( argJKName )  {
	for( i=0; i<JKCodeArr.length; i++ )
		if( argJKName != "" && JKNameArr[i] == argJKName )
			return i;
	return -1;
}
function findJJIdxByCode( argJKCode, argJJCode )  {
	var jkIdx = findJKIdxByCode( argJKCode );
	if( jkIdx < 0 )  return -1;
	for( i=0; i<JJCodeArr.length; i++ )
		if( argJJCode != "" && JJCodeArr[i] == argJJCode )
			return i;
	return -1;
}
function findJJIdxByName( argJKName, argJJName )  {
	var jkIdx = findJKIdxByName( argJKName );
	if( jkIdx < 0 )  return -1;
	for( i=0; i<JJCodeArr.length; i++ )
		if( argJJName != "" && JJNameArr[i] == argJJName )
			return i;
	return -1;
}
function findJYIdxByCode( argJKCode, argJJCode, argJYCode )  {
	var jkIdx = findJKIdxByCode( argJKCode );
	if( jkIdx < 0 )  return -1;
	var jjIdx = findJJIdxByCode( argJKCode, argJJCode );
	if( jjIdx < 0 )  return -1;
	for( i=0; i<JYCodeArr.length; i++ )
		if( argJYCode != "" && JYCodeArr[i] == argJYCode )
			return i;
	return -1;
}
function findJYIdxName( argJKName, argJJName, argJYName )  {
	var jkIdx = findJKIdxByName( argJKName );
	if( jkIdx < 0 )  return -1;
	var jjIdx = findJJIdxByName( argJKName, argJJName );
	if( jjIdx < 0 )  return -1;
	for( i=0; i<JYCodeArr.length; i++ )
		if( argJYName != "" && JYNameArr[i] == argJYName )
			return i;
	return -1;
}
function findSubjIdxByCode( argJKCode, argJJCode, argSubjCode )  {
	var jkIdx = findJKIdxByCode( argJKCode );
	if( jkIdx < 0 )  return -1;
	var jjIdx = findJJIdxByCode( argJKCode, argJJCode );
	if( jjIdx < 0 )  return -1;
	for( i=0; i<SubjCodeArr.length; i++ )
		if( argSubjCode != "" && SubjCodeArr[i] == argSubjCode )
			return i;
	return -1;
}
function findSubjIdxByName( argJKName, argJJName, argJYName )  {
	var jkIdx = findJKIdxByName( argJKName );
	if( jkIdx < 0 )  return -1;
	var jjIdx = findJJIdxByName( argJKName, argJJName );
	if( jjIdx < 0 )  return -1;
	for( i=0; i<SubjCodeArr.length; i++ )
		if( argSubjName != "" && SubjNameArr[i] == argSubjName )
			return i;
	return -1;
}
// find code from name
function findJKCodeByName( argJKName )  {
	for( i=0; i<JKCodeArr.length; i++ )  {
		if( JKNameArr[i] == argJKName )  {
			return JKCodeArr[i];
		}
	}
	return -1;
}
function findJJCodeByName( argJKName, argJJName )  {
	var jkIdx = findJKIdxByName( argJKName );
	if( jkIdx < 0 )  return -1;
	for( i=0; i<JJCodeArr.length; i++ )  {
		if( JJNameArr[jkIdx][i] == argJJName )  {
			return JJCodeArr[jkIdx][i];
		}
	}
	return -1;
}
function findJYCodeByName( argJKName, argJJName, argJYName )  {
	var jkIdx = findJKIdxByName( argJKName );
	if( jkIdx < 0 )  return -1;
	var jjIdx = findJJIdxByName( argJKName, argJJName );
	if( jjIdx < 0 )  return -1;
	for( i=0; i<JYCodeArr.length; i++ )  {
		if( JYNameArr[jkIdx][jjIdx][i] == argJYName )  {
			return JYCodeArr[jkIdx][jjIdx][i];
		}
	}
	return -1;
}
function findSubjCodeByName( argJKName, argJJName, argName )  {
	var jkIdx = findJKIdxByName( argJKName );
	if( jkIdx < 0 )  return -1;
	var jjIdx = findJJIdxByName( argJKName, argJJName );
	if( jjIdx < 0 )  return -1;
	for( i=0; i<SubjCodeArr.length; i++ )  {
		if( SubjNameArr[jkIdx][jjIdx][i] == argSubjName )  {
			return SubjCodeArr[jkIdx][jjIdx][i];
		}
	}
	return -1;
}
// find name from code
function findJKNameByCode( argJKCode )  {
	for( i=0; i<JKCodeArr.length; i++ )  {
		if( JKCodeArr[i] == argJKCode )  {
			return JKNameArr[i];
		}
	}
	return -1;
}
function findJJNameByCode( argJKCode, argJJCode )  {
	var jkIdx = findJKIdxByCode( argJKCode );
	if( jkIdx < 0 )  return "";
	for( i=0; i<JJCodeArr.length; i++ )  {
		if( JJCodeArr[jkIdx][i] == argJJCode )  {
			return JJNameArr[jkIdx][i];
		}
	}
	return "";
}
function findJYNameByCode( argJKCode, argJJCode, argJYCode )  {
	var jkIdx = findJKIdxByCode( argJKCode );
	if( jkIdx < 0 )  return "";
	var jjIdx = findJJIdxByCode( argJKCode, argJJCode );
	if( jjIDx < 0 )  return "";
	for( i=0; i<JYCodeArr.length; i++ )  {
		if( JYCodeArr[jkIdx][jjIdx][i] == argJYCode )  {
			return JYNameArr[jkIdx][jjIdx][i];
		}
	}
	return "";
}
function findSubjNameByCode( argJKCode, argJJCode, argSubjCode )  {
	var jkIdx = findJKIdxByCode( argJKCode );
	if( jkIdx < 0 )  return "";
	var jjIdx = findJJIdxByCode( argJKCode, argJJCode );
	if( jjIdx < 0 )  return "";
	for( i=0; i<SubjCodeArr.length; i++ )  {
		if( SubjCodeArr[jkIdx][jjIdx][i] == argSubjCode )  {
			return SubjNameArr[jkIdx][jjIdx][i];
		}
	}
	return "";
}
// set initial parameter
function SetCodeJS( argJKForm, argJJForm, argJYForm, argSubjForm ){
	jkForm = argJKForm;
	jjForm = argJJForm;
	jyForm = argJYForm;
	subjForm = argSubjForm;
	for( j=0; j<JKCodeArr.length; j++ )  {
		jkForm.options[j+1] = new Option( JKNameArr[j], JKCodeArr[j] );
	}
}
// parent code change apply to sub code
function jkCodeChange()  {
	for( i=jjForm.options.length; i>=0; i-- )  {
		jjForm.options[i+1] = null;
	}
	jkIdx = jkForm.selectedIndex-1;
	if( jkIdx >= 0 )  {
		for( j=0; j<JJCodeArr[jkIdx].length; j++ )  {
			jjForm.options[j+1] = new Option( JJNameArr[jkIdx][j], JJCodeArr[jkIdx][j] );
		}
	}
}
function jjCodeChange()  {
	if( jyForm != "" )  {
		for( i=jyForm.options.length; i>=0; i-- )  {
			jyForm.options[i+1] = null;
		}
		jkIdx = jkForm.selectedIndex-1;
		jjIdx = jjForm.selectedIndex-1;
		if( jkIdx >= 0 && jjIdx >= 0 )  {
			for( j=0; j<JYCodeArr[jkIdx][jjIdx].length; j++ )  {
				jyForm.options[j+1] = new Option( JYNameArr[jkIdx][jjIdx][j], JYCodeArr[jkIdx][jjIdx][j] );
			}
		}
	}
	if( subjForm != "" )  {
		for( i=subjForm.options.length; i>=0; i-- )  {
			subjForm.options[i+1] = null;
		}
		jkIdx = jkForm.selectedIndex-1;
		jjIdx = jjForm.selectedIndex-1;
		if( jkIdx >= 0 && jjIdx >= 0 )  {
			for( j=0; j<SubjCodeArr[jkIdx][jjIdx].length; j++ )  {
				subjForm.options[j+1] = new Option( SubjNameArr[jkIdx][jjIdx][j], SubjCodeArr[jkIdx][jjIdx][j] );
			}
			subjForm.options[j+1] = new Option( "¾øÀ½", "00" );
		}
	}
}
// initial code selected set
function setJKCodeSelected( JKCodeValue )  {
	if( JKCodeValue != "" )  {
		for( i = 0; i < jkForm.options.length; i++ )  {
			if( jkForm.options[i].value == JKCodeValue )  {
				jkForm.selectedIndex = i;
				break;
			}
		}
	}
}
function setJJCodeSelected( JJCodeValue )  {
	if( JJCodeValue != "" )  {
		for( i = 0; i < jjForm.options.length; i++ )  {
			if( jjForm.options[i].value == JJCodeValue )  {
				jjForm.selectedIndex = i;
				break;
			}
		}
	}
}
function setJYCodeSelected( JYCodeValue )  {
	if( JYCodeValue != "" )  {
		for( i = 0; i < jyForm.options.length; i++ )  {
			if( jyForm.options[i].value == JYCodeValue )  {
				jyForm.selectedIndex = i;
				break;
			}
		}
	}
}
function setSubjCodeSelected( SubjCodeValue )  {
	if( SubjCodeValue != "" )  {
		for( i = 0; i < subjForm.options.length; i++ )  {
			if( subjForm.options[i].value == SubjCodeValue )  {
				subjForm.selectedIndex = i;
				break;
			}
		}
	}
}
function initialCodeSelected( argJKCode, argJJCode, argJYCode, argSubjCode )  {
	if( jkForm != "" )  {
		setJKCodeSelected( argJKCode );
		jkCodeChange();
		if( jjForm != "" )  {
			setJJCodeSelected( argJJCode );
			jjCodeChange();
			if( jyForm != "" )  {
				setJYCodeSelected( argJYCode );
			}
			if( subjForm != "" )  {
				setSubjCodeSelected( argSubjCode );
			}
		}
	}
}

