
g_el = function(el) { return document.getElementById(el); };
// get element position
function g_elP(elemID){
	var offsetTrail = document.getElementById(elemID);
	var offsetLeft = 0;
	var offsetTop = 0;
	while(offsetTrail){
		offsetLeft += offsetTrail.offsetLeft;
		offsetTop += offsetTrail.offsetTop;
		offsetTrail = offsetTrail.offsetParent;
	}
	if(navigator.userAgent.indexOf("Mac") != -1 && typeof document.body.leftMargin != "undefined"){
		offsetLeft += document.body.leftMargin;
		offsetTop  += document.body.topMargin;
	}
	return {left: offsetLeft, top: offsetTop};
}

function initMe(){
	return;
	initLogo();
	// adjust the height of 'subMenu_Box'
	if(true){
		var cnt1 = g_el('subMenu_Box');
		var cnt2 = g_el('content_Box');
		if(cnt1 && cnt2){
			var pos1 = g_elP('subMenu_Box');
			var pos2 = g_elP('content_Box');
			var bottom = parseInt(pos2.top) + parseInt(cnt2.offsetHeight);
			cnt1.style.height = bottom - pos1.top;
		}
	}
}

function initLogo(){
	// adjust the size of logo image
	var cnt = g_el('logoCnt');		// the center td
	var img = g_el('logoImg');
	if(cnt && img){			
		img.style.width = cnt.offsetWidth;
		img.style.height = cnt.offsetHeight;
	}
}

//========================================================================//
//													HEAD MENU STATIC															//
//========================================================================//
function hm_Over(el){
	el.className = el.className.replace('out', 'over');
}

function hm_Out(el){
	el.className = el.className.replace('over', 'out');
}

function hm_Click(elid){
	window.location.href = '?id=' + elid;
}


//========================================================================//
//													HEAD LINE DYNAMIC															//
//========================================================================//

var hlDyn_OutRef = null;
var cntName = 'hl_Dyn_Box_';



function hm_switch2(el, dir){	// dir:true - over, false - out
	if(dir){
		el.className = el.className.replace('_out', '_over');
		if(hlDyn_OutRef != null)
			clearTimeout(hlDyn_OutRef);
		var cnt = null;
		for(var i = 1; i < levels; i++){
			cnt = g_el(cntName + i);
			if(cnt != null)
				cnt.className = 'headLine_Dyn_Box_hidden';
		}
		var res = hl_Filter2(1, el.id.split('_')[2]);
		cnt = g_el(cntName + 1);
		var pos = g_elP(el.id);
		cnt.style.left = pos.left;
		cnt.style.top = pos.top + el.offsetHeight;
		if(res)
			cnt.className = 'headLine_Dyn_Box_visible';
	}
	else{
		el.className = el.className.replace('_over', '_out');
		hlDyn_OutRef = setTimeout('hl_Clear()', 600);
	}
}

function hl_Filter2(level, pid){
	var res = false;
	var el = g_el(cntName + level);
	var els = el.getElementsByTagName('TABLE')[0].getElementsByTagName('TABLE');
	for(var i = 0; i < els.length; i++){
		els[i].className = 'headLine_Dyn_hidden';
	}
	for(var i = 0; i < els.length; i++){
		if(els[i].id.split('_')[3] == pid){
			res = true;
			els[i].className = 'headLine_Dyn_out';
			for(var k = 0; k < hmPids.length; k++){
				if(hmPids[k] == els[i].id.split('_')[4])
					els[i].className = 'headLine_Dyn_sel_out';
			}
		}
	}
	return res;
}

function hl_Filter(level, pid){
	var res = false;
	var el = g_el(cntName + level);
	var els = el.getElementsByTagName('TR');
	for(var i = 0; i < els.length; i++){
		els[i].className = 'headLine_Dyn_hidden';
	}
	for(var i = 0; i < els.length; i++){
		if(els[i].id.split('_')[3] == pid){
			res = true;
			els[i].className = 'headLine_Dyn_out';
			for(var k = 0; k < hmPids.length; k++){
				if(hmPids[k] == els[i].id.split('_')[4])
					els[i].className = 'headLine_Dyn_sel_out';
			}
		}
	}
	return res;
}

function hl_Click(el){
	window.location.href = el.getElementsByTagName('a')[0].href;
}

// HEAD LEVELS
function hlDyn_InOut(el, dir){
	if(dir == 'over'){
		if(hlDyn_OutRef != null)
			clearTimeout(hlDyn_OutRef);
		var mid = el.id.split('_')[4];
		var level = el.id.split('_')[1];
		var pid   = el.id.split('_')[3];
		var hasChildren = el.id.split('_')[2];
		el.className = el.className.replace('out', 'over');
		for(var i = level + 1; i < levels.length; i++){
			g_el(cntName + i).className = 'headLine_Dyn_Box_hidden';
		}
		if(hasChildren != 0){
			hl_Filter2(parseInt(level) + 1, mid);
			var pos = g_elP(el.id);
			var childCnt = g_el(cntName + (parseInt(level) + 1));
			childCnt.style.left = pos.left + el.offsetWidth;
			childCnt.style.top = pos.top;
			childCnt.className = 'headLine_Dyn_Box_visible';
		}
	}
	else{
		el.className = el.className.replace('over', 'out');
		hlDyn_OutRef = setTimeout('hl_Clear()', 600);
	}
}

function hl_Clear(){
	var cnt = null;
	for(var i = 1; i < levels; i++){
		cnt = g_el(cntName + i);
		if(cnt != null)
			cnt.className = 'headLine_Dyn_Box_hidden';
	}
}


//========================================================================//
//															MENU PATH																	//
//========================================================================//

var mp_OutRef = null;
var mp_Dyn_Cnt_Name = 'mp_dyn_box';

function mp_InOut(el, dir){
	if(dir == 'over'){
		el.className = el.className.replace('out', 'over');
		if(mp_OutRef != null)
			clearTimeout(mp_OutRef);
		var dynEl = g_el(mp_Dyn_Cnt_Name);
		var pos = g_elP(el.id);
		var pos2 = g_elP('gMainMenuPath');
		//dynEl.style.left = pos.left;
		//dynEl.style.top = pos.top + el.offsetHeight;
		// because main container of MenuPath has position:absolute
		dynEl.style.left = pos.left - pos2.left;
		dynEl.style.top = pos.top + el.offsetHeight - pos2.top;

		var elid = el.id.split('_')[2];
		var els = dynEl.getElementsByTagName('TR');
		var hasChildren = false;
		for(var i = 0; i < els.length; i++){
			if(elid == els[i].id.split('_')[1]){
				els[i].className = els[i].className.replace('hidden', 'out');
				els[i].className = els[i].className.replace('over', 'out');
				hasChildren = true;
			}
			else{
				els[i].className = els[i].className.replace('out', 'hidden');
				els[i].className = els[i].className.replace('over', 'hidden');
			}
		}
		if(hasChildren)
			dynEl.style.display = 'block';
		else
			dynEl.style.display = 'none';
	}
	else{
		el.className = el.className.replace('over', 'out');
		mp_Dyn_InOut(null, 'out');
	}
}

function mp_Dyn_InOut(el, dir){
	if(dir == 'over'){
		if(mp_OutRef != null)
			clearTimeout(mp_OutRef);
		var mpDynHolder = g_el(mp_Dyn_Cnt_Name);
		var els = mpDynHolder.getElementsByTagName('TR');
		for(var i = 0; i < els.length; i++){
			els[i].className = els[i].className.replace('over', 'out');
		}
		el.className = el.className.replace('out', 'over');
	}
	else{
		mp_OutRef = setTimeout('mp_Dyn_Clear()', 600);
	}
}

function mp_Dyn_Click(el){
	mp_Dyn_Clear();
	var els = el.getElementsByTagName('A');
	if(els.length > 0){
		window.location.href = els[0].href;
	}
}


function mp_Dyn_Clear(){
	mp_OutRef = null;
	if(g_el(mp_Dyn_Cnt_Name))
		g_el(mp_Dyn_Cnt_Name).style.display = 'none';
}

// =============================================================================//
//																		END MENU PATH															//
// =============================================================================//




// =============================================================================//
//																		SUB MENU 2																//
// =============================================================================//

var sm1CntName = 'sm1Children_';

function sm1_Open(id){
	var chEl = g_el(sm1CntName + id);
	if(chEl){
		var className = chEl.className;
		
		if(className == 'subMenu1_Children_visible')
			chEl.className = 'subMenu1_Children_hidden';
		else
			chEl.className = 'subMenu1_Children_visible';
	}
}





// VERTICAL 2
//var sm2CntName = 'sm2Children_';
var sm2CntName = 'smd_';
var sm2_OutRef = null;
var sm2_top = parseInt(4);
var sm2_left = parseInt(-2);

var smd_items = 'smd_items_';
var smd = 'smd_';


function sm_switch3(el, dir){
	if(dir){
		el.className = el.className.replace('out', 'over');
		if(sm2_OutRef != null)
			clearTimeout(sm2_OutRef);
			
		for(var i = 0; i < sm2LevelCount; i++){
			var cnt = g_el(smd + i);
			if(cnt)
				cnt.className = cnt.className.replace('visible', 'hidden');
		}
		var el3 = g_el(smd + 1)
		var el2 = g_el(smd_items + 1);
		var els = el2.getElementsByTagName('TABLE');
		var hasChildren = false;
		for(var i = 0; i < els.length; i++){
			if(els[i].id.split('_')[2] == el.id.split('_')[1]){
				hasChildren = true;
				els[i].className = (sm2_isSelected(els[i].id.split('_')[3])) ? 'smd_on_out' : 'smd_off_out';
			}
			else
				els[i].className = 'smd_item_hidden';
		}
		if(hasChildren){
			var pos = g_elP(el.id);
			el3.style.top = pos.top + sm2_top;
			el3.style.left = pos.left + el.offsetWidth + sm2_left;
			el3.className = el3.className.replace('hidden', 'visible');
		}
	}
	else{
		el.className = el.className.replace('over', 'out');
		sm2_OutRef = setTimeout('sm2_Clear()', 600);
	}
}

function sm2_isSelected(id){
	var res = false;
	for(var i = 0; i < sm2Levels.length; i++){
		if(sm2Levels[i] == id){
			res = true;
			break;
		}
	}
	return res;	
}

function sm2_VertClick(el){
	sm2_Clear();
	var els = el.getElementsByTagName('A');
	if(els.length > 0){
		window.location.href = els[0].href;
	}
}

function sm2_VertDynClick(el){
	sm2_Clear();
	var els = el.getElementsByTagName('A');
	if(els.length > 0){
		window.location.href = els[0].href;
	}
}

function sm2_Clear(){
	for(var i = 0; i < sm2LevelCount; i++){
		var cnt = g_el(smd + i);
		if(cnt)
			cnt.className = cnt.className.replace('visible', 'hidden');
	}
}


function sm2_DynInOut(el, dir){
	var props = el.id.split('_');
	var level = props[1];
	var pid   = props[2];
	var id    = props[3];
	
	if(dir == 'over'){
		if(sm2_OutRef != null)
			clearTimeout(sm2_OutRef);
			
		el.className = el.className.replace('out', 'over');
		

		for(var i = level + 1; i < sm2LevelCount; i++){
			var cnt = g_el(sm2CntName + i);
			if(cnt)
				cnt.className = cnt.className.replace('visible', 'hidden');
		}
		var el2 = g_el(sm2CntName + (parseInt(level) + 1));
		var els = el2.getElementsByTagName('DIV');
		var hasChildren = false;
		for(var i = 0; i < els.length; i++){
			if(els[i].id.split('_')[2] == el.id.split('_')[3]){
				hasChildren = true;
				els[i].className = (sm2_isSelected(els[i].id.split('_')[3])) ? 'subMenu2_Dyn_Item_sel_out' : 'subMenu2_Dyn_Item_out';
			}
			else
				els[i].className = 'subMenu2_Dyn_Item_hidden';
		}
		if(hasChildren){
			var pos = g_elP(el.id);
			el2.style.top = pos.top + sm2_top;
			el2.style.left = pos.left + el.offsetWidth + sm2_left;
			el2.className = el2.className.replace('hidden', 'visible');
		}

	}
	else{
		sm2_OutRef = setTimeout('sm2_Clear()', 600);
		el.className = el.className.replace('over', 'out');
	}
}


function smd_switch(el, dir){
	
	var props = el.id.split('_');
	var level = props[1];
	var pid   = props[2];
	var id    = props[3];
	
	if(dir){
		if(sm2_OutRef != null)
			clearTimeout(sm2_OutRef);
			
		el.className = el.className.replace('out', 'over');
		
		for(var i = level + 1; i < sm2LevelCount; i++){
			var cnt = g_el(smd + i);
			if(cnt && cnt.className.indexOf('hidden') == -1)
				cnt.className = cnt.className + '_hidden';
		}
		
		var el3 = g_el(smd + (parseInt(level) + 1));
		var el2 = g_el(smd_items + (parseInt(level) + 1));
		var els = el2.getElementsByTagName('TABLE');
		var hasChildren = false;
		for(var i = 0; i < els.length; i++){
			if(els[i].id.split('_')[2] == el.id.split('_')[3]){
				hasChildren = true;
				els[i].className = (sm2_isSelected(els[i].id.split('_')[3])) ? 'smd_on_out' : 'smd_off_out';// 'subMenu2_Dyn_Item_sel_out' : 'subMenu2_Dyn_Item_out';
			}
			else
				els[i].className = 'smd_item_hidden';
		}
		if(hasChildren){
			var pos = g_elP(el.id);
			el3.style.top = pos.top + sm2_top;
			el3.style.left = pos.left + el.offsetWidth + sm2_left;
			el3.className = 'smd_cnt_visible';
		}

	}
	else{
		sm2_OutRef = setTimeout('sm2_Clear()', 600);
		el.className = el.className.replace('over', 'out');
	}
}


// =============================================================================//
//																END	SUB MENU 2																//
// =============================================================================//



// =============================================================================//
//																	MIXED																				//
// =============================================================================//


function sm_mixed2(el, dir){
	if(dir){
		el.className = el.className.replace('out', 'over');
		if(sm2_OutRef != null)
			clearTimeout(sm2_OutRef);
			
		for(var i = 0; i < sm2LevelCount; i++){
			var cnt = g_el(smd + i);
			if(cnt)
				cnt.className = cnt.className.replace('visible', 'hidden');
		}

		var el2 = g_el(smd_items + 2);
		var els = el2.getElementsByTagName('TABLE');
		var hasChildren = false;
		for(var i = 0; i < els.length; i++){
			if(els[i].id.split('_')[2] == el.id.split('_')[1]){
				hasChildren = true;
				els[i].className = (sm2_isSelected(els[i].id.split('_')[3])) ? 'smd_on_out' : 'smd_off_out';
			}
			else{
				els[i].className = 'smd_item_hidden';
			}
		}
		
		if(hasChildren){
			var pos = g_elP(el.id);
			var el3 = g_el(smd + 2)
			el3.style.top = pos.top + sm2_top;
			el3.style.left = pos.left + el.offsetWidth + sm2_left;
			el3.className = el3.className.replace('hidden', 'visible');
		}
	}
	else{
		el.className = el.className.replace('over', 'out');
		sm2_OutRef = setTimeout('sm2_Clear()', 600);
	}
}


// =============================================================================//
//																END	MIXED																			//
// =============================================================================//



// =============================================================================//
//														'FORM FUNCTIONALITY'															//
// =============================================================================//
var pCntName = 'ucContent_';

function TrimString(sInString) {
	sInString = sInString.replace( /^\s+/g, "" );// strip leading
	return sInString.replace( /\s+$/g, "" );// strip trailing
}

function supressEnter(ev){
	if(!ev) var ev = window.event;
	if(ev && ev.keyCode == 13){
		return false;
	}
	return true;
}

function superCheck(){
	var isOk = true;
	
	try
	{
		
	for(var i = 0; i< checkItems.length; i++){
		var el = g_el(pCntName + 'f_err' + checkItems[i].id);
		if(el) el.style.visibility = 'hidden';
	}
	for(var i = 0; i< checkItems.length; i++){
		var obj = checkItems[i];
		switch(obj.type){
			case 2:
				var el = g_el(pCntName + 'f_tb' + obj.id);
				if(el && TrimString(el.value).length == 0){
					isOk = false;
					var el = g_el(pCntName + 'f_err' + obj.id).style.visibility = 'visible';
				}
				break;
			case 3:
				var isChecked = false;
				for(var j=0; j<obj.amount; j++){
					if(g_el(pCntName + 'f_chbl' + obj.id + '_' + j).checked)
						isChecked = true;
				}
				if(!isChecked){
					isOk = false;
					var el = g_el(pCntName + 'f_err' + obj.id).style.visibility = 'visible';
				}
				break;
			case 4:
				var isChecked = false;
				for(var j=0; j<obj.amount; j++){
					if(g_el(pCntName + 'f_rbl' + obj.id + '_' + j).checked)
						isChecked = true;
				}
				if(!isChecked){
					isOk = false;
					var el = g_el(pCntName + 'f_err' + obj.id).style.visibility = 'visible';
				}
				break;
			case 5:
				var el = g_el(pCntName + 'f_ddl' + obj.id);
				//el.selectedIndex;
				break;
			case 6:
				var el = g_el(pCntName + 'f_ta' + obj.id);
				if(el && TrimString(el.value).length == 0){
					isOk = false;
					var el = g_el(pCntName + 'f_err' + obj.id).style.visibility = 'visible';
				}
				break;
			case 7:
				var el = g_el(pCntName + 'f_fi' + obj.id);
				if(el && TrimString(el.value).length == 0){
					isOk = false;
					var el = g_el(pCntName + 'f_err' + obj.id).style.visibility = 'visible';
				}
				break;
		}
	}
	
	}
	catch(exception)
	{
	}
	
	return isOk;
}



// ==================================================== //
	
var elItems;
var ls_TOutRef;

function ls_switch(el, dir){
	if(dir){
		ls_clear();
		el.className = el.className.replace('_out', '_over');
		ls_getholder().className = ls_getholder().className.replace('_off', '_on');
	}
	else{
		el.className = el.className.replace('_over', '_out');
		ls_TOutRef = setTimeout('ls_hide()', 100);	
	}
}

function ls_hide(){
	ls_clear();		
	ls_getholder().className = ls_getholder().className.replace('_on', '_off');
}

function ls_clear(){
	if(ls_TOutRef){	clearTimeout(ls_TOutRef); ls_TOutRef = null; }
}

function ls_getholder(){
	if(!elItems)
		elItems = g_el('ls_items');
	
	return elItems;
}

function ls_click(el){
	ls_hide();
	window.location.href = el.getElementsByTagName('A')[0].href;
}
	




