
var mItemRef   = new Array();
var mItemText  = new Array();
var mItemRoles = new Array();
var mItemCounter = 0;

function m_registerItem( ref, label, roles )  {
  mItemRef[mItemCounter]   = ref;
  mItemText[mItemCounter]  = label;
  //mItemRoles[mItemCounter] = roles;
  if(roles.length > 0)  {
    mItemRoles[mItemCounter] = roles.split(" ");
  }  else  {
    mItemRoles[mItemCounter] = new Array();
  }
  mItemCounter++ ;
}


		

// Index der aktuellen Seite:
var mSelfIndex = 1;

// Einstellung der Menuegrafiken etc.
var mHiLSymbol = "/bleft12.gif";
var mHiRSymbol = "/bright12.gif";
var mLoLSymbol = "/empty-12.gif";
var mLoRSymbol = "/empty-12.gif";
var mMarkerSymbol = "/marker12.gif";
var MITEM_IMAGE_WIDTH = 20;
var MITEM_TEXT_WIDTH  = 120;

function m_text2index( text )  {
  for(ix=0; ix < mItemText.length; ix++)  {
    if ( mItemText[ix].indexOf( text ) >= 0 )  {
      return ix;
    }
  }
  return -1;
}


function m_setHiSymbol(index)  {
  if( index == mSelfIndex)  {
    return;
  }
  var cmd;
  cmd = 'window.document.mItemL' + index + '.src = "' + mHiLSymbol + '"';
  eval (cmd);
  cmd = 'window.document.mItemR' + index + '.src = "' + mHiRSymbol + '"';
  eval (cmd);
}
function m_setLoSymbol(index)  {
  if( index == mSelfIndex)  {
    return;
  }
  var cmd;
  cmd = 'window.document.mItemL' + index + '.src = "' + mLoLSymbol + '"';
  eval (cmd);
  cmd = 'window.document.mItemR' + index + '.src = "' + mLoRSymbol + '"';
  eval (cmd);
}
function m_setMarker(index, oldIndex)  {
  var cmd;
  cmd = 'window.document.mItemL' + oldIndex + '.src = "' + mLoLSymbol + '"';
  eval (cmd);
  cmd = 'window.document.mItemL' + index + '.src = "' + mMarkerSymbol + '"';
  eval (cmd);
  cmd = 'window.document.mItemR' + index + '.src = "' + mLoRSymbol + '"';
  eval (cmd);
}

function m_clickByText( text ) {
  var ix;
  text = text.replace( /_/g, " ");

  if( (ix=m_text2index(text)) < 0)  {
    return;
  }
  m_clickOnRef(ix);
}


function m_clickOnRef( index )  {
  //if(mSelfIndex == index)  {
    //return;
  //}
  if (mItemRef[index].indexOf("|") == 0)  {
    ref = mItemRef[index].slice(1);
    window.open(ref);
    return;
  }
  if (mItemRef[index].indexOf("!") == 0)  {
    ref = mItemRef[index].slice(1);
    eval(ref);
    return;
  }
  parent.main.location.href= mItemRef[index];
  m_setMarker( index, mSelfIndex );
  mSelfIndex=index;
}


function checkRoles( arr )  {

  for(var ix=0; ix < arr.length; ix++)  {
    if( gUserRoles.indexOf(arr[ix]) > 0 )  {
      return 1;
    }
  }
  return 0;
}

function m_makeMenuItem(index)  {
  var html;

  if( mItemRef[index] == "-" )  {
    html =  '<tr><td class="mt" colspan="3">' + mItemText[index] + '</td></tr>';
  }  else if( mItemRef[index] == "|" )  {
    html = '<tr><td class="ami" colspan="3">&nbsp;</td></tr>'
  } else {
    if ((mItemRoles[index].length == 0) || (checkRoles(mItemRoles[index]) > 0)) {
    html = '<tr>'
        + '<td><img name="mItemL' + index + '" src="' + mLoLSymbol + '" border=0> </td>'
        + ' <td class="ami" width="' + MITEM_TEXT_WIDTH + '"> <a href="javascript:m_clickOnRef(' + index + ');" '
	+ ' onMouseOver="m_setHiSymbol(' + index + ')" '
        + ' onMouseOut="m_setLoSymbol(' +index + ')"> ' + mItemText[index] + '</a></td> '
        + '<td><img name="mItemR' + index + '" src="' + mLoRSymbol + '" border=0> </td>'
        + ' </tr>' ;
    }  else  {
      html =  '<tr><td>&nbsp;</td><td class="pmi" colspan="2">' + mItemText[index] + '</td></tr>';
    }
  }
  document.writeln( html );
}
function m_makeMenu()  {
  for(ix=0; ix < mItemText.length; ix++)  {
    m_makeMenuItem(ix);
  }
}

// prueft, ob 'ref' die eigene Seite enthaelt
// liefert Wert kleiner 0 falls nicht
function isCurrentPage( ref )  {
  var iRef = "" + ref;

  while ( ( iRef.charAt(0) == '.' )  || ( iRef.charAt(0) == '/' ) )  {
    iRef = iRef.substring(1, iRef.length);
  }
  var cmd = 'parent.main.document.URL.search(/' + iRef + '$/);' ;
  return eval(cmd);
}


