Menu = function(params)
{
	var that = {};

	var findControls = function() {
		that.menu.find("li a").each(function() {
			var id = this.id.replace("_menu", "_submenu");
			var submenu = jQuery('#' + id);
			if (submenu[0]) {
				that.items_menu.push(jQuery(this));
				that.items_submenu.push(submenu);
			}
		});
	}

	var highlightCurrentLink  = function() {
		var url = window.location.toString();
		var max = 0;
		var link = null;

		that.menu.find('li a').each(function() {
			if (url.indexOf(this.href) >= 0 && this.href.length > max) {
			  link = this;
			  max = this.href.length;
			}
		});

		if (link) {
			that.defaultSubmenu = link.id;
		}

		link = null;
		max = 0;

		that.submenu.find('li a').each(function() {
			if (url.indexOf(this.href) >= 0 && this.href.length > max) {
			  link = this;
			  max = this.href.length;
			}
		});

		if (link) {
			jQuery(link).parent('li').addClass('current');
			that.defaultSubmenu = jQuery(link).parents('ul').attr('id').replace("_submenu","_menu");
		}

		that.activateDefaultSubmenu();
	}

	var setEvent = function(){
		for(var i = 0; i < that.items_menu.length; i++) {
			that.items_menu[i].bind("mouseover", function(){var link = this;that.activateSubmenu(link.id)});
			that.items_menu[i].bind("mouseout", function(){that.timeoutHide = setTimeout(function(){that.activateDefaultSubmenu()}, 5000)});
		}
		that.submenu.find('li a').each(function(){
			jQuery(this).bind("mouseover", function(){clearTimeout(that.timeoutHide);that.timeoutHide = null;});
			jQuery(this).bind("mouseout", function(){that.timeoutHide = setTimeout(function(){that.activateDefaultSubmenu()}, 5000)});
		});
	}

	return new function (params){

		that = this;

		if(!params || !params.menuId || !jQuery("#" + params.menuId)[0])
			return;

		that.menu = jQuery("#" + params.menuId);
		that.submenu = jQuery("#" + params.submenuId);
		that.items_menu = [];
		that.items_submenu = [];

		that.activateSubmenu = function(id) {
			clearTimeout(that.timeoutHide);
			that.timeoutHide = null;

			for(var i = 0; i < that.items_menu.length; i++) {
				if(that.items_menu[i].attr('id') != id) {
					that.items_submenu[i].stop(false,true);
					that.items_submenu[i].slideUp();
					that.items_menu[i].parent('li').removeClass('current');
				} else {
					that.items_submenu[i].slideDown();
					that.items_menu[i].parent('li').addClass('current');
				}
			}
		}

		that.activateDefaultSubmenu = function() {
			clearTimeout(that.timeoutHide);
			that.timeoutHide = null;
			that.activateSubmenu(that.defaultSubmenu);
		}

		findControls();
		highlightCurrentLink();
		setEvent();

	}(params)
}

jQuery(document).ready(function(){
	jQuery("a[rel^='prettyPhoto']").prettyPhoto({
		allowresize: false,
		theme: 'dark_square'
	});

	jQuery("a[rel^='mainPrettyPhoto']").prettyPhoto({
		allowresize: false,
		theme: 'dark_square'
	});

	if (window.showPrettyPhoto)
		jQuery(showPrettyPhoto).trigger('click');;
	menu = new Menu({menuId:'main_menu', submenuId:'submenu'});
});

function clear_input(obj) {
  var obj = document.getElementById(obj);
  obj.value = '';
}

function get_height_block() {
}

function menu_selector(obj,obj_stat) {
  var obj = document.getElementById(obj);
  var obj_stat = document.getElementById(obj_stat);

  var main_elements = document.getElementById('main_elements').getElementsByTagName('div');
  for(var j=0; j<main_elements.length; j++) {
	if(main_elements[j].id) {
	  main_elements[j].style.marginTop = '-40px';
	}
  }

  obj_stat.style.marginTop = '-21px';

  var inner_elements_obj = document.getElementById('inner_elements');
  inner_elements_obj.style.width = 'auto';
  var inner_elements_arr = document.getElementById('inner_elements').getElementsByTagName('ul');

  for(var i=0; i<inner_elements_arr.length; i++) {
	inner_elements_arr[i].style.display = 'none';
  }

  obj.style.display = 'block';
  inner_elements_obj.style.width = inner_elements_obj.clientWidth + 'px';

  inner_elements_obj.style.left = (301 - (inner_elements_obj.clientWidth / 2)) + 'px';
}

function view_block(obj) {
		var obj = document.getElementById(obj);
		obj.style.height = 'auto';
		obj.style.overflow = 'visible';
}

function resizeByContent() {
}
