	
var DF_SlideNL = function(elem) {
	//this.formHeadElem = document.getElementById('NewsletterAreaBox').getElementsByTagName('h2')[0].childNodes[0];
	this.formFatherElem = document.getElementById(elem);
	this.formFatherElemHeight = 0;
	this.formBaseElem = this.formFatherElem.getElementsByTagName('div')[0];
	this.formBaseElemHeight = this.formBaseElem.offsetHeight;
	this.slideStepDivider = 2;
	this.slideStepMin = 2;
	this.slidedOut = false;
	this.sliding = false;
};
	
DF_SlideNL.prototype = {
	
	slide : function() {
		if (!this.sliding) {
			if (this.slidedOut) {
				this.slideIn();
			} else {
				this.slideOut();
			}
		}
	},
	
	slideOut : function() {
		if (!this.sliding) {
			this.formFatherElemHeight = 0; 
			this.formBaseElemHeight = this.formBaseElem.offsetHeight;
			this.slideSteps = Math.round(this.formBaseElemHeight / this.slideStepDivider);
			//this.formHeadElemClassNameOld = this.formHeadElem.className;
			//this.formHeadElem.className = 'active';
			this.formBaseElem.style.borderTop = '0px solid #DDDCDA';
			this.sliding = true;
		}
		this.formFatherElemHeight += this.slideSteps;
		this.slideSteps -= (this.slideSteps > this.slideStepMin) ? Math.round(this.slideSteps / this.slideStepDivider) : 0;
		this.formFatherElem.style.height = this.formFatherElemHeight + 'px';
		if (this.formFatherElemHeight < this.formBaseElemHeight - this.slideSteps) {
			var self = this;
			window.setTimeout(function(){self.slideOut();},35);
		} else {
			this.formFatherElem.style.height = 'auto';
			this.slidedOut = true;
			this.sliding = false;
		}
	},
	
	slideIn : function() {
		if (!this.sliding) {
			this.formFatherElemHeight = this.formBaseElem.offsetHeight;
			this.formBaseElemHeight = this.formFatherElemHeight;
			this.slideSteps = Math.round(this.formBaseElemHeight / this.slideStepDivider);
			this.sliding = true;
		}
		this.formFatherElemHeight -= this.slideSteps;
		this.slideSteps -= (this.slideSteps > this.slideStepMin) ? Math.round(this.slideSteps / this.slideStepDivider) : 0;
		this.formFatherElem.style.height = this.formFatherElemHeight + 'px';
		if (this.formFatherElemHeight >= this.slideSteps) {
			var self = this;
			window.setTimeout(function(){self.slideIn();},35);
		} else {
			this.formFatherElem.style.height = '1px';
			this.formBaseElem.style.borderTop = '0px solid #FFFFFF';
			this.slidedOut = false;
			this.sliding = false;
			//this.formHeadElem.className = '';
		}
	}
	
}

