function changeColor(cssTitle, cssColor)
{
    
    // alert('Entrou em ChangeColor!');
	var title = 'theme' + cssTitle.split('.')[0];
    setActiveStyleSheet(title);   
    
    // alert('flashObjectsArray: ' + flashObjectsArray);
    if(null != flashObjectsArray)
    {
    
		var elements = 'flashObjectsArray items:\n\n';
		for(var index = 0; index < flashObjectsArray.length; index++)
		{
			elements += '\t[' + index + ']:\t' + flashObjectsArray[index] + '\n';
		}
		// alert(elements);
    
		for(var flashIndex = 0; flashIndex < flashObjectsArray.length; flashIndex++)
		{
			var flashObject = document.getElementById(flashObjectsArray[flashIndex]);
			// alert('flashObject[' + flashIndex + ']: ' + flashObject);
			if(null != flashObject)
			{
				// alert('\nname: ' + flashObjectsArray[flashIndex] + '\nflashObject: ' + flashObject + '\nfunction changeColor: ' + flashObject.changeColor);
				if(null != flashObject.changeColor)
				{
					// alert('CALLING WITH --> cssTitle: ' + cssTitle + '\ncssColor: ' + cssColor);
					flashObject.changeColor(cssColor);
				}
			}
		}
    }
}

function setActiveStyleSheet(title) {
  
  var i, a, main;
    if (navigator.userAgent.indexOf("Firefox") != -1)
    {
	    sheetKey = "sheet";
	    rulesKey = "cssRules";
    }
    else
    {
	    sheetKey = "styleSheet";
	    rulesKey = "rules";
    }
  for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
    if(a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title")) {
      a.disabled = true;
      if(a.getAttribute("title") == title) {
        a.disabled = false;
      }
    }
  }
}

function getActiveStyleSheet() {

  var i, a;
  for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
    if(a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title") && !a.disabled) return a.getAttribute("title");
  }
  return null;
}

function getPreferredStyleSheet() {
  var i, a;

  for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
    if(a.getAttribute("rel").indexOf("style") != -1
       && a.getAttribute("rel").indexOf("alt") == -1
       && a.getAttribute("title")
       ) return a.getAttribute("title");
  }
  return null;
}


function openURL(sURL) {
    if (window.opener &&!window.opener.closed)
    {
        window.opener.document.location = sURL;
    }
    else
    {
        if(window.name == 'InformationSideBar')
        {
            window.open(sURL);
        }
        else
        {
            document.location = sURL;
        }
    }
}



/***  CookiesScript.js  **/

function writeSessionCookie (cookieName, cookieValue) {
  if (testSessionCookie()) {
    document.cookie = escape(cookieName) + "=" + escape(cookieValue) + "; path=/";
    return true;
  }
  else return false;
}

function getCookieValue (cookieName) {
  var exp = new RegExp (escape(cookieName) + "=([^;]+)");
  if (exp.test (document.cookie + ";")) {
    exp.exec (document.cookie + ";");
    return unescape(RegExp.$1);
  }
  else return false;
}

function testSessionCookie () {
  document.cookie ="testSessionCookie=Enabled";
  if (getCookieValue ("testSessionCookie")=="Enabled")
    return true 
  else
    return false;
}

function writePersistentCookie (CookieName, CookieValue, periodType, offset) {

  var expireDate = new Date ();
  offset = offset / 1;
  
  var myPeriodType = periodType;
  switch (myPeriodType.toLowerCase()) {
    case "years": 
     var year = expireDate.getYear();     
     // Note some browsers give only the years since 1900, and some since 0.
     if (year < 1000) year = year + 1900;     
     expireDate.setYear(year + offset);
     break;
    case "months":
      expireDate.setMonth(expireDate.getMonth() + offset);
      break;
    case "days":
      expireDate.setDate(expireDate.getDate() + offset);
      break;
    case "hours":
      expireDate.setHours(expireDate.getHours() + offset);
      break;
    case "minutes":
      expireDate.setMinutes(expireDate.getMinutes() + offset);
      break;
    default:
      alert ("Invalid periodType parameter for writePersistentCookie()");
      break;
  } 
  
  document.cookie = escape(CookieName ) + "=" + escape(CookieValue) + "; expires=" + expireDate.toGMTString() + "; path=/";
}  

function deleteCookie (cookieName) {

  if (getCookieValue (cookieName)) writePersistentCookie (cookieName,"Pending delete","years", -1);  
  return true;     
}
