var bNavigator = false;
var bIE = false;
var bDOM = false;
    if( document.getElementById ){
        bDOM = true;
    }else{
        if( document.all ){
            bIE = true;
        }
    }

if( !bDOM && !bIE ){
    bNavigator = true;
}

if(!myTechmenu){
    var myTechmenu = 'ueberblick';
}
var mystandortnr = 1;

if(!mypersonnr){
    var mypersonnr = 3;
}

if(!img){
    var img = new Image();
}

if(!myLang){
    var myLang = 'de';
}

if(!myfunc){
    var myfunc = '';
}

if(!myTimeout){
    var myTimeout = 0;
}

if(!aktiv_menu){
    var aktiv_menu;
}

if(!aktiv_submenu){
    var aktiv_submenu;
}

if(!layer){
    var layer;
}

if(!subsubmenuLayer){
    var subsubmenuLayer;
}

if(!activemenuid){
    var activemenuid = '';
}

if(!myopener){
var myopener;
}

function showObject( object, bShow ){
    if( object ){
        if( bShow == 0){
            if (bNavigator) {
                object.visibility = "hide";
            }else{
                if( bIE || bDOM ){
                    object.style.visibility = "hidden";
                }
            }
        }else{
            if (bNavigator) {
                object.visibility = "show";
            }
            else {
                if( bIE || bDOM ){
                    object.style.visibility = "visible";
                }
            }
        }
    }
}
function getLayerById( id ){
    var object;
    if( bNavigator ){
        object = document.layers[id];
    }else{
        if( bIE ){
            object = document.all[id];
        }else{
            if( bDOM ){
                object = document.getElementById(''+id+'');
            }
        }
    }
    return object;
}

function submenuOver (myid, lang){
    var img;

    if(bNavigator){
        img = document.layers['submenu_'+activemenuid].document.images[myid];
    }else{
        img = document.images[myid];
    }

    img.src = '/images/menu/'+ myid +'_o.'+ lang +'.gif';

    showObject (img, 1);

    // altes Subsubmenu ausblenden
    if( subsubmenuLayer){
        if( subsubmenuLayer.name != 'sub' + myid){
            showObject (subsubmenuLayer, 0);
            subsubmenuLayer = "";
            clearTimeout( myTimeout);
            myTimeout = 0;
        }
    }


    // neues Subsubmenu zeigen
    if(bNavigator){
        subsubmenuLayer = document.layers['sub' + myid];
    }else{
        subsubmenuLayer = document.all['sub' + myid];
    }
    showObject (subsubmenuLayer, 1);

    // damit mouseMove nicht sofort das aktiven Menu ausblendet
    // on_menu = 1;
}

function menuOver(myid, lang){

    var img;

    activemenuid = myid;

    if(bNavigator){
        img = document.layers['menu'].document.images[myid];
    }else{
        img = document.images[myid];
    }

    img.src = '/images/menu/'+ myid +'_o.'+ lang +'.gif';

    showObject (img, 1);

    // altes Submenu ausblenden
    if( layer){
        if(layer.name != 'layer' + myid){
            showObject (layer, 0);
            layer = "";
            clearTimeout( myTimeout);
            myTimeout = 0;
        }
    }

    // neues Submenu zeigen
    if(bNavigator){
        layer = document.layers['submenu_' + myid];
    }else{
        layer = document.all['submenu_' + myid];
    }
    showObject (layer, 1);

    // damit mouseMove nicht sofort das aktiven Menu ausblendet
    // on_menu = 1;
}

function submenuOut (myid, lang){
    var img;

    if(bNavigator){
        img = document.layers['menu'].document.images[myid];
    }else{
        img = document.images[myid];
    }

    img.src = "/images/menu/" + myid + "." + lang + ".gif";

    if( layer){
        if( layer.name == 'submenu_' + myid){
            // myTimeout = setTimeout("LayerOut()",500);
            myTimeout = setTimeout("showObject(layer, 0)",1000);
            // on_menu = 0;
        }
        // showObject (layer, 0);
    }
}

function menuOut (myid, lang){
    var img;

    if(bNavigator){
        img = document.layers['menu'].document.images[myid];
    }else{
        img = document.images[myid];
    }

    img.src = "/images/menu/" + myid + "." + lang + ".gif";

    if( layer){
        if( layer.name == 'submenu_' + myid){
            // myTimeout = setTimeout("LayerOut()",500);
            myTimeout = setTimeout("showObject(layer, 0)",500);
            // on_menu = 0;
        }
        // showObject (layer, 0);
    }
}


var aktivesMenuId;
var aktivesSubmenuId;

function MenuClick (menuid, href){
    var doc;
    if( bNavigator)
        doc = document.layers['menuLayer'].document;
    else
        doc = document;

    if( aktivesMenuId && aktivesMenuId != menuid){
        eval('ro_img_menu' + aktivesMenuId + '_aktiv = 0;');
        ro_imgNormal (doc, 'ro_img_menu' + aktivesMenuId );
        if( aktivesSubmenuId){
            if( bNavigator)
                docSubmenuOld = document.layers['submenu_' + aktivesMenuId].document;
            else
                docSubmenuOld = document;
            eval('ro_img_submenu' + aktivesMenuId + aktivesSubmenuId + '_aktiv = 0;');
            ro_imgNormal (docSubmenuOld, 'ro_img_submenu' + aktivesMenuId + aktivesSubmenuId);
        }
    }

    eval('ro_img_menu' + menuid + '_aktiv = 1;');
    ro_imgNormal (doc, 'ro_img_menu' + menuid);

    aktivesMenuId = menuid;

    showPage(menuid, 1, href);
}

function SubmenuClick(mywindow, menuid, submenuid, href){
    var doc;
    if( bNavigator){
        docMenu = document.layers['menuLayer'].document;
        if(aktivesMenuId)
            docSubmenuOld = document.layers['submenu_' + aktivesMenuId].document;
        docSubmenuNew = document.layers['submenu_' + menuid].document;
    }else{
        docMenu = document;
        docSubmenuOld = document;
        docSubmenuNew = document;
    }

    if( aktivesMenuId && aktivesMenuId != menuid){
        eval('ro_img_menu' + aktivesMenuId + '_aktiv = 0;');
        ro_imgNormal (docMenu, 'ro_img_menu' + aktivesMenuId );
    }
    if( aktivesSubmenuId){
        eval('ro_img_submenu' + aktivesMenuId + aktivesSubmenuId + '_aktiv = 0;');
        ro_imgNormal (docSubmenuOld, 'ro_img_submenu' + aktivesMenuId + aktivesSubmenuId);
    }

    eval('ro_img_menu' + menuid + '_aktiv = 1;');
    ro_imgNormal (docMenu, 'ro_img_menu' + menuid);
    eval('ro_img_submenu' + menuid + submenuid + '_aktiv = 1;');
    ro_imgNormal (docSubmenuNew, 'ro_img_submenu' + menuid + submenuid);

    aktivesMenuId = menuid;
    aktivesSubmenuId = submenuid;

    showPage(menuid, submenuid, href);
}

function showPage(menuid, submenuid, href){
    top.frames['uhde_bottom'].location.href = href;

    if(bNavigator){
        myPict = top.frames['uhde_left'].document.layers['NavPict'].document.images['Pageimage'];
    }else{
        myPict = top.frames['uhde_left'].document.all['Pageimage'];
    }
    myPict.src = '/images/pageimage/nav'+menuid+'pict.gif';
    showObject (myPict, 1);

    if(bNavigator){
        myTitle = top.frames['uhde_top'].document.layers['TitlePict'].document.images['myPageTitle'];
    }else{
        myTitle = top.frames['uhde_top'].document.all['myPageTitle'];
    }
    myTitle.src = '/images/title/nav'+menuid+''+submenuid+'head.gif';
    showObject(myTitle, 1);
}

function LayerOver(){
    clearTimeout(myTimeout);
    myTimeout = 0;
}

function LayerOut(){
    if( layer){
        getLayersCords(layer);

        var x, y;
        if(bNavigator){
            x = lastX;
            y = lastY;
        }else
            if(bIE){
                if(window.event){
                    x = window.event.x;
                    y = window.event.y;
                }else{
                    x = lastX;
                    y = lastY;
                }
                if(x < 0 && y < 0){
                    x = layerLeft;
                    y = layerTop;
                }
            }

        if(x < layerLeft || x > layerRight || y < layerTop || y > layerBottom){
            window.status = "LayerOut: " + x + "," + y + "("  + layerLeft + "," + layerTop + "," + layerRight + "," + layerBottom + ")";

            showObject (layer, 0);
            layer = "";
            if( myTimeout){
                clearTimeout( myTimeout);
                myTimeout = 0;
            }
        }
    }
}

var layerLeft, layerTop, layerRight, layerBottom, lastX, lastY;
function getLayersCords( layer){
    if( bNavigator){
        layerLeft = layer.left + layer.clip.left;
        layerTop = layer.top + layer.clip.top;
        layerRight = layerLeft + layer.clip.width;
        layerBottom = layerTop + layer.clip.height;
    }else
        if( bIE){
            layerLeft = Math.round(layer.style.left.substring(0, layer.style.left.indexOf( "px")));
            layerTop = Math.round(layer.style.top.substring(0, layer.style.top.indexOf( "px"))) - document.body.scrollTop;
            layerRight = layerLeft + Math.round(layer.style.width.substring(0, layer.style.width.indexOf( "px")));
            layerBottom = layerTop + Math.round(layer.style.height.substring(0, layer.style.height.indexOf( "px")));
        }
}

function mouseMove(evnt){
    if(layer){
        if(window != top.uhde_left){
            showObject(layer, 0);
            layer = "";
            if(myTimeout){
                clearTimeout(myTimeout);
                myTimeout = 0;
            }
        }else{
            if( bNavigator){
                lastX = evnt.pageX;
                lastY = evnt.pageY;
            }
            else if(bIE){
                lastX = window.event.x;
                lastY = window.event.y;
            }

            getLayersCords( layer);

            if(lastX < layerLeft || lastX > layerRight || lastY < layerTop || lastY > layerBottom){
                if(myTimeout == 0 && ! on_menu){
                    showObject (layer, 0);
                    layer = "";
                    if(myTimeout){
                        clearTimeout( myTimeout);
                        myTimeout = 0;
                    }
                    window.status = "mouseMove: " + lastX + "," + lastX + "("  + layerLeft + "," + layerTop + "," + layerRight + "," + layerBottom + ")";
//                    alert(lastX + "," + lastX + "("  + layerLeft + "," + layerTop + "," + layerRight + "," + layerBottom + ")");
                }
            }
            else{
                if( myTimeout){
                    clearTimeout( myTimeout);
                    myTimeout = 0;
                }
            }
        }
    }
}

// if( bNavigator){
    // document.captureEvents(Event.MOUSEMOVE);
// }
// document.onmousemove = mouseMove;


//
// Die Funktionen ro_imgNormal und ro_imgOver werden in rollover.wml benutzt
//
function ro_imgNormal( doc, imgName){
    if(doc.images){
//      alert(doc.images.length + " " + doc.images[0].src);
        if( eval(imgName + '_aktiv') )
            doc[imgName].src = eval(imgName + '_a_src');
         else
            doc[imgName].src = eval(imgName + '_n_src');
        self.status = '';
    }
}
function ro_imgOver( doc, imgName, descript){
    if(doc.images){
        doc[imgName].src = eval(imgName + '_o_src');
        self.status = descript;
    }
}

function OpenSitemap(myLang){
    window.open("/neu/sitemap."+myLang+".html","sitemap","toolbar=no,scrollbars=yes,directories=no,menubar=no,width="+320+",height="+600+",dependent=yes");
}

function setPage(page, menunr, submenunr){
    window.opener.open('/neu'+page, 'uhde_bottom');
    window.opener.focus();

    if(bNavigator){
        myPict = window.opener.top.frames['uhde_left'].document.layers['NavPict'].document.images['Pageimage'];
    }else{
        myPict = window.opener.top.frames['uhde_left'].document.all['Pageimage'];
    }
    myPict.src = '/images/pageimage/nav'+menunr+'pict.gif';
    showObject (myPict, 1);

    if(bNavigator){
        myTitle = window.opener.top.frames['uhde_top'].document.layers['TitlePict'].document.images['myPageTitle'];
    }else{
        myTitle = window.opener.top.frames['uhde_top'].document.all['myPageTitle'];
    }
    myTitle.src = '/images/title/nav'+menunr+''+submenunr+'head.gif';
    showObject (myTitle, 1);
}

function tmp(){
}

function rotateRefProj( myProjNumber ){
    if( myProjNumber == countProj ){
      myNumber = 1;
    }else{
      myNumber++;
    }


    myText = getLayerById( 'text' + myProjNumber );
    myImg = getLayerById( 'bild' + myProjNumber );

    showObject( myText, 0 );
    showObject( myImg, 0 );

    myText = getLayerById( 'text' + myNumber );
    myImg = getLayerById( 'bild' + myNumber );

    showObject( myText, 1 );
    showObject( myImg, 1 );

    setTimeout( "rotateRefProj(myNumber)", 5000 );
}

function showAddress(myNumber){
  var myObject='';

  if (!myNumber) {
    var contact_url = document.URL;
    var location_param = /location=(.*)/;
    var parameter = location_param.exec(contact_url);
    if (!parameter) {
      //alert("no Parameter");
      myNumber = '';
    } else {
      //alert("Parameter: " + parameter[1]);
      myNumber = parameter[1];
    }
  }
  //alert (myNumber);
  if( mystandortnr ){
    myObject=getLayerById('location_info_'+mystandortnr);
    showObject( myObject, 0 );
  }
  mystandortnr = myNumber;
  myObject=getLayerById('location_info_'+mystandortnr);
  showObject( myObject, 1 );
}

function showAddress_old(myNumber){
  var myObject;

  if( mystandortnr ){
    myObject=getLayerById('location_info_'+mystandortnr);
  }
  else
    myObject=getLayerById('location_info');
  showObject( myObject, 0 );

  mystandortnr = myNumber;

  myObject=getLayerById('location_info_'+mystandortnr);
  showObject( myObject, 1 );
}

function change_image_leistung(myPictNumber) {

  if (myPictNumber == 7){
    myNextNumber = 1;
  } else {
    myNextNumber = myPictNumber + 1;
  }

  myImage = getImage('leistung');
  //myImage.src = '/images/unternehmen/leistung'+myPictNumber+'.gif';
  showObject(myImage, 0);

  myImage.src = '/images/unternehmen/leistung'+myNextNumber+'.gif';
  showObject(myImage, 1);

  setTimeout ("change_image_leistung(myNextNumber)",2500);
}

function change_image_homepage(myPictNumber, lang) {
myLang = lang
  if (myPictNumber == 9){
    myNextNumber = 7;
  } else {
    if (myPictNumber == 6){
      myNextNumber = 4;
    } else {
      if (myPictNumber == 3){
        myNextNumber = 1;
      } else {
        myNextNumber = myPictNumber + 1;
      }
    }
  }

  myImage = getImage('pageimage');
  showObject(myImage, 0);

  myImage.src = '/images/page_images/noflash-image-home-'+myNextNumber+'.'+myLang+'.jpg';
  showObject(myImage, 1);

  setTimeout ("change_image_homepage(myNextNumber, myLang)",3500);
}

function showPerson(myNumber) {
  if(bNavigator){
      myText = document.layers['person'+mypersonnr];
  } else {
      myText = document.all['person'+mypersonnr];
  }
  showObject(myText, 0);

  mypersonnr = myNumber;

  if(bNavigator){
      myText = document.layers['person'+mypersonnr];
  } else {
      myText = document.all['person'+mypersonnr];
  }
  showObject(myText, 1);
}

function mapclick() {
}

function getObject(id) {
  if( bNavigator) {
    myObject = document[id];
  }
  if (bIE) {
    myObject = document.all[id];
  }
  if (bDOM) {
    myObject = document.getElementById(id);
  }
  return myObject;
}

function getImage(id) {
  if( bNavigator) {
    myImage = document[id];
  }
  if (bIE) {
    myImage = document.all[id];
  }
  if (bDOM) {
    myImage = document.images[id];
  }
  return myImage;
}

function techlinkover(menuname, lang) {
  if (menuname != myTechmenu) {
    myObject = getObject(menuname);
    showObject(myObject, 0);
    myObject.src = '/images/kompetenzen/techmenu/'+menuname+'_o.'+lang+'.gif';
    showObject(myObject, 1);
  }
}

function techlinkout(menuname, lang) {
  if (menuname != myTechmenu) {
    myObject = getObject(menuname);
    showObject(myObject, 0);
    myObject.src = '/images/kompetenzen/techmenu/'+menuname+'.'+lang+'.gif';
    showObject(myObject, 1);
  }
}

function techlinkclick(menuname, lang) {
  myObject = getObject(myTechmenu);
  showObject(myObject, 0);
  myObject.src = '/images/kompetenzen/techmenu/'+myTechmenu+'.'+lang+'.gif';
  showObject(myObject, 1);

  myTechmenu = menuname;
  myObject = getObject(myTechmenu);
  showObject(myObject, 0);
  myObject.src = '/images/kompetenzen/techmenu/'+myTechmenu+'_a.'+lang+'.gif';
  showObject(myObject, 1);
}

function showParent(linkname) {
  self.top.opener.top.location.href = linkname;
  self.top.opener.top.focus();
}
/*
function getLayerById( id ){
    var object;
    if( bNavigator ){
        object = document.layers[id];
    }else{
        if( bIE ){
            object = document.all[id];
        }else{
            if( bDOM ){
                object = document.getElementById(''+id+'');
            }
        }
    }
//alert(object)
    return object;
}
*/
function up() {
    self.location.href='#oben';
}

var myNumber=1;

function showProject(myLang){
/*
  if( myNumber ){
    i = (myNumber == 1 ? 5 : myNumber-1);
  }else{
    i = 0;
  }
*/
//  window.location.href = '/embperl/referenzprojekte2_c.'+myLang+'.epl?pstamp='+ pstamp[i];
//alert('/embperl/redirect.'+myLang+'.epl?/embperl/referenzprojekte2_c.'+myLang+'.epl?pstamp='+ pstamp[i]);
  //window.top.location.href = '/embperl/redirect.'+myLang+'.epl?/embperl/referenzprojekte2_c.'+myLang+'.epl?pstamp='+ pstamp[myNumber-1];
  window.location.href = '/embperl/redirect.'+myLang+'.epl?/kompetenzen/referenzprojekte/referenzprojekte2_c.'+myLang+'.epl?pstamp='+ pstamp[myNumber-1];
}

function to_old_win(url, myLang)
{
    homepage.location.href = '/embperl/redirect.'+myLang+'.epl?' + url;
    homepage.focus();
    //myopener.location.href = '/embperl/redirect.'+myLang+'.epl?' + url;
    //myopener.focus();
}

function openParent (url)
{
    self.opener.top.location.href=url;
    //opener.focus();
}

function switchPopup(lang) 
{
  window.close();
  popup1 = window.open('popup1.'+lang+'.html','popup1','menubar=no, locationbar=no, width=400, height=400');
  popup1.focus();
}

function startTimer(level)
{
 if (level == 'menu') {
  myTimeout = setTimeout("showObject(getLayerById(aktiv_menu), 0)",500);
 } else {
  myTimeout = setTimeout("showObject(getLayerById(aktiv_submenu), 0);showObject(getLayerById(aktiv_menu), 0)",1000);
 }
}

function stopTimer()
{
 if (myTimeout != 0) {
  clearTimeout( myTimeout);
  myTimeout = 0;
 }
}

function m_over(menu_nr) {
  stopTimer();
  showObject(getLayerById(aktiv_submenu), 0);
  showObject(getLayerById(aktiv_menu), 0);
  showObject(getLayerById('m'+menu_nr), 1);
  aktiv_menu = 'm'+menu_nr;
}

function m_out() {
  startTimer('menu');
}

function sm_over(submenu_nr) {
  stopTimer();
  showObject(getLayerById(aktiv_submenu), 0);
  showObject(getLayerById('m'+submenu_nr), 1);
  aktiv_submenu = 'm'+submenu_nr;
}

function sm_out() {
  startTimer('submenu');
}

function showSubmenu() {
}

function setOpener()
{
    myopener = top.opener.top;
}

function showExecutive (id) {
  if (id) {
//    HideDescription = getObject ("executive_description");
//    showObject(HideDescription, 1);

//alert(id);
    for(var i = 1; i <= 9; i++) {
      if (i != id) {
        ShowExecutiveBlende = getObject ("executive_blende"+i);
        showObject(ShowExecutiveBlende, 1);
	HideDescription = getObject ("executive_description"+i);
	showObject(HideDescription, 0);
	HideName = getObject ("executive_name"+i);
	showObject(HideName, 0);
	HideImage = getObject ("executive_image"+i);
	showObject(HideImage, 0);
      } 
      else {
        HideExecutiveBlende = getObject ("executive_blende"+i);
        showObject(HideExecutiveBlende, 0);
   	ShowDescription = getObject ("executive_description"+i);
	showObject(ShowDescription, 1);
   	ShowName = getObject ("executive_name"+i);
	showObject(ShowName, 1);
   	ShowImage = getObject ("executive_image"+i);
	showObject(ShowImage, 1);
      }
    }
  }
/*
  else {
    HideExecutiveBlende = getObject ("executive_blende1");
    showObject(HideExecutiveBlende, 0);
    showDescription = getObject ("executive_description1");
    showObject(ShowDescription, 1);
    for(var i = 2; i <= 9; i++) {
        HideExecutiveBlende = getObject ("executive_blende"+i);
        showObject(HideExecutiveBlende, 1);
	HideDescription = getObject ("executive_description"+i);
	showObject(HideDescription, 0);
    }
  }
*/
}

function switchLanguageTo (destLang) {
  /* alert ("switchLanguageTo mit Param: "+destLang); */
  var dieseDatei = document.URL;
  var Suche = /^(.*\.)(de|en)(\..*)$/;
  var showURL;
  if (showURL = Suche.exec(dieseDatei)) {
    location.href = showURL[1] + destLang + showURL[3];
  } else {
    location.href = '/index.' + destLang + '.epl';
  }
}

function toPrintPage () {
  var dieseDatei = document.URL;
  var Suche = /^(.*)\.(de|en)(\..*)$/;
  var showURL = Suche.exec(dieseDatei);
  /*alert("Params: [1]"+showURL[1]+" [2]"+showURL[2]+" [3]"+showURL[3]);*/
  var printpage = showURL[1] + "_print." + showURL[2] + showURL[3];
  PrintingVersion = window.open(printpage, "PrintingVersion", "width=650,height=800,left=100,top=200,menubar=yes,scrollbars=yes,resizable=yes");
  PrintingVersion.focus();
}

var dynItems = new Array( );
var dynItemParents = new Array( );

function changeAllItemVisibility()
{
}

/** This function changes the visibility of the given
 *  item to the value indicated by the parameter show.
 *
 * @itemId	Some sort of ID to identify the item at question.
 *	 	Usually the value (name) of the id-attribute of a
 *		<div>-field that is to be shown or hidden.
 * @show	Parameter that determines the state of visibility that
 *		is to be switched to. The following values are possible:
 *  		undefined - toggle current state
 *		0 - switch visibility to 0 (not visible)
 *		1 - switch visibility to 1 (visible)
 *		2 - toggle current state; hide all other items so that
 *		    only one item is visible at a time.
 *
 */
function changeItemVisibility( itemId, show )
{
if( itemId )
{
var item  = document.getElementById( itemId );
if( typeof( item ) == 'undefined' )
return;
var itemParent;
//Variable to indicate if only a single item shall be displayed at a time
var hideAllOtherItems = false;	// default is false
//A value of 2 in parameter show indicates that a maximum of one item is
//to be displayed at a time.
if (show == 2)
{
hideAllOtherItems = true;
}
// If no value for the parameter show is given, or if the value is 2
// we are to toggle the state
// of the visibility-flag. In order to do that, we have
// to determine the current state of that flag first.
if( (typeof( show ) == 'undefined')  || (show == 2) )
{
// If the item at hand hasn't been used in our dynItems-array yet,
// or if its value in the dynItems array is not 0
// then its visibility must obviously be set to 1 (visible) at the moment.
if( (dynItems[ itemId ] != 0) && (typeof(dynItems[ itemId ]) != 'undefined') )
{
show = 1;
}
else
{
show = 0;
}
}
//If the
if( hideAllOtherItems == true )
{    var tmpArray = new Array( );
var i = 0;
for( var item in allItems )
{
tmpArray[ i ] = item;
i++;
}
for( i=i; i>0; i-- )
{
changeItemVisibility (tmpArray[i-1], 0);
}
}
//At this point, we know the state of visibility we have to change to,
//either explicitly indicated by the given show parameter, or due to
//our considerations in the section above. Now we can go on and make
//the desired changes.
if( show )
{
if ((dynItems[ itemId ] != 0) && (typeof(dynItems[ itemId ]) != 'undefined'))
{
itemParent = dynItemParents[ itemId ];
itemParent.appendChild( dynItems[ itemId ] );
dynItems[ itemId ] = 0;
}
}
else
{
if ((dynItems[ itemId ] == 0) || (typeof(dynItems[ itemId ]) == 'undefined'))
{
itemParent = item.parentNode;
dynItems[ itemId ] = itemParent.removeChild( item );
dynItemParents[ itemId ] = itemParent;
}
}
}
//alert( obj.style.visibility );
return true;
}

function hideItems( itemsToHide )
{
itemsToHide.sort();
var tmpArray = new Array( );
var i = 0;
for( var item in itemsToHide )
{
tmpArray[ i ] = item;
i++;
}
for( i=i; i>0; i-- )
{
changeItemVisibility( tmpArray[i-1], 0 );
}
}

/** changes the visibility of all items on or off.
 *  need following variables to be declared on the page:
 *    allItems - array with all items
 *    allItemsDisplayed - boolean state (on or off)
 */
function changeAllItems ()
{
// alert ("changeAllItems allItemsDisplayed="+allItemsDisplayed);
var tmpArray = new Array( );
var i = 0;
for( var item in allItems )
{
tmpArray[ i ] = item;
i++;
}
for( i=i; i>0; i-- )
{
if (allItemsDisplayed)
{
changeItemVisibility (tmpArray[i-1], 0);
}
else
{
changeItemVisibility (tmpArray[i-1], 1);
}
}
if (allItemsDisplayed)
{
allItemsDisplayed=0;
}
else
{
allItemsDisplayed=1;
}
}

/** displays all items (turns them on).
 *  need following variables to be declared on the page:
 *    allItems - array with all items
 *    allItemsDisplayed - boolean state (on or off)
 *  @param checkBoxName name of the checkbox which should be checked
 */
function displayAllItems (checkBoxName)
{
// alert ("changeAllItems allItemsDisplayed="+allItemsDisplayed);
var tmpArray = new Array ();
var i = 0;
for (var item in allItems)
{
tmpArray[i] = item;
i++;
}
for (i=i; i>0; i--)
{
changeItemVisibility (tmpArray[i-1], 1);
}
allItemsDisplayed=1;
// alert ("checkBoxName=" + checkBoxName);
if (checkBoxName)
{
checkbox = document.getElementsByName (checkBoxName)[0];
// alert ("checkbox=" + checkbox);
if ((checkbox != 0) && (typeof(checkbox) != 'undefined') )
{
checkbox.checked = true;
}
}
}
