/**
 * menu.js - requires prototype and maybe scriptaculous ;-)
 */

var menu = [
	[],
	[],
	[],
	[
		{ menupoint: 'Dekorativ', submenupoints: [ 'Dekorkatalog Abet', 'Dekorkatalog Duropal', 'Dekorkatalog Egger', 'Dekorkatalog Polyrey' ] },
		'Innovativ',
		'Funktionell'
	],
	[],
	[
		'Ansprechpartner',
		'Anfahrt'
	]
];
var links = [
	[],
	[],
	[],
	[
		{ menulink: 'produkte_dekorativ.php', submenulinks: [ 'produkte_dekorativ_abet.php', 'produkte_dekorativ_duropal.php', 'produkte_dekorativ_egger.php', 'produkte_dekorativ_polyrey.php' ] },
		'produkte_innovativ.php',
		'produkte_funktionell.php'
	],
	[],
	[
		'kontakt_ansprechpartner.php',
		'kontakt_anfahrt.php'
	]
];

function display_submenu( $submenuId, $subsubmenuId, pElement )
{
	if( $( $subsubmenuId ) )
	{
		hide_submenus();
		$mx = pElement.viewportOffset()[ 0 ] + document.viewport.getScrollOffsets()[ 0 ];
		$my = pElement.viewportOffset()[ 1 ] + document.viewport.getScrollOffsets()[ 1 ];
		$submenu_width = pElement.getWidth();
		$( $subsubmenuId ).setStyle( { left: ($mx + 3 + $submenu_width) + 'px', top: $my + 'px' } );
		$( $subsubmenuId ).show();
	}
}

function display_menu( $mKey )
{
	hide_menus();
	$menuId = 'menu' + $mKey;
	$submenuId = 'submenu' + $mKey;
	$submenu = '';
	if( !$( $submenuId ) )
	{
		for( i = 0; i < menu[ $mKey ].length; i++ )
		{
			$subsubmenuId = 'subsubmenu' + i;
			$subsubmenu = '';
			if( typeof menu[ $mKey ][ i ] == 'string' )
			{
				$submenu += '<div style="width:96px;"><a href="' + links[ $mKey ][ i ] + '" onmouseover="hide_submenus();">' + menu[ $mKey ][ i ] + '</a></div>';
			}
			else
			if( typeof menu[ $mKey ][ i ] == 'object' )
			{
				$submenu += '<div class="hassubsub" style="width:96px;"><a href="' + links[ $mKey ][ i ].menulink + '" onmouseover="display_submenu( \'' + $submenuId + '\', \'' + $subsubmenuId + '\', this.up() )">' + menu[ $mKey ][ i ].menupoint + '</a></div>';
				for( j = 0; j < menu[ $mKey ][ i ].submenupoints.length; j++ )
				{
					$subsubmenu += '<div><a href="' + links[ $mKey ][ i ].submenulinks[ j ] + '">' + menu[ $mKey ][ i ].submenupoints[ j ] + '</a></div>';
				}
				// Insert subsubmenu
				if( $subsubmenu != '' )
				{
					$( $menuId ).insert( {
						after: '<div id="' + $subsubmenuId + '" class="subsubmenu" style="position:absolute;left:-1000px;top:-1000px">' + $subsubmenu + '</div>'
					} );
				}
			}
		}
		// Insert submenu
		if( $submenu != '' )
		{
			$( $menuId ).insert( {
				after: '<div id="' + $submenuId + '" class="submenu" style="position:absolute;left:-1000px;top:-1000px">' + $submenu + '</div>'
			} );
		}
	}
	// Display
	if( $( $submenuId ) )
	{
		$mx = $( $menuId ).viewportOffset()[ 0 ] + document.viewport.getScrollOffsets()[ 0 ];
		$my = $( $menuId ).viewportOffset()[ 1 ] + document.viewport.getScrollOffsets()[ 1 ];
		$submenu_height = $( $submenuId ).getHeight();
		$( $submenuId ).setStyle( { left: $mx + 'px', top: ($my - $submenu_height) + 'px' } );
		$( $submenuId ).show();
	}
}

function hide_submenus()
{
	for( $mKey = 0; $mKey < 100; $mKey++ )
	{
		$subsubmenuId = 'subsubmenu' + $mKey;
		if( $( $subsubmenuId ) )
			$( $subsubmenuId ).hide();
	}
}

function hide_menus()
{
	for( $mKey = 0; $mKey < 20; $mKey++ )
	{
		$submenuId = 'submenu' + $mKey;
		if( $( $submenuId ) )
			$( $submenuId ).hide();
	}
	hide_submenus();
}
