/**
 * @author Timo 9.09.2005
 */
menu.view=new Object();//FINAL, NO NEED FOR NEW INSTANCES
/**
 */
menu.view.switchMom=function(s_id){
	var e_lement=document.getElementById(s_id);
	var b_state=menu.view.isVisible(s_id);
	if(b_state==true){
		menu.view.closeDiv(e_lement);
	}else{
		menu.view.openDiv(e_lement);
	}//if(e_lement.className
}//switchMom

menu.view.switchKids=function(eImg, i_divId){
	if(eImg==null){eImg=document.getElementById(menu.html.S_SWITCH_KID_ID+i_divId);}
	if(i_divId==null){i_divId=eImg.id.replace(menu.html.S_SWITCH_KID_ID,'');}
	if(eImg==null){return false;}
	
	var e_wombDiv=menu.view.getWombDiv(i_divId);
	menu.view.fixMissingKids(e_wombDiv);
	if(eImg.className==menu.html.img.PLUS||eImg.className==menu.html.img.PLUS_HOOK){
		menu.view.openKids(eImg,e_wombDiv);
	}else{
		menu.view.closeKids(eImg,e_wombDiv);
	}//if(eImg.src.indexOf(menu.html.img.PLUS
}//switchKids

menu.view.closeKids=function(eImg,e_wombDiv){
		menu.view.closeDiv(e_wombDiv);
		menu.view.toPlus(eImg);
}//closeKids

menu.view.openKids=function(eImg,e_wombDiv){
		menu.view.openDiv(e_wombDiv);
		menu.view.toMinus(eImg);
}//openKids

/**
 * Add subordinated items, which have not been created yet.
 */
menu.view.fixMissingKids=function(e_wombDiv){
	var innerHTMLlength=e_wombDiv.innerHTML.length;
	if(innerHTMLlength==0){
		menu.view.addAllKids(e_wombDiv);
	}else{
		menu.view.addMissingKids(e_wombDiv);
	}
}//fixMissingKids

/**
 * Add subordinated items, which have not been created yet.
 */
menu.view.addAllKids=function(e_wombDiv){
	var index=e_wombDiv.id.replace(menu.html.S_WOMB_ID,'');
	var sHtml=new MenuBuilder().insertKids(menu.tree._aNodes[index]);
	e_wombDiv.innerHTML=sHtml;
}//addAllKids

/**
 * Add subordinated items, which have not been created yet.
 */
menu.view.addMissingKids=function(e_wombDiv){
	// if menu.tree._aNodes is not used. @see help_English.html
	if(menu.html==null||menu.tree==null||menu.tree._aNodes==null){return;}
	
	//@see MenuBuilder.createGenerations
	menu.search.a_matches=null;
	menu.search.a_visible=null;
	
	var sHtml=e_wombDiv.innerHTML;
	var index=e_wombDiv.id.replace(menu.html.S_WOMB_ID,'');
	var a_parentNode=menu.tree._aNodes[index];
	var i_wend=a_parentNode.length;
	var i_while=0;
	while(i_while<i_wend){
		var a_kidNode=a_parentNode[i_while];
		var i_kidId=a_kidNode._sId;
		var s_momId=menu.html.S_MOM_ID+i_kidId;
		var parentDiv=document.getElementById(s_momId);
		if(parentDiv==null){
			sHtml=sHtml+new MenuBuilder().createGenerations(menu.tree._aNodes[i_kidId]);
		}
		i_while=i_while+1;
	}
	e_wombDiv.innerHTML=sHtml;
}//addMissingKids
/**
 * Get a div element, which contains the kid branches.
 */
menu.view.getWombDiv=function(i_divId){
	var s_divId=menu.html.S_WOMB_ID+i_divId;
	var e_wombDiv=document.getElementById(s_divId);
	return e_wombDiv;
}//getWombDiv
/**
 * 0help.js
 */
menu.view.switchAllKids=function(b_open){
	if(b_open==true){
		Log.domTool.useByTag( document.getElementById(page.id._sMenuId), menu.view.openAll, 'span');
	}else{
		Log.domTool.useByTag( document.getElementById(page.id._sMenuId), menu.view.closeAll, 'span');
	}//if(b_open
}//switchAllKids
/**
 */
menu.view.closeAll=function(eImg){
	if(eImg.className==menu.html.img.MINUS||eImg.className==menu.html.img.MINUS_HOOK){task.switchKids(eImg);}
}//closeAll
/**
 */
menu.view.openAll=function(eImg){
	if(eImg.className==menu.html.img.PLUS||eImg.className==menu.html.img.PLUS_HOOK){task.switchKids(eImg);}
}//openAll
/**
 */
menu.view.closeDiv=function( e_Div){
	if(e_Div==null){return false;}
	e_Div.className=menu.html.S_CLASS_NONE;
}//closeDiv
/**
 */
menu.view.openDiv=function( e_Div){
	if(e_Div==null){return false;}
	e_Div.className=menu.html.S_CLASS_BLOCK;
}//openDiv
/**
 */
menu.view.toPlus=function(eImg){
	if(eImg==null){return false;}
	if(eImg.className==menu.html.img.MINUS){
		eImg.className=menu.html.img.PLUS;
	}else if(eImg.className==menu.html.img.MINUS_HOOK){
		eImg.className=menu.html.img.PLUS_HOOK;
	}//if(eImg
}//toPlus
/**
 */
menu.view.toMinus=function(eImg){
	if(eImg==null){return false;}
	if(eImg.className==menu.html.img.PLUS){
		eImg.className=menu.html.img.MINUS;
	}else if(eImg.className==menu.html.img.PLUS_HOOK){
		eImg.className=menu.html.img.MINUS_HOOK;
	}//if(eImg
}//toMinus
/**
 */
menu.view.isVisible=function(s_id){
	try{
		var eTarget=document.getElementById(s_id);
		var b_state=false;
		if(eTarget.className==menu.html.S_CLASS_BLOCK){
			b_state=true;
		}//if(eTarget.className==menu.html.S_CLASS_BLOCK
		return b_state;
	}catch(e_rror){Log.showExeption( e_rror, 'menu.view.isVisible');}
}//isVisible
/**
 *
 */
menu.view.switchMenu=function(eButton){
	menu.initialize();//only once
	var eTarget=menu.view.getWombDiv(0);
	if(Log.domTool.isHidden(eTarget)){
		Log.domTool.show(eTarget);
		if(PhraseBook.phraseBooks[PhraseBook.currentId]._aValue.length!=0){
			eButton.value=PhraseBook.phraseBooks[PhraseBook.currentId]._aValue[5];
		}
	}else{
		Log.domTool.hide(eTarget);
		if(PhraseBook.phraseBooks[PhraseBook.currentId]._aValue.length!=0){
			eButton.value=PhraseBook.phraseBooks[PhraseBook.currentId]._aValue[4];
		}
	}//if
}//switchMenu
