buildframework/helium/sf/java/metadata/src/templates/macro/expand3.js
changeset 628 7c4a911dc066
parent 588 c7c26511138f
child 629 541af5ee3ed9
equal deleted inserted replaced
588:c7c26511138f 628:7c4a911dc066
     1 function __ToggleNode( divNode )
       
     2 {
       
     3   var cntNode = document.getElementById(divNode.id.replace(/Img(.+)/, 'Content$1'));
       
     4   
       
     5   if(!cntNode) return;
       
     6   
       
     7   if(cntNode.style.display == 'none')
       
     8   {
       
     9     cntNode.style.display = 'block';
       
    10     divNode.style.background = divNode.style.background.replace(/open./, 'close.');
       
    11   }
       
    12   else
       
    13   {
       
    14     cntNode.style.display = 'none';
       
    15     divNode.style.background = divNode.style.background.replace(/close./, 'open.');
       
    16   }
       
    17   
       
    18   return cntNode;
       
    19 }
       
    20 
       
    21 function __UpdateNode( divNode, dsp )
       
    22 {
       
    23 	var cntNode = document.getElementById(divNode.id.replace(/Img(.+)/, 'Content$1'));
       
    24 	
       
    25 	if(!cntNode) return;
       
    26 	
       
    27 	cntNode.style.display = dsp;
       
    28 	if(dsp == 'block')
       
    29 		divNode.style.background = divNode.style.background.replace(/open./, 'close.');
       
    30 	else
       
    31 		divNode.style.background = divNode.style.background.replace(/close./, 'open.');
       
    32 	
       
    33 	return cntNode;
       
    34 }
       
    35 
       
    36 function __ToggleChilds( divNode )
       
    37 {
       
    38 	var cntNode = __ToggleNode(divNode);
       
    39 	if(!cntNode) return;
       
    40 	var childs  = cntNode.getElementsByTagName('div');
       
    41 	
       
    42 	for(var i = 0; i != childs.length; ++i)
       
    43 		if(/Img/.test(childs[i].id))
       
    44 			__ToggleChilds(childs[i]);
       
    45 }
       
    46 
       
    47 function __UpdateChilds( divNode, dsp )
       
    48 {
       
    49 	var cntNode = __UpdateNode(divNode, dsp);
       
    50 	if(!cntNode) return;
       
    51 	var childs  = cntNode.getElementsByTagName('span');
       
    52 	
       
    53 	for(var i = 0; i != childs.length; ++i)
       
    54 		if(/Img/.test(childs[i].id))
       
    55 			__UpdateChilds(childs[i], dsp);
       
    56 }
       
    57 
       
    58 function ToggleNode( id )
       
    59 { __ToggleNode(document.getElementById(id)); }
       
    60 
       
    61 function ShowContent( id )
       
    62 { __UpdateNode(document.getElementById(id), 'block'); }
       
    63 
       
    64 function HideContent( id )
       
    65 { __UpdateNode(document.getElementById(id), 'none'); }
       
    66 
       
    67 function ShowChilds( id )
       
    68 { __UpdateChilds(document.getElementById(id), 'block'); }
       
    69 
       
    70 function HideChilds( id )
       
    71 { __UpdateChilds(document.getElementById(id), 'none'); }