var valFlags=[];
var valTimeout=[];
var successCode='<img src=/images/check-reg.gif border=0 style="margin: 5px 0 0 0;" />';
var inputCheckDelay=1000;

var specRegAbout='Рекомендую подробнее рассказать о Вашей специализации, опыте и предоставляемых услугах';

function allowreg(){
 $('regbtn').disabled=false;
 for(i=0;i<valFlags.length;i++){
  if(valFlags[i]==0) $('regbtn').disabled=true;
 }
}

function ajax_checkuserinfo(field, input, obj){
 var url='/scripts/ajax_checkuserinfo.php';
 var user_id=AUTH_USER_ID || 0;
 new Ajax.Request(url, {
  method: 'post',
  parameters: {field: field, val: input.value, user_id: user_id},
  onSuccess: function(transport){
   if(transport.responseText==1){
    if(field=='email'){
     if(obj) obj.innerHTML='Пользователь с таким e-mail адресом уже зарегистрирован';
     valFlags[input.name]=0;
    }
    else {
     if(obj) obj.innerHTML='Пользователь с таким именем уже зарегистрирован';
     valFlags[input.name]=0;
    }
   }
   else {
    if(obj) obj.innerHTML=successCode;
    valFlags[input.name]=1;
   }
   allowreg();
  }
 });
}

function ajax_checkcaptcha(input, chash, obj){
 var url='/scripts/ajax_checkcaptcha.php';
 new Ajax.Request(url, {
  method: 'post',
  parameters: {code: input.value, chash: chash},
  onSuccess: function(transport){
   if(transport.responseText==1){
    if(obj) obj.innerHTML=successCode;
    valFlags[input.name]=1;
   }
   else {
    if(obj) obj.innerHTML='Код введен неверно';
    valFlags[input.name]=0;
   }
   allowreg();
  }
 });
}

function validateLogin(input, obj){
 obj=$(obj);
 var input=$(input);
 login=input.value;
 if(login.length<3 || login.length>15){
  if(obj) obj.innerHTML='Некорректная длина имени';
  valFlags[input.name]=0;
  allowreg();
 }
 else if(login.match(/[^a-zA-Z0-9_\-]/)){
  if(obj) obj.innerHTML='В имени использованы недопустимые символы';
  valFlags[input.name]=0;
  allowreg();
 }
 else if (!login.match(/^[a-zA-Z]{1}/)){
  if(obj) obj.innerHTML='Имя должно начинаться с буквы';
  valFlags[input.name]=0;
  allowreg();
 }
 else {
  ajax_checkuserinfo('login', input, obj);
 }
}

function delayedValidateLogin(input, obj, delay){
 delay=delay||inputCheckDelay;
 clearTimeout(valTimeout[input.name]);
 valTimeout[input.name]=setTimeout(function(){validateLogin(input, obj);}, delay);
}

function validateEmail(input, obj){
 obj=$(obj);
 var input=$(input);
 email=input.value;
 if(!email.match(/^[a-zA-Z0-9_\.\-]+\@[a-zA-Z0-9\.\-]+\.[a-zA-Z]{2,4}$/)){
  if(obj) obj.innerHTML='Введен некорректный e-mail';
  valFlags[input.name]=0;
  allowreg();
 }
 else {
  ajax_checkuserinfo('email', input, obj);
 }
}

function delayedValidateEmail(input, obj, delay){
 delay=delay||inputCheckDelay;
 clearTimeout(valTimeout[input.name]);
 valTimeout[input.name]=setTimeout(function(){validateEmail(input, obj);}, delay);
}

function validatePass(pass1, pass2, obj, obj1){
 obj=$(obj);
 obj1=$(obj1);
 if(!pass1) var input1=document.forms['adminForm']['Password1'];
 else var input1=$(pass1);
 pass1=input1.value;
 if(!pass2) var input2=document.forms['adminForm']['Password2']
 else var input2=$(pass2);
 pass2=input2.value;

 if(pass1.length==0){
  if(obj) obj.innerHTML='Введите пароль';
  valFlags[input1.name]=0;
  allowreg();
 }
 else if(pass1.length<6){
  if(obj) obj.innerHTML='Длина пароля меньше необходимой';
  valFlags[input1.name]=0;
  allowreg();
 }
 else {
  if(obj) obj.innerHTML=successCode;
  valFlags[input1.name]=1;
  allowreg();
 }
 if(pass2.length==0){
  if(obj) obj1.innerHTML='Введите подтверждение пароля';
  valFlags[input2.name]=0;
  allowreg();
 }
 else if(pass2.length<6||pass2!=pass1){
  if(obj) obj1.innerHTML='Ошибка в подтверждении пароля';
  valFlags[input2.name]=0;
  allowreg();
 }
 else {
  if(obj) obj1.innerHTML=successCode;
  valFlags[input2.name]=1;
  allowreg();
 }
}

function delayedValidatePass(pass1, pass2, obj, obj1, delay){
 delay=delay||inputCheckDelay;
 clearTimeout(valTimeout[pass1.name]);
 valTimeout[pass1.name]=setTimeout(function(){validatePass(pass1, pass2, obj, obj1);}, delay);
}

function validateName(input, obj){
 var obj=$(obj);
 var input=$(input);
 var str=input.value;
 if(str.length<3 || str.length>15){
  if(obj) obj.innerHTML='Некорректная длина имени';
  valFlags[input.name]=0;
  allowreg();
 }
 else if(str.match(/[^а-яА-Я\s]/)){
  if(obj) obj.innerHTML='В имени использованы недопустимые символы';
  valFlags[input.name]=0;
  allowreg();
 }
 else {
  if(obj) obj.innerHTML=successCode;
  valFlags[input.name]=1;
  allowreg();
 }
}

function delayedValidateName(input, obj, delay){
 delay=delay||inputCheckDelay;
 clearTimeout(valTimeout[input.name]);
 valTimeout[input.name]=setTimeout(function(){validateName(input, obj);}, delay);
}

function validateCaptcha(input, obj){
 obj=$(obj);
 var input=$(input);
 code=input.value;
 if(code.length!=5){
  if(obj) obj.innerHTML='Код введен '+(code.length<5?'не полностью':'неверно');
  valFlags[input.name]=0;
  allowreg();
 }
 else {
  ajax_checkcaptcha(input, document.forms['adminForm']['nc_captcha_hash'].value, obj);
 }
}

function delayedValidateCaptcha(input, obj, delay){
 delay=delay||inputCheckDelay;
 clearTimeout(valTimeout[input.name]);
 valTimeout[input.name]=setTimeout(function(){validateCaptcha(input, obj);}, delay);
}

function reloadCaptcha(){
 var url='/scripts/ajax_reloadcaptcha.php';
 new Ajax.Request(url, {
  method: 'post',
  onSuccess: function(transport){
   newHash=transport.responseText;
   document.forms['adminForm']['nc_captcha_hash'].value=newHash;
   $('captchaimg').src='/netcat/modules/captcha/img.php?code='+newHash;
   validateCaptcha(document.forms['adminForm']['nc_captcha_code'], 'caperr');
  }
 });
}

function change_notify(obj){
 if(obj.checked==true) $('f_notify_limit', 'f_notify_limit_all', 'notify_email1', 'notify_email2').invoke('enable');
 else $('f_notify_limit', 'f_notify_limit_all', 'notify_email1', 'notify_email2').invoke('disable');

 if($('f_notify_limit_all').checked==true) $('f_notify_limit').disabled=true;
 else $('f_notify_limit').disabled=false;
}

function change_notify_limit(obj){
 if(obj.checked==true) $('f_notify_limit').disabled=true;
 else $('f_notify_limit').disabled=false;
}

function attempt_to_be_spec(options){
 if(typeof options.action=="undefined") options.action="/profile/profile/modify/";
 alertbox.start("<form name='beSpecForm' enctype='multipart/form-data' method='post' action='"+options.action+"'>\
      <input name='bespec' type='hidden' value='1'>\
      <div>\
        Вы ошиблись при регистрации и хотите изменить статус? Нажмите &laquoДа&raquo, если вы действительно являетесь профессионалом рынка недвижимости.\
      </div>\
      </form>", {type: 1, onYes: function(){document.forms['beSpecForm'].submit();}});
}

function get_user_balance(){
 if(!AUTH_USER_ID) return '';
 else {
  var url='/scripts/ajax_get_user_balance.php';
  new Ajax.Request(url, {
   parameters: {user: AUTH_USER_ID},
   onSuccess: function(transport){
    $('user_balance').innerHTML=""+transport.responseText+"";
   }
  });
 }
}

function change_usr_content(user, ctype, type){
 if(typeof user=='undefined'||parseInt(user)==NaN) return false;
 var type=type||0;

 if(ctype=='comments'){
  $('usr_content_head').innerHTML='<table width="690" cellpadding="0" cellspacing="0">\
<tbody><tr>\
<td class="borb"><p class="activ_zakl">Активность:</p></td>\
<td width="6" class="borb"><img src="/images/zakl/leftN.gif" alt=""></td>\
<td class="bg_zakl borb text_zakl_pad"><p><a href="?" class="h22" onclick=\'change_usr_content('+user+', "", 1); return false;\'>Вопросы</a></p></td>\
<td width="6" class="borb"><img src="/images/zakl/leftRN.gif" alt=""></td>\
<td class="borb" width="5"><img src="/images/zakl/rightN.gif" alt=""></td>\
<td class="bg_zakl borb text_zakl_pad"><p><a href="?comments=1" class="h22" onclick=\'change_usr_content('+user+', "", 2); return false;\'>Блог</a></p></td>\
<td class="borb" width="6"><img src="/images/zakl/leftRN.gif" alt=""></td>\
<td width="5"><img src="/images/zakl/rightN.gif" alt=""></td>\
<td class="bg_zakl"><p class="h22">Комментарии</p></td>\
<td width="6"><img src="/images/zakl/rightRN.gif" alt=""></td>\
<td class="borb" width="30%">&nbsp;</td>\
</tr>\
</tbody></table>';
 }
 else if(type==2){
  $('usr_content_head').innerHTML='<table width="690" cellpadding="0" cellspacing="0">\
<tbody><tr>\
<td class="borb"><p class="activ_zakl">Активность:</p></td>\
<td width="6" class="borb"><img src="/images/zakl/leftN.gif" alt=""></td>\
<td class="bg_zakl borb text_zakl_pad"><p><a href="?" class="h22" onclick=\'change_usr_content('+user+', "", 1); return false;\'>Вопросы</a></p></td>\
<td width="6" class="borb"><img src="/images/zakl/leftRN.gif" alt=""></td>\
<td width="5"><img src="/images/zakl/rightN.gif" alt=""></td>\
<td class="bg_zakl"><p class="h22">Блог</p></td>\
<td width="6"><img src="/images/zakl/leftRN.gif" alt=""></td>\
<td class="borb" width="5"><img src="/images/zakl/rightN.gif" alt=""></td>\
<td class="bg_zakl borb text_zakl_pad"><p><a href="?thanks=1" class="h22" onclick=\'change_usr_content('+user+', "comments"); return false;\'>Комментарии</a></p></td>\
<td class="borb" width="6"><img src="/images/zakl/rightRN.gif" alt=""></td>\
<td class="borb" width="30%">&nbsp;</td>\
</tr>\
</tbody></table>';
 }
 else {
  $('usr_content_head').innerHTML='<table width="690" cellpadding="0" cellspacing="0">\
<tbody><tr>\
<td class="borb"><p class="activ_zakl">Активность:</p></td>\
<td width="6"><img src="/images/zakl/leftN.gif" alt=""></td>\
<td class="bg_zakl"><p class="h22">Вопросы</p></td>\
<td width="6"><img src="/images/zakl/leftRN.gif" alt=""></td>\
<td class="borb" width="5"><img src="/images/zakl/rightN.gif" alt=""></td>\
<td class="bg_zakl borb text_zakl_pad"><p><a href="?comments=1" class="h22" onclick=\'change_usr_content('+user+', "", 2); return false;\'>Блог</a></p></td>\
<td class="borb" width="6"><img src="/images/zakl/leftRN.gif" alt=""></td>\
<td class="borb" width="5"><img src="/images/zakl/rightN.gif" alt=""></td>\
<td class="bg_zakl borb text_zakl_pad"><p><a href="?thanks=1" class="h22" onclick=\'change_usr_content('+user+', "comments"); return false;\'>Комментарии</a></p></td>\
<td class="borb" width="6"><img src="/images/zakl/rightRN.gif" alt=""></td>\
<td class="borb" width="30%">&nbsp;</td>\
</tr>\
</tbody></table>';
 }
 var url='/scripts/ajax_get_user_content.php';
 new Ajax.Request(url, {
  parameters: {ctype: ctype, user: user, type: type},
  onSuccess: function(transport){
   $('usr_content').innerHTML=""+transport.responseText+"";
  }
 });
}

function toggle_profile_nav(){
 if(typeof profile_navig=='undefined') profile_navig=0;
 if(typeof profile_navig_mutex=='undefined') profile_navig_mutex=0;
 if(profile_navig_mutex>0) return false;

 if(profile_navig==0){
//  $('profile_nav').show();
  new Effect.BlindDown($('profile_nav'), { duration: 1.0});
  $('kab').style.background='url(/images/cabinet51.png) transparent no-repeat scroll top center';
  profile_navig_mutex=1;
  setTimeout(function(){
   profile_navig_mutex=0;
//   $('profile_nav').style.background='url(/images/kabinet_menu_top1.gif) no-repeat center top';
  }, 1050);
 }
 else {
//  $('profile_nav').hide();
  new Effect.BlindUp($('profile_nav'), { duration: 1.0});
//  $('profile_nav').style.background='';
  profile_navig_mutex=1;
  setTimeout(function(){
   profile_navig_mutex=0;
   $('kab').style.background='url(/images/cabinet5.png) transparent no-repeat scroll top center';
  }, 1050);
 }
 profile_navig=1-profile_navig;
}

function toggle_profile_nav_block(name){
 if(typeof profile_navig_blocks=='undefined') profile_navig_blocks=[];
 if(typeof profile_navig_blocks[name]=='undefined'){
  if($(name+'_tria').src.match(/arrdown/)) profile_navig_blocks[name]=1;
  else profile_navig_blocks[name]=0;
 }
 if(typeof profile_navig_mutex=='undefined') profile_navig_mutex=0;
 if(profile_navig_mutex>0) return false;

 profile_navig_blocks[name]=1-profile_navig_blocks[name];
 if(profile_navig_blocks[name]==1){
  $(name+'_tria').src='/images/arrdown.gif';
//  $(name+'_block').style.display='block';
  new Effect.BlindDown($(name+'_block'), { duration: 1.0});
  profile_navig_mutex=1;
  setTimeout(function(){profile_navig_mutex=0;}, 1050);
 }
 else {
  $(name+'_tria').src='/images/arrright.gif';
//  $(name+'_block').style.display='none';
  new Effect.BlindUp($(name+'_block'), { duration: 1.0});
  profile_navig_mutex=1;
  setTimeout(function(){profile_navig_mutex=0;}, 1050);
 }
}

function change_pay_content(user, ctype){
 if(typeof user=='undefined'||parseInt(user)==NaN) return false;
 if(ctype=='qiwi'){
  $('pay_content_head').innerHTML='<table width="100%" cellpadding="0" cellspacing="0">\
<tbody><tr>\
<td class="borb"><p class="activ_zakl">&nbsp;</p></td>\
<td width="6"><img src="/images/zakl/leftN.gif" alt=""></td>\
<td class="bg_zakl"><p class="h22">Через систему QIWI</p></td>\
<td width="6"><img src="/images/zakl/leftRN.gif" alt=""></td>\
<td class="borb" width="5"><img src="/images/zakl/rightN.gif" alt=""></td>\
<td class="bg_zakl borb text_zakl_pad"><p><a href="?comments=1" class="h22" onclick=\'change_pay_content(1, "sms"); return false;\'>С помощью SMS</a></p></td>\
<td class="borb" width="6"><img src="/images/zakl/rightRN.gif" alt=""></td>\
<td class="borb" width="30%">&nbsp;</td>\
</tr>\
</tbody></table>';
  $('qiwi').style.display='block';
  $('sms').style.display='none';
 }
 else if(ctype=='sms'){
  $('pay_content_head').innerHTML='<table width="100%" cellpadding="0" cellspacing="0">\
<tbody><tr>\
<td class="borb"><p class="activ_zakl">&nbsp;</p></td>\
<td width="6" class="borb"><img src="/images/zakl/leftN.gif" alt=""></td>\
<td class="bg_zakl borb text_zakl_pad"><p><a href="?comments=1" class="h22" onclick=\'change_pay_content(1, "qiwi"); return false;\'>Через систему QIWI</a></p></td>\
<td width="6" class="borb"><img src="/images/zakl/leftRN.gif" alt=""></td>\
<td width="5"><img src="/images/zakl/rightN.gif" alt=""></td>\
<td class="bg_zakl"><p class="h22">С помощью SMS</p></td>\
<td width="6"><img src="/images/zakl/rightRN.gif" alt=""></td>\
<td class="borb" width="30%">&nbsp;</td>\
</tr>\
</tbody></table>';
  $('qiwi').style.display='none';
  $('sms').style.display='block';
 }
}

Event.observe(window, 'load', function(){
 simplePreloadIMG("/images/close1.gif");
 simplePreloadIMG("/images/close2.gif");

 if(AUTH_USER_ID){
  get_user_balance();
  setInterval('get_user_balance()', 10000);
 }
 for(i=0;i<document.forms.length;i++){
  //if(typeof document.forms[i].onsubmit=='function') alert(document.forms[i].onsubmit);
  form=document.forms[i];
  for(k=0;k<form.length;k++){
   if(form[k].alt){
    valFlags[form[k].name]=0;
    valTimeout[form[k].name]=0;
   }
  }
 }
 if(document.forms['adminForm']){
  if(typeof document.forms['adminForm']['f_Login']!='undefined') validateLogin(document.forms['adminForm']['f_Login']);
  if(typeof document.forms['adminForm']['f_Email']!='undefined') validateEmail(document.forms['adminForm']['f_Email']);
 }
 if(typeof profile_navig!='undefined'&&profile_navig==1) setTimeout(function(){toggle_profile_nav();}, 1000);
});
