/*****************************************************
* ctkHighlight
* 27/08/2004
*
* a nice little script to highlight html element.
* call highlight on these events : Click | mouseOver ...
*
* --Sébastien Brémond--
* http://www.tocra.org
*****************************************************/

var highlightClass = ['important',''];
var objToHighlight;
var objCurrentClass=1;
var highlightIteration = 0;
var highlightIntervalID;
var highlightIsActive=false;
var highlightDelay = 60;
var highlightCycle = 3;

// Define the css class to use when highligh appear.
function setHighlightClass(strClassName){
	highlightClass[0]= strClassName;
}
// Get the css class defined when highligh appear.
function getHighlightClass(){
	return highlightClass[0];
}

// Define the highlight delay.
function setHighlightDelay(intMSDelay){
	highlightDelay = intMSDelay;
}
// Get the highlight delay defined.
function getHighlightDelay(){
	return highlightDelay;
}

// Define the highlight cycle.
function setHighlightCycle(intNbCycle){
	highlightCycle = intNbCycle;
}
// Get the highlight cycle defined.
function getHighlightCycle(){
	return highlightCycle;
}




/* function to use */
function ctkHighlight(objRef,hiliteClass){
	if (highlightIsActive == false){
		if (!objRef){
			alert('Internal error in ref!');
		}
		else{
			if (arguments.length == 2){
				setHighlightClass(hiliteClass);
			}
			else{
				//setHighlightClass();
			}
			var nav = Object;
			nav.ie = document.all ? 1 : 0
			nav.ns4 = document.layers ? 1 : 0
			nav.dom = document.getElementById ? 1 : 0
			if (nav.ie || nav.ns4 || nav.dom) {
				var d = document;
				if (typeof objRef == 'object'){ objRef = objRef.id; }
				var obj = nav.dom ? d.getElementById(objRef) : nav.ie ? d.all[objRef] : d.layers[objRef];
				// alert('From debug script `ctkHighlight` : '+obj.id+'.innerHTML=\n'+obj.innerHTML);
				baseClass = obj.className;
				highlightClass[1]= baseClass;
				highlightIsActive = true;
				objToHighlight = obj;
				highlightIntervalID = window.setInterval('highlighting()',highlightDelay);
			}
		}
	}
}


function highlighting(){
	highlightIteration++;
	objCurrentClass = 1-objCurrentClass;
	//alert(objCurrentClass + '  '+objToHighlight.className);
	objToHighlight.className = highlightClass[objCurrentClass];
	if (highlightIteration == (2*highlightCycle)) { 
		window.clearInterval(highlightIntervalID); 
		highlightIteration=0;
		objToHighlight = '';
		highlightIsActive = false;
	}
}
