var PageStretcher = new Class({
    stretchElement: null,
    footerElement: null,
    
    initialize: function(id,footer_id) {
	this.stretchElement = $(id);
	this.footerElement = $(footer_id);
	if (!this.stretchElement) {
	    return;
	}
	window.addEvent('resize',  function(e) {
	    this.stretchPage();
	}.bind(this));
	window.addEvent('load',  function(e) {
	    this.stretchPage();
	}.bind(this));
	this.stretchPage();
    },

    stretchPage: function() {
	var height;
	if (!this.stretchElement) {
	    return;
	}
	height = window.getHeight() - this.stretchElement.getCoordinates().top;
	if (this.footerElement) {
	    height += (this.footerElement.getCoordinates().top -  this.footerElement.getCoordinates().bottom);
	}
	height  -= 30;
	if (height < 1) {
	    height = 1;
	}
	this.stretchElement.setStyle( 'height',height);
    }
});


