$(document).ready(function(){

  function addcat(name,id,block,hidden,type){

   if($("#cat1 option:selected").html() != null)
   {
    cat1_text = $("#cat1 option:selected").html() + "/";
   }
   else
   {
    cat1_text = "";
   }

   var cat2_text = $("#cat2 option:selected").html();
   var cat2_id = $("#cat2 option:selected").attr("value");

  //---Работаем со списком
   if(cat1_all!=false){
 //   block.html("");
   }

  if(type=="category")
  {
   var classdel="cat_del";

   $("#block_category_all").hide();

   level="<div class='level' uid='" + cat2_id + "'><div class='name1'>" + cat1_text + cat2_text + "</div></div>";
   name="<div class='"+type+"' uid='" + id + "'><div class='"+classdel+"'></div><div class='name2'>" + name + "</div></div>"; //добавляемый блок

   $("."+type+"[uid="+id+"]").slideUp(300,function() {$(this).remove();}); //---Удаляем из списка повторы


   if($(".level[uid="+cat2_id+"]").is(":pretty"))
    {
     $(".level[uid="+cat2_id+"]").append(name);
    }
    else
    {
     block.append(level);
     $(".level[uid="+cat2_id+"]").append(name);
    }

  }

  if(type=="region")
  {
   var classdel="reg_del";

   $("#block_region_all").hide();

   name="<div class='"+type+"' uid='" + id + "'><div class='"+classdel+"'></div>" + name + "</div>"; //добавляемый блок

   $("."+type+"[uid="+id+"]").slideUp(); //---Удаляем из списка повторы

   block.append(name);

  }

  //---Работаем с хидденом
   var cat = hidden.attr("value"); //название категории 3
   if(cat1_all!=false){
    cat=str_replace("["+cat1_all+"]",'',cat); //---Удаляем из списка повторы
    cat1_all=false;
   }
   cat=str_replace("["+id+"]",'',cat); //---Удаляем из списка повторы
   hidden.attr("value",cat + "[" + id + "]"); //добавляем id категории

  };

//  select_cat($(".link[cid=1]"));
//  $(".link[cid=1]").html("123");

  try{
  $('.link').click(function(){
    select_cat($(this));
   })
  }
  catch(er){}
  try{ 
  $('#cat1').change(function(){
    $('#stload').html(loader);
      adjustAuto($("#cat1 option:selected").html(),$(this).attr("value"),$("#cat2"),false,$("#cat1").attr("gde"));
    $("#cat3").attr('disabled','disabled');
    $("#cat3").clearSelect();
  })
  }
  catch(er){}
  try{ 
  $('#cat2').change(function(){

    if(($("#cat2 option:selected").html()=="выберите категорию") || ($("#cat2 option:selected").html()=="все"))
    {
     try
        {
     $("#cat3").attr('disabled','disabled');
     $("#cat3").clearSelect();
     $(".cat_add").remove();
        }
     catch(er){}
    }
    else
    {
     $('#stload').html(loader);
       adjustAuto($("#cat2 option:selected").html(),$(this).attr("value"),$("#cat3"),true);
    }
  })
  }
  catch(er){}

  try{
  $('#cat3').live("change",function(){
    $("#cat1").attr('disabled','disabled');
    var id=$("#cat3").attr("value");
      addcat($("#cat3 option:selected").html(),id,$("#block_category"),$("#hidden_category"),"category");
  })
  $('.cat_add').live("click",function(){
    $("#cat1").attr('disabled','disabled');
    var id=$("#cat3").attr("value");
      addcat($("#cat3 option:selected").html(),id,$("#block_category"),$("#hidden_category"),"category");
  })
  }
  catch(er){}
  
  try{ 
  $('.cat_del').live("click",function(){
    var id_del="["+$(this).parent().attr("uid")+"]";    //определили id удаляевомого элемента

    hidden=$("#hidden_category").attr("value");         //считали хидден
    $("#hidden_category").attr("value",str_replace(id_del,'',hidden));  //удалили в хиддене id который определили выше

    if($(this).parent().parent().find(".category").length>1)                       //а есть в этом левеле еще категории?
    {
     $(this).parent().slideUp(300,function() {$(this).remove();});                 //удалили элемент
    }
    else
    {

     $(this).parent().parent().slideUp(300,function() {
       $(this).remove();
       if($("#block_category").find(".level").length==0)                       //а есть вообще тут еще левелы?
       {
        $("#cat1").attr('disabled','');
       }
      });          //Удалили уровень

    }
  
  
    hidden=$("#hidden_category").attr("value");

    if(hidden=="all"){
     $("#block_category_all").show();
    }else{
     $("#block_category_all").hide();
    }

  })
  }
  catch(er){}
  
  try{ 
  $('#bsearch_pos #close').click(function(){
      $('#bsearch_pos').hide();
  })

  $('#open_search_pos').click(function(){
      $('#bsearch_pos').show();
  });
  }
  catch(er){}
  
//--------------------Регион--------------------------------------------------
try{  
  $('#reg').change(function(){
    if($("#reg").attr("value")!="0")
    {
       addcat($("#reg option:selected").html(),$("#reg").attr("value"),$("#block_region"),$("#hidden_region"),"region");
    }
  })
  }
  catch(er){}
  
  try{
  $('.reg_del').live("click",function(){
    var id_del="["+$(this).parent().attr("uid")+"]";
    $(this).parent().slideUp();
    hidden=$("#hidden_region").attr("value");
    $("#hidden_region").attr("value",str_replace(id_del,'',hidden));
    hidden=$("#hidden_region").attr("value");
    if(hidden=="all"){
     $("#block_region").html(region_all);
    }
  })
  }
  catch(er){}

//--------------------Куплю, продам, меняю--------------------------------------------------
try{
  $(".cb_type").click(function(){
      cb_type($(this));
  });
  }
  catch(er){}
//--------------------Куплю, продам, меняю--------------------------------------------------


//--------------------Вся Россия--------------------------------------------------
try{
  $("#allreg").click(function(){
    if($("#reg").attr('disabled'))
    {
       $("#reg").attr('disabled','');
     $("#hidden_region").attr("value","all");
     $("#block_region").html("");
    }
    else
    {
       $("#reg").attr('disabled','disabled');
     $("#block_region").empty();
     $("#block_region").html("Вся Россия");
     $("#hidden_region").attr("value","all[999]");
    }
  });
  }
  catch(er){}
//--------------------Подгрузка формы--------------------------------------------------
  try{
  $(".cb_type").click(function(){
      advanced_form();
  });

  $('#cat1').change(function(){
    advanced_form();
  })
  }
  catch(er){}
});
