sM = {

	mover: function(e, targetElement) {
		var el = targetElement;
		if (!el) return;
		if (sM.currentElement && (el != sM.currentElement)) {
			sM.mout2(sM.currentElement);
		}
		el.className = "selected";
		sM.currentElement = el;
		clearTimeout(el.outTimeout);
	},

	mout: function(e, targetElement) {
		var el = targetElement;
		if (!e || e == null) return;
		el.outTimeout = setTimeout(function() { sM.mout2(el); }, 300);
	},

	mout2: function(el) {
		el.className = "";
	},

	getMoverFor: function(node) {
		return function(e) { sM.mover(e, node); };
	},

	getMoutFor: function(node) {
		return function(e) { sM.mout(e, node); };
	},

	dropdownClick: function(e, targetElement) {
		alert('testing');
	},

	getDropdownClickFor: function(node) {
		return function(e) { sM.dropdownClick(e, node); };
	},

	init: function() {

		$$('#primary-nav li').each(function(node) {
			addEvent(node, 'mouseover', sM.getMoverFor(node), false);
			addEvent(node, 'mouseout', sM.getMoutFor(node), false);
		});

		$$('li.dropdown-trigger').each(function(node) {
			addEvent(node, 'mouseover', sM.getMoverFor(node), false);
			addEvent(node, 'mouseout', sM.getMoutFor(node), false);
		});

	}

};

addEvent(window, 'load', sM.init, false);
addEvent(window, 'unload', EventCache.flush, false);