/*
	Mangeled and Mutilated from lightbox

*/



Object.extend(Element, {
        getWidth: function(element) {
                element = $(element);
                return element.offsetWidth;
        },
        setWidth: function(element,w) {
                element = $(element);
        element.style.width = w +"px";
        },
        setHeight: function(element,h) {
                element = $(element);
        element.style.height = h +"px";
        },
        setTop: function(element,t) {
                element = $(element);
        element.style.top = t +"px";
        },
        setSrc: function(element,src) {
        element = $(element);
        element.src = src;
        },
        setHref: function(element,href) {
        element = $(element);
        element.href = href;
        },
        setInnerHTML: function(element,content) {
                element = $(element);
                element.innerHTML = content;
        }
});





 var KevinsEffects = Class.create();

	KevinsEffects.prototype = {


		initialize: function() {

		},

		
		init: function(){

			/*var objOverlay = document.createElement("div");
                        objOverlay.setAttribute('id','overlay');
			
                        objOverlay.style.display = 'none';
			objOverlay.style.position = 'absolute';
                        objOverlay.onclick = function() { myKevinsEffects.unmask(); return false; }

                        var objBody = document.getElementsByTagName("body").item(0);
                        objBody.appendChild(objOverlay);
			*/

			$('backgroundopac').onclick = function() { myKevinsEffects.unmask(); return false;}

		},


		mask: function() {

			var arrayPageSize = myKevinsTools.getPageSize();
			Element.setHeight('emailwrapper', arrayPageSize[1]);

        		var selects = document.getElementsByTagName("select");
        		for (i = 0; i != selects.length; i++) {
                		selects[i].style.visibility = "hidden";
        		}
               
			new Effect.Fade('emailwrapper', { duration: 0, to: 1 });
			$('emailwrapper').style.display="block";	
			new Effect.Appear('backgroundopac', { duration: 0.2, from: 0.0, to: 0.8 });
			new Effect.Appear('overlaycontent', { duration: 0.8, from: 0.0, to: 1});
		},


		unmask: function() {
	
			new Effect.Appear('backgroundopac', { duration: 0.2, to: 0 });
			new Effect.Appear('overlaycontent', { duration: 0.8, to: 0});	
			new Effect.Fade('emailwrapper', { duration: 0.2, from: 0.8, to: 0 });
			var selects = document.getElementsByTagName("select");
                        for (i = 0; i != selects.length; i++) {
                                selects[i].style.visibility = "visible";
                        }
		}

	}


var KevinsTools = Class.create();

	KevinsTools.prototype = {


		initialize: function() {
			return;
		},

		getPageSize: function() {
		var xScroll, yScroll;

		        if (window.innerHeight && window.scrollMaxY) {
		                xScroll = document.body.scrollWidth;
	        	        yScroll = window.innerHeight + window.scrollMaxY;
	        	} else if (document.body.scrollHeight > document.body.offsetHeight){ // all but Explorer Mac
		                xScroll = document.body.scrollWidth;
		                yScroll = document.body.scrollHeight;
		        } else { // Explorer Mac...would also work in Explorer 6 Strict, Mozilla and Safari
		                xScroll = document.body.offsetWidth;
		                yScroll = document.body.offsetHeight;
		        }
		
		        var windowWidth, windowHeight;
		        if (self.innerHeight) { // all except Explorer
		                windowWidth = self.innerWidth;
		                windowHeight = self.innerHeight;
		        } else if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict Mode
		                windowWidth = document.documentElement.clientWidth;
		                windowHeight = document.documentElement.clientHeight;
		        } else if (document.body) { // other Explorers
		                windowWidth = document.body.clientWidth;
		                windowHeight = document.body.clientHeight;
		        }
		
		        // for small pages with total height less then height of the viewport
		        if(yScroll < windowHeight){
		                pageHeight = windowHeight;
		        } else {
		                pageHeight = yScroll;
		        }
		
		        // for small pages with total width less then width of the viewport
		        if(xScroll < windowWidth){
		                pageWidth = windowWidth;
		        } else {
		                pageWidth = xScroll;
		        }
		
		
		        arrayPageSize = new Array(pageWidth,pageHeight,windowWidth,windowHeight)
		        return arrayPageSize;
	
		}


	}
	
	
var myKevinsEffects = new KevinsEffects();
var myKevinsTools = new KevinsTools();
