// SHUTTER BOX SCRIPT

	function set_shutter_box(img_element) {
		
		// get link element 
		
		link_element = img_element.parentNode;	
		
		// set onclick events
		
		link_element.onclick = function() {switch_shutter_box(img_element); return false; }
		
	}
	
	function switch_shutter_box(img_element) {
	
		// get elements
		
		container_element = img_element.parentNode.parentNode;
		
		target_element = getElementsByClassName("expandable-section", container_element)[0];
		
		// check to see if box is open or closed, and trigger it accordingly
		
		if (container_element.shutter_box_open_flag == true) {
			container_element.shutter_box_open_flag = false;
			removeClassName(target_element, "visible");	
			img_element.src = "/images/buttons/expand_button.gif";
		}
		else {
			container_element.shutter_box_open_flag = true;
			addClassName(target_element, "visible");		
			img_element.src = "/images/buttons/collapse_button.gif";
		}		

	}
	
	
// utility DOM functions
	
	function addClassName (elem, className) {
		removeClassName (elem, className);
		elem.className = (elem.className + " " + className).trim();
	}
	
	function removeClassName (elem, className) {
		elem.className = elem.className.replace(className, "").trim();
	}
	
	String.prototype.trim = function() {
		return this.replace( /^\s+|\s+$/, "" );
	}

    function getElementsByClassName(classname, node) {
	      if(!node) node = document.getElementsByTagName("body")[0];
	      var a = [];
    	  var re = new RegExp('\\b' + classname + '\\b');
    	  var els = node.getElementsByTagName("*");
    	  for(var i=0,j=els.length; i<j; i++)
	      if(re.test(els[i].className))a.push(els[i]);
	      return a;
    }