﻿function checkSearchInput(input)
{
	if (input.value.indexOf('поиск') != -1) { input.value = ''; }
	else if (!input.value) { input.value = 'поиск...'; }
}

function $() { return document.getElementById(arguments[0]); }

function show(obj)
{
	if (typeof obj == 'string') $(obj).style.display = 'block';
	else obj.style.display = 'block';
}

function hide(obj)
{
	if (typeof obj == 'string') $(obj).style.display = 'none';
	else obj.style.display = 'none';
}

function showSelectedYearMonths(year, month)
{
	showOneBlock(year);
	//$(year + '_' + month*1).className = 'selected';
}

Function.prototype.bind = function(object) {
	var method = this;
	return function() {
	return method.apply(object, arguments);
	}
}

var lastOpenId;
function showOneBlock(id)
{
	var block = $('listMonths_' + id);
	var lastBlock = $('listMonths_' + lastOpenId);
	var blockHolder = $('listMonthsHolder_' + id);
	var lastBlockHolder = $('listMonthsHolder_' + lastOpenId);
	if (lastOpenId == id)
	{
		if (block.style.display == 'block')
		{
			block.style.display = 'none';
			blockHolder.className = '';
		}
		else
		{
			block.style.display = 'block';
			blockHolder.className = 'selected';
		}
	}
	else
	{
		if (lastOpenId)
		{
			lastBlock.style.display = 'none';
			lastBlockHolder.className = '';
		}
		block.style.display = 'block';
		blockHolder.className = (block.style.display == 'block') ? 'selected' : '' ;
	}
	lastOpenId = id;
}

function addHandler(object, event, handler)
{
	if (typeof object.addEventListener != 'undefined')
	object.addEventListener(event, handler, false);
	else if (typeof object.attachEvent != 'undefined')
	object.attachEvent('on' + event, handler);
}

function initMenu()
{
	var liArr = $('menuMain').getElementsByTagName('li');

	var i;
	for (i = 0; i < liArr.length; i++)
	{
		if(liArr[i].className.indexOf('selected') == -1)
		{
			var a = liArr[i].getElementsByTagName('a')[0];
			addHandler(a, 'mouseover', menuLiOver.bind(liArr[i]));
			addHandler(a, 'mouseout', menuLiOut.bind([liArr[i], liArr[i].innerHTML]));
		}
	}
}

var lastDivLeft;
var lastDivRight;

var menuImages = new Object();
menuImages['company'] = new Image();
menuImages['company'].src = '/media/system/images/menu-main-company-sel.gif';
menuImages['responsibility'] = new Image();
menuImages['responsibility'].src = '/media/system/images/menu-main-responsibility-sel.gif';
menuImages['people'] = new Image();
menuImages['people'].src = '/media/system/images/menu-main-people-sel.gif';
menuImages['brands'] = new Image();
menuImages['brands'].src = '/media/system/images/menu-main-brands-sel.gif';
menuImages['investor'] = new Image();
menuImages['investor'].src = '/media/system/images/menu-main-investor-sel.gif';
menuImages['press'] = new Image();
menuImages['press'].src = '/media/system/images/menu-main-press-sel.gif';

function menuLiOver()
{
	if (this.className.indexOf('selected') == -1)
	{
		var img = this.getElementsByTagName('img')[0];
		var str = img.src.slice(img.src.indexOf('/menu-main-')+11);
		str = str.substring(0, str.length - '.gif'.length);
		img.src = menuImages[str].src;

		lastDivRight = null;
		lastDivLeft = null;
		
		var divLeft = document.createElement('DIV');
		if (this.className.indexOf('first') == -1) divLeft.className = 'menuMainItemLeftCorner';
		else divLeft.className = 'menuMainFirstItemLeftCorner';
		lastDivLeft = divLeft;
		this.appendChild(divLeft);

		if (this.className.indexOf('last') == -1)
		{
			var divRight = document.createElement('DIV');
			divRight.className = 'menuMainItemRightCorner';
			this.appendChild(divRight);
			lastDivRight = divRight;
		}
		addClass(this, 'selected');
	}
}

function menuLiOut()
{
	var _this = this[0];
	var html = this[1];
	if (_this.className.indexOf('selected') > -1)
	{
		var img = _this.getElementsByTagName('img')[0];
		img.src = img.src.replace(/\-sel.gif/, '.gif');
		if (lastDivLeft) _this.removeChild(lastDivLeft);
		if (lastDivRight) _this.removeChild(lastDivRight);
		removeClass(_this, 'selected');
	}
}

function addClass(elem, classname)
{
	var o;
	if (typeof obj == 'string') o = $(elem);
	else o = elem;
	if (o.className.indexOf(classname) == -1)
	{
		elem.className += ' ' + classname;
	}
}

function removeClass(elem, classname)
{
	var o;
	if (typeof obj == 'string') o = $(elem);
	else o = elem;
	if (o.className.indexOf(classname) > -1)
	{
		var r = new RegExp(classname);
		o.className = o.className.replace(r, '');
	}
}