	var player;
	var oArrowOverlayLayer;
	var oLocator;
	var oOverlay
	var mousePositionX = 0
	var mousePositionY = 0
	
	function Locator( oElement )
	{
		this._element   = oElement;
		this.__construct();
	};
	Locator.prototype.__construct = function()
	{
		this._getOffset();
	};
	Locator.prototype._getOffset = function( oParent )
	{
		if ( typeof oParent != "object" )
			oParent = document.body;

		var oCurrent = this._element;
		this.x       = 0;
		this.y       = 0;

		do
		{
					
			this.x += oCurrent.offsetLeft;
			this.y += oCurrent.offsetTop;
			
		//	alert(oCurrent.tagName + ':' + oCurrent.className +' = '+ oCurrent.offsetTop);
		//	this.obj = oCurrent;
		}
		while( ( oCurrent != oParent && ( oCurrent = oCurrent.offsetParent ) ) );
	};

	function generalApplication()
	{
		//get right MM location
		var sLocid = "";
		switch(document.getElementById('location').value)
		{
			case "E-Commerce": sLocid="DC17B77B-432B-44B1-94AD-8D9AB94DBF70"; break;
			case "Hoofdkantoor": sLocid="795B3EC5-4102-4923-8A4A-8E7DDD654C5A"; break;
			case "Media Markt Alkmaar BV": sLocid="E615FBEC-B981-440A-8044-BA5D865E32EF"; break;
			case "Media Markt Almere BV": sLocid="1C18C1FD-92EC-4AB5-AC4C-8EC8D90CADD6"; break;
			case "Media Markt Alphen a/d Rijn BV": sLocid="644DA197-83F5-489E-BAB9-2EDF78F2A587"; break;
			case "Media Markt Amsterdam Arena BV": sLocid="0F3FA2F2-F48A-46E5-B6B6-E1EB7CED241E"; break;
			case "Media Markt Amsterdam Noord BV": sLocid="A4D1CA7D-2876-4A65-BB1D-719D26A615CA"; break;
			case "Media Markt Arnhem BV": sLocid="20962985-6B62-4DCF-8F6F-01A22F81AB19"; break;
			case "Media Markt Bergen op Zoom BV": sLocid="28B59701-AF68-4051-A3F0-B6D43082062F"; break;
			case "Media Markt Breda BV": sLocid="83F72124-FFB5-4FFF-BD31-A2CFF6DEA94E"; break;
			case "Media Markt Cruquius BV": sLocid="8D30C318-8633-4501-B72E-B117E7A406F1"; break;
			case "Media Markt Den Haag BV": sLocid="FCCF2E62-9089-4FEE-A092-010FBB603C37"; break;
			case "Media Markt Deventer BV": sLocid="4C832916-346D-4E13-B6D9-3283C5A0DC1A"; break;
			case "Media Markt Ede BV": sLocid="C7EDFE4A-736B-49FA-A591-2927C0D99B75"; break;
			case "Media Markt Eindhoven BV": sLocid="F567DEC3-B4CE-4217-A2E3-8ACE8D11EA36"; break;
			case "Media Markt Enschede BV": sLocid="90AA88BE-3E73-491D-8532-4EA1A2C3C750"; break;
			case "Media Markt Groningen BV": sLocid="9A9A2BA0-5974-462C-82E5-8A1D8BFD43B9"; break;
			case "Media Markt Heerlen BV": sLocid="20B5F832-7577-40FB-BD99-62CA67412B4C"; break;
			case "Media Markt Hengelo BV": sLocid="BDCCB19E-9780-499A-B62F-4B1902AFF0EA"; break;
			case "Media Markt Leeuwarden BV": sLocid="7B688F27-8E03-4467-BBE5-55F7E68B4005"; break;
			case "Media Markt Maastricht BV": sLocid="FE66ABEF-872A-4094-B4B8-798FCBEC6BAC"; break;
			case "Media Markt Middelburg BV": sLocid="D058D829-DD41-497E-B9EE-190545642E95"; break;
			case "Media Markt Online Nederland B.V.": sLocid="8863EFDE-ABAB-4577-953F-0AE834513228"; break;
			case "Media Markt Rijswijk BV": sLocid="13BC2946-61D9-4EFB-A51F-BAC0D2D35929"; break;
			case "Media Markt Roermond BV": sLocid="4D260D02-FDC4-47B7-A07C-B891FB18E391"; break;
			case "Media Markt Rotterdam Alexandrium BV": sLocid="42AB95F8-3998-4EB1-9600-3004FB51158C"; break;
			case "Media Markt Rotterdam Beijerlandselaan": sLocid="6A4D89D7-2B80-4B50-822E-EEED3B8AAE20"; break;
			case "Media Markt Rotterdam Centrum BV": sLocid="103E506D-BD64-47CC-B7F0-4B9171250A3F"; break;
			case "Media Markt Utrecht BV": sLocid="C45BE00F-B983-4C88-8AD2-69CE3BE7351F"; break;
			case "Media Markt Zoetermeer BV": sLocid="5BDD68E5-08FE-40DE-9066-2F62E2AE2174"; break;
			case "Media Markt Zwolle BV": sLocid="F928D45D-ADFC-4965-A35E-954E71A449D0"; break;
			case "PowerService Nederland BV": sLocid="8C52B3E5-4B17-489C-B3FE-C8EC34AB5858"; break;
			default: sLocid="795B3EC5-4102-4923-8A4A-8E7DDD654C5A";
		}
	        var dvinciWindow = window.open('', '', 'scrollbars=yes,left=50,top=50,width=700,height=500');
    		dvinciWindow.location.href = 'https://media-saturn-jobs.dvinci.de/cgi-bin/appl/selfservice.pl?action=unsolicitedmmnl;loc_nr='+sLocid+';p=mm_nl_ext';
	};

	function playerReady(obj)
	{
		player = document.getElementById(obj['id']);
    	player.addModelListener("STATE", "attachStateListener");
		player.sendEvent("PLAY","true");
	};
	
	function attachStateListener(obj) 
	{ 
		if (obj.newstate == 'COMPLETED')
			displayCompleted();
	};
	
	function displayCompleted()
	{
        player.sendEvent('SEEK', 10);
        player.sendEvent('PLAY', 'false');
        
        oOverlay = document.getElementById('overlay');
    	oOverlay.style.display = 'block';
        
//        oPlayer = new Locator(document.getElementById('player'));
  //      alert(oPlayer.y);
		//document.body.appendChild(oOverlay);
		  
		
		
	};
	function initializePersons()
	{
		var oPersons = document.getElementById('persons');
		if (oPersons) {
			var aPersonImages = oPersons.getElementsByTagName('IMG');
			
			for (var i=0; i < aPersonImages.length; ++i)
			{
				aPersonImages[i].onmouseover = function()
				{
					toggleArrowOverlay(this.id, true);
				}
				aPersonImages[i].onmouseout = function()
				{
					toggleArrowOverlay(this.id, false);
				}
			}
		}
	};
	
	function toggleArrowOverlay(sImageId, bVisible)
	{
		oArrowOverlayLayer = document.getElementById('arrowoverlay');
		
		if (!bVisible)
		{
			oArrowOverlayLayer.style.display = 'none';
			return;
		}
		oLocator = new Locator(document.getElementById('contentwrapper'));
		
		document.onmousemove = setArrowOverlayPosition;

		if ( sImageId == "arrowoverlay" ) //  weak...
			oArrowOverlayLayer.src = "/media/image/clear.gif";
		else
			oArrowOverlayLayer.src = "/media/image/arrow/" + sImageId + ".gif";

		
		oArrowOverlayLayer.style.display = 'block';
	};

	function setArrowOverlayPosition(e)
	{
		var mousePositionX = ( !window.event && e.pageX ? e.pageX : window.event.clientX );
		var mousePositionY = ( !window.event && e.pageY ? e.pageY : window.event.clientY );

		mousePositionX -= oLocator.x;
		mousePositionY -= oLocator.y;

		if (window.event)
		{
			mousePositionY += document.documentElement.scrollTop
			//mousePositionX += document.documentElement.scrollLeft
			
		}
		else
			//mousePositionY += window.pageYOffset;

		if (mousePositionX < 0){mousePositionX = 0}
		if (mousePositionY < 0){mousePositionY = 0}

		oArrowOverlayLayer.style.top  = ( mousePositionY - 15) +'px';
		oArrowOverlayLayer.style.left = ( mousePositionX + 20) +'px';
		
		//alert('x:'+mousePositionX+',y:'+mousePositionY);
		
		
		return true
	};

	/*  not for re-use  */
	function searchFieldHint( oInput, sDefault, bFocus )
	{
		if ( oInput && sDefault )
		{
			if ( bFocus )
			{
				if ( oInput.value == sDefault )
					oInput.value = "";
				oInput.className = "focus";
			}
			else
			{
				if ( oInput.value == "" || oInput.value == sDefault )
				{
					oInput.value     = sDefault;
					oInput.className = "blur";
				}
			}
		}
	}
