/* RUNS ON DOM LOAD ON EVERY PAGE =========================================== */

Event.observe(document,"dom:loaded",function() {

	// CREATES ROUNDED CORNERS ON PNAV LI A
	$$('#pNav > div > ul.MenuBarHorizontal a.MenuBarItem').each(function(elm) {
		elm.update('<span class="n1">'+elm.innerHTML+'</span><span class="n2"></span>');
	});

	// MAIN BUTTONS
	$$('a.mainBtn').each(function(elm) {
		elm.update('<span class="s1">'+elm.innerHTML+'</span><span class="s2">&nbsp;</span>');
	});

	// LINK FLOATERS
	$$('a.linkFloater').each(function(elm, elmIdx) {
		var params = new Array();
		var tmp = elm.href;

		var result = tmp.match(/^.*article_id=(\d*).*$/i);
		if (result != -1 && result != null) {
			params.push(new Array('article',result[1]));
		}

		var result = tmp.match(/^.*blog_id=(\d*).*$/i);
		if (result != -1 && result != null) {
			var result2 = tmp.match(/^.*entry_id=(\d*).*$/i);
			if (result2 != -1 && result2 != null) {
				params.push(new Array('blog_entry',result[1]+','+result2[1]));
			}
		}

		var result = tmp.match(/^.*event_id=(\d*).*$/i);
		if (result != -1 && result != null) {
			params.push(new Array('event',result[1]));
		}

		var result = tmp.match(/^.*item_id=(\d*).*$/i);
		if (result != -1 && result != null) {
			params.push(new Array('item',result[1]));
		}

		var result = tmp.match(/^.*person_id=(\d*).*$/i);
		if (result != -1 && result != null) {
			params.push(new Array('person',result[1]));
		}

		var result = tmp.match(/^.*recipe_id=(\d*).*$/i);
		if (result != -1 && result != null) {
			params.push(new Array('recipe',result[1]));
		}

		var result = tmp.match(/^.*file_id=(\d*).*$/i);
		if (result != -1 && result != null) {
			params.push(new Array('file',result[1]));
		}

		// ONLY CREATE THE FLOAT LAYER IF WE FOUND ID(s)
		if (params.length == 1) {
			var newDiv = new Element('div', { id:'linkLayer_'+elmIdx });
			newDiv.setStyle({
				display:'none',
				position:'absolute',
				top:(elm.positionedOffset()[1]+20)+'px',
				left:elm.positionedOffset()[0]+'px',
				zIndex:'100',
				background:'#fff',
				border:'1px solid #000',
				padding:'10px',
				maxWidth:'200px'
			});

			new Ajax.Request('/modules/link_floater_content.cfm',{
				parameters: {
					linkType: params[0][0],
					id: params[0][1]
				},
				onSuccess: function(transport) {
					newDiv.update(transport.responseText);
					elm.up().insert(newDiv);
					Event.observe(elm,'mouseover',function(e) { newDiv.show(); });
					Event.observe(elm,'mouseout',function(e) { newDiv.hide(); });
				}
			});
		}
	});

	// SETUP SUBMIT ON ENTER FOR FORMS
	submitOnEnter('frmLogin');
	submitOnEnter('frmRegister');
});

/* ENABLE SUBMIT ON ENTER ON FORMS WITHOUT SUBMIT BUTTON ==================== */

var submitOnEnter = function(frmID) {
	$$('#'+frmID+' input[type="text"], #'+frmID+' input[type="password"]').each(function(elm) {
		Event.observe(elm,"keypress",function(e) {
			var keycode;
			if (window.event)
				keycode = window.event.keyCode;
			else if (e)
				keycode = e.which;
			else
				return true;

			if (keycode == 13) {
				$(frmID).submit();
				return false;
			} else {
				return true;
			}
		});
	});
}