﻿function RemoveEvents(event, curTarg, eventID, day)
{

	if (eventID == "")
	{
		return;
	}

  	if (mouseHasLeftContainer(event, curTarg) == "true")
  	{
		var ulContainer = document.getElementById("ul_" + eventID + "_" + day);
		var children = ulContainer.childNodes;
	    
	   	AddClass(ulContainer, "closing");
	    setTimeout("DelayedClose('" + eventID + "'," + day + ")", 1000);
	}
}

function mouseHasLeftContainer(event, curTarg)
{
	// A function that tell if a event comes from the outer div
	var current, related;
  	
	if (window.event) {
		current = curTarg;
		related = window.event.toElement;
		//alert("ie - current item " + current.className); 
	}
	else {
		current = event.currentTarget;
		related = event.relatedTarget;
		//alert("ff - target item " + related.className); 
	}

	
	
	if (current != related && !contains(current, related))
	{
		return("true");	
	}
	return("false");	
}
function contains(a, b) {

	// Return true if node a contains node b.
  
  	while (b.parentNode)
	if ((b = b.parentNode) == a)
		return true;
	return false;
}

function DelayedClose(eventID, day)
{
	var ulContainer = document.getElementById("ul_" + eventID + "_" + day);
	
	
	if (ulContainer.className.indexOf("closing") != -1)
	{
		ulContainer.style.display='none';
		RemoveClass(ulContainer, "closing");
	}
}

function AddClass(element, classText)
{
	if (element.className.indexOf(classText) == -1)
	{
		if (element.className.length == 0)
		{
			element.className = classText;
		}
		else
		{
			element.className = element.className + " " +classText;
		}
	}
}

function RemoveClass(element, classText)
{
	if (element.className.indexOf(classText) != -1)
	{
		if(element.className.length == classText.length)
		{
			element.className = "";
		}
		else
		{
			element.className = element.className.substring(0,element.className.indexOf(classText)) +  element.className.substring( element.className.indexOf(classText) + classText.length )
		}
	}
}

function InsertEvents(event, curTarg, eventID, day)
{


	var ulContainer = document.getElementById("ul_" + eventID + "_" + day);
	
	if(ulContainer!=null)
	{
		var children = ulContainer.childNodes;
		
		var firstDiv;
		var firstValSelected = false;
		for (var i = 0; i < children.length; i++) 
		{
			var elem = children[i];
		  	if (elem.tagName == 'DIV')
		  	{
			  	InsertEvent(elem.id, day);
			  	if(firstValSelected == false)
			  	{
			  		firstDiv = elem;
			  		firstValSelected = true;
			  	}
	    	}
	    }
	    // set the first event to be maxed and the rest min. 
		MaximiseSelectedEvent(event, firstDiv.childNodes[0]);
		
		RemoveClass(ulContainer, "closing");
		ulContainer.style.display='block';
    }
    return false;
}
		
function InsertEvent(eventID, day)
{
	// Parse the orignial ID out 
	var eventIdOnly = eventID.substring(5,41);
	//alert("Id "+ eventIdOnly);
	 
	var newContainer = document.getElementById("cell_" + eventIdOnly + "_" + day);
	var oldContainer = document.getElementById("data_" + eventIdOnly );
	

	//if (newContainer.innerHTML == "&nbsp;" || newContainer.innerHTML.length == 1)
	//{
		newContainer.innerHTML = oldContainer.innerHTML;
	//}
 }

function MaximiseSelectedEvent(event, div)
{		 
	var allEventDivs = div.parentNode.parentNode;
	
	// li-div class
	var eachEventDiv = allEventDivs.childNodes;

	for( var i = 0; i < eachEventDiv.length ; i++ ) 
 	{
 		var liDiv = eachEventDiv.item(i).childNodes;
		
		for( var j = 0; j < liDiv.length ; j++ ) 
	 	{
	 		if (liDiv.item(j).className == "event-collapse")
			{
				if (div == liDiv.item(j))
				{
					MaximiseEvent(liDiv.item(j));
				}
				else
				{
					MinimiseEvent(liDiv.item(j));
				}
			}
	 	}
	}
}





function MaximiseEvent(div)
{
	var ChildEl = div.childNodes;
	
	for( var i = 0; i < ChildEl.length ; i++ ) 
 	{ 
 		if (ChildEl.item(i).className == "event-max")
 		{
 			ChildEl.item(i).style.display="block"
 		}
 		if (ChildEl.item(i).className == "event-min")
 		{
 			ChildEl.item(i).style.display="none"
 		}
  	} 
}

function MinimiseEvent(div)
{	
	var ChildEl = div.childNodes;

	for( var i = 0; i < ChildEl.length ; i++ ) 
 	{ 
 		if (ChildEl.item(i).className == "event-min")
 		{
 			ChildEl.item(i).style.display="block"
 		}
 		if (ChildEl.item(i).className == "event-max")
 		{
 			ChildEl.item(i).style.display="none"
 		}
  	}
}
 
 //Global Confidance Show Hide function.
 function ShowHideFlash(container)
 {
 	var flashContainer = document.getElementById(container);

 	if (flashContainer.style.display=="block")
 	{
	 	flashContainer.style.display="none";
 	}
 	else
 	{
	 	flashContainer.style.display="block"; 		
 	}
 	return false;
 }

var wl_defaultSearchText = "Search";
  
function ShowSearchDefaultText(defaultSearchText){

    wl_defaultSearchText = defaultSearchText;
    
    var searchBox = document.getElementById('ctl00_SearchInput_SearchBox');
    
    if (searchBox.value == "")
    {
        searchBox.value = wl_defaultSearchText;
    }
   
   	AddClass(searchBox, 'search-box-default');
 	searchBox.onfocus = SearchBoxOnFocus;
	searchBox.onblur = SearchBoxOnBlur;    
   
}
 
 function SearchBoxOnBlur()
 {
 	var searchBox = document.getElementById('ctl00_SearchInput_SearchBox');
 	
 	if (searchBox.value == "")
 	{
 	    searchBox.value = wl_defaultSearchText;
 		AddClass(searchBox, 'search-box-default');

 	}
 	
 }
 
 function SearchBoxOnFocus()
 {
 	var searchBox = document.getElementById('ctl00_SearchInput_SearchBox');

 	if (searchBox.value == wl_defaultSearchText)
 	{
 		searchBox.value = "";
 	}
 	
 	RemoveClass(searchBox, 'search-box-default');
 
 }
 
 