var help = {
	helpText: {},
	active: null,

	prep: function () {
		this.helpElems = $('content').getElements('.help');

		this.helpElems.each(function(elem, i) {
			this.helpText[i] = elem.get('text');
			elem.empty();

			var helpLink = new Element('a', {
				html: '<img src="/static/images/icons/help.png" alt="Help" />'
			});
			helpLink.inject(elem);
			
			var clickItem = helpLink;
			
			if (helpLink.getParent(".why-register")) {
				clickItem = helpLink.getParent(".why-register");
			}
			
			clickItem.addEvent('click', this.showHelp.bind(this, [i, elem]));
			
		}, this);
	},

	showHelp: function (i, elem) {
		this.hideHelp();

		var pos = elem.getPosition();

		var div = new Element('div', {
			text: this.helpText[i],
			'class': 'help-float',
			'styles': {
				'top': pos.y,
				'left': pos.x+10
			}
		}).adopt(
			new Element('a', {
				href: '#',
				'text': 'close',
				'class': 'close',
				events: {
					click: this.hideHelp.bind(this)
				}
			})
		);

		div.inject($(document.body));

		this.active = div;

		return false;
	},

	hideHelp: function () {
		if ($defined(this.active))
			this.active.destroy();

		return false;
	}
};

function limit (elem, len) {
	if (elem.get('value').length > len) {
		elem.set('value', elem.get('value').substr(0, len));
	}
}

window.addEvent('domready', function() {
	help.prep();

	var limit1 = $('BMS_META_263');
        if ($defined(limit1)) {
            limit1.addEvent('keyup', limit.pass([limit1, 50]));
            limit1.addEvent('focus', limit1.empty);
        }
        
	var limit2 = $('BMS_META_264');
        if ($defined(limit2)) {
            limit2.addEvent('keyup', limit.pass([limit2, 100]));
            limit2.addEvent('focus', limit2.empty);
        }
});
