// возвращает объект с указанным id или false
function element( sID )
{
	if( document.getElementById )
	{
		var oElement = document.getElementById(sID);
		return oElement == null ? false : oElement;
	}
	return false;
};
// возвращает массив дочерних элементов имеющих определенное имя тега или пустой массив
function byTagName( oElement, sTagName )
{
	if( oElement != false )
	{
		var aElements = oElement.getElementsByTagName(sTagName);
		return aElements;
	}
	return new Array();
};
function create( sTagName )
{
	return document.createElement( sTagName );
};
function createText( sText )
{
	return document.createTextNode( sText );
};
/*----------------------------------------------------------------------------*/
// добавляет атрибут target="_blank" всем ссылкам у которых есть атрибут rel="external"
function useTarget()
{
	if( element('doc') )
	{
		var refs = byTagName( element('doc'), 'a' );
		for( var i = 0; i < refs.length; i++ )
		{
			if( refs[i].getAttribute("href") && refs[i].getAttribute("rel") == "external" )
			{
				refs[i].target = "_blank";
			}
		}
	}
	return;
};
// преобразует защищенные ссылки
function hiddenMail( sLogin, sServer )
{
	var sHref = '\x6d\x61\x69\x6c\x74\x6f\x3a' + sLogin + '\x40' + sServer;
	window.location.href = sHref;
};

// начинает работу приложения
var scroller;
var salary;
var ie = /*@cc_on!@*/false;
var scrollerStartX;
function mousedown(ev)
{
	scroller = document.getElementById('salaryScroller');
	salary = document.getElementById('salary');
	if( ie == false )
	{// mozilla, opera, etc
		scrollerStartX = ev.clientX;
	}
	else
	{// internet explorer
		scrollerStartX = event.offsetX;
	}
}
function mousemove(ev)
{
	if( scroller )
	{
		var scrollerCurrentX;
		if( ie == false )
		{// mozilla, opera, etc
			scrollerCurrentX = ev.clientX;
		}
		else
		{// internet explorer
			scrollerCurrentX = event.offsetX;
		}
		var delta = scrollerCurrentX - scrollerStartX;
		if( delta == 0 )
		{// объект не перемещается
		}
		else
		{// объект движется
			var _ml = scroller.style.marginLeft;
			var scrollerX = (_ml && _ml != '') ? parseInt(_ml) : 0;
			var offset = scrollerX + delta;
			if( offset < 0 )
			{
				scrollerX = 0;
			}
			else if( offset > 247 )
			{
				scrollerX = 247;
			}
			else
			{
				scrollerX += delta;
			}
			scroller.style.marginLeft = scrollerX + 'px';
			salary.style.marginLeft = 1 + scrollerX + 'px';
			salary.value = Math.round(scrollerX*0.73);
			if( ie == false )
			{
				scrollerStartX = ev.clientX;
			}
		}
	}
}
function retrieveLink()
{
	scroller = null;
	sendRequest( 'salary', salary.value );
}
function retrieveLink1()
{
	scroller = null;
}
function activateSearchTabs()
{
	if( element('tabs') )
	{
		var hrefs = byTagName( element('tabs'), 'a' );
		for( var i = 0; i < hrefs.length; i++ )
		{
			hrefs[i].onclick = function()
			{
				var stype = this.href.substr( this.href.indexOf("?stype")+7);
				element("stype").value = stype;

				var advSL = byTagName( element('advSearchLink'), 'a' );
				for( var i = 0; i < advSL.length; i++ )
				{
					if( stype == 'site' ) stypeForAdvSL  = 'vacancies';
					else stypeForAdvSL = stype;
					advSL[i].href = host + '/index.php/job/advanced/?stype='+stypeForAdvSL;
					
				}
				var lis = byTagName( element('tabs'), 'li' );
				for( var j = 0; j < lis.length; j++ )
				{
					lis[j].className = lis[j].className == 'last active' ? 'last' : lis[j].className == 'last' ? 'last' : '';
				}
				this.parentNode.className += ' active';
				switch( stype )
				{
					case 'vacancies':
						element('searchForm').action = host + '/index.php/job/search/vacancies/';
						break;
					case 'resume':
						element('searchForm').action = host + '/index.php/job/search/resume/';
						break;
					case 'site':
						element('searchForm').action = host + '/index.php/article/search/';
						break;
					default:
						element('searchForm').action = host + '/index.php/job/search/vacancies/';
						break;
				}
				return false;
			};

			if(ie == false){hrefs[i] = null;};
		}
	}
}
	
function askLogin( close )
{
	var b = element( 'doc' );
	// тень вспылвающего окна
	var ws = create('div');
	ws.id = 'lwShadow';
	b.appendChild(ws);
	ws.style.position = 'absolute';
	ws.style.opacity = '0.3';
	// window - всплывающее окно
	var w = create('div');
	w.id = 'loginWindow';
	var clos = create('a');
	clos.style.marginLeft = '130px';
	clos.href = host + '/index.php/';
	clos.onclick= function()
			{
				element('doc').removeChild(element('lwShadow'));
				element('doc').removeChild(element('loginWindow'));
				return false;
			}
	var clost = createText('закрыть');
	clos.appendChild(clost);	// форма во всплывающем окне
	var f = create('form');
	f.method = 'post';
	f.action = host + '/index.php/user/login/';
	f.onsubmit = function()
	{
		sendRequest( 'login', element('lwLogin').value, element('lwPassword').value );
		element('doc').removeChild(element('lwShadow'));
		element('doc').removeChild(element('loginWindow'));
		return false;
	}
	// fieldset
	var fd = create('fieldset');
	// login label (label for="login" )
	var ll = create('label');
	ll.setAttribute( 'for', 'lwLogin' );
	// текст в метке
	var llt = createText('Логин:');
	ll.appendChild(llt);
	// метку добавляем в набор полей
	fd.appendChild(ll);
	// поле ввода логина (login input)
	var li = create('input');
	li.type = 'text';
	li.name = 'lwLogin';
	li.id = 'lwLogin';
	// поле ввода логина добавляем в набор полей
	fd.appendChild(li);
	// password label
	var pl = create('label');
	pl.setAttribute( 'for', 'lwPassword' );
	// текст в метке
	var plt = createText('Пароль:');
	pl.appendChild(plt);
	// метку добавляем в набор полей
	fd.appendChild(pl);
	// поле ввода пароля (password input)
	var pi = create('input');
	pi.type = 'password';
	pi.name = 'lwPassword';
	pi.id = 'lwPassword';
	// поле ввода добавляем в набор полей
	fd.appendChild(pi);
	// кнопка "войти"
	var sb = create('input');
	sb.type = 'submit';
	sb.name = 'lwSignIn';
	sb.id = 'lwSignIn';
	sb.value = 'Войти';
	// подключаем кнопку входа
	fd.appendChild(sb);
	// параграф и ссылка на форму восстановления пароля
	var p = create('p');
	var fpa = create('a');
	fpa.href = host + '/index.php/user/forgot/';
	var fpat = createText('Забыли пароль?');
	fpa.appendChild(fpat);
	p.appendChild(fpa);
	// добавляем ссылку восстановления пароля в набор полей
	fd.appendChild(p);
	// текст и ссылки для регистрации
	var rp = create('p');
	rp.id = 'reglinks';
	var rpt = createText('Зарегистрироваться:');
	var br = create('br');
	var ree = create('a');
	ree.href = host + '/index.php/user/register/employee/';
	var reet = createText('Я ищу работу');
	ree.appendChild(reet);
	var br2 = create('br');
	var rer = create('a');
	rer.href = host + '/index.php/user/register/employer/';
	var rert = createText('Я предлагаю работу');
	rer.appendChild(rert);
	// сборка вместе ссылок и текста
	rp.appendChild(rpt);
	rp.appendChild(br);
	rp.appendChild(ree);
	rp.appendChild(br2);
	rp.appendChild(rer);

	fd.appendChild(rp);

	f.appendChild(fd);
	w.appendChild(clos);
	w.appendChild(f);
	b.appendChild(w);
	w.style.position = 'absolute';
}
