var is_regexp = (window.RegExp) ? true : false;
window.onload = function () {
	obj1 = fetch_object('searchincat');
	if (obj1) { load_all_spec(obj1,'razdel',categ); }
	obj2 = fetch_object('extcateg');
	if (obj2) { load_all_spec(obj2,'razdel',categ); }
	obj3 = fetch_object('regionf');
	if (obj3) { load_all_spec(obj3,'region',reg); }
	obj4 = fetch_object('cityf');
	if (obj4) { load_all_spec(obj4,'city',cit); }
}

function fetch_object(idname) {
	if (document.getElementById){ return document.getElementById(idname); }
	else if (document.all){	return document.all[idname]; }
	else if (document.layers){ return document.layers[idname]; }
	else { return null; }
}
function CheckSession(){ if (!CheckCookie()) return showLogin(true); else return 0; }
function getCookie(n){
	var c = document.cookie;
	if (c.length < 1) return false;
	var b = c.indexOf(n + '=');
	if (b == -1) return false;
	b += (n.length + 1);
	var e = c.indexOf(';', b);
	return unescape((e == -1) ? c.substring(b) : c.substring(b, e));
}
function CheckCookie(){
	var sid = getCookie('Session_id');
	if (!sid) return false;
	var parts = sid.split('.');
	if (parts[2] == '1') return true;
	if (parts[2] == '3') return parseFloat(((new Date().getTime()) - parts[0] * 1000 - parts[1]) / 1000) < 1209600.0;
	return parseFloat(((new Date().getTime()) - parts[0] * 1000 - parts[1]) / 1000) < 7200.0;
}
function showLogin(i) {
	var f = document.forms['login'];
	if (i) { var login = getCookie('colton_login');
		 i = (login && login.length > 1);
		 if (i) { if (f.login.value != login) {f.login.value = login;f.passwd.value = '';}}
	}
	ShowBlock('login-form');
	i ? f.passwd.focus() : f.login.focus();
	return false;
}
function ShowBlock(el,vl){ 
    var d = fetch_object(el);
    if (vl) d.style.display = vl;
    else{
	if (d.style.display == "none" || d.style.display=="") { d.style.display = "block"; }
	else  { d.style.display = "none"; }
    } return false;
}
function showTab(tab) {
	var sav = fetch_object('vsave');
	var sub = fetch_object('vsubs');
	var sis = fetch_object('subinsave');
	var dwb = fetch_object('save-block');
	if (tab == 'vsave') {
		sub.style.backgroundColor='#f1f1f1';
		if ((dwb.style.display == "block") && (sis.style.display == 'none')) {
			sav.style.backgroundColor='#f1f1f1';
			dwb.style.display = "none";
			//document.forms['subform'].searchsubs.defaultChecked = false;
		} else {
			sav.style.backgroundColor='#C3D9FF';
			dwb.style.display = "block";
			//document.forms['subform'].searchsubs.defaultChecked = false;
		}
		sis.style.display = "none";
	}
	else if (tab == 'vsubs') {
		sav.style.backgroundColor='#f1f1f1';
		if ((dwb.style.display == "block") && (sis.style.display != 'none')) {
			sub.style.backgroundColor='#f1f1f1';
			dwb.style.display = "none";
			//document.forms['subform'].searchsubs.defaultChecked = false;
		} else {
			sub.style.backgroundColor='#C3D9FF';
			dwb.style.display = "block";
			//document.forms['subform'].searchsubs.defaultChecked = true;
		}
		sis.style.display = "";
	}
	else {
		dwb.style.display = "none";
		sub.style.backgroundColor='#f1f1f1';
		sav.style.backgroundColor='#f1f1f1';
	}
	return false;
}
function howtoJob(el1,el2){
    var d = fetch_object(el1);
    var e = fetch_object(el2);
    ShowBlock(el1);
    if (d.style.display=='none'){
	e.innerHTML = "<h2><a onClick='return howtoJob(\"body_how\",\"close_how\")' href='?hidehowto=0' rel='nofollow'><span>Как мне найти работу?</span></a></h2>";
	setAjaxCookie('hidehowto','1',86400*362);
    } else {
	e.innerHTML = "<h1>Как мне найти работу?</h1><a onClick='return howtoJob(\"body_how\",\"close_how\")' href='?hidehowto=1' class='plaha withimg' rel='nofollow'><span>свернуть подсказку</span></a>";
	setAjaxCookie('hidehowto','0',86400*362);
    } return false;
}
function setAjaxCookie(nm,vl,ex){
	i = 0;
	JsHttpRequest.query(
        domen +'/Include/ajax/setcookie.php',{'n':nm,'v':vl,'e':ex},
        function(result, errors) {
			if (result) i = 1;
		}, false
        );
	vv = fetch_object('vsave'); if (vv) vv.style.backgroundColor='#f1f1f1';
	vb = fetch_object('vsubs'); if (vb) vb.style.backgroundColor='#f1f1f1';
	ss = fetch_object('subinsave'); if (ss) ss.style.display = 'none';
	sb = fetch_object('save-block'); if (sb) sb.style.display = 'none';	
	return i;
}
function setSubscribe(frm){
	//alert('i am in func');
	var sid = document.subscribe.searchid.value;
	var eml = document.subscribe.searchmail.value;
	var nam = document.subscribe.searchname.value;
	var tim = document.subscribe.searchtime.options[document.subscribe.searchtime.selectedIndex].value;
	alert('|'+sid+'|'+eml+'|'+nam+'|'+tim+'|');
	var b = fetch_object('submes');
	JsHttpRequest.query(
        domen +'/Include/ajax/setsubscribe.php',{'e':eml,'i':sid,'n':nam,'t':tim},
		function(result) {
			ShowBlock('submes','block');
			b.innerHTML = result['message'];
		}, false
	);
	return false;
}
function forgot(){
	var chk=fetch_object('client').checked;
	if (chk==true) {url='clients'} else {url='clients1'}
	window.open('/'+url+'/forgot.php');
}
function SaveVac(nn) {
	i = setAjaxCookie('v_'+nn,'1',86400*362);
	cnt_vac = cnt_vac + 1;
	if (nn.search(/^\D{2}\d+}$/)!=-1) thisimport = false;
	else thisimport = true;
	fetch_object("cntvac").innerHTML = cnt_vac;
	var o = fetch_object("savevac_"+nn);
	if (o) {
		if (thisimport) o.innerHTML = "<a class=or href=\"/save/\" target=_parent>Сохранена</a>";
		else o.innerHTML = "<a class=or href=\"/save/\">Сохранена</a>";
	}
	return false;
}
function DelVac(nn) {
	i = setAjaxCookie('v_'+nn,"",-3600);
	fetch_object("v_"+nn).style.display = 'none';
	cnt_vac = cnt_vac - 1;
	fetch_object("cntvac").innerHTML = cnt_vac;
	return false;
}
function toolUp(id,price){
    if (!is_regexp) return true;
    var a = confirm('Стоимость однократного поднятия вакансии - '+price+' руб. Продолжить?');
    if (!a) return false;
    return true;
}
function toolFill(id,price){
    if (!is_regexp) return true;
    var a = confirm('Стоимость выделения цветом вакансии сроком на 1 неделю - '+price+' руб. Продолжить?');
    if (!a) return false;
    JsHttpRequest.query(
    domen +'/Include/ajax/usertool.php',{'t':'fill','i':id,'p':price},
    function(result) {
        if (result['errors']==0) {
            var v = fetch_object('v'+id);
            var c = v.getElementsByTagName('a');
            var r = new RegExp("fill$");
            for(var i = 0; i < c.length; i++){
                var s = c[i].className.match(r);
                if (s != null) { c[i].className = 'deactiv';
                    if (v) {
                        var cl = v.className + ' f'; v.className = cl;
                    }
                }
            }
        } else {
		if (result['errors']=='1') { alert("На вашем счете недостаточно средств.\nПополните свой лицевой счет"); }
		else if (result['errors']=='2') { alert("Произошла внутренняя ошибка сервера.\nОбратитесь к администратору"); }
            //alert(result['errors']);
        }
    }, true
    );
    
    return false;
}
function toolSticky(id,price){
    if (!is_regexp) return true;
    var a = confirm('Стоимость закрепления вакансии в верху раздела сроком на 1 неделю - '+price+' руб. Продолжить?');
    if (!a) return false;
    return true;
}
function load_all_spec(objSel,tab,id) {
        JsHttpRequest.query(
            '/Include/ajax/loadallspec.php', 
            {
                'tab': tab,
		'reg': reg
            },
            function(result, errors) {
		if (objSel) {
			objSel.options.length = 0;
			for(i=0;i<result.length;i++){
			    if (result[i][1]==id) { isDefaultSelected = true; isSelected = true; }
			    else { isDefaultSelected = false; isSelected = false; }
			    objSel.options[objSel.options.length] = new Option(result[i][0], result[i][1], isDefaultSelected, isSelected);
			}
		}
            },
            false
        );
}
function load_city(reg,cit) {
        JsHttpRequest.query(
            '/Include/ajax/loadcitybyregion.php', 
            {
                'reg': fetch_object(reg).value
            },
            function(result, errors) {
                objSel = fetch_object(cit);
                objSel.options.length = 0;
                for(i=0;i<result.length;i++){
                    objSel.options[objSel.options.length] = new Option(result[i][0], result[i][1]);
                }
            },
            false
        );
}

