/*
*******************************************************************************
* Copyright (C) 2004-2005 PurposeDriven.Com. All Rights Reserved.
* Unauthorized use, duplication or distribution is strictly prohibited.
*******************************************************************************
*
*	File:		pdwebauthorconsole.js
*
*	Purpose:	This file contains the javascript functions that take care
*				of managing the web author console floating bar.
*
*	Based on:	Extending the MCMS Web Author Console
*	Author:		Ramon Ponte
*
*	Modified:	Gerair D. Balian
*	Version:	1.0
*******************************************************************************
*/
//From PDAuthorConsole.ascx
//This method assigns the menu to a page when called.
function AssignWebAuthorControl()
{
	
	document.onclick = HideWebAuthorConsole;
	document.oncontextmenu = ShowWebAuthorConsole;
}
// Method that is called when the web author context menu is to be displayed to the user.
function ShowWebAuthorConsole()
{
	var waConsole = document.getElementById( 'webAuthorConsole' );
	var bShowConsole = true;
	
	if( waConsole != null ) 
	{
		waConsole.style.left = event.x + document.body.scrollLeft;
		waConsole.style.top = event.y + document.body.scrollTop;
		waConsole.style.display = 'block';
		
		bShowConsole = false;
	}
	
	return bShowConsole;
}

// Method that is called when the web author context menu is to be hiddend from view.
function HideWebAuthorConsole()
{
	var waConsole = document.getElementById( 'webAuthorConsole' );
	if( waConsole != null )
		waConsole.style.display = '';
}

// Method that is called when an item in the context menu is hovered over.
function SelectedConsoleItem( objMenuItem )
{
	if( objMenuItem != null ) {
		objMenuItem.style.color = 'black';
		objMenuItem.style.background = '#FFD9A0';
	}
}

// Method that is called when the user hovers off of the selected menu item.
function UnSelectedConsoleItem( objMenuItem )
{
	if( objMenuItem != null ) {
		objMenuItem.style.color = 'black';
		objMenuItem.style.background = 'white';
	}
}

// We want the Error Console to stay with the mouse to warn the user what happened.
// From http://www.js-examples.com/javascript/?view=1044
//
function followMouseMovement( moveEvent ){
	
	var waConsole = document.getElementById( 'webErrorConsole' );
	if( waConsole != null ) {
		if( moveEvent ) {
			waConsole.style.left = moveEvent.pageX;
			waConsole.style.top = moveEvent.pageY;
		}
		else {
			waConsole.style.left = event.x + document.body.scrollLeft;
			waConsole.style.top = event.y + document.body.scrollTop;
		}
	}
}

// Method that is called when the web author context menu is to be displayed to the user.
function ShowConsole()
{
	var editConsole = document.getElementById( 'webAuthorConsole' );
	var errorConsole = document.getElementById( 'webErrorConsole' );
	
	var waConsole = ( editConsole == null ) ? errorConsole : editConsole;	
	if( waConsole != null ) {
		waConsole.style.left = event.x + document.body.scrollLeft;
		waConsole.style.top = event.y + document.body.scrollTop;
		waConsole.style.display = 'block';
	}
	return false;
}

// Method that is called when the web author context menu is to be hiddend from view.
function HideConsole()
{
	var editConsole = document.getElementById( 'webAuthorConsole' );
	var errorConsole = document.getElementById( 'webErrorConsole' );
	
	var waConsole = ( editConsole == null ) ? errorConsole : editConsole;	
	if( waConsole != null )
		waConsole.style.display = '';
}

