function test(form,callback)
{if(form.login.value==''||form.password.value==''||(form.login.value=='à?àÎàÃàÈàÍ'&&form.password.value=='à?àÀá?àÎàËá?'))
{_show(_$('poortal_login_error'));trytofocus(form.login);return false;}
disableForm(form,true);JsHttpRequest.query(window.login_url+'?r='+Math.random(),{user:form.login.value,host:((form.host.tagName.toLowerCase()==='select')?form.host.options[form.host.selectedIndex].value:form.host.value),pass:form.password.value,alien:form.alien.checked,time:new Date().getTimezoneOffset()},function(result,debugMessages)
{if(debugMessages)
alert(debugMessages);if(result.code==200)
{var redirUrl=_$('poortal_login_redirect').value;if(redirUrl.length)
{if(redirUrl=='self')
window.location.reload();else
window.location=redirUrl;return;}
hideLoginFrom(1);_hide(_$('poortal_login_error'));var jid=form.login.value.toLowerCase().split('@');var username=jid[0],domain=jid[1]||((form.host.tagName.toLowerCase()==='select')?form.host.options[form.host.selectedIndex].value:form.host.value);jid=username+'@'+domain;var username_top=jid.length<=25?jid:(jid.substr(0,22)+'...');var username_info=username.length<=12?username:(username.substr(0,11)+'...');_$('phu_username').innerHTML=username_top;setClass(_$('poortal_head'),'poortal_head_auth');if(_$('p_login_mail'))
setClass(_$('p_login_mail'),'p_login_mail_auth');if(('fn'in result)&&_$('plm_greeting'))
_$('plm_greeting').innerHTML=getDayTime()+(result.fn.length?(', '+result.fn):'');updateOwnCabinet();return;}
var er_msg=_$('poortal_login_error');if(result.code==400&&result.login&&result.key)
er_msg.innerHTML='àá?àÅá?àÍàÀá? àÇàÀàÏàÈá?á? àÁá?àËàÀ á?àÀàÍàÅàÅ á?àÄàÀàËàÅàÍàÀ. '+'à?àÎá?á?á?àÀàÍàÎàÂàÈá?á?'.link('/settings/undeleteAcc?user='+result.login+'&key='+result.key);else
er_msg.innerHTML='à?àÎàÃàÈàÍ/àÏàÀá?àÎàËá? àÂàÂàÅàÄàÅàÍá? àÍàÅàÏá?àÀàÂàÈàËá?àÍàÎ. à?àÎàÏá?àÎàÁá?àÉá?àÅ àÅá?àÅ á?àÀàÇ.';_show(er_msg);disableForm(form,false);form.login.blur();trytofocus(form.login);if(callback)
callback(null,result.code);});return false;}
function pluralForm(n,form1,form2,form5)
{n=Math.abs(n)%100;n1=n%10;if(n>10&&n<20)return form5;if(n1>1&&n1<5)return form2;if(n1==1)return form1;return form5;}
function updateOwnCabinet()
{if(!('reload_personal_url'in window))
return;JsHttpRequest.query(window.reload_personal_url,null,function(result,debugMessages)
{if(!(result instanceof Object)||debugMessages)
return;setTimeout(updateOwnCabinet,600000);if(('fn'in result)&&_$('plm_greeting'))
_$('plm_greeting').innerHTML=getDayTime()+(result.fn.length?(', '+result.fn):'');var item=false,t,titles={mail:['àÍàÎàÂá?á? àÏàÈá?àÅàÌ àÍàÅá?','àÍàÎàÂàÎàÅ àÏàÈá?á?àÌàÎ','àÍàÎàÂá?á? àÏàÈá?á?àÌàÀ','àÍàÎàÂá?á? àÏàÈá?àÅàÌ'],love:['àÍàÎàÂá?á? á?àÎàÎàÁá?àÅàÍàÈàÉ àÍàÅá?','àÍàÎàÂàÎàÅ á?àÎàÎàÁá?àÅàÍàÈàÅ','àÍàÎàÂá?á? á?àÎàÎàÁá?àÅàÍàÈá?','àÍàÎàÂá?á? á?àÎàÎàÁá?àÅàÍàÈàÉ']};if(('mail'in result)&&(item=_$('phu_mail_top')))
{t=titles['mail'];item.innerHTML=result['mail']+' '+pluralForm(result[name],t[1],t[2],t[3]);_show(item.parentNode);}
for(var name in titles)
{if(!(name in result)||!(item=_$('plmm_'+name)))
continue;t=titles[name];if(result[name]*=1)
{setClass(item,'p_bold');item.innerHTML=result[name]+' '+pluralForm(result[name],t[1],t[2],t[3]);}
else
item.innerHTML=t[0];}},true)}
function getDayTime()
{var t=new Date().getHours();var d=new Date().getDay();var str_t='';if(t<5)str_t='à?àÎàÁá?àÎàÉ àÍàÎá?àÈ';else if(t<10)str_t='à?àÎàÁá?àÎàÅ á?á?á?àÎ';else if(t<12&&(d==0||d==6))str_t='à?àÎàÁá?àÎàÅ á?á?á?àÎ';else if(t<18)str_t='à?àÎàÁá?á?àÉ àÄàÅàÍá?';else str_t='à?àÎàÁá?á?àÉ àÂàÅá?àÅá?';return str_t;}
function showLoginForm()
{var form=_$('poortal_login_form');if(!_hidden(form))
_hide(form);else
{_show(form);form.login.select();trytofocus(form.login);}
return false;}
function poortalGoSearch(link)
{var query=document.forms['poortal_search_form'].query.value;if(query.length)
link.href=link.className+encodeURIComponent(query);}
function poortalInitSuggest()
{if(typeof(suggest)=='undefined')
return;suggest.init('poortal_suggest','poortal_search_form_input','poortal_search_form','poortal_search_form_submit','http://search.poortal.ru/?search');suggest.goSearch=function(form){suggest.hide();if((suggest.s.style.display=='none'||suggest.sug_select==-1)&&form.query.value.length)
form.submit();}}
function sample(span,url)
{if(url)
JsHttpRequest.query(url,{},function(){},true);var field=(_$('search_form_text_internet')||_$('search_form_text')||_$('poortal_search_form_input')||{});field.value=span.innerHTML;trytofocus(field);}
function focusField(field,def_val)
{if(field.value!=def_val)
return;field.className=field.className.split(' ')[0];field.value='';}
function blurField(field,def_val)
{if(field.value!='')
return;field.className=field.className+' ph_field_inact';field.value=def_val;}
function _$(id){return document.getElementById(id);}
function _$$(tagname,attr)
{var elem=document.createElement(tagname);if(attr)
for(var i in attr)
elem[i]=attr[i];return elem;}
function trytofocus(el){try{el.focus()}catch(e){};}
function setClass(elem,className){if(!hasClass(elem,className)){elem.className+=' '+className;}}
function unsetClass(elem,className){elem.className=(' '+elem.className+' ').replace(' '+className+' ',' ');}
function hasClass(elem,className){return(elem.className==className)||((' '+elem.className+' ').indexOf(' '+className+' ')!=-1);}
function _show(elem){unsetClass(elem,'p_hidden');}
function _hide(elem){setClass(elem,'p_hidden');}
function _hidden(elem){return hasClass(elem,'p_hidden');}
function closeMenu()
{setTimeout(hideLoginFrom,200);}
function hideLoginFrom(p)
{var form=_$('poortal_login_form');if(form&&(!form.login.disabled||p))
_hide(form);}
function show_more(hide)
{(!hide&&hasClass(this,'pm_inactive'))?unsetClass(this,'pm_inactive'):setClass(this,'pm_inactive');}
function set_startpoortal_settings(fieldname,value,cookie_name,project)
{cookie_name=cookie_name||'startpoortal_settings';var settings=getCookie(cookie_name);if(!settings)
settings='';settings=_unpack(settings);if(!(settings instanceof Object))
settings={};settings[fieldname]=value;settings=_pack(settings);project=project||'';setCookie(cookie_name,settings,new Date(new Date().getFullYear()+1,1,1),'/',(new RegExp(project+"(poortal(2|3)?\.)?poortal\.ru").test(document.domain)?document.domain:(project+'.poortal.ru')));}
function get_startpoortal_settings(field_name,cookie_name)
{cookie_name=cookie_name||'startpoortal_settings';var settings=getCookie(cookie_name);if(!settings)
return null;settings=_unpack(settings);if(!(settings instanceof Object))
return null;return(field_name in settings)?settings[field_name]:null;}
function _pack(obj)
{var data=[];for(var field in obj)
data.push(field+'='+obj[field]);return data.join('|');}
function _unpack(packed)
{var data=packed.split('|'),obj={};for(var i=0;i<data.length;i++)
{data[i]=data[i].split('=');if(data[i].length===2)
obj[data[i][0]]=data[i][1];}
return obj;}
function disableForm(form,disable)
{var elems=form.elements;for(var i=0;i<elems.length;i++)
elems[i].disabled=disable;}
function checkAll(src_elem,target_elem_name)
{var elems=src_elem.form.elements;for(var i=0;i<elems.length;i++)
if(elems[i].type.toLowerCase()=='checkbox'&&(elems[i].name==target_elem_name||elems[i].name==src_elem.name))
elems[i].checked=src_elem.checked;}
function setCookie(name,value,expires,path,domain,secure)
{var curCookie=name+"="+escape(value)+
((expires)?"; expires="+expires.toGMTString():"")+
((path)?"; path="+path:"")+
((domain)?"; domain="+domain:"")+
((secure)?"; secure":"");document.cookie=curCookie;}
function getCookie(name)
{var prefix=name+"=";var cookieStartIndex=document.cookie.indexOf(prefix);if(cookieStartIndex==-1)
return null;var cookieEndIndex=document.cookie.indexOf(";",cookieStartIndex+prefix.length);if(cookieEndIndex==-1)
cookieEndIndex=document.cookie.length;return unescape(document.cookie.substring(cookieStartIndex+prefix.length,cookieEndIndex));}
function deleteCookie(name,path,domain)
{if(getCookie(name))
{document.cookie=name+"="+
((path)?"; path="+path:"")+
((domain)?"; domain="+domain:"")+"; expires=Thu, 01-Jan-70 00:00:01 GMT";}}
function getParentByTagName(elem,parent_tag_name)
{var cur_tag_name=elem.tagName.toLowerCase(),parent_tag_name=parent_tag_name.toLowerCase();while(cur_tag_name!==parent_tag_name&&cur_tag_name!=='html')
elem=elem.parentNode,cur_tag_name=elem.tagName.toLowerCase();return(cur_tag_name==='html')?false:elem;}

