
/*
on_use_geo_data ;
num_country ;
num_region ;
user_view_country ;
user_view_region ;
user_view_city ;
*/

var set_type_choose_geo_user="";
var obj_form_data_geo_user_set;
var set_packet_num_country = 0;
var set_packet_num_region = 0;
var set_packet_num_city = 0;

var obj_top_block = false;

var num_country_choose_setup_geo_user = 0;
var num_region_choose_setup_geo_user = 0;
var num_city_choose_setup_geo_user = 0;

var num_row_country_choose_setup_geo_user = -1;
var num_row_region_choose_setup_geo_user = -1;
var num_row_city_choose_setup_geo_user = -1;

var first_onstart_choose_setup_geo_user = true;

var open_type_data_choose_setup_geo_user = "";

var height_box_data_choose_setup_geo_user = 250;



function print_block_setup_geo_user()
  {
   
   //mas_data_country.sort( function (a,b){ return ( ( a.pos > b.pos ) ? 1 : ( a.pos < b.pos ? -1 : 0 ) )  } );
   
   //sort_mas_data_country();
   
   height_box_data_choose_setup_geo_user = ( isset_mas_quick_link_user_geo() ? 230 : 250 );
   
   obj_top_block = obj_processing_block.write_up_block("fon_box_choose_geo_user","box_choose_geo_user",700,400,
     "#111111",50,close_block_setup_geo_user,"#ffffff");
   
   forming_main_text_setup_geo_user();
   
  }


function close_block_setup_geo_user()
  {
   
   obj_processing_block.close_up_block("fon_box_choose_geo_user","box_choose_geo_user");
   
  }


function forming_main_text_setup_geo_user()
  {
   var t = "";
   
   t+="<div>";
   t+="<div class='title_box_choose_setup_geo_user'><div>Выберите ваше местоположение</div>";
   t+="<div class='block_elm_close_box_choose_setup_geo_user'><img src='"+dir_http+"/images/icon_close_box_1.png"+"' onclick='close_block_setup_geo_user()'></div>";
   t+="</div>";
   
   t+="<div><div id='main_box_choose_geo_user'>";
   
   t+="</div></div>";
   
   t+="</div>";
   obj_top_block.innerHTML = t;
   
   print_choose_type_setup_geo_user();
  }

function print_choose_type_setup_geo_user()
  {
   
   if ( first_onstart_choose_setup_geo_user )
     {
      
      //num_country ;
      //num_region ;
      num_country_choose_setup_geo_user = num_country > 0 ? num_country : user_view_country;
      num_region_choose_setup_geo_user = num_region > 0 ? num_region : user_view_region;
      num_city_choose_setup_geo_user = user_view_city;
      first_onstart_choose_setup_geo_user = false;
      set_data_num_row_choose_setup_geo_user();
     }
   
   if ( num_region_choose_setup_geo_user > 0 )
     {
      print_choose_data_setup_geo_user("city");
      return;
     }
   
   if ( num_country_choose_setup_geo_user > 0 )
     {
      print_choose_data_setup_geo_user("region");
      return;
     }
   
   print_choose_data_setup_geo_user("country");
   
  }


function set_data_num_row_choose_setup_geo_user()
  {
   
   num_row_country_choose_setup_geo_user = -1;
   num_row_region_choose_setup_geo_user = -1;
   num_row_city_choose_setup_geo_user = -1;
   
   var n = search_data_from_mas(mas_data_country,"country_id",num_country_choose_setup_geo_user,false);
   if ( n !== false )
     num_row_country_choose_setup_geo_user = n;
   n = search_data_from_mas(mas_data_region,"region_id",num_region_choose_setup_geo_user,false);
   if ( n !== false )
     num_row_region_choose_setup_geo_user = n;
   n = search_data_from_mas(mas_data_city,"city_id",num_city_choose_setup_geo_user,false);
   if ( n !== false )
     num_row_city_choose_setup_geo_user = n;
   
  }



function print_status_load_choose_data_setup_geo_user()
  {
   var t = "";
   
   t += "<div>";
   var height_img = 30;
   var width_img = 30;
   
   t += "<div style='padding: "+(height_box_data_choose_setup_geo_user/2)+"px 0px 0px 0px; text-align: center;'>";
   t += "<img src='"+dir_http+"/images/image_preload.gif"+"' alt='идет загрузка...'>";
   t += "<div>";
   
   t += "</div>";
   
   document.getElementById("main_box_choose_geo_user").innerHTML = t;
  }


function print_choose_data_setup_geo_user(type_data)
  {
   var t = "";
   
   if ( typeof( type_data ) == "undefined"  )
     {
      type_data = open_type_data_choose_setup_geo_user;
     }
    else
      open_type_data_choose_setup_geo_user = type_data;
   
   switch ( type_data )
     {
      case ( "country" ):
        t+="<div class='name_data_choose_setup_geo_user'><div>Выберите страну</div></div>";
        
        t += forming_data_choose_setup_geo_user("country",mas_data_country);
        break;
      case ( "region" ):
        t+="<div class='name_data_choose_setup_geo_user'><div>Выберите регион</div></div>";
        
        t += forming_data_choose_setup_geo_user("region",mas_data_region);
        break;
      case ( "city" ):
        t+="<div class='name_data_choose_setup_geo_user'><div>Выберите город</div></div>";
        
        t += forming_data_choose_setup_geo_user("city",mas_data_city);
        break;
      
     }
   
   document.getElementById("main_box_choose_geo_user").innerHTML = t;
  }


function forming_data_choose_setup_geo_user(type_data,mas_data)
  {
   var t = "";
   var length_mas = js_sizeof(mas_data);
   //alert(length_mas);
   
   var kol_td = 1;
   
   if ( length_mas > 10 && length_mas <= 20 )
     kol_td = 2;
    else if ( length_mas > 20 )
      kol_td = 3;
   
   var row,name,name_function,name_id;
   
   var num_td = 0;
   var num_tr = 0;
   
   
   
   t += '<div style="padding: 10px;"><div style="height: '+height_box_data_choose_setup_geo_user+'px;"><div style="height: 100%; overflow-x: hidden; overflow-y: auto;">';
   t += "<div id=''><table border = '0' style='width: 100%;' class='table_data_choose_setup_geo_user' cellspacing='0' cellpadding='0' >";
   
   for ( var num = 0; num < mas_data.length; num++ )
     {
      row = mas_data[num];
      name = row.name;
      
      switch ( type_data )
        {
         case ("country"): name_function = "on_choose_type_setup_geo_user"; name_id = "country_id";break;
         case ("region"): name_function = "on_choose_type_setup_geo_user"; name_id = "region_id";break;
         case ("city"): name_function = "on_choose_city_setup_geo_user"; name_id = "city_id";break;
         
        }
      
      if ( num_td == 0 )
        t += "<tr>";
      
      t+= "<td>";
      t+= '<span onclick = "'+name_function+'('+num+','+row[name_id]+',\''+type_data+'\')" class = "link_on_choose_many_type_setup_geo_user" >';
      t+= name;
      t+= '</span>';
      t+= "</td>";
      
      num_td++;
      
      if ( num_td >= kol_td )
        {
         t+="</tr>";
         num_td = 0;
         num_tr++;
        }
      
     }
   
   if ( num_tr > 1 && num_td > 0 && num_td < kol_td )
     {
      
      for ( var i = 0; i < kol_td - num_td; i++ ) t+="<td></td>";
      
      t+="</tr>";
     }
   
   t += "</table></div>";
   
   t += '</div></div></div>';
   
   t += forming_block_quick_link_user_geo();
   
   t += forming_link_back_choose_setup_geo_user(type_data);
   
   t += '<div class="block_view_name_is_choose_setup_geo_user"><div ><span class="pref_name_is_choose_setup_geo_user">Выбрано:</span> <span id="name_is_choose_setup_geo_user">'+forming_name_is_choose_setup_geo_user()+'</span> ';
   t += '<span class="elm_onset_choose_setup_geo_user" onclick="onset_choose_setup_geo_user()">Запомнить</span>';
   t += '</div></div>';
   
   return (t);
  }



function on_choose_type_setup_geo_user(num_row,num_element,type_choose)
  {
   
   //alert(num_element + " " + type_choose);
   set_form_choose_type_setup_geo_user(type_choose,num_element,num_row);
   set_type_choose_geo_user = type_choose;
   var url=dir_http+"/allinclude/extract_geo_data.php";
   //url+="?num_element="+num_element+"&typeselect="+type_choose;
   var data_send="num_element="+num_element+"&typeselect="+type_choose;//+"&key_index=on";
   
   loadHTTPjc(url,ob_choose_type_setup_geo_user,data_send,true);
   
   print_status_load_choose_data_setup_geo_user();
   
  }


function ob_choose_type_setup_geo_user(answer)
  {
   
   //alert(answer);
   if ( set_type_choose_geo_user == "country" )
     {
       mas_data_region = answer.data;
       decode_mas(mas_data_region);
       print_choose_data_setup_geo_user("region");
      }
     else
       {
        mas_data_city = answer.data;
        decode_mas(mas_data_city);
        print_choose_data_setup_geo_user("city");
        
       }
   
  }


function set_form_choose_type_setup_geo_user(type_choose,num_element,num_row)
  {
   var obj_form = document.forms.forma_setup_user_geo;
   
   switch (type_choose)
     {
      case ("country"):
       obj_form.pf_num_country.value = num_element;
       num_country_choose_setup_geo_user = num_element;
       num_row_country_choose_setup_geo_user = num_row;
       break;
      case ("region"):
       obj_form.pf_num_region.value = num_element;
       num_region_choose_setup_geo_user = num_element;
       num_row_region_choose_setup_geo_user = num_row;
       break;
      case ("city"):
       obj_form.pf_num_city.value = num_element;
       num_city_choose_setup_geo_user = num_element;
       num_row_city_choose_setup_geo_user = num_row;
       break;
     }
   
  }


function on_choose_city_setup_geo_user(num_row,num_city,type_choose)
  {
   
   set_form_choose_type_setup_geo_user("city",num_city,num_row);
   print_choose_data_setup_geo_user("city");
   
  }


function forming_link_back_choose_setup_geo_user(type_data)
  {
   var t = "";
   t += '<div class="marginTB10"><div>';
   var h = "";
   switch ( type_data )
     {
      
      case ("country"): 
       if ( num_country == 0 && num_country_choose_setup_geo_user )
         h += '<span onclick="back_data_choose_setup_geo_user(\''+"country"+'\');" class="back_link_choose_setup_geo_user">Отменить выбор</span>';
       break;
         
      case ("region"):
       if ( num_country == 0 )
         h += '<span onclick="back_data_choose_setup_geo_user(\''+"country"+'\');" class="back_link_choose_setup_geo_user">Перейти к выбору страны</span>';
       break;
      case ("city"):
       if ( num_city_choose_setup_geo_user )
         h += '<span onclick="back_data_choose_setup_geo_user(\''+"city"+'\');" class="back_link_choose_setup_geo_user">Отменить выбранный город</span>';
        else if ( num_region == 0 )
           h += '<span onclick="back_data_choose_setup_geo_user(\''+"region"+'\');" class="back_link_choose_setup_geo_user">Перейти к выбору региона</span>';
       break;
      
     }
   
   t += ( h == "" ? '&nbsp;' : h );
   
   t += '</div></div>';
   
   return (t);
  }


function back_data_choose_setup_geo_user(type_data)
  {
   var obj_form = document.forms.forma_setup_user_geo;
   
   //var is_print = false;
   
   switch ( type_data )
     {
      case ("country"):
       obj_form.pf_num_country.value = 0;
       num_country_choose_setup_geo_user = 0;
       num_row_country_choose_setup_geo_user = -1;
       //print_choose_country_setup_geo_user();
       //is_print = true;
       //break;
      case ("region"):
       obj_form.pf_num_region.value = 0;
       num_region_choose_setup_geo_user = 0;
       num_row_region_choose_setup_geo_user = -1;
       //if ( !is_print ) print_choose_region_setup_geo_user();
       //is_print = true;
       //break;
      case ("city"):
       obj_form.pf_num_city.value = 0;
       num_city_choose_setup_geo_user = 0;
       num_row_city_choose_setup_geo_user = -1;
       //if ( !is_print ) print_choose_region_setup_geo_user();
       //is_print = true;
       break;
      
     }
   
   print_choose_data_setup_geo_user(type_data);
   
  }


function forming_name_is_choose_setup_geo_user()
  {
   var t = "";
   
   if ( num_country == 0 && num_row_country_choose_setup_geo_user > -1 )
     {
      t += "<span>"+mas_data_country[num_row_country_choose_setup_geo_user].name+"</span>";
     }
   
   if ( num_region == 0 && num_row_region_choose_setup_geo_user > -1 )
     {
      //t+=num_region_choose_setup_geo_user;
      t += ( t == "" ? "" : " &raquo;" )+" <span>"+mas_data_region[num_row_region_choose_setup_geo_user].name+"</span>";
     }
   
   if ( num_row_city_choose_setup_geo_user > -1 )
     {
      t += ( t == "" ? "": " &raquo;" )+" <span>"+mas_data_city[num_row_city_choose_setup_geo_user].name+"</span>";
     }
   
   
   if ( t == "" )
     {
      var n = "";
      if ( num_country == 0 )
        n = "Все страны";
       else if ( num_region == 0 )
        n = "Все регионы";
       else
        n = "Все города";
      t += '<span>'+n+'</span>';
      
     }
   
   return (t);
  }


function onset_choose_setup_geo_user()
  {
   
   var obj_form = document.forms.forma_setup_user_geo;
   obj_form.submit();
   
  }


function isset_mas_quick_link_user_geo()
  {
   //функция провеяет наличие массива ссылок быстрого выбора гео-положения
   
   return ( ( typeof( mas_quick_link_geo_data ) != "undefined" ) ? ( ( mas_quick_link_geo_data.length ) ? true : false ) : false );
  }


function forming_block_quick_link_user_geo()
  {
   var t = "";
   
   if ( isset_mas_quick_link_user_geo() )
     {
      t += "<div>";
      t += "<span class='pref_block_quick_link_setup_user_geo'>Быстрый выбор:</span> ";
      var row;
      for ( var i = 0; i < mas_quick_link_geo_data.length; i++ )
        {
         row = mas_quick_link_geo_data[i];
         
         t += '<span onclick="set_quick_link_user_geo('+i+')" class="one_quick_link_setup_user_geo">'+row["name"]+'</span> ';
         
        }
      
      t += "</div>";
     }
   
   return (t);
  }


function set_quick_link_user_geo(num_row)
  {
   
   //alert(num_country+" "+num_region+" "+num_city);
   var num_country = mas_quick_link_geo_data[num_row]["country_id"];
   var num_region = mas_quick_link_geo_data[num_row]["region_id"];
   var num_city = mas_quick_link_geo_data[num_row]["city_id"];
   
   var post = "typeselect=all&num_country="+num_country+"&num_region="+num_region;//+"&key_index=on";
   var url = dir_http + "/allinclude/extract_packet_geo_data.php";
   
   set_packet_num_country = num_country;
   set_packet_num_region = num_region;
   set_packet_num_city = num_city;
   
   loadHTTPjc(url,obLoadQuickLinkUserGeo,post,true);
   
   print_status_load_choose_data_setup_geo_user();
   
  }


function obLoadQuickLinkUserGeo(answer)
  {
   
   //alert(answer);
   mas_data_region = answer.data_region;
   decode_mas(mas_data_region);
   mas_data_city = answer.data_city;
   decode_mas(mas_data_city);
   
   //num_country_choose_setup_geo_user = set_packet_num_country;
   //num_region_choose_setup_geo_user = set_packet_num_region;
   //num_city_choose_setup_geo_user = set_packet_num_city;
   
   set_form_choose_type_setup_geo_user("country",set_packet_num_country,-1);
   set_form_choose_type_setup_geo_user("region",set_packet_num_region,-1);
   set_form_choose_type_setup_geo_user("city",set_packet_num_city,-1);
   
   // запускаем функцию инициализации номеров строк выбранных гео-данных.
   set_data_num_row_choose_setup_geo_user();
   
   print_choose_data_setup_geo_user("city");
   
  }


function start_init_onload_setup_geo_user()
  {
   
   print_block_setup_geo_user();
   
  }




/*
function sort_mas_data_country()
  {
   var t_mas = [];
   for ( var j in mas_data_country )
     {
      //alert( typeof(j) );
      t_mas[t_mas.length] = [j,mas_data_country[j]];
     }
   
   t_mas.sort( function (a,b){ return ( ( a[1].pos < b[1].pos ) ? 1 : ( a[1].pos > b[1].pos ? -1 : 0 ) )  } );
   
   mas_data_country = {};
   
   for ( var j = 0; j < t_mas.length; j++ )
     {
      
      mas_data_country[ "" + t_mas[j][0] + "" ] = t_mas[j][1];
     }
   
  }
*/
















