/*
  v1.4 04.08.2010
*/
var nh = 0;
var ua;
if (/(?:Chrome|Safari)/i.test(navigator.userAgent)){
  nh = 1;
  ua = 'chrome';
} else if (/(?:Opera)/i.test(navigator.userAgent)){
  nh = 1;
  ua = 'opera';
} else if (/Firefox/i.test(navigator.userAgent)){
  nh = 1;
  ua = 'firefox';
} else if (/MSIE/i.test(navigator.userAgent)){
  nh = 1;
  ua = 'ie';
}	

if (nh ==1){
  var content = '<link rel="stylesheet" href="/css/fblock.' + ua + '.css" type="text/css" media="screen"/>';
  document.write(content);
}

// что делать после авторизации
var subscriberu = {
  'subscriberu_subscribe': {'redirect': '', 'reload' : 1},
  'subscriberu_love': {'redirect': '', 'reload' : 1},
  'subscriberu_check_reg': {'redirect': '', 'reload' : 0},
  'subscriberu_answer': {'redirect': '', 'reload' : 1},
  'ssbtn': {'redirect': '', 'reload' : 1}
}	    

$.blockUI.defaults.css = {}; // сброс настроек css для блокиратора
$.blockUI.defaults.css.border = 0;
$.blockUI.defaults.css.top = '40%';
$.blockUI.defaults.css.left = '35%';
$.blockUI.defaults.overlayCSS.opacity = 0.6;

var userinfo = {'authorized' : 0, 'new' : 0, 'quick' : 0, 'needclick' : 0};
var aobj; // объект выбранной ссылки                

var ajax_url = {
                 'auth' : '/MEMBERLOGIN_authen_cred', //авторизация
                 'reg' : '/member/join', //регистрация
                 'recall' : '/member/info', //напоминание пароля
                 'subscribe' : '/member', // подписка
                 'love' : '/member/love', // в избранное (в друзья)
                 'quick' : '/member/quick', // быстрая подписка
		 'update' : '/member/sub', // анкета
		 'profile' : '/member/profile' // профиль подписчика
                };

function doR(redirect, reload){
  if (redirect != ''){
    window.location.href = redirect;
  } else if (reload == 1){
    window.location.href = document.URL;
  }
}

function  getPageSize(){
  var xScroll, yScroll;
  if (window.innerHeight && window.scrollMaxY) {
    xScroll = document.body.scrollWidth;
    yScroll = window.innerHeight + window.scrollMaxY;
  } else if (document.body.scrollHeight > document.body.offsetHeight){ // all but Explorer Mac
    xScroll = document.body.scrollWidth;
    yScroll = document.body.scrollHeight;
  } else if (document.documentElement && document.documentElement.scrollHeight > document.documentElement.offsetHeight){ // Explorer 6 strict mode
    xScroll = document.documentElement.scrollWidth;
    yScroll = document.documentElement.scrollHeight;
  } else { // Explorer Mac...would also work in Mozilla and Safari
    xScroll = document.body.offsetWidth;
    yScroll = document.body.offsetHeight;
  }
  var windowWidth, windowHeight;
  if (self.innerHeight) { // all except Explorer
    windowWidth = self.innerWidth;
    windowHeight = self.innerHeight;
  } else if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict Mode
    windowWidth = document.documentElement.clientWidth;
    windowHeight = document.documentElement.clientHeight;
  } else if (document.body) { // other Explorers
    windowWidth = document.body.clientWidth;
    windowHeight = document.body.clientHeight;
  }
  // for small pages with total height less then height of the viewport
  if(yScroll < windowHeight){
    pageHeight = windowHeight;
  } else {
    pageHeight = yScroll;
  }
  // for small pages with total width less then width of the viewport
  if(xScroll < windowWidth){
    pageWidth = windowWidth;
  } else {
    pageWidth = xScroll;
  }
  return [pageWidth,pageHeight,windowWidth,windowHeight];
}														
	

function quickFormOk(){
  $('#quickFormSubBut').hide();
  $('#quickFormCloseBut').show();
  $('#quickForminputblock').hide();
  $('#trtypeauth').hide(); // скрываем радиокнопки выбора типа авторизации/регистрации
}

// вывод формы проверки и добавления ника
function shownickForm(){
  var blockmsg = '#nickForm';
  $('#nick_msg').html('');
  $('#nickFormBut').attr('disabled', ''); // включаем кнопку
  $('.subscriberu_popup').hide(); // закрываем все другие формы
  $.blockUI.defaults.focusInput = true;
  $.blockUI({ message: $(blockmsg) });
  $('.blockOverlay').attr('title', uimsg['unblock']).click(function(){hidebo();});
  return false;
}

	
// вывод формы анкеты
function showqForm(arg){
  $('#qFormSubBut').attr('disabled', '');
  var blockmsg = '#qForm';
  $('#q_msg').html('');
  //$('#qForm').find('div.subscriberu_pb').html('');
  $('#qForm').find('div.subscriberu_pb').hide('');  
  if ($('#ddselect').html() == ''){
    //alert('ddselect is empty');
    var content = [];
    content.push('<select class=content name="ankDD" style="width: 6em; margin: 0em 0.2em 0em 0em; padding: 0.1em;"><option id="day_on" style="display: none" value="">' + subscriberu_period['day'] + '</option>');	        
    for (i=1; i<=31; i++){ 
      var v = i<10 ? '0' + i : i;
      content.push('<option value="');
      content.push(v);	
      content.push('">');
      content.push(i);
      content.push('</option>');
    }	    
    $('#ddselect').html(content.join(''));    
    content = [];
    content.push('<select class="qq" name="ankMM" style="width: 6em; margin: 0em 0.2em 0em 0em; padding: 0.1em;"><option id="mon_on" style="display: none" value="">' + subscriberu_period['month'] + '</option>');    
    for (i=1; i<subscriberu_month['genitivus'].length; i++){ 
      var v = i<10 ? '0' + i : i;
      content.push('<option value="');
      content.push(v);	
      content.push('">');
      content.push(subscriberu_month['genitivus'][i]);
      content.push('</option>');
    }        
    $('#mmselect').html(content.join(''));    
    content = [];
    content.push('<select class="qq" name="ankYYYY" style="width: 5em; padding: 0.1em;"><option value="">' + subscriberu_period['year'] + '</option>');
    var now= new Date();
    var cur_year = now.getFullYear();    
    var f = cur_year-10;
    var t = cur_year-90;
    for (i=f; i>t; i--){
      content.push('<option value="');
      content.push(i);	
      content.push('">');
      content.push(i);
      content.push('</option>');
    }
    $('#yyselect').html(content.join(''));        
    content = [];
    content.push('<select class="qq" NAME="ankSG" style="width: 18em;"><option value="">' + uimsg['pleaseselect'] + '</option>');
    $.each(subscriberu_country_name, function (i) { 
      content.push('<option value="');
      content.push(subscriberu_country_code[i]);	
      content.push('">');
      content.push(subscriberu_country_name[i]);
      content.push('</option>');
    }); 
    $('#lselect').html(content.join(''));    
  }           
  $('.subscriberu_popup').hide(); // закрываем все другие формы
  $.blockUI.defaults.focusInput = true;
  $.blockUI({ message: $(blockmsg) });
  $('.blockOverlay').attr('title', uimsg['unblock']).click(function(){hidebo();
  if (userinfo['new'] == 1) window.location.href = window.location;});
  return false;
}

	      
// по умолчанию 	
// var farg =  {'quickForminputblock' : 1, 'quickFormSubBut' : 1, 'quickFormCloseBut' : 0};
// ok
// var farg =  {'quickForminputblock' : 0, 'quickFormSubBut' : 0, 'quickFormCloseBut' : 1};

function cts(c){ // code to simbol
  var list = c.split(';');
  for (i=1; i<=list.length; i++){
    list[i].replace(/\&\#/, '');
    list[i] = String.fromCharCode(list[i]);
  }
  return list.join('');
}
	      	
function showquickForm(arg){    
  $('#trtypeauth').show();
  $('#quickFormSubBut').attr('disabled', ''); // включаем кнопку
  $('#subscriberu_email_pb').html(''); // выключаем градусник
  if (!arg){arg =  {'quickForminputblock' : 1, 'quickFormSubBut' : 1, 'quickFormCloseBut' : 0};}// выводим элементы по умолчанию  
  var a = ['quickForminputblock', 'quickFormSubBut', 'quickFormCloseBut'];  
  for (i in a){$('#' + a[i])[arg[a[i]]==1 ? 'show' : 'hide']();}
  var blockmsg = '#quickForm';
  $('#email_msg').html('');
  $('.subscriberu_popup').hide();
  $.blockUI.defaults.focusInput = true;
  $.blockUI({ message: $(blockmsg) });
  $('.blockOverlay').attr('title', uimsg['unblock']).click(function(){hidebo();if (userinfo['new'] == 1) window.location.href = window.location;});
  return false;
}

function showLJForm(){  
  var blockmsg = '#toblog';
  if ($(blockmsg).length){ 
    $.blockUI.defaults.css.top = '30%';    
    $('.subscriberu_popup').hide();    
    $.blockUI.defaults.focusInput = false;
    $.blockUI({ message: $(blockmsg) });    
    $('.blockOverlay').attr('title', uimsg['unblock']).click(function(){hidebo();});    
  }  
  return false;
}

// выводит форму авторизации, которая в зависимости от отложенного действия принимает различный вид
function showloginForm(){    
  $('#lftrtypeauth').show(); 
  $('#loginFormCpt').html(subscriberu_popup_cpt['login']);  
  $('#loginFormCpt').css('margin-left', '-0.6em');
  $('#loginFormBut').css('width', '');
  $('#loginFormBut').val(subscriberu_but_cpt['enter']);
  if (!/MSIE/i.test(navigator.userAgent)){$('#auth_tab').css('margin-top', '1em');}
  $('#loginFormCpt').css("z-index", 1);
  $('#auth_cpt_msg').html('');
  var blockmsg = '#loginForm';
  if ($(blockmsg).length){ 
    $.blockUI.defaults.css.top = '40%';
    $('#auth_msg').html(ua == 'opera' ? '&nbsp;' : '');
    $('#auth_msg_b').html('');
    $('#tremail').show();
    $('#linkrecall').css('color', 'gray');
    $('#linkrecall').css('cursor', 'text');
    $('#credential_0').attr('value', '');
    $('#credential_1').attr('value', '');
    //$('#credential_0').focus();
    var flag = aobj.hasClass('joingroup') && aobj.attr('href').match(/(.+?)\?redirect_to\=(.+?)$/);
    if (flag){ // для групп      
      $('#auth_tab').css('margin-top', '0em');
      $('#loginFormCpt').html('&nbsp;');      
      $('#loginFormCpt').css("z-index", -1);
      $('#auth_cpt_msg').html(uimsg['groupmemberonly']);
      $('#auth_msg').html('');      
      $.blockUI.defaults.css.top = '25%';	     
      $('#loginFormBut').val(subscriberu_but_cpt['joingroup']);
      $('#loginFormBut').css('width', '150px');
    }              
    //groupmemberonly
    //forcomment    
    if (userinfo['quick'] == 1){
      $('#loginFormCpt').html(subscriberu_popup_cpt['email']);
      $('#tremail').hide();
      userinfo['quick'] = 0;
    }      		  
    $('.subscriberu_popup').hide();    
    
    if (aobj.attr('id') == 'autoclick') {
      $.blockUI.defaults.overlayCSS.opacity = 0.8;
      // блокировка прокрутки страницы
      $('body').css('heigth', '100%');
      $('body').css('position', 'relative');
      $('body').css('overflow', 'hidden');      
    }
    $.blockUI.defaults.focusInput = false;
    $.blockUI({ message: $(blockmsg) });            
    
    $('.blockOverlay').attr('title', uimsg['unblock']).click(function(){hidebo();});    
    if ($('#credential_0').is(':visible')){ 
      $('#credential_0').focus();
    } else if ($('#credential_1').is(':visible')){  
      $('#credential_1').focus();
    }
  } else {    
    //
  }    
  return false;
}

function hidebo(){  
  $.blockUI.defaults.overlayCSS.opacity = 0.6;
  if (aobj.attr('id') == 'autoclick') {  
    var d = document.domain.match(/subscribe\.ru/) ? document.domain : 'subscribe.ru'; // вдруг открыли из кеша - домен ПС
    var url = 'http://' + d + '/group/'; // главная групп
    if (aobj.attr('href').match(/redirect_to\=\/group\/(.+?)\//)){
      url +=  RegExp.$1 + '/'; // корневая конкретной группы
    } 
    window.location.href = url;
  }
  if (aobj.hasClass('subscriberu_answer')) $.cookie('Subscribe::Digest_commentid', null, {path: '/'});
  $('.subscriberu_popup').hide()
  $.unblockUI({message: ''});
  if (userinfo['new'] == 1) window.location.href = window.location;
  //if (userinfo['needclick'] == 1) aobj.click();      
}

function advcheck(){
  var flag = ($('#ankDD').val() != '' && $('#ankMM').val() != '' && $('#ankYYYY').val() != '' && $('#ankSG').val() != '' && $('form :text[name=ae\\_fam]').val() != '' && $('form :text[name=ae\\_nam]').val() != '');   
  var cb = $("form :checkbox[name=adv\\.ivroshe]");      
  if (!flag) cb.attr('checked', '');  
  flag ? cb.removeAttr("disabled") : cb.attr("disabled","disabled");  
  $('#advmsg')[flag ? 'hide' : 'show']();  
}

// закрываем форму и разблокируем страницу. при условии -перезагружаем ее и удаляем куку если до открытия формы добавляли комментарий
/*
function hide_form(){     
  if (aobj.hasClass('autoclick')) window.location.href = '/';
  if (aobj.hasClass('subscriberu_answer')) $.cookie('Subscribe::Digest_commentid', null, {path: '/'});													  
  $('.subscriberu_popup').hide()
  $.unblockUI({message: ''});                                  
  if (userinfo['new'] == 1) window.location.href = window.location;
} 
*/   

                                                                                                                                                                                 
$(document).ready(function(){		  

  $('#ljcodebut').live('click', function(event){
    aobj = $(this);
    if (event.button==0){
      showLJForm();
    }
    return false;
  });
  // формат письма
  $(".subscriberu_lf").click(
   function(){
     var k = $(this).attr('name');     
     var h = {};     
     h[k] = $(this).val();
     var pb = $(this).parent().parent().children('div.subscriberu_pb');
     pb.html('<img src="/img/progressbar.gif" width=24 heigth=24/>');
     pb.show();
     var url = ajax_url['update'] + '?' + $(this).attr('name') + '=' + $(this).val() + '&action=update';
     $.ajax({
       type     : 'GET',
       url      : url,
       dataType : 'text',
       timeout  : 5000,
       success  : function(data){pb.hide();}, //pb.html('');
       error    : function(XMLHttpRequest, textStatus, errorThrown){pb.hide();} //pb.html('');
     })
   }
  );
  
  // обрабатываем tab и esc на радиокнопке смены форматы рассылки и диск. листа
  function lfesc(obj){
    var res = obj.parent().attr('id');
    if (res){
      if (res.match(/^lf(\d+?)$/)){
        var id = '#fb' + RegExp.$1;
        if ($(id).length){
          $(id).parent().removeClass('subscriberu_fbhover');
          $(id).hide();
	  $(id).parent().children("a.subscriberu_gear").focus();
        }
      }
    }
  }
  $(".subscriberu_lf").keydown(function(event){  
    switch (event.keyCode) {    
      case  9: lfesc($(this));
      case 27: lfesc($(this));
      default:;
    }  
  });    

  // запись даты рождения в анкету
  $('#ymdankbut').click(
    function(){    
      var data = '';
      var obj = $(this);
      var res = [];
      var a = ['ankDD', 'ankMM', 'ankYYYY'];
      $.each(a, function(i){
        if (i>0) res.push('&');
	res.push(a[i]);
	res.push('=');
	content = $(':input[name=' + a[i] + ']').val();
	res.push(content);
      });
      var b = ['&js=1', '&anketa=rotator'];
      $.each(b, function(i) {res.push(b[i]);});
      data = res.join('');      
      $.ajax({
        type : 'POST',
        url  : ajax_url['update'],
        data : data,
        dataType : 'text',        
        success  : function(res){	 
	  res = res.split(/\n/)[0];
	  if (res.match(/^member\/update\/done ank$/)){ 	
	    $('#ankst').show(); // показываем, что действие выполнено
	    obj.attr("disabled","disabled"); // выключаем кнопку	    
	    $.each(a, function(i){$('#' +a[i]).attr("disabled","disabled");});
	    $('#lankDate').css('color', 'gray');
	  } else {}
	},
	error : function(XMLHttpRequest, textStatus, errorThrown){}
      });    
  });
  
  $('.subscriberu_ank_select').change(
    function(){
      var data = '';
      var obj = $(this);
      var a = [$(this).attr('name'), '=', $(this).val(), '&js=1', '&anketa=rotator'];
      var res = [];
      $.each(a, function(i) {res.push(a[i]);});
      data = res.join('');
      $.ajax({
        type : 'POST',
        url  : ajax_url['update'],
        data : data,
        dataType : 'text',        
        success  : function(res){	 
	  res = res.split(/\n/)[0];	
	  if (res.match(/^member\/update\/done ank$/)){ 	
	    obj.attr("disabled","disabled"); // выключаем кнопку	    
	    $('#l'+ obj.attr('name')).css('color', 'gray');	    	    
	    $('#ankst').show(); // показываем, что действие выполнено
	  } else {}
	},
	error : function(XMLHttpRequest, textStatus, errorThrown){}
      });
  });

  // множественный выбор
  $(".subscriberu_ank_r").click(
    function(){  
      ank_click($(this));
      return;    
  });  
    
  // подписка на рекламные материалы (optin)
  $(".subscriberu_ank_cb").click(
    function(){      
      ank_click($(this));
      return;            
  });  
  
  // обработчик на действие анкетных переключателей и радиокнопок
  function ank_click(obj){
    var data = '';
    var a = [obj.attr('name'), '=', obj.val(), '&js=1', '&anketa=rotator', '&', obj.attr('name'), 'try'];
    var res = [];
    $.each(a, function(i) {res.push(a[i]);});
    data = res.join('');    
    $.ajax({
      type : 'POST',
      url  : ajax_url['update'],
      data : data,
      dataType : 'text',        
      success  : function(res){	 
        res = res.split(/\n/)[0];		
        if (res.match(/^member\/update\/done ank$/)){
	  if (obj.attr('type') == 'radio'){ // если множественный выбор, 
	    var a = $(':radio[name=' + obj.attr('name') + ']');
	    $.each(a, function(i) {a[i].disabled = true;}); // выключаем все элементы
	  } else {	  
            obj.attr("disabled","disabled"); // выключаем кнопку	    
	  }
	  $('#l'+ obj.attr('name')).css('color', 'gray');	    	    
	  $('#ankst').show(); // показываем, что действие выполнено
        } else {}
      },
      error : function(XMLHttpRequest, textStatus, errorThrown){}
    });    
  }
    
  // закрываем блок и позиционируемся на элементе управления
  function scroll2gear(id){
    $('#fb' + id).hide();      
    var to = $('#sg' + id).offset().top; // позиционируемся
    $('html,body').animate({scrollTop: to}, "slow");
  }
  
  $('.cssbtn').click(function(){
    var id = $(this).attr('id');
    if (id.match(/^cssbtn(\d+?)$/)){ // закрываем блок с формой выборочной подписки
      id = RegExp.$1
      scroll2gear(id);
    }
  })
  
  // запрос на выборочную подписку   
  $('.ssbtn').click(function(){
    //if (userinfo.authorized==0){
    if ($('.subscriberu_unknown').length){ // пользователь не авторизован
      aobj = $(this);
      showquickForm();
      return;
    }    
    var id = $(this).attr('id');
    var a = $(this).parent('form').find(':input');   
    var res = [];
    var content = '';
    $.each(a, function(i) { 
      if (a[i].name.match(/^gc_/) && ((a[i].type =='checkbox' && a[i].checked) || a[i].type =='hidden')){
        content = a[i].name + '=' + a[i].value;
        res.push(content); 
      }
    });   
    res.push('js=1');
    res.push('action=update');
    var data = res.join('&'); // формируем запрос
    var pb = $(this).parent('form').children('div.subscriberu_pb');
    pb.html('<img src="/img/progressbar.gif" width=24 heigth=24/>'); // включаем градусник
    pb.show();
    $.ajax({
      type : 'POST',
      url  : ajax_url['update'],
      data : data,
      dataType : 'text',
      success  : function(data){	      
        pb.hide(); //html(''); // убираем градусник
	if (id.match(/^ssbtn(\d+?)$/)){ // закрываем блок с формой	
	  var redirect = '';
	  var reload = 0;
	  if (userinfo['authorized']==1){ // если пользователь авторизовался
	    redirect = subscriberu['ssbtn']['redirect'];
	    reload = subscriberu['ssbtn']['reload'];
	    doR(redirect, reload); // выполняем редирект или перезагрузку страницы
	  }	      
	  id = RegExp.$1
	  // меняем анкоры и ссылки подписных ссылок
	  var lid = '.l' + id;
	  if ($(lid).not('.subscriberu_subscribed').length > 0){
	    var title = subscriberu_anchor['subscriberu_subscribe']['subhover'];
	    $(lid).attr('href', $(lid).attr('href').replace('/sub?', '/unsub?'));
	    $(lid).addClass('subscriberu_subscribed');
	    $(lid).removeClass('subscriberu_notsubscribed');
	    $(lid).html(title);
	  }
	  scroll2gear(id);
	}
      },
      error : function(XMLHttpRequest, textStatus, errorThrown){pb.hide();} //pb.html('');
    })
    
    return false;
  });
  
  // открытие/закрытие формы выборочной подписки
  $(".subscriberu_selection_gear").live('click', function(){             
    if ($(this).attr('id').match(/^sg(\d+?)$/)){
      var num = RegExp.$1;
      var fid = '#f' + num;
      var id = '#fb' + num;
      // закрываем все открытые блоки кроме текущего
      var a = $('.subscriberu_fblock_category:visible'); 
      $.each(a, function(i){if (a[i].id != 'fb' + num){$('#' + a[i].id).hide();}});
      $(fid).children('div.subscriberu_pb').hide(); //html(''); // градусник
      $(id)[$(id).is(':visible') ? 'hide' : 'show']();      
      if ($(id).is(':visible')) $(id).css("z-index", 99);
      return false;
    }    
  })
    
  //tab - 9, esc -27
  $(".subscriberu_gear").keydown(function(event){
    switch (event.keyCode) {    
      case 13: 
        $(this).parent().addClass('subscriberu_fbhover');
        $(this).parent().children("div").show(); 		
        var res = $(this).parent().children("div").attr('id');	
	if (res){
	  if (res.match(/^fb(\d+?)$/)){
	    var id = '#lf' + RegExp.$1;
	    if ($(id).length){
	      var r = $(id).children('.subscriberu_lf').focus();
	      $(id).children('.subscriberu_lf').focus();
	    }
	  }
	}								
	return false;
        break;	      
      default: 
        $(this).parent().removeClass('subscriberu_fbhover');
	$(this).parent().children("div").hide(); 
	$(this).focus();
    }
  });
  
  // закрытие всплывающей подсказки
  $("div.subscriberu_fbx").click(
    function(){
      var fbid = 0;
      if ($(this).attr("id").match(/^fbx(\d+?)$/)) fbid = RegExp.$1;
      if (fbid!=0){
        fbid = '#fb' + fbid;
        $(fbid).parent().removeClass('subscriberu_fbhover');
        $(fbid).hide();
      }
    }
  );

  if ($('#archsearchq').length){ // если на странице есть поле поиска по архиву
    $("#archsearchq").val(uimsg['archsearchtext']); // инициализируем его
  }
    
  // если в поисковом запросе указан пояснительный текст, отправляем пустой запрос
  $(".search").submit( function() {if ($("#archsearchq").val() == uimsg['archsearchtext']) $("#archsearchq").val('');});  
  $("#archsearchq").mouseover( function() {$(this).removeClass('empty'); if ($(this).val() == uimsg['archsearchtext']) $(this).val('');});
  $("#archsearchq").mouseout( function() {if ($(this).val()==''){$(this).val(uimsg['archsearchtext']); $(this).addClass('empty');}}); 

  $("form :radio[name=ank16]").click(
    function(){
     //$('#ricaud')[$(this).val() == 'w' ? 'show' : 'hide']();               
     if ($('#ricaud').length){     
      if ($(this).val() == 'w'){
        $('#ricaud').show();     
        advcheck() 
      } else {
        var cb = $("form :checkbox[name=adv\\.ivroshe]");      
        cb.attr('checked', '');
        cb.attr("disabled","disabled");
        $('#ricaud').hide();
      }
     }
    }
    
  )    
  
  $('.foradv').change(function(){advcheck();})
  $('.foradv').keyup(function(){advcheck();})
    
  // счетчик сообщений
  if ($('#new_count').length){
    $.ajax({
      url      : '/member/dialog?what=get_new_count&js=1', 
      dataType : 'text', 
      timeout  : 10000, 
      success  : function(data){var re = /^(\d){1}/; if (re.test(data)){data = data != '0' ? '+' + data : ''; if (data != '') $('#new_count').text(data);}}  
    });
  }
 

  if ($('#yadb32').length && $('#yadb32filler').length){
    var yadb32filler = document.getElementById('yadb32filler');
    var yadb32 = document.getElementById('yadb32');    
    yadb32.appendChild(yadb32filler);    
//    if ($('.y5_ya').length){
//      alert('y5_ya: ');      
//   }
  }

  $(".typeauthid").click(function(){
    if ($('#quickForm').is(':visible')){ // если это форма быстрой подписки
      $('#authidcpt').html(uimsg[$(this).val() + 'cpt']);
    } else if ($('#loginForm').is(':visible')){ // форма авторизации    
      if ($(this).val() == 'email'){
        $("#trlinkrecall").show();
	$("#trpwd").show();
	$('#lfidcpt').html(uimsg['s' + $(this).val() + 'cpt']);      
      } else if ($(this).val() == 'openid'){
        $("#trlinkrecall").hide();
	$("#trpwd").hide();
	$('#lfidcpt').html(uimsg['s' + $(this).val() + 'cpt']);
      }
    } else if ($('#regForm').is(':visible')){ // форма регистрации
      if ($(this).val() == 'email'){
        $(".trrf").show();
	$("#trrfid").hide();
      } else if ($(this).val() == 'openid'){
        $(".trrf").hide();
	$("#trrfid").show();
      }
    }
  });
  
  $(".fff").submit( function(){return false;}); // блокируем отправку данных формы
  //$("#rff").submit( function(){return false;}); 
  //$("#lff").submit( function(){return false;}); 
    
  $('#quickForm').keydown(function(event){
    switch (event.keyCode) {    
      case 13: $('#quickFormSubBut').click(); break; // enter
      case 27: hidebo(); break; // hide_form
      default:;
    }
  });
															  
  $('#loginForm').keydown(function(event){
    switch (event.keyCode) {    
      case 13:
        var id = event.target.id;
        if (id.match(/^(?:loginFormBut|credential_1)$/)) ajax_auth();
        break;	
      case 27: if (aobj.attr('id') != 'autoclick') hidebo(); break; //hide_form
      default:;
    }
  });
			    
  $('#regForm').keydown(function(event){
    switch (event.keyCode) {
      //case 13: ajax_reg(); break;
      case 27: hidebo(); break; //hide_form()
      default:;
    }
  });							  
  // регистрация
  function ajax_reg(){        
    if ($('#arfpasswd1').val() != $('#arfpasswd2').val()){  
      show_msg('reg_msg', uimsg['diffpwd'], 0);
      return false;
    }         
    var email = $('#arfemail').val();
    var passwd = $('#arfpasswd1').val();  
    var destination = ''; //$('#alfdestination').val();  
    $.post(ajax_url['reg'], {'email': email, 'passwd1' : passwd, 'passwd2' : passwd, 'js' : 1}, function(data) { parse_result(data, ['reg_msg']);});
    return false;
}

  // авторизация                        
  function ajax_auth(){
    var login = $('#credential_0').val();
    var pwd = $('#credential_1').val(); 
    var destination = ''; //$('#alfdestination').val();
    var res = $.post(ajax_url['auth'], {'credential_0': login, 'credential_1' : pwd, 'destination' : destination}, function(data) { parse_result(data, ['auth_msg']);});      
    return false;      
  }

 
    
  function showregForm(){    
    $('#reg_msg').html('');
    $('#arfemail').attr('value', '');
    $('#arfpasswd1').attr('value', '');
    $('#arfpasswd2').attr('value', '');    
    $('.subscriberu_popup').hide();    
    $.blockUI.defaults.focusInput = false;     
    $.blockUI({ message: $('#regForm') });
    $('.blockOverlay').attr('title', uimsg['unblock']).click($.unblockUI);
    if ($('#arfemail').is(':visible')){$('#arfemail').focus();}	      
    return false;
  }

  function changelinkrecall(v){    
    var color = v != '' ? '#1c70a0' : 'gray';
    var cursor = v != '' ? 'pointer' : 'text';    
    $('#linkrecall').css('color', color);        
    $('#linkrecall').css('cursor', cursor);        
    $('#linkrecall').attr('href', ajax_url['recall'] + '?email=' + $('#credential_0').val());
  }
          
  $('#ajaxlogin').click( function(){ return showloginForm();})  
  $('#ajaxreg').live('click', function(){ showregForm(); $('#arfemail').focus(); return false;})
    
  $('.fx').click(function(){ // общее закрытие формы-блока - по классу  
    if ($(this).attr('id') == 'fxq'){ // если это форма ввода анкеты
      showquickForm(); // показываем форму быстрой подписки 
      quickFormOk(); // выводим в сокращенном виде
      show_msg('email_msg', uimsg['congradulation'], 1); // сообщение об успешной регистрации
      userinfo['new'] = 1; // фиксируем, что пользователь новый 
      return;
    }
    hidebo(); //hide_form();
  }) 
      
  $('#credential_0').click(function(){ changelinkrecall($('#credential_0').attr('value'));});          
  $('#credential_0').keypress(function(){ changelinkrecall($('#credential_0').attr('value'));});
  $('#credential_0').keyup(function(){ changelinkrecall($('#credential_0').attr('value'));});

  // отправка данных авторизации
  $('#loginFormBut').click(function(){   
    if ($(".typeauthid:visible:checked").val() == 'openid'){
      var url;      
      if ($('#loginFormBut').val() == subscriberu_but_cpt['joingroup']){ // если вступаем в группу        
        if (aobj.attr('href').match(/(.+?)\?redirect_to\=(.+?)$/)){
	  //url = RegExp.$1;
	  url = aobj.attr('href');
	  if (!url.match(/^http\:\/\//)){
	    url = 'http://' + document.domain + url;
	  }
	}
      } else {      
        url = aobj.attr('href').replace('quick?grp', 'sub?grp');
      }                        
      $('#rform').children('input[name=openid]').val($('#credential_0').val());
      $('#rform').children('input[name=destination]').val(url);
      $('#rform').submit();    			          
      return false;
    }
    ajax_auth();
    return false;
  })
  // отправка данных регистрации  
  $('#regFormBut').click(function(){ 
    if ($(".typeauthid:visible:checked").val() == 'openid'){
      var url = aobj.attr('href');
      $('#rform').children('input[name=destination]').val(url);
      $('#rform').children('input[name=openid]').val($('#regFormid').val());
      $('#rform').submit();    	
      return false;
    }
    ajax_reg();
    return false;
  });
      
  $('#qFormSubBut').click( // сохранение данных анкеты
    function(){      
      $(this).attr("disabled","disabled"); // выключаем кнопку
      var res = [];      
      var data;      
      var a = ['ank16', 'ae_fam', 'ae_nam', 'ankDD', 'ankMM', 'ankYYYY', 'ankSG'];
      var content = '';
      var et = '';      
      $.each(a, function(i) {
        if (i>0){ res.push('&')};
	res.push(a[i]);
	res.push('=');	        
	if (i==0){
	  et = 'radio:checked';
	} else if (i==1 || i==2){
	  et = 'text';
	  a[i].replace('_', '\\_');
	} else {
	  et = 'input';
	}	
	content = $(':' + et + '[name=' + a[i] + ']').val();
	res.push(content);					
      });            
      var a = ['&charset=', $(':input[name=charset]').val(), '&email=', $('#quickFormid').val(), '&js=1', '&anketa=quick', '&try_ae=1'];
      $.each(a, function(i){res.push(a[i]);});      
      var data = res.join(''); // формируем запрос
      var pb = $('#qForm').find('div.subscriberu_pb');
      pb.html('<img src="/img/progressbar.gif" width=24 heigth=24/>'); // выводим прогрессбар
      pb.show();
      $.ajax({
        type : 'POST',
        url  : ajax_url['update'],
        data : data,
        dataType : 'text',        
        success  : function(res){
	  pb.hide(); //html('');
	  res = res.split(/\n/)[0];
	  if (res.match(/^member\/update\/done ank$/)){ 
	    showquickForm(); // показываем форму быстрой подписки
	    quickFormOk(); // выводим в сокращенном виде
            show_msg('email_msg', uimsg['congradulation'], 1); // сообщение об успешной регистрации
	    userinfo['new'] = 1; // фиксируем, что пользователь новый
	  } else {
	    var msg = '';
            for(var i = 0; i < apicode.length; i++){
              if (data == apicode[i]){msg = apimsg[i];break;}
            }	    	 
            show_msg('q_msg', msg, 0);
	  }
	},
	error : function(XMLHttpRequest, textStatus, errorThrown){}
      })	      
    }
  )
    
  $('#quickFormSubBut').click( // быстрая подписка
    function(){             
      if ($(".typeauthid:visible:checked").val() == 'openid'){
	var listgid;
	if (aobj.attr('href').match(/\?grp=(.+?)$/)) listgid = RegExp.$1
	$('#rform').children('input[name=openid]').val($('#quickFormid').val());
	$('#rform').children('#addgrp').val(listgid);
	$('#rform').children('input[name=destination]').val(document.URL);	
	$('#rform').submit();    	
	//alert('openid');
        return false;
      }
      
      $(this).attr("disabled","disabled"); // выключаем кнопку     
      if (!aobj) return false;
      userinfo['quick'] = 1;
      var listgid; // код рассылки           
      var pb = $('#subscriberu_email_pb');	 
      pb.html('<img src="/img/progressbar.gif" width=24 heigth=24/>');
      pb.show();
      if (aobj.hasClass('ssbtn')){
	var h = {};
	if (aobj.attr('id').match(/^ssbtn(\d+?)$/)){
	  id = RegExp.$1	  	  
	  var a = $('#f' +id).find(':input');
	  var res = [];
	  var content = '';
	  $.each(a, function(i) {
	    if (a[i].name.match(/^gc_/) && ((a[i].type =='checkbox' && a[i].checked) || a[i].type =='hidden')){
	      content = a[i].name + '=' + a[i].value;
	      res.push(content);
	    }
	  });
	  res.push('js=1');
	  res.push('email=' + $('#quickFormid').val());
	  var data = res.join('&'); // формируем запрос	  
	  $.ajax({
            type : 'POST',
            url  : ajax_url['quick'],
            data : data,
            dataType : 'text',
            timeout  : 5000,
            success  : function(res){
	      pb.hide(); //html('');
	      res = res.split(/\n/)[0];	      
	      if (res.match(/^member\/quick\/(add|new)$/)){ 
                var what = RegExp.$1
                if (what == 'add'){ // адрес уже подписан, предлагаем варианты
	          showloginForm(); // ввести пароль
		  $('#loginFormCpt').css('margin-left', '3em');
	          $('#loginFormBut').val(subscriberu_but_cpt['subscribe']);
                  $('#credential_0').attr('value', $('#quickFormid').val());
                  $('#credential_0').click(); // включаем ссылку напоминания
	        } else if (what == 'new'){
		  showqForm();
	          //quickFormOk();
                  //show_msg('email_msg', uimsg['congradulation'], 1);
	          //userinfo['new'] = 1;
                }
	      } else {
	        var msg = '';
                for(var i = 0; i < apicode.length; i++){
                  if (data == apicode[i]){msg = apimsg[i];break;}
                }	    	 
	        showquickForm(farg);
		quickFormOk();
                show_msg('email_msg', msg, 0);	    	        
	      }              
            },
            error : function(XMLHttpRequest, textStatus, errorThrown){pb.hide();} //pb.html('');
          })		      
	}			
        return;
      }
            
      if (aobj.attr('href')){
        if (aobj.attr('href').match(/(?:grp=|catalog\/)(.+?)$/)) listgid = RegExp.$1
      }
      var h = {};
      h['addgrp'] = listgid;
      h['email'] = $('#quickFormid').val();
      h['js'] = 1;      
      $.post(ajax_url['quick'], h, 
        function(data){
	  pb.hide(); //html('');
          data = data.split(/\n/)[0];
	  //alert('data= ' + data);
	  var farg =  {'quickForminputblock' : 0, 'quickFormSubBut' : 0, 'quickFormCloseBut' : 1};
          if (data.match(/^member\/quick\/(add|new)$/)){ 
            var what = RegExp.$1
            if (what == 'add'){ // адрес уже подписан, предлагаем варианты	     
              showloginForm(); // ввести пароль	      
	      $('#loginFormCpt').css('margin-left', '3em');
	      $('#loginFormBut').val(subscriberu_but_cpt['subscribe']);
              $('#credential_0').attr('value', $('#quickFormid').val());
              $('#credential_0').click(); // включаем ссылку напоминания
              show_msg('auth_msg', uimsg['quickadd'], 1); // выводим текст со ссылкой на отправку запроса подтверждения              	      
	      $('#auth_msg_b').html(uimsg['sendmeletter']);	      
	      $('#linkconfirm').attr('href', ajax_url['quick'] + '?addgrp=' + listgid + '&email=' + $('#quickFormid').val() + '&byemail=1'); //&js=1 	      
	      $('#lftrtypeauth').hide();
              $('#linkconfirm').click( 
		function(){
    		  h['byemail'] = 1;
    	          $.post(ajax_url['quick'], h, 
    	            function(data) {
    	              data = data.split(/\n/)[0];
    	              if (data == 'member/quick/byemail'){ 
			showquickForm(farg);
                        //quickFormOk(); // вывод окна в "минимальном варианте"
			show_msg('email_msg', uimsg['confirm'], 1);		
		      }	      
    	            }
    	          );
		  return false;
	      }	      
	      )
            } else if (what == 'new'){
	      showqForm();
	      //quickFormOk();
              //show_msg('email_msg', uimsg['congradulation'], 1);
	      //userinfo['new'] = 1;
            }                          
          } else { // например, уже подписан - member\/quick\/already
            var msg = '';
            for(var i = 0; i < apicode.length; i++){
              if (data == apicode[i]){
                msg = apimsg[i];		
                break;
              }
            }	    	 
	    showquickForm(farg);
	    quickFormOk();    
            show_msg('email_msg', msg, 0);	    
          }
        }
      );      
      return false;
    }
  )
  // обработчик напоминания пароля
  $('#linkrecall').click(
    function(){ 
	if ($('#credential_0').val() != ''){
	    $.get(ajax_url['recall'], {'email': $('#credential_0').val()}, function(data) {});
	    show_msg('auth_msg', uimsg['recall'], 1);
	    $('#linkrecall').css('color', 'gray');
	    $('#linkrecall').css('cursor', 'text');
	}
	return false;
    }
  );    	  
  
  $('#nf_nick').keydown(function(event){  
    switch (event.keyCode) {    
      case 13: $('#nickFormBut').click(); break;
      case 27: hidebo(); break;
      default:;
    }
  });
  
  // проверка и (в случае успешного результата) добавление ника в профиль
  $('#nickFormBut').click(function(e){    
  if (e.button==0 || !$(this).hasClass('subscriberu_nonick')){ // только для левой кнопки мыши  
    $(this).attr('disabled', 'disabled');
    var nick = $('#nf_nick').val().replace(/(^\s+)|(\s+$)/g, '');
    if (!nick){
      show_msg('nick_msg', blog_msg_code['nick_used'], 0);
      $(this).attr('disabled', '');
      return false;
    };
    var pb = $('#subscriberu_nick_pb');
    pb.html('<img src="/img/progressbar.gif" width=24 heigth=24/>');
    pb.show();
    var data = 'nick=' + nick + '&js=1';
    $.ajax({
       'type'     : 'POST',
       'url'      :  ajax_url['profile'],
       'data'     :  data,
       'dataType' : 'text',
       'success'  : function(res){
	 $('#nickFormBut').attr('disabled', '');
	 if (res == '0'){ // ник свободен
	   show_msg('nick_msg', blog_msg_code['nick_free'], 1);	   	   
	   var d = 'ae_nick=' + nick + '&js=1&anketa=grppost' + '&charset=' + $('#nick_charset').val() + '&try_ae=1';
	   $.ajax({
             'type'     : 'POST',
             'url'      : ajax_url['update'],
             'data'     : d,
             'dataType' : 'text', 
             'success'  : function(r){
	        pb.hide();	       	       
	        r = r.split(/\n/)[0];
	        if (r.match(/^member\/update\/done ank$/)){ 	
		  userinfo['needclick'] = 1;
		  $('.subscriberu_nonick').removeClass('subscriberu_nonick'); 
		  hidebo();	
		  /*
		  if (aobj.attr('tagName').match(/^a|A$/)){
		    doR('', 1);
		  } else {
		    aobj.click();		 
		  }
		  */
		  aobj.click();
	        } else { // обработка ошибки
	        }	       
	       
	     },
	     error : function(XMLHttpRequest, textStatus, errorThrown){
	       $('#nickFormBut').attr('disabled', '');
	       pb.hide();
	     }
          });    	   	   
	 } else if (res == '1'){
	   pb.hide();
	   show_msg('nick_msg', blog_msg_code['nick_used'], 0);
           return false;
	 }
       },
       'error'    : function(XMLHttpRequest, textStatus, errorThrown){
         $('#nickFormBut').attr('disabled', '');
	 pb.hide();
       }
     })
    } // if e.button==0     
  });
  
  $('.subscriberu_neednick').live('click', function(){
    if (!$(this).hasClass('subscriberu_nonick')){
      doR('', 1);    
    }
  });
  $('.subscriberu_nonick').live('click', function(){ // попытка добавить комментарий или открыть пост пользователем с неуказанным ником    
    aobj = $(this);
    shownickForm();
    return false;
  });
    
  // универсальный обработчик всех действий неавторизованного пользователя - запоминает объект, и откладывает выполнение его действия до авторизации
  $('.subscriberu_unknown').live("click",
    function(e){ 
      if (e.button==0 || userinfo['authorized']==1){ // только для левой кнопки мыши
	aobj = $(this);
	if (aobj.hasClass('subscriberu_unknown')) { // это условие нужно из-за динамического переключения классов
	    //alert('show');
	    userinfo['quick'] = 0;
	    aobj.hasClass('subscriberu_subscribe') ? showquickForm() : showloginForm();	    
	    //aobj.hasClass('subscriberu_subscribe') ? showqForm() : showloginForm();
	    if (aobj.hasClass('subscriberu_answer')){
	      if (aobj.attr('id').match(/^add_comment_(\d+?)$/)){ // если id задан
	        var id = RegExp.$1;	
		$.cookie('Subscribe::Digest_commentid', id, {expires: 7, path: '/'}); // записываем его в куку, чтобы потом спозиционироваться
	      }
	    }	     	    
	}    
	return false;
      }
    }
  );    	    
  
  $('.subscriberu_check_reg').live("click", function() {
     var i = $(this);
     if (!i.hasClass('subscriberu_unknown')) { // пользователь известен
       i.attr("checked", "checked");
       var redirect = subscriberu['subscriberu_check_reg']['redirect'];
       var reload = subscriberu['subscriberu_check_reg']['reload'];
       if (redirect != ''){
         window.location.href = redirect;
       } else if (reload == 1){
         window.location.href = window.location;
       }
     }
  });						  

  // ссылка группы: присоединение/выход
  $('a.joingroup').click( function() {
    if (!$(this).hasClass('ask-anonymous')) {    
      if ($(this).hasClass('removemefromgroup')) {    
	window.location.href = $(this).attr('href');    
      } else {            
        if ($(this).attr('href').match(/(.+?)\?redirect_to\=(.+?)$/)){	  
	  var url = {'join' : RegExp.$1, 'redirect' : RegExp.$2};
	  $.ajax({'url' : url['join'], 'dataType' : 'text', 'timeout' : 5000, 'success' : function(data){window.location.href = document.URL;}});
        } else {
	  window.location.href = $(this).attr('href');    
	}
      }     
    }    
    return false;
  });          
																       
  $('a.subscriberu_subscribe').live('click', function(e) {  
    if (e.button==0 || userinfo['authorized']==1){ // только для левой кнопки мыши     
      var i = $(this); 
      aobj = $(this);
      if (!i.hasClass('subscriberu_unknown')) { // пользователь известен    
        var url = '/member';
        var grp = i.hasClass('subscriberu_notsubscribed') ? 'addgrp' : 'rmgrp';    
        var href = i.attr('href');
        var listgid;      
        if (href.match(/(?:grp=|catalog\/)(.+?)$/)) listgid = RegExp.$1
        var h = {};
        h['action'] = 'update';
        h[grp] = listgid;
        h['js'] = 1;                
        var redirect = '';
        var reload = 0;
        if (userinfo['authorized']==1){ // если пользователь авторизовался
          redirect = subscriberu['subscriberu_subscribe']['redirect'];
          reload = subscriberu['subscriberu_subscribe']['reload'];	      
        }                 
        var farg = new Array(i.attr('lid'), redirect, reload);		
	var pid = '#p' + i.attr('lid');	
	if ($(pid).length){
	  $(pid).remove();
	}
	$(this).parent('.act').after($('<div id="p' + i.attr('lid') + '"><img src="/img/delite.gif" width="48" heigth="7"/></div>'));
	$(pid).css('position', 'absolute');	
	$(pid).css("z-index", 10);
	$(pid).show();		
	//alert(ajax_url['subscribe'] + '?action=' + h['action'] + '&grp=' + listgid + '&js=' + h['js']);
        $.post(ajax_url['subscribe'], h, function(data) {parse_sub_res(data, farg)});      
      } else {
        showquickForm();
      }			
    }
    return false;
 });



// добавление объекта в избраное

  $('a.subscriberu_love').live('click', function(e) { 
    if (e.button==0  || userinfo['authorized']==1){
      var i = $(this); 
      if (!i.hasClass('subscriberu_unknown')) { // пользователь известен        
        var href = i.attr('href');      
        if (href.match(/what=(.+?)\&type=(.+?)\&content=(.+?)$/)){ 
	  var h = {};
          h['what']    = RegExp.$1;
          h['type']    = RegExp.$2;
  	  h['content'] = RegExp.$3;
          h['js']      = 1;             		
	  var redirect = '';
	  var reload = 0;
	  if (userinfo['authorized']==1){// если пользователь авторизовался или зарегистрировался
	    redirect = subscriberu['subscriberu_love']['redirect'];
	    reload = subscriberu['subscriberu_love']['reload'];
	  }							  							     	
	  var farg =  {'id' : i.attr('id'), 'what': h['what'], 'redirect': redirect, 'reload' : reload, 'type' : h['type']};
	  $("a.subscriberu_bookmark#" + i.attr('id') + ' dfn').css('background', 'url("/img/ludi/ico/favorite-bit.gif")  no-repeat 0 0');
          $("a.subscriberu_bookmark#" + i.attr('id')).addClass('subscriberu_load');    
	  $.post(ajax_url['love'], h, function(data) {parse_love_res(data, farg)});
        } else {      
          // параметры не определены
        }             
      } else {
        aobj = $(this);
        userinfo['quick'] = 0;
	//alert('quick ==0 ');
        showloginForm();
      }
    }
    return false;
 });    


$('a.subscriberu_bookmark').live("mouseover", 
  function() { 
    if (!$(this).hasClass('subscriberu_loved')){        
      $("a.subscriberu_bookmark#" + $(this).attr('id') + ' dfn').css('background', 'url("/img/ludi/ico/favorite.png") no-repeat 0 0');
      $("a.subscriberu_bookmark#" + $(this).attr('id') + ' var').css('background', "#f05500");
      $("a.subscriberu_bookmark#" + $(this).attr('id') + ' var').css('color', "#ffffff");
    }
  }
);
  

$("a.subscriberu_bookmark").live("mouseout", 
  function() {
    if (!$(this).hasClass('subscriberu_loved')){        
      $("a.subscriberu_bookmark#" + $(this).attr('id') + ' dfn').css('background', 'url("/img/ludi/ico/favorite-blank.png") no-repeat 0 0');
      $("a.subscriberu_bookmark#" + $(this).attr('id') + ' var').css('background', "");
      $("a.subscriberu_bookmark#" + $(this).attr('id') + ' var').css('color', "#f05500");
    }    
  }
);
    
    

// смена иконки ссылки добавления в избранное
/*
$("a.subscriberu_bookmark").hover(
  function() { 
    if (!$(this).hasClass('subscriberu_loved')){        
      $("a.subscriberu_bookmark#" + $(this).attr('id') + ' dfn').css('background', 'url("/img/ludi/ico/favorite.png") no-repeat 0 0');
      $("a.subscriberu_bookmark#" + $(this).attr('id') + ' var').css('background', "#f05500");
      $("a.subscriberu_bookmark#" + $(this).attr('id') + ' var').css('color', "#ffffff");
    }
  },
  function() { 
    if (!$(this).hasClass('subscriberu_loved')){        
      $("a.subscriberu_bookmark#" + $(this).attr('id') + ' dfn').css('background', 'url("/img/ludi/ico/favorite-blank.png") no-repeat 0 0');
      $("a.subscriberu_bookmark#" + $(this).attr('id') + ' var').css('background', "");
      $("a.subscriberu_bookmark#" + $(this).attr('id') + ' var').css('color', "#f05500");
    }      
  }
);
*/

// смена анкора ссылки из избранного
$("a.subscriberu_love").hover(
  function() {   
    var anchor = '';
    if ($(this).hasClass('subscriberu_loved')){
      anchor = subscriberu_anchor['subscriberu_love']['lovehover'];
    } else if ($(this).hasClass('subscriberu_friended')){
      anchor = subscriberu_anchor['subscriberu_love']['friendhover'];
    }
    var e = $(".subscriberu_love#" + $(this).attr('id') + ' var');
    if (e.html() != '' && anchor != '') e.html(anchor);
  },
  function() {
    var e = $("a.subscriberu_love#" + $(this).attr('id') + ' var');
    if (e.html() != ''){
      var anchor;
      if ($(this).hasClass('subscriberu_loved')){
        anchor = subscriberu_anchor['subscriberu_love']['love'];
      } else if ($(this).hasClass('subscriberu_unloved')){
        anchor = subscriberu_anchor['subscriberu_love']['unlove'];
      } else if ($(this).hasClass('subscriberu_friended')){
        anchor = subscriberu_anchor['subscriberu_love']['friend'];
      } else if ($(this).hasClass('subscriberu_nofriend')){
        anchor = subscriberu_anchor['subscriberu_love']['nofriend'];
      }      
      if (anchor != '') e.html(anchor);
    }
    
  }
);								    


// смена анкора ссылки подписки
$("a.subscriberu_subscribe").hover(
  function() {
    if ($(this).hasClass('subscriberu_subscribed')){
      $(this).html(subscriberu_anchor['subscriberu_subscribe']['subhover']);
    }
  },
  function() {    
    if (! $(this).hasClass('subscriberu_subscribed_unsub')) {   
      var title = $(this).hasClass('subscriberu_subscribed') ? subscriberu_anchor['subscriberu_subscribe']['sub'] : subscriberu_anchor['subscriberu_subscribe']['unsub'];
      $(this).html(title);            	    
    }      
  }
);								    

//.hover(

$('div.subscriberu_fbbox').live("mouseover",
  function(){                   
      var obj = $(this).parent('div.act').children('div.subscriberu_fbbox');    
      if (obj.length){      // позиционирование блока внутри страницы, пляски с бубном
        var tops = obj.offset().top;      
        obj = $(this);
        var topa = obj.offset().top;
        var lefta = obj.offset().top;
        var list = getPageSize();
        var wh = list[3];
        var ph = list[1];
        var ww = list[2];
        var pw = list[0];
        var l = $(this).offset().left;
        var t = $(this).offset().top;			    			    
        var rs = pw - l;
        var ts = wh - t + $(window).scrollTop();        
        var def = {top : -8, left: -6};
        var displace = {top : 10, left: -527};
        var gap = 25;
      
        if ($(this).children('div').hasClass('subscriberu_fblock_author')) def.top = -15;
      
        // авторское окошко для firefox, внутри блока "div.act"
        if ($(this).children('div').hasClass('subscriberu_fblock_author') && ua == 'firefox' && $(this).parent('div.act').length){
          var flag = 0;      			        
          if (rs < $(this).children('div:first').width() && l > rs){    
            if (flag){
              $(this).children('div:first').css("left", def.left);       	  
            } else {
              $(this).children('div:first').css("left", -$(this).children('div:first').width() + rs - gap);
            }		  
          } else {    
            if (flag){
              $(this).children('div:first').css("left", displace.left);
   	      $(this).children('div:first').css("top", displace.top);	  
            } else {
              $(this).children('div:first').css("left", def.left);
            }
          }	            
	  if (ts < $(this).children('div:first').height() && t > ts){      
            $(this).children('div:first').css("top", -$(this).children('div:first').height() + ts - gap);      
          } else {        
            $(this).children('div:first').css("top", flag ? displace.top : def.top);
          }										    
      } else { // остальное выравниваем по вертикали
        if (ts < $(this).children('div:first').height() && t > ts){      
          $(this).children('div:first').css("top", -$(this).children('div:first').height() + ts - gap);      
        } else {        
          $(this).children('div:first').css("top", def.top);
        }
     }            
   }
    
   // проверка на открытые блоки
   $('div.subscriberu_fbbox').removeClass('subscriberu_fbhover');
   $('div.subscriberu_fblock').hide();   
   $(this).addClass('subscriberu_fbhover');          
   var res = $(this).children('div').attr('id');
   if (res){ 
     if (res.match(/^fb(\d+?)$/)){        
       var id = '#lf' + RegExp.$1;
       if ($(id).length){
         var r = $(id).children('.subscriberu_lf').focus();
         $(id).children('.subscriberu_lf').focus();
       }	 
     }  
   }
   
  }
);


$('div.subscriberu_fbbox').live("mouseout", function(){
  $(this).removeClass('subscriberu_fbhover');
});


/*
,
  function(){
    $(this).removeClass('subscriberu_fbhover');
  }
*/

							  							 
// обработка добавления объекта в избранное
function parse_love_res(data, farg){
  var redirect = farg['redirect'];
  var reload = farg['reload'];
  var what  = farg['what'];
  var id = farg['id'];
  var type = farg['type'];
 
  data = data.split(/\n/)[0];
  var info = data.split(':');    
  var re = /^error/;
  var res = re.test(info[0]) ? 0 : 1;
  var code;
  if (info.length == 3){
    code = info[1];
  } else if (info.length == 1){
    code = info[0];
  }            
  if (res==1){      
    var i = $('a.subscriberu_love#' + id);    	    
    i.removeClass('subscriberu_load'); // загрузка выполнена, возвращаем элементу обычное поведение
    $("a.subscriberu_bookmark#" + id + ' dfn').css('background', 'url("/img/ludi/ico/favorite-blank.png") no-repeat 0 0');
    var v = $('a.subscriberu_love#' + id + ' var');
    
    if (i.is('subscriberu_needreload')) reload = 1;    	    
        
    var aclass = {'a' : 'subscriberu_loved', 'b' : 'subscriberu_unlove'}
    var key = {'a': 'love', 'b': 'unlove'};
    if (type == 'friend'){     
      aclass = {'a' : 'subscriberu_friended', 'b' : 'subscriberu_nofriend'}
      key = {'a': 'friend', 'b': 'nofriend'};      
    }    
    var anchor = {'a' : subscriberu_anchor['subscriberu_love'][key['a']], 'b' : subscriberu_anchor['subscriberu_love'][key['b']]};        
    // установка анкоров
    if (data == 'add'){    
      if (v.html() != '') v.html(anchor['a']);  //В избранном      
      i.addClass(aclass['a']);
      i.removeClass(aclass['b']);		
      i.attr('href', i.attr('href').replace('=add', '=del'));     
      i.css('color', "#ffffff");
    } else if (data == 'del'){
      if (v.html() != '') v.html(anchor['b']); //В избранное
      i.addClass(aclass['b']);      
      i.removeClass(aclass['a']);
      i.attr('href', i.attr('href').replace('=del', '=add'));
      i.css('color', "#f05500");
      $("a.subscriberu_bookmark#" + i.attr('id') + ' var').css('color', '#f05500');
      $("a.subscriberu_bookmark#" + i.attr('id') + ' var').css('background', '');
    } else {      
      showloginForm();
      show_msg('auth_msg', uimsg['endsession'], 0);
      return;		         			  
    }   
  } else {
      //alert('разбор ошибки');
  }    			      			        
  doR(redirect, reload);
}

// обработка добавления подписки 
function parse_sub_res(res, farg){    
    var lid = farg[0];
    var pid = '#p' + aobj.attr('lid');
    $(pid).remove();    
    var redirect = farg[1];
    var reload = farg[2];    
    res = res.replace(/\r\n|\r|\n/g,'');    
    //alert('res = ' + res);
    var info = res.split(/\s/); 
    var title;
    if (info[0] == 'member/update/done'){ // установка анкоров   
      // sub - я подписан
      if (info[1] == 'sub'){ // подписался
	title = subscriberu_anchor['subscriberu_subscribe']['sub'];
	$('.' + lid).attr('href', $('.' + lid).attr('href').replace('/sub?', '/unsub?')); 
      } else if (info[1] == 'unsub'){ // отписался
          
	if (lid.match(/^l(\d+?)$/)){
	  var fid = '#f' + RegExp.$1;
	  if ($(fid).length){ // если есть форма, выключаем значения выборочной подписки	
	    var a = $(fid).find(':input');	    
	    $.each(a, function(i){
	      if (a[i].name.match(/^gc_/) && a[i].type =='checkbox' && a[i].checked){
	        a[i].checked = '';
	      }
	    });
	  }
	}
	
        title = subscriberu_anchor['subscriberu_subscribe']['unsub'];
	$('.' + lid).attr('href', $('.' + lid).attr('href').replace('/unsub?', '/sub?'));
      }
    } else {
      showloginForm();
      show_msg('auth_msg', uimsg['endsession'], 0);
      return;
    }			         
    if (info[1].match(/^sub|unsub$/)){ 
      $('.' + lid).toggleClass('subscriberu_subscribed');
      $('.' + lid).toggleClass('subscriberu_notsubscribed');
      $('.' + lid ).html(title);
      //':not(.subscriberu_subscribed_unsub)'
      if (info[1] == 'sub'){
        $('.' + lid + '.subscriberu_subscribed_unsub').html(subscriberu_anchor['subscriberu_subscribe']['subhover']);
	if (aobj.hasClass('subscriberu_subscribed_unsub')){
	  aobj.html(subscriberu_anchor['subscriberu_subscribe']['subhover']);
	}
      }            
    } else if (info[1]){
      //alert(uimsg[info[1]]);
    } 
    doR(redirect, reload);
}    
                  
// обрабоотка выполнения авторизации
function parse_result(res, farg){
   userinfo['authorized'] = 0;
   var rec = res.split("\n");   
   res = rec[0];   
   //alert('res = ' + res);
   var msg_id = farg[0]; // id слоя для вывода сообщения 
   var info = res.split('|'); // :
   var re = /^error/;  
   var mf = re.test(info[0]) ? 0 : 1;   
   var code;
   if (info.length == 3){
     code = info[1];
   } else if (info.length == 1){
     code = info[0];
   }   
   var msg = '';   
   for(var i = 0; i < apicode.length; i++){
     if (code == apicode[i]){
	msg = apimsg[i]; // + '|' + apicode[i];
	break;
     }
   }
   if (!msg) msg = res;       
   //ask-anonymous
   if (mf==1){ // авторизация или регистрация прошла успешно           
     //alert('ok');
     //$.cookie('Subscribe::SSOAuth_login', res, {expires: 7, domain : '.subscribe.ru', path: '/'});
     user_anonymous = false;
     userinfo['authorized'] = 1;
     $('.subscriberu_unknown').removeClass("subscriberu_unknown");
     $('.ask-anonymous').removeClass("ask-anonymous");          
     $.unblockUI({message: ''}); // разблокируем страницу
     $('#loginForm').hide(); // скрываем форму
     aobj.click(); // выполняем отложенное авторизацией действие
   } else {     
     show_msg(msg_id, msg, mf);     
     if (aobj.hasClass('subscriberu_subscribe')){
       if (code == 'error/password/wrong') $('#' + msg_id).append(uimsg['maybebest']);
       var listgid; // код рассылки     
       if (aobj.attr('href').match(/(?:grp=|catalog\/)(.+?)$/)) listgid = RegExp.$1
       var h = {};
       h['addgrp'] = listgid;
       h['email'] = $('#credential_0').val();
       h['js'] = 1;	
       h['byemail'] = 1;			   
       $('#linkconfirm').attr('href', ajax_url['quick'] + '?addgrp=' + listgid + '&email=' + h['email'] + '&byemail=1');
       $('#linkconfirm').click( 
	  function(){            
    	    $.post(ajax_url['quick'], h, 
    	         function(data) {
    	            data = data.split(/\n/)[0];
    	            if (data == 'member/quick/byemail'){ 		    
		      var farg =  {'quickForminputblock' : 0, 'quickFormSubBut' : 0, 'quickFormCloseBut' : 1};
		      showquickForm(farg);
		      //quickFormOk();
		      show_msg('email_msg', uimsg['confirm'], 1);
		    }  
    	         }
    	    );
	    return false;
    	 }
       ) //linkconfirm
     }
   }  
}

$('.subscriberu_category').each(function() {
  var cid = $(this).attr('id');
  $(this).find('p.minimize').click(
    function() {
      var cname = $(this).parents('.category').find('.left h3').text();
      var clink = $(this).parents('.category').find('.left h3 a').attr('href');
      $(this).parents('.category').hide();            
      $(this).parents('.category').addClass('subscriberu_hidden'); // категория скрыта
      
      var a = new Array();
      a = $('div.subscriberu_category:not(.subscriberu_hidden)'); // выбираем нескрытые категории 
      if (a.length==0) $('#issue_menu').hide(); // если таких нет, скрываем и заголовок
      
      var tmp = cid;
      var cookie = $.cookie('Subscribe::Digest_foldedid');			  
      var cookie_check = 1;
      if (cookie != null && cookie != ''){
        cookie = cookie.split(/(?:\s)/);
        var h = {};
        for (var i in cookie) h[cookie[i]] = 1;
        if (h[cid] != 1){
          tmp = $.cookie('Subscribe::Digest_foldedid') + " " + cid;
        } else {
          cookie_check = 0;
        }
      } else {$('.maximize p.title').show();}	            
      if (cookie_check){ // куки нет, значит и категории в списке свернутых нет      
        $.cookie('Subscribe::Digest_foldedid', tmp, {expires: 7, path: '/'});
        var content = '<li><a href="' + clink + '">' + cname + '</a><span class="hv"  cid="' + cid + '">' + uimsg['maximize'] + '<var></var></span></li>';      
        $('.maximize ul').prepend(content).find('li').eq(0)
	  .hover(
            function() {$(this).addClass('jshover');},
	    function() {$(this).removeClass('jshover');}
           ).find('span.hv').click(
              function() {	      	    	      
                $(this).parents('li').remove();
   	        var cid = $(this).attr('cid')
		var cookie = $.cookie('Subscribe::Digest_foldedid');
        	cookie = cookie.split(/(?:\s)/);  
		var tmp = '';
	        for (var j in cookie){
	          if (cookie[j] != cid){
	            if (tmp != '') tmp += ' ';
	            tmp += cookie[j];
	          } 
	        };
	        $.cookie('Subscribe::Digest_foldedid', tmp, {expires: 7, path: '/'});		
	        if (tmp == '') $('.maximize p.title').hide(); // если в куке нет категорий, скрываем заголовок списка
		$("#content .category#" + cid).removeClass('subscriberu_hidden');
	        $("#content .category#" + cid).show();
		var to = $(".category#" + cid).offset().top;
		$('html,body').animate({scrollTop: to}, "fast");
		
		if ($('#issue_menu').is(':hidden')) $('#issue_menu').show();
                return false;
             }
	  );      
      } //endif (cookie_check)
    return false;
  });  
  $(this).hover(
    function() {$(this).addClass('category-jshover');}, 
    function() {$(this).removeClass('category-jshover');}
  );  
});

// формрует список свернутых категорий
function rollupcatlist(){    
  var cookie = $.cookie('Subscribe::Digest_foldedid'); // свернутых категорий в куке нет
  if (cookie == '' || cookie == null) return false;
  $.cookie('Subscribe::Digest_foldedid', cookie, {expires: 7, path: '/'});
  $('.maximize p.title').show(); // показываем заголовок свернутых категорий
  cookie = cookie.split(/(?:\s)/);  
  for (var i in cookie){
    var item = $('#' + cookie[i]);    
    var cname = item.find('.left h3').text();
    var clink = item.find('.left h3 a').attr('href');
    $("#content .category#" + cookie[i]).hide();
    $("#content .category#" + cookie[i]).addClass('subscriberu_hidden');        
    
    var content = '<li><a href="' + clink + '">' + cname + '</a><span class="hv" cid="' + cookie[i] + '">' + uimsg['maximize'] + '<var></var></span></li>';
    $('.maximize ul').prepend(content).find('li').eq(0)
      .hover(
        function() {$(this).addClass('jshover');},
	function() {$(this).removeClass('jshover');}
       ).find('span.hv').click(
          function() {	  
            $(this).parents('li').remove();	    
	    var cid = $(this).attr('cid');	    				    		
	    var cookie = $.cookie('Subscribe::Digest_foldedid');
            cookie = cookie.split(/(?:\s)/);
	    var tmp = '';
	    for (var j in cookie){
	      if (cookie[j] != cid){
	        if (tmp != '') tmp += ' ';
	        tmp += cookie[j];
	      }
	    };
	    $.cookie('Subscribe::Digest_foldedid', tmp, {expires: 7, path: '/'});
	    if (tmp == '') $('.maximize p.title').hide(); // если в куке нет категорий, скрываем заголовок списка
	    $("#content .category#" + cid).removeClass('subscriberu_hidden');
	    $("#content .category#" + cid).show();	
	    var to = $(".category#" + cid).offset().top;
	    $('html,body').animate({scrollTop: to}, "fast"); // позиционирование по id на нужной рубрике
	    	    	    
	    if ($('#issue_menu').is(':hidden')) $('#issue_menu').show();
            return false;
        } // span.hv click
      );
  } // i in cookie  
  var a = new Array();
  a = $('div.subscriberu_category:not(.subscriberu_hidden)');  
  if (a.length==0) $('#issue_menu').hide();
}

// статистика гугла
function gaset(){
  $.ajax({
   'type' : 'GET',
   'async' : true,
   'url'  : 'http://www.google-analytics.com/ga.js', 
   'dataType' : 'script', 
   'cache' : true, 
   'success' : function(data){_gat._getTracker("UA-2163144-1")._trackPageview();}
  });
}

gaset();

var url = document.location.href; //document.URL;
var isindex = 0;
if (url.match(/http:\/\/test.subscribe.ru\/$/) || url.match(/http:\/\/subscribe.ru\/$/)) isindex = 1;
if (isindex) rollupcatlist(); // если страница индексная, выводим список категорий

})




function toggleMsg(current,thread_id,id) {
    var _href='/member/dialog/';
    if ($(current).parents('.messagefrom').hasClass('messagedeleted')) {
     /* AJAX-запрос*/
      $.post(_href, {'thread_id':thread_id,'id':id, 'what' : 'undelete_letter', 'js' : 1}, function(data) {});
      $(current).parents('.messagefrom').removeClass('messagedeleted');
      $(current).parents('.messagefrom').find('p.deletelink').html('<a href="" onclick="return toggleMsg(this,' + thread_id + ',' + id + ');">' + uimsg['deletemsg'] + '</a>');	
    } else {
      /* AJAX-запрос*/
      $.post(_href, {'thread_id':thread_id,'id':id, 'what' : 'delete_letter', 'js' : 1}, function(data) {});
      $(current).parents('.messagefrom').addClass('messagedeleted');
      $(current).parents('.messagefrom').find('p.deletelink').html(uimsg['msgdeleted'] + ': <a href="" onclick="return toggleMsg(this,' + thread_id + ',' + id + ');">' + uimsg['cancel'] + '</a>');
    }
   return false;
}

function eraseMsg(current,thread_id,id) {
    var _href='/member/dialog/';
    if ($(current).parents('.messagefrom')) {
     /* AJAX-запрос*/
     $.post(_href, {'thread_id':thread_id,'id':id, 'what' : 'erase_letter', 'js' : 1}, function(data) {});
     $(current).parents('.messagefrom').hide();
    }
   return false;
}

function undeleteMsg(current,thread_id,id) {
    var _href='/member/dialog/';
    if ($(current).parents('.messagefrom')) {
    /* AJAX-запрос*/
    $.post(_href, {'thread_id':thread_id,'id':id, 'what' : 'undelete_letter', 'js' : 1}, function(data) {_href=_href + 'thread/' + thread_id + '#' + id; window.location.href = _href;});
    }
   return false;
}



function isEmptyCheck(id) 
  {
  var curText= $("#feedback_text").val(); 
  var patt = /^(\s*)$/g;
  if ( curText.match(patt) )
   {   
   $('#feedback_button').css('color', '#cccccc');
   $("#feedback_button").attr('disabled',true);
   }
  else
   {
   $('#feedback_button').css('color', '#000000');
   $("#feedback_button").attr('disabled',false);
   }
  return true;
  }    


function var2innerHTML(id, val){
    try {
        var obj = document.getElementById(id);
        obj.innerHTML = val;
        return obj;
    }catch(err){
        return null;
    }    
}                                        

function innerHTML2var(id, defval){
    var v;
    try {
        v = document.getElementById(id);
        v = v.innerHTML;
    }catch(err){
	v = defval;
    }
    return v;
}
                                    
// выводит сообщение
function show_msg(id, msg, mf){
    if (id == 'auth_msg'){
      //$('#auth_cpt_msg').html('');
    }
    
    var color = (mf==1) ? '#000000' : 'red';
    var content = '<font color=' + color + '>' + msg + '</font> ';
    var2innerHTML(id, content);
}                                
