Element.addMethods({
	position: function(el) {
		var pos = Position.cumulativeOffset(el);
		var dim = $(el).getDimensions();
		return {left: pos[0], top: pos[1], width: dim.width, height: dim.height};
	},
	positionBelow: function(el, el_reference, position) {
		var pos = $(el_reference).position();
		$(el).setStyle({
			'position': 'absolute',
			'top': (pos.top + pos.height) + 'px',
			'left': (pos.left) + 'px'
		});
		return $(el);
	}
});
document.observe('dom:loaded', function(e) {
	$$('.lbOn').each(function(el){
		$(el).observe('click', function(e) {
			e.stop();
			/*if($('email_popup') != null) {
				$('email_popup').toggle();
				return;
			}*/
			var pos = $(e.target).position();
			var create_div = false;
			if($('email_popup') == null) {
				create_div = true;
				var div = document.createElement('div');
				div.setAttribute('id', 'email_popup');
			} else {
				var div = $('email_popup');
			}
			new Ajax.Updater(div, $(e.target).href + '&js=1', {onComplete: function(){
				if(create_div)
					document.body.appendChild(div);
				div.setStyle({
					'width': '350px',
					'display': 'none',
					'position': 'absolute',
					'top': (pos.top + pos.height) + 'px',
					'left': (pos.left) + 'px'
				});
				div.show();
				$('email_form').observe('submit', function(e){
					/*$$('#email_popup .error').each(function(el){
						el.removeClassName('error');
					});*/
					e.stop();
					var req = new Ajax.Request($('email_form').action, {
						method: 'POST',
						parameters: $('email_form').serialize(true),
						onComplete: function(request, json) {
							if(json.response.success) {
								if(s) {
									for(i in json.omniture) {
										s[i] = json.omniture[i];
									}
									s.tl();	
								}
								
								new Ajax.Updater(div, $('email_form').title);
							} else {
								for(i in json.response) {
									$('label_' + i).addClassName('error');
								}
							}
						}
					});
				});
			}});
		});
	});
});
