/* javascript and html to display text size changer buttons at top of page. javascript functions are used to hunt for particular classes, whose font-size attribute is changed via dhtml.
note small piece of code in the footer.php which must be run when the page has finished loading 
*/


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

function get_cookie(name) {
    var name_eq = 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(name_eq) == 0) return c.substring(name_eq.length,c.length);
    }
    return null;
}


/* get every instance of a class */
 function getElementsByClass(node,searchClass,tag) {  
     var classElements = new Array();  
         if ( node == null )  
             node = document;  
         if ( tag == null )  
             tag = '*';  
     var els = node.getElementsByTagName(tag); // use "*" for all elements  
     var elsLen = els.length;  
     var pattern = new RegExp("\\b"+searchClass+"\\b");  
     for (i = 0, j = 0; i < elsLen; i++) {  
          if ( pattern.test(els[i].className) ) {  
          classElements[j] = els[i];  
          j++;  
          }  
     }  
     return classElements;  
   }  

/* resize every instance of a class */
function resize(theclass,size) {
	
	var elements = getElementsByClass(document,theclass,'*');  

	for(i = 0; i < elements.length; i++) {
		elements[i].style.fontSize = size;
	} 	

	/* to deal with h1 h2 etc */
	var elements = document.getElementsByTagName(theclass);

	for(i = 0; i < elements.length; i++) {
		elements[i].style.fontSize = size;
	} 	

}

/* edit these if you change the stylesheet */
function size_large() {

	resize('h1',"28px");
	resize('h2',"20px");
	resize('h3',"16px");
	resize('p',"16px");	
	resize('ul',"16px");	
	resize('bullet_point',"16px");

	/* set the cookie so pages automatically change on load */
	set_cookie('text_size', 'large', 30);

	/* highlight the active size */
	//document.getElementById("text_size_small").style.backgroundColor = "";
	//document.getElementById("text_size_large").style.backgroundColor = "#d8732d";

}

/* edit these if you change the stylesheet */
function size_small() {

	resize('h1',"24px");
	resize('h2',"18px");
	resize('h3',"12px");
	resize('p',"12px");
	resize('ul',"12px");
	resize('bullet_point',"12px");	

	/* set the cookie so pages automatically change on load */
	set_cookie('text_size', 'small', 30);

	/* highlight the active size */
	//document.getElementById("text_size_small").style.backgroundColor = "#d8732d";
	//document.getElementById("text_size_large").style.backgroundColor = "";

}


