
	//
	// Global vars
	//
	var showToolTips = cookieGet('tipsOn');
	
	if (showToolTips == null)
	{
		tipsOn();		
	}

	function mgrSearch(controlName)
	{
		var s = trim(document.frmMain[controlName].value);

		if (s.length == 0)
		{
			alert('You must specify a search term to perform a search');
			return;
		}
		
		document.frmMain.Action.value = 'search';
		document.frmMain.submit();
		
		
	}
	

	function mgrSearchClear(controlName)
	{
		document.frmMain[controlName].value = '';
		document.frmMain.Action.value = 'clear';
		document.frmMain.submit();
	}	
	
	function mgrFileBrowse(control, path)
	{
		control.alt = '';
		filepick(control, path, true, false);
	}

	function mgrFilePreview(control)
	{
		if (control.value.length == 0)
		{
			return;
		}
		
		url = control.value;
		
		var w = (screen.availWidth/2);
		var h = (screen.availHeight/2);

		centerWindow(url, '_preview', h, w, '');		
	}		
		
		
	//
	// Help Functions
	//
	function helpEditorLaunch()
	{
		
	}
	
	
	//
	// A bunch of javascript functions used throughout mgr applications
	//

	var time_reg_format = '([0-9]{1,2}):([0-9]{1,2})';
	var date_reg_format = '([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})';
	var date_reg_positions = {'Y': 1,'m': 2,'d': 3};
	var time_separator = ':';
	var cal_date_format = '%Y-%m-%d';
	var time_offset = 0;

	function initLeftCol(id)
	{
		// Start with the panel visible (toggles)
		this.document.getElementById(id).style.display='none';
		hideLeftCol(id);

		return
		
		var show = Get_Cookie('showLeftCol');
		
		// Toggle opposite so we can call real function
		if (show) 
		{
			this.document.getElementById(id).style.display='none';
		}
		else
		{
			this.document.getElementById(id).style.display='inline';
		}
		
		hideLeftCol(id);
	}
	
	function toggleVisibility(id)
	{
//		alert(document.getElementById(id).style.display);
		
		if (document.getElementById(id).style.display == 'none')
		{
			document.getElementById(id).style.display = 'block'
		}
		else
		{
			document.getElementById(id).style.display = 'none'
		}

//		alert(document.getElementById(id).style.display);

	}

	function hideLeftCol(id)
	{
	
		if(this.document.getElementById(id).style.display=='none')
		{
			this.document.getElementById(id).style.display='inline';
	
//			Set_Cookie('showLeftCol','true',30,'/','','');
//			var show = Get_Cookie('showLeftCol');
			document['HideHandle'].src = '/mgr/themes/default/images/hide.gif';		
		}
		else
		{
			this.document.getElementById(id).style.display='none';
	
//			Set_Cookie('showLeftCol','false',30,'/','','');
//			var show = Get_Cookie('showLeftCol');
			document['HideHandle'].src = '/mgr/themes/default/images/show.gif';	
	
		}
	
	}

//	function showSubMenu(id)
//	{
//		if(this.document.getElementById(id).style.display=='none')
//		{
//			tbButtonMouseOver('HideHandle',122,'',10);
//		}
//	}	
	
	//
	// Tips
	//
	function tipsOn()
	{
		cookieSet('tipsOn', 'yes');
		showToolTips = 'yes';
		window.location = window.location;		
	}

	function tipsOff()
	{
		cookieSet('tipsOn', 'no');
		showToolTips = 'no';
		window.location = window.location;
	}


	/**
	 * This array is used to remember mark status of rows in browse mode
	 */
	var marked_row = new Array;
	
	function setPointer(theRow, theRowNum, theAction, theDefaultColor, thePointerColor, theMarkColor)
	{
		var theCells = null;
	
		// 1. Pointer and mark feature are disabled or the browser can't get the
		//    row -> exits
		if ((thePointerColor == '' && theMarkColor == '')
			|| typeof(theRow.style) == 'undefined') {
			return false;
		}
	
		// 2. Gets the current row and exits if the browser can't get it
		if (typeof(document.getElementsByTagName) != 'undefined') {
			theCells = theRow.getElementsByTagName('td');
		}
		else if (typeof(theRow.cells) != 'undefined') {
			theCells = theRow.cells;
		}
		else {
			return false;
		}
	
		// 3. Gets the current color...
		var rowCellsCnt  = theCells.length;
		var domDetect    = null;
		var currentColor = null;
		var newColor     = null;
		// 3.1 ... with DOM compatible browsers except Opera that does not return
		//         valid values with "getAttribute"
		if (typeof(window.opera) == 'undefined'
			&& typeof(theCells[0].getAttribute) != 'undefined') {
			currentColor = theCells[0].getAttribute('bgcolor');
			domDetect    = true;
		}
		// 3.2 ... with other browsers
		else {
			currentColor = theCells[0].style.backgroundColor;
			domDetect    = false;
		} // end 3
	
		// 4. Defines the new color
		// 4.1 Current color is the default one
		if (currentColor == ''
			|| currentColor.toLowerCase() == theDefaultColor.toLowerCase()) {
			if (theAction == 'over' && thePointerColor != '') {
				newColor              = thePointerColor;
			}
			else if (theAction == 'click' && theMarkColor != '') {
				newColor              = theMarkColor;
				marked_row[theRowNum] = true;
			}
		}
		// 4.1.2 Current color is the pointer one
		else if (currentColor.toLowerCase() == thePointerColor.toLowerCase()
				 && (typeof(marked_row[theRowNum]) == 'undefined' || !marked_row[theRowNum])) {
			if (theAction == 'out') {
				newColor              = theDefaultColor;
			}
			else if (theAction == 'click' && theMarkColor != '') {
				newColor              = theMarkColor;
				marked_row[theRowNum] = true;
			}
		}
		// 4.1.3 Current color is the marker one
		else if (currentColor.toLowerCase() == theMarkColor.toLowerCase()) {
			if (theAction == 'click') {
				newColor              = (thePointerColor != '')
									  ? thePointerColor
									  : theDefaultColor;
				marked_row[theRowNum] = (typeof(marked_row[theRowNum]) == 'undefined' || !marked_row[theRowNum])
									  ? true
									  : null;
			}
		} // end 4
	
		// 5. Sets the new color...
		if (newColor) {
			var c = null;
			// 5.1 ... with DOM compatible browsers except Opera
			if (domDetect) {
				for (c = 0; c < rowCellsCnt; c++) {
					theCells[c].setAttribute('bgcolor', newColor, 0);
				} // end for
			}
			// 5.2 ... with other browsers
			else {
				for (c = 0; c < rowCellsCnt; c++) {
					theCells[c].style.backgroundColor = newColor;
				}
			}
		} // end 5
	
		return true;
	} // end of the 'setPointer()' function
	
