var stylesheets =new Array(3);
stylesheets[0]="";
stylesheets[1]="medium_text";
stylesheets[2]="large_text";
 

function getCurrentSize()
{
	var size = stylesheets.indexOf(getActiveStyleSheet(), 0);
	if (size==-1) return 0;
	return size;
}

function incrementActiveStyleSheet() {
	
  	var currentSize = getCurrentSize();
  
   	if (currentSize<stylesheets.length-1)
   		currentSize++;
	
	setActiveStyleSheet(stylesheets[currentSize]);
		
}

function decrementActiveStyleSheet() {
    var currentSize = getCurrentSize();
	
	if (currentSize>0)
   	currentSize--;
	
	setActiveStyleSheet(stylesheets[currentSize]);
}

function setActiveStyleSheet(title) {
	
  var i, a, main;
  
        for(i=0; (a = document.getElementsByTagName("link")[i]); i++) 
        {
            var mlink;
            mlink = setFileNameFromPath(a.getAttribute("href"));        
            
            if(a.getAttribute("rel").indexOf("style") != -1 ) 
            {
                a.disabled = true;
            }    
        }
        setDefaultActiveStyleSheets("global.css,BOWfixes.css,partnership.css");
  
        for(i=0; (a = document.getElementsByTagName("link")[i]); i++) 
        {
            var mlink;
            mlink = setFileNameFromPath(a.getAttribute("href")); 
            
            if(mlink == title)
            {
                a.disabled = false;
            }
        }
}



function setDefaultActiveStyleSheets(cssSheets) {
	
  var i, a,x, main;
  
  var cssArr = new Array();
  cssArr = cssSheets.split(",");
      
        for(i=0; (a = document.getElementsByTagName("link")[i]); i++) 
        {
            var mlink;
            mlink = setFileNameFromPath(a.getAttribute("href"));  
            
                for(x=0; x<cssArr.length; x++)  
                {
                    if(mlink == cssArr[x])
                    {
                        a.disabled = false;
                    }
                }
       }
  }



        function setFileNameFromPath(path) {
            return path.substr(path.lastIndexOf('/') + 1);
        }

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");
   
       if(a.getAttribute("rel").indexOf("style") != -1 && !a.disabled)
    { 
        var strTitle = setFileNameFromPath(a.getAttribute("href"));
        if (strTitle == "large_font.css" || strTitle == "x_large_font.css")
        {
            return strTitle;
        }
    }
   
   
  }
  return "" ;
}

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 createCookie(name,value,days) {
  if (days) {
    var date = new Date();
    date.setTime(date.getTime()+(days*24*60*60*1000));
    var expires = "; expires="+date.toGMTString();
  }
  else expires = "";
  document.cookie = name+"="+value+expires+"; path=/";
}

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

window.onload = function(e) {
  var cookie = readCookie("style");
  var title = cookie ? cookie : getPreferredStyleSheet();
  if (title != "") {
    setActiveStyleSheet(title);
  }
  
  // Code to extract current size from stylesheet  
  
}

window.onunload = function(e) {
  var title = getActiveStyleSheet();
  if (title != null) {
     createCookie("style", title, 365);
  }
}

var cookie = readCookie("style");
var title = cookie ? cookie : getPreferredStyleSheet();
setActiveStyleSheet(title);
 
 
if (!Array.indexOf) {
	Array.prototype.indexOf = function (obj, start)  {

		for (var i = (start || 0); i < this.length; i++) {
			if  (this[i] == obj) {
				return i;
			}
		}
	}
}
