/*-------------------------------------------------------------------------- 
 * A utility library
 *--------------------------------------------------------------------------
 */

var utility = 
{
	Version: '1.0.0'
}

utility.getCookie = function(name)
{
	var nameEQ 		= name + "=";
	var cookieArray = document.cookie.split(';');
	
	for(var i = 0; i < cookieArray.length; i++) 
	{
		var current = cookieArray[i];
		
		while(current.charAt(0) == ' ') 
			current = current.substring(1, current.length);
		
		if(current.indexOf(nameEQ) == 0) 
			return current.substring(nameEQ.length, current.length);
	}
	
	return null;
}

utility.createCookie = function(name, value, days, path)
{	
	if(days)
	{
		var date = new Date();
		date.setTime(date.getTime() + (days*24*60*60*1000) );
		var expires = "; expires=" + date.toGMTString();
	}
	else
		var expires = "";
	
	if( path )
		var configuredPath = "; path=/" + path;
	else
		configuredPath = "; path=/";
		
	document.cookie = name + "=" + value + expires + configuredPath;
	
	alert(name + "=" + value + expires + configuredPath)
}

utility.eraseCookie = function(id, name)
{
	document.cookie = id + "=; expires=Thu, 01-Jan-70 00:00:01 GMT; path=/" + name;
}





var ShanifsNet = 
{
	Version: '1.0.0',
	fullOpacity: true,
	intervalID: null,
	currentElement: null
}

ShanifsNet.pulse = function(element)
{
	Effect.Fade(element, {to: Constants.MIN_PULSE_OPACITY});
	ShanifsNet.fullOpacity = false;
	ShanifsNet.intervalID = setInterval(this.changePulseState, Constants.PULSE_DURATION);
	ShanifsNet.currentElement = element;
}

ShanifsNet.restore = function(element)
{
	Effect.Appear(element);
	clearInterval(ShanifsNet.intervalID);
}

ShanifsNet.changePulseState = function()
{
	if( ShanifsNet.fullOpacity )
		Effect.Fade(ShanifsNet.currentElement, {to: Constants.MIN_PULSE_OPACITY});
	else
		Effect.Appear(ShanifsNet.currentElement)
		
	ShanifsNet.fullOpacity = !ShanifsNet.fullOpacity;
}

/*
 * Constants
 */
var Constants =
{
}

Constants.MIN_PULSE_OPACITY = 0.2;
Constants.PULSE_DURATION = 1000;
Constants.NO_TRANSFORMATION_REL = "no_transform";