String.prototype.ucFirst = function () {
   return this.substr(0,1).toUpperCase() + this.substr(1,this.length);
};

if (! ("console" in window) || !("firebug" in console)) {
    var names = ["log", "debug", "info", "warn", "error", "assert", "dir", "dirxml", "group", "groupEnd", "time", "timeEnd", "count", "trace", "profile", "profileEnd"];
    window.console = {};
    for (var i = 0; i <names.length; ++i) window.console[names[i]] = function() {};
}

document.observe('dom:loaded', function() {
	$$('.toggle').each(function (elm) {
		elm.observe('focus', function (event) {
			if (elm.value == elm.title) {
				elm.addClassName('focus').value = '';
				}
			}).observe('blur', function (event) {
				if (elm.value == '') {
					elm.removeClassName('focus').value = elm.title;
					}
				});
		});

	$$('.img-title').each(function(elm) {
		elm.observe('mouseover', function() {
			elm.addClassName('hover');
		}).observe('mouseout', function() {
			elm.removeClassName('hover');
		});
	});

	$$('#subnav li.submenu').each(function(elm) {
		elm.observe('mouseover', function() {
			elm.down().addClassName('hit').next().show();
			});

		elm.observe('mouseout', function(event) {

			var related = event.relatedTarget || event.toElement;
			if (related) {
				if (!related.descendantOf(elm)) {
					elm.down().removeClassName('hit').next().hide();
					}
				} else {
					elm.down().removeClassName('hit').next().hide();
					}
			});
		});
	});
