(function($) {
	var textarea, staticOffset;
	var iLastMousePos = 0;
	var iMin = 0;
	var iMax = 180;
	var grip;
	var iMousePos = 0;
	var lastMousePos = 0;
	
	$.fn.TextAreaResizer = function() {
		return this.each(function() {
			textarea = $(this).addClass('processed'), staticOffset = null;
			$('a.pull-up').click(function(){return false});
			$('a.pull-up').bind("mousedown",startDrag);
			
			var _pos = $(this).offset();
			staticOffset = _pos.top;
			
			/* private functions */
			function startDrag(e) {
				staticOffset = e.pageY + lastMousePos;
				$(document).mousemove(performDrag).mouseup(endDrag);//.mouseout(endDrag);
				return false;
			}
		
			function performDrag(e) {
				iMousePos = (staticOffset - e.pageY);
				if (iMousePos < iMin) iMousePos = iMin;
				if (iMousePos > iMax) iMousePos = iMax;
				if (iMousePos > 0) textarea.show();
				else textarea.hide();
				
				textarea.height(iMousePos + 'px');
				$('#footer-slide').css('top',-1*(iMousePos) + 'px');
				
				return false;
			}
			function endDrag(e) {
				$(document).unbind('mousemove', performDrag).unbind('mouseup', endDrag);
				lastMousePos = iMousePos;
			}
		});
	};
})(jQuery);

$(document).ready(function(){
	if (typeof $().TextAreaResizer == 'function') {
		$('#footer-slide div.fly-out:not(.processed)').TextAreaResizer();
	}
});

