1if(typeof altasib_geobase=='undefined')var altasib_geobase={}; 2 3altasib_geobase.letters=''; 4altasib_geobase.timer='0'; 5altasib_geobase.request_numb=0; 6altasib_geobase.handlers_set=false; 7 8if(altasib_geobase.is_mobile) 9 altasib_geobase.search_en=$('input').is('[name=altasib_geobase_mb_search]'); 10else 11 altasib_geobase.search_en=$('input').is('[name=altasib_geobase_search]'); 12altasib_geobase.select_city=true; 13 14if(typeof BX!='undefined'){ 15 BX.addCustomEvent(window,'onFrameDataReceived',function(json){altasib_geobase.sc_init_handlers();}); 16} 17else if(typeof top.BX!='undefined'){ 18 top.BX.addCustomEvent(window,'onFrameDataReceived',function(json){altasib_geobase.sc_init_handlers();}); 19} 20 21$(document).ready(function(){ 22 $(this).keydown(function(e){ 23 if(e.keyCode===27&&$('div#altasib_geobase_win').is(':visible')){ 24 if(altasib_geobase.is_mobile)altasib_geobase.sc_mb_cls(); 25 else altasib_geobase.sc_cls(); 26 } 27 }); 28 altasib_geobase.sc_parse_city(); 29 30 window.setTimeout('altasib_geobase.sc_init_handlers()',350); 31}); 32 33altasib_geobase.sc_init_handlers=function(){ 34 if(altasib_geobase.handlers_set)return false; 35 36 $('.altasib_geobase_sml_btn.altasib_geobase_sml_yes').click(function(event){ 37 event.stopPropagation(); 38 return false; 39 }); 40 41 if(altasib_geobase.is_mobile){ 42 var mb_close=$('#altasib_geobase_mb_close a'); 43 if(mb_close.length>0) 44 altasib_geobase.handlers_set=true; 45 46 mb_close.click(function(event){ 47 event.preventDefault();altasib_geobase.sc_mb_cls(); 48 }); 49 50 $('.altasib_geobase_mb_disabled#altasib_geobase_mb_btn').click(function(event){ 51 event.preventDefault();altasib_geobase.sc_onclk(); 52 }); 53 54 $('.altasib_geobase_mb_find #altasib_geobase_mb_info').click(function(event){ 55 event.preventDefault();altasib_geobase.sc_add_city(event); 56 })
57 .keyup(function(event){altasib_geobase.sc_selKey(event);}) 58 .dblclick(function(event){altasib_geobase.sc_onclk();}); 59 60 $('.altasib_geobase_mb_find #altasib_geobase_mb_search').click(function(event){ 61 event.preventDefault();altasib_geobase.clear_field(); 62 }) 63 .focus(function(event){altasib_geobase.city_field_focus();}) 64 .keyup(function(event){altasib_geobase.sc_inpKey(event);}) 65 .keydown(function(event){altasib_geobase.sc_inpKeyDwn(event);}) 66 .blur(function(event){altasib_geobase.city_field_blur();}); 67 68 $('a#all_cities_button_mobile').click(function(event){ 69 event.preventDefault();altasib_geobase.all_cities(); 70 }); 71 72 $('.altasib_geobase_mb_link_city').click(function(event){ 73 if($('div#altasib_geobase_mb_win').length>0) 74 altasib_geobase.sc_open(); 75 else 76 altasib_geobase.sc_load_open(); 77 }); 78 79 }else{ 80 81 var dp_cities=$('.altasib_geobase_cities ul li a'); 82 if(dp_cities.length>0) 83 altasib_geobase.handlers_set=true; 84 85 dp_cities.click(function(event){event.preventDefault();}); 86 87 $('#altasib_geobase_close a').click(function(event){ 88 event.preventDefault();altasib_geobase.sc_cls(); 89 }); 90 91 $('.altasib_geobase_link_city').click(function(event){ 92 if($('div#altasib_geobase_win').length>0) 93 altasib_geobase.sc_open(); 94 else 95 altasib_geobase.sc_load_open(); 96 }); 97 98 $('.altasib_geobase_disabled#altasib_geobase_btn').click(function(event){ 99 event.preventDefault();altasib_geobase.sc_onclk(); 100 }); 101 102 $('.altasib_geobase_find #altasib_geobase_info').click(function(event){ 103 event.preventDefault();altasib_geobase.sc_add_city(event); 104 })
105 .keyup(function(event){altasib_geobase.sc_selKey(event);}) 106 .dblclick(function(event){altasib_geobase.sc_onclk();}); 107 108 $('.altasib_geobase_find #altasib_geobase_search') 109 .keyup(function(event){altasib_geobase.sc_inpKey(event);}) 110 .keydown(function(event){altasib_geobase.sc_inpKeyDwn(event);}); 111 } 112 return true; 113} 114 115altasib_geobase.sc_init_vars=function(){ 116 if(altasib_geobase.is_mobile){ 117 altasib_geobase.search_en=$('input').is('[name=altasib_geobase_mb_search]'); 118 if(altasib_geobase.search_en){ 119 var search=$('input[name=altasib_geobase_mb_search]'); 120 } 121 }else{ 122 altasib_geobase.search_en=$('input').is('[name=altasib_geobase_search]'); 123 124 if(altasib_geobase.search_en){ 125 var search=$('input[name=altasib_geobase_search]'); 126 } 127 altasib_geobase.height=$('div#altasib_geobase_win').css('height'); 128 } 129} 130 131altasib_geobase.sc_repeat=function(){ 132 if(altasib_geobase.is_mobile){ 133 var list='#altasib_geobase_mb_list_'; 134 var actClass='altasib_geobase_mb_act'; 135 if((actEl=$('.altasib_geobase_mb_cities .altasib_geobase_mb_fst .'+actClass)).length==0) 136 actEl=$('.altasib_geobase_mb_cities .altasib_geobase_mb_list_ie .'+actClass); 137 }else{ 138 var list='#altasib_geobase_list_'; 139 var actClass='altasib_geobase_act'; 140 if((actEl=$('.altasib_geobase_cities .altasib_geobase_fst .'+actClass)).length==0) 141 actEl=$('.altasib_geobase_cities .altasib_geobase_list_ie .'+actClass); 142 } 143 var flag=true; 144 if(typeof altasib_geobase.codes!=='undefined'){ 145 for(var i=0;i<altasib_geobase.codes.length;i++){ 146 if(actEl.children().is(list+altasib_geobase.codes[i])){ 147 flag=false;break; 148 } 149 } 150 if(flag)actEl.remove(); 151 else actEl.removeClass(actClass); 152 } 153} 154 155//It is my city 156altasib_geobase.sc_onclk=function(cityid,ctryCode,regionCode){ 157 var id='',cityName=''; 158 if(typeof ctryCode=='undefined'||ctryCode=='') 159 ctryCode=altasib_geobase.COUNTRY_CODE; 160 161 if(altasib_geobase.is_mobile){ 162 var btn=$('#altasib_geobase_mb_btn'), 163 dis='altasib_geobase_mb_disabled', 164 list_='altasib_geobase_mb_list_', 165 search=$('input#altasib_geobase_mb_search'), 166 cities='.altasib_geobase_mb_cities', 167 fst='.altasib_geobase_mb_fst', 168 list_ie='.altasib_geobase_mb_list_ie'; 169 }else{ 170 var btn=$('#altasib_geobase_btn'), 171 dis='altasib_geobase_disabled', 172 list_='altasib_geobase_list_', 173 search=$('input#altasib_geobase_search'), 174 cities='.altasib_geobase_cities', 175 fst='.altasib_geobase_fst', 176 list_ie='.altasib_geobase_list_ie'; 177 } 178 179 if(typeof cityid=='undefined'&&btn.hasClass(dis)&&cityid!='Enter')return false; 180 181 if(typeof cityid!=='undefined'&&cityid!='Enter'&&cityid!=''){ 182 if(!isNaN(cityid)){ 183 id=cityid; 184 altasib_geobase.short_name=altasib_geobase.sc_trim($('#'+list_+id).html()); 185 altasib_geobase.full_name=altasib_geobase.sc_trim($('#'+list_+id).attr('title')); 186 }else{ 187 cityName=cityid; 188 altasib_geobase.short_name=$('#'+list_+cityName).html(); 189 altasib_geobase.full_name=$('#'+list_+cityName).attr('title'); 190 } 191 } 192 else if(typeof altasib_geobase.selected_id!=='undefined'){ 193 id=altasib_geobase.selected_id; 194 } 195 altasib_geobase.sc_repeat(); 196 197 if((typeof regionCode=='undefined'||regionCode=='null')&&typeof altasib_geobase.region_code!='undefined'){ 198 regionCode=altasib_geobase.region_code; 199 } 200 201 if(typeof altasib_geobase.short_name!='undefined'&&typeof altasib_geobase.socrs!='undefined'){ 202 var index,len,socr=altasib_geobase.short_name.split('. ')[0]; 203 for(index=0,len=altasib_geobase.socrs.length;index<len;++index){ 204 if(socr==altasib_geobase.socrs[index]){ 205 altasib_geobase.short_name=altasib_geobase.short_name.substring(socr.length+2);break; 206 } 207 } 208 } 209 210 if(document.getElementById(list_+(!isNaN(cityid)?id:cityName.replace(/[_ \t]+/g,'_')))==null){ 211 if((elem=$(cities+' '+fst)).length==0) 212 elem=$(cities+' '+list_ie); 213 elem.prepend('<li>'+'<a id="'+list_+(!isNaN(cityid)?id:cityName.replace(/[_ \t]+/g,'_')) 214 +'" title="'+search.val()+'" href="#"'+' onclick="altasib_geobase.sc_onclk(\''+altasib_geobase.short_name+'\',\''+ctryCode+'\');return false;">'+altasib_geobase.short_name+'</a></li>'); 215 } 216 $.ajax({ 217 type:'POST', 218 url:'/bitrix/tools/altasib.geobase/altasib_geobase_get.php', 219 dataType:'json', 220 data:{'sessid':altasib_geobase.bitrix_sessid, 221 'city_id':id, 222 'CITY_NAME':cityName, 223 'COUNTRY_CODE':ctryCode, 224 'REGION_CODE':regionCode, 225 'url':window.location.pathname, 226 'save':'Y' 227 }, 228 timeout:10000, 229 success:function(data,textStatus){altasib_geobase.after_set_city(data,cityid,cityName,id);}, 230 complete:function(data,textStatus){ 231 if(textStatus!='success') 232 altasib_geobase.after_set_city(data.responseText,cityid,cityName,id); 233 } 234 }); 235} 236 237altasib_geobase.after_set_city=function(data,cityid,cityName,id){ 238 if(altasib_geobase.is_mobile){ 239 var list=$('div#altasib_geobase_mb_info'); 240 }else{ 241 var list=$('div#altasib_geobase_info'); 242 } 243 list.html(''); 244 if(data==''||data==null) 245 list.animate({height:'hide'},'fast'); 246 else{ 247 if(data=='1'||data[data.length-1]=='1'||data[0]=='1'){ 248 if(altasib_geobase.is_mobile){ 249 $('#altasib_geobase_mb_list_'+(!isNaN(cityid)?id:cityName.replace(/[_ \t]+/g,'_'))) 250 .parent().addClass('altasib_geobase_mb_act'); 251 $('#altasib_geobase_mb_btn').addClass('altasib_geobase_mb_disabled'); 252 253 var clink=$('.altasib_geobase_mb_link .altasib_geobase_mb_link_city'); 254 var search=$('input#altasib_geobase_mb_search'); 255 window.setTimeout('altasib_geobase.sc_mb_cls()',275); 256 window.setTimeout('altasib_geobase.sml_cls()',275); 257 }else{ 258 $('#altasib_geobase_list_'+(!isNaN(cityid)?id:cityName.replace(/[_ \t]+/g,'_'))) 259 .parent().addClass('altasib_geobase_act'); 260 $('#altasib_geobase_btn').addClass('altasib_geobase_disabled'); 261 262 var clink=$('.altasib_geobase_link .altasib_geobase_link_city'); 263 var search=$('input#altasib_geobase_search'); 264 window.setTimeout('altasib_geobase.sc_cls()',275); 265 window.setTimeout('altasib_geobase.sml_cls()',275); 266 } 267 268 clink.html(altasib_geobase.short_name); 269 clink.attr('title',altasib_geobase.full_name); 270 search.val(''); 271 altasib_geobase.sc_parse_city(); 272 273 if(typeof cityName=='undefined'||cityName==''||cityName==null) 274 cityName=altasib_geobase.short_name; 275 276 if(typeof BX!='undefined'){ 277 var arEventPars=[cityName,id,altasib_geobase.full_name,data]; 278 BX.onCustomEvent('onAfterSetCity',arEventPars); 279 } 280 281 if(data.length>1){//redirect 282 var arDt=data.split(';'); 283 if(arDt&&!(arDt.propertyIsEnumerable('length'))&&typeof arDt==='object'&&typeof arDt.length==='number'){ 284 var redLen=arDt.length; 285 if(redLen>=3){ 286 var i; 287 for(i=2;i<redLen;i++){ 288 if(typeof arDt[i]!='undefined'&&arDt[i].length){ 289 $('body').append('<script>'+arDt[i].replace('\n','')+'</'+'script>'); 290 } 291 } 292 } 293 294 if(typeof arDt[1]!='undefined'&&arDt[1].length){ 295 setTimeout(function(){ 296 if(arDt[1]=='#reload')location.reload(); 297 else document.location.href=arDt[1]; 298 },1500); 299 } 300 } 301 } 302 } 303 } 304} 305 306altasib_geobase.add_city=function(city,country_code){ 307 if(typeof city=='undefined') 308 city=altasib_geobase.short_name; 309 if(typeof country_code=='undefined') 310 country_code=altasib_geobase.COUNTRY_CODE; 311 var cityID=(!isNaN(city)?city:city.replace(/[_ \t]+/g,'_')); 312 if(document.getElementById('altasib_geobase_list_'+cityID)==null 313 &&$('ul.altasib_geobase_fst li:contains("'+city+'")').length==0){ 314 if((elem=$('.altasib_geobase_cities .altasib_geobase_fst')).length==0) 315 elem=$('.altasib_geobase_cities .altasib_geobase_list_ie'); 316 elem.prepend('<li class="altasib_geobase_act">'+'<a id="altasib_geobase_list_'+cityID+'" title="'+altasib_geobase.full_name+'" href="#"'+' onclick="altasib_geobase.sc_onclk(\''+city+'\',\''+country_code+'\');return false;">'+city+'</a></li>'); 317 }else if($('ul.altasib_geobase_fst li:contains("'+city+'")').length>0){ 318 $('ul.altasib_geobase_fst li:contains("'+city+'"):first').addClass('altasib_geobase_act'); 319 } 320} 321 322altasib_geobase.sc_click=function(code,country,region_code){ 323 var el=$('div#altasib_geobase_inp_'+code); 324 325 if(el.length==0) 326 el=$('div#altasib_geobase_inp_'+region_code); 327 328 altasib_geobase.short_name=el.attr('value'); 329 330 if(altasib_geobase.is_mobile){ 331 var light='altasib_geobase_mb_light'; 332 }else{ 333 var light='altasib_geobase_light'; 334 } 335 altasib_geobase.full_name=altasib_geobase.sc_trim(el.html().replace(new RegExp('<strong class="'+light+'">','g'),'').replace(new RegExp('</strong>','g'),''));//IE 336 altasib_geobase.full_name=altasib_geobase.full_name.replace(new RegExp('<STRONG class='+light+'>','g'),'').replace(new RegExp('</STRONG>','g'),''); 337 338 altasib_geobase.selected_id=el.attr('id').substr(20); 339 altasib_geobase.COUNTRY_CODE=country; 340 altasib_geobase.region_code=region_code; 341 342 //avk_0063 343 $(el).closest('#altasib_geobase_info').css('display','none'); 344 $('.altasib_geobase_pu_i > a').removeClass('altasib_geobase_disabled'); 345 346 return false;
347} 348 349$(function(){ 350 $(document).click(function(event){ 351 if(altasib_geobase.is_mobile){ 352 if($(event.target).closest('#altasib_geobase_mb_info').length)return; 353 $('#altasib_geobase_mb_info').animate({height:'hide'},'fast'); 354 if(altasib_geobase.search_en) 355 if($('input#altasib_geobase_mb_search').val()==''&&!$('#altasib_geobase_mb_btn').hasClass('altasib_geobase_mb_disabled')) 356 $('#altasib_geobase_mb_btn').addClass('altasib_geobase_mb_disabled'); 357 }else{ 358 if($(event.target).closest('#altasib_geobase_info').length)return; 359 $('#altasib_geobase_info').animate({height:'hide'},'fast'); 360 if(altasib_geobase.search_en) 361 if($('input#altasib_geobase_search').val()==''&&!$('#altasib_geobase_btn').hasClass('altasib_geobase_disabled')) 362 $('#altasib_geobase_btn').addClass('altasib_geobase_disabled'); 363 } 364 event.stopPropagation(); 365 }); 366}); 367 368$(function(){ 369 $(document).click(function(event){ 370 if(altasib_geobase.is_mobile){ 371 if($('div#altasib_geobase_mb_popup').is(':visible')&&altasib_geobase.sc_is_open){ 372 if($(event.target).closest('div#altasib_geobase_mb_popup').length)return; 373 altasib_geobase.sc_mb_cls('visible');event.stopPropagation(); 374 } 375 }else{ 376 if($('div#altasib_geobase_popup').is(':visible')&&altasib_geobase.sc_is_open){ 377 if($(event.target).closest('div#altasib_geobase_popup').length)return; 378 altasib_geobase.sc_cls('visible');event.stopPropagation(); 379 } 380 } 381 }); 382}); 383 384altasib_geobase.sc_cls=function(vis){ 385 if(vis==='visible'&&!$('div#altasib_geobase_popup').is(':visible'))return false; 386 $('div#altasib_geobase_win').animate({top:'-'+altasib_geobase.height},750).fadeOut(400); 387 $('div#altasib_geobase_popup_back').hide(); 388 altasib_geobase.sc_is_open=false; 389 if(typeof altasib_geobase.replace!='undefined'){ 390 altasib_geobase.sc_parse_city(); 391 altasib_geobase.replace(); 392 } 393} 394 395altasib_geobase.sml_no=function(event){ 396 event.stopPropagation(); 397 altasib_geobase.sml_cls(); 398 altasib_geobase.sc_open(); 399} 400 401altasib_geobase.sml_cls=function(){ 402 var sml_wn=$('.altasib_geobase_sml_win'); 403 sml_wn.animate({top:'-'+altasib_geobase.height},750).fadeOut(400); 404 if(typeof altasib_geobase.replace!='undefined'){ 405 altasib_geobase.sc_parse_city(); 406 altasib_geobase.replace(); 407 } 408} 409 410altasib_geobase.sc_load_open=function(){ 411 var res=$.ajax({ 412 url:'/bitrix/tools/altasib.geobase/select_city.php', 413 dataType:'html', 414 data:{'SITE_ID':altasib_geobase.SITE_ID, 415 'get_select':'Y', 416 'show_select':'Y', 417 'AUTOLOAD':'Y' 418 }, 419 type:'POST', 420 success:function(data){ 421 $('body').append(data); 422 altasib_geobase.sc_open(); 423 window.setTimeout('altasib_geobase.sc_init_handlers()',350); 424 }, 425 }); 426} 427 428altasib_geobase.sc_open=function(){ 429 if(altasib_geobase.is_mobile){ 430 $('div#altasib_geobase_mb_win').fadeIn(); 431 altasib_geobase.sc_init_vars(); 432 $('div#altasib_geobase_mb_popup_back').show(); 433 }else{ 434 var win=$('div#altasib_geobase_win'); 435 win.fadeIn();altasib_geobase.sc_init_vars(); 436 $('div#altasib_geobase_popup_back').show(); 437 win.animate({top:'9%'},750); 438 } 439 window.setTimeout('altasib_geobase.sc_is_open=true;',1000); 440} 441 442altasib_geobase.sc_clear_cities=function(){ 443 var elems=$('ul.altasib_geobase_fst li:not(.altasib_geobase_auto):not(.altasib_geobase_act)'); 444 if(elems.length>0){ 445 altasib_geobase.sc_country(); 446 if(typeof altasib_geobase.country_cur!='undefined'&&altasib_geobase.country_cur!=null) 447 if(typeof altasib_geobase.country_cur.country!='undefined') 448 if(altasib_geobase.country_cur.country!=='RU') 449 elems.empty(); 450 } 451} 452 453altasib_geobase.sc_country=function(){//from cookies 454 if((altasib_geobase.country_cur=altasib_geobase.sc_getCookie(altasib_geobase.COOKIE_PREFIX+'_'+'ALTASIB_GEOBASE_COUNTRY'))!==null){ 455 altasib_geobase.country_cur=decodeURIComponent(altasib_geobase.country_cur.replace(/\+/g,' ')); 456 altasib_geobase.country_cur=$.parseJSON(altasib_geobase.country_cur); 457 } 458} 459 460altasib_geobase.sc_add_city=function(e){//Select 461 if(altasib_geobase.is_mobile){ 462 $('#altasib_geobase_mb_btn').removeClass('altasib_geobase_mb_disabled'); 463 $('#altasib_geobase_mb_search').focus(); 464 $('#altasib_geobase_mb_info').animate({height:'hide'},'fast'); 465 $('input#altasib_geobase_mb_search').val(altasib_geobase.full_name); 466 }else{ 467 $('#altasib_geobase_btn').removeClass('altasib_geobase_disabled'); 468 $('#altasib_geobase_search').focus(); 469 $('#altasib_geobase_info').animate({height:'hide'},'fast'); 470 $('input#altasib_geobase_search').val(altasib_geobase.full_name); 471 } 472} 473 474altasib_geobase.sc_load=function(){ 475 altasib_geobase.timer=0; 476 var reqId=++altasib_geobase.request_numb; 477 if(typeof altasib_geobase.lang=='undefined'){ 478 altasib_geobase.sc_country(); 479 if(typeof altasib_geobase.country_cur!='undefined'&&altasib_geobase.country_cur!=null 480 &&typeof altasib_geobase.country_cur.country!='undefined'){ 481 altasib_geobase.lang=altasib_geobase.country_cur.country; 482 } 483 else 484 altasib_geobase.sc_lang_set(); 485 } 486 if(typeof altasib_geobase.jqxhr=='object'&&altasib_geobase.jqxhr!=null) 487 altasib_geobase.jqxhr.abort(); 488 489 altasib_geobase.jqxhr=$.ajax({ 490 type:'POST', 491 url:'/bitrix/tools/altasib.geobase/altasib_geobase_get.php', 492 dataType:'json', 493 data:{'city_name':altasib_geobase.letters, 494 'sessid':altasib_geobase.bitrix_sessid, 495 'lang':altasib_geobase.lang 496 }, 497 timeout:10000, 498 success:function(data){ 499 if(reqId==altasib_geobase.request_numb){ 500 if(altasib_geobase.is_mobile){ 501 var list=$('div#altasib_geobase_mb_info'); 502 }else{ 503 var list=$('div#altasib_geobase_info'); 504 } 505 506 list.html(''); 507 if(data==''||data==null) 508 list.animate({height:'hide'},'fast'); 509 else{ 510 var arOut='',oLength=0; 511 for(var prop='REGION' in data){ 512 if(data.hasOwnProperty(prop))oLength++; 513 } 514 515 for(var i=0;i<oLength;i++){ 516 var sOpt=(typeof(data[i]['CITY'])=='undefined'||data[i]['CITY']==' '||data[i]['CITY']==null?'':data[i]['CITY']); 517 sOpt+=(typeof(data[i]['REGION'])=='undefined'||data[i]['REGION']==' '||data[i]['REGION']==null?'':(sOpt.length>0?', ':'')+data[i]['REGION']); 518 sOpt+=(typeof(data[i]['DISTRICT'])=='undefined'||data[i]['DISTRICT']==''||data[i]['DISTRICT']==' '||data[i]['DISTRICT']==null?'':(sOpt.length>0?', ':'')+data[i]['DISTRICT']); 519 sOpt+=(typeof(data[i]['COUNTRY'])=='undefined'||data[i]['COUNTRY']==' '?'':(sOpt.length>0?', ':'')+data[i]['COUNTRY']); 520 var code=typeof(data[i]['C_CODE'])=='undefined'?data[i]['ID']:data[i]['C_CODE']; 521 var countryID=(typeof(data[i]['COUNTRY_CODE'])=='undefined'?data[i]['COUNTRY']:data[i]['COUNTRY_CODE']); 522 var sOptVal=data[i]['CITY']; 523 if(typeof sOptVal=='undefined'||altasib_geobase.sc_trim(sOptVal)==''||sOptVal=='null'){ 524 sOptVal=data[i]['REGION']; 525 var codeReg=typeof(data[i]['C_CODE'])=='undefined'?data[i]['ID']:data[i]['C_CODE']; 526 } 527 arOut+= '<div id="altasib_geobase_inp_'+code+'"'+'value="'+sOptVal+'" onclick="altasib_geobase.sc_click(\''+(typeof codeReg=='undefined'?code:'')+'\',\'' 528 +(typeof countryID=='undefined'?'': countryID)+'\',\'' 529 +(typeof codeReg=='undefined'?'':codeReg)+'\');">
529'+sOpt+'</div>\n'; 530 } 531 list.html(arOut); 532 if(typeof $.fn.altasib_geobase_light!='undefined') 533 list.altasib_geobase_light(altasib_geobase.letters); 534 list.animate({height:'show'},'fast'); 535 } 536 } 537 altasib_geobase.jqxhr=null; 538 } 539 }); 540} 541 542altasib_geobase.sc_selKey=function(e){//Select 543 e=e||window.event; 544 t=(window.event)?window.event.srcElement:e.currentTarget; 545 if(!altasib_geobase.is_mobile){ 546 if(e.keyCode==13){//Enter 547 altasib_geobase.sc_onclk('Enter'); 548 $('#altasib_geobase_info').hide();return; 549 }else if(e.keyCode==38&&$('div#altasib_geobase_info > div :first').hasClass('altasib_geobase_focus')){//Up 550 $('.altasib_geobase_find input[name=altasib_geobase_search]').focus(); 551 $('#altasib_geobase_info').animate({height:'hide'},'fast'); 552 $('div.altasib_geobase_focus').removeClass('altasib_geobase_focus'); 553 } 554 }else{ 555 if(e.keyCode==13){//Enter 556 altasib_geobase.sc_onclk('Enter'); 557 $('#altasib_geobase_mb_info').hide();return; 558 }else if(e.keyCode==38&&$('div#altasib_geobase_mb_info > div :first').hasClass('altasib_geobase_mb_focus')){//Up 559 $('.altasib_geobase_mb_find input[name=altasib_geobase_mb_search]').focus(); 560 $('#altasib_geobase_mb_info').animate({height:'hide'},'fast'); 561 $('div.altasib_geobase_mb_focus').removeClass('altasib_geobase_mb_focus'); 562 } 563 } 564} 565 566altasib_geobase.sc_inpKeyDwn=function(e){//input search 567 e=e||window.event; 568 t=(window.event)?window.event.srcElement:e.currentTarget; 569 if(altasib_geobase.is_mobile){ 570 var list=$('div#altasib_geobase_mb_info'), 571 listDiv=$('div#altasib_geobase_mb_info div'), 572 focus='altasib_geobase_mb_focus', 573 dFocus='div.altasib_geobase_mb_focus', 574 dInfo='div#altasib_geobase_mb_info', 575 find='.altasib_geobase_mb_find', 576 Search='altasib_geobase_mb_search'; 577 }else{ 578 var list=$('div#altasib_geobase_info'), 579 listDiv=$('div#altasib_geobase_info div'), 580 focus='altasib_geobase_focus', 581 dFocus='div.altasib_geobase_focus', 582 dInfo='div#altasib_geobase_info', 583 find='.altasib_geobase_find', 584 Search='altasib_geobase_search'; 585 } 586 587 if(e.keyCode==40){//Down 588 if(altasib_geobase.sc_trim(list.html())!=''){ 589 list.animate({height:'show'},'fast'); 590 } 591 if(!listDiv.hasClass(focus)){ 592 $(dInfo+' > div :first').addClass(focus);return; 593 }else{ 594 if($(dInfo+' > div :last').hasClass(focus)){return;}else{ 595 $(dInfo+' >.'+focus).next('div').addClass(focus); 596 $(dFocus+' :first').removeClass(focus); 597 } 598 } 599 }else if(e.keyCode==13){//Enter 600 if(altasib_geobase.is_mobile){ 601 if(!$('#altasib_geobase_mb_btn').hasClass('altasib_geobase_mb_disabled')){ 602 altasib_geobase.sc_onclk('Enter'); 603 list.hide(); 604 $('div.altasib_geobase_mb_focus :first').removeClass(focus); 605 } 606 else if(listDiv.hasClass(focus)){ 607 id=$('div#altasib_geobase_mb_info div.altasib_geobase_mb_focus').attr('id'); 608 $('#'+id).click(); 609 } 610 }else{ 611 if(!$('#altasib_geobase_btn').hasClass('altasib_geobase_disabled')){ 612 altasib_geobase.sc_onclk('Enter'); 613 list.hide(); 614 $(dFocus+' :first').removeClass(focus); 615 }else if(listDiv.hasClass(focus)){ 616 id=$(dInfo+' '+dFocus).attr('id'); 617 $('#'+id).click(); 618 } 619 } 620 return; 621 } 622 else if(e.keyCode==38){//Up 623 if(listDiv.hasClass(focus)){ 624 if($(dInfo+' > div :first').hasClass(focus)){ 625 $(find+' input[name='+Search+']').focus(); 626 list.animate({height:'hide'},'fast'); 627 $(dFocus).removeClass(focus); 628 } 629 $(dInfo+' >.'+focus).prev('div').addClass(focus); 630 $(dFocus+' :last').removeClass(focus);return; 631 } 632 }else if(e.keyCode==35){//End 633 if(listDiv.hasClass(focus)){ 634 $(dInfo+' > div :last').addClass(focus); 635 $(dFocus+' :first').removeClass(focus);return; 636 } 637 }else if(e.keyCode==36){//Home 638 if(listDiv.hasClass(focus)){ 639 $(dInfo+' > div :first').addClass(focus); 640 $(dFocus+' :last').removeClass(focus);return; 641 } 642 } 643} 644 645altasib_geobase.sc_inpKey=function(e){//input search 646 e=e||window.event; 647 t=(window.event)?window.event.srcElement:e.currentTarget; 648 if(altasib_geobase.is_mobile){ 649 var list=$('div#altasib_geobase_mb_info'); 650 }else{ 651 var list=$('div#altasib_geobase_info'); 652 } 653 var sFind=altasib_geobase.sc_trim(t.value); 654 655 if(altasib_geobase.letters==sFind)return;//empty 656 altasib_geobase.letters=sFind; 657 if(altasib_geobase.timer){ 658 clearTimeout(altasib_geobase.timer); 659 altasib_geobase.timer=0; 660 } 661 if(altasib_geobase.letters.length<2){ 662 list.animate({height:'hide'},'fast');return; 663 } 664 altasib_geobase.timer=window.setTimeout('altasib_geobase.sc_load()',190); 665} 666 667$.fn.altasib_geobase_light=function(pat){ 668 function altasib_geobase_innerLight(node,pat){ 669 var skip=0; 670 if(node.nodeType==3){ 671 var pos=node.data.toUpperCase().indexOf(pat); 672 if(pos>=0){ 673 var strongnode=document.createElement('strong'); 674 if(altasib_geobase.is_mobile) 675 strongnode.className='altasib_geobase_mb_light'; 676 else 677 strongnode.className='altasib_geobase_light'; 678 var middlebit=node.splitText(pos); 679 var endbit=middlebit.splitText(pat.length); 680 var middleclone=middlebit.cloneNode(true); 681 strongnode.appendChild(middleclone); 682 middlebit.parentNode.replaceChild(strongnode,middlebit); 683 skip=1; 684 } 685 } 686 else if(node.nodeType==1&&node.childNodes&&!/(script|style)/i.test(node.tagName)){ 687 for(var i=0;i<node.childNodes.length;++i){ 688 i+=altasib_geobase_innerLight(node.childNodes[i],pat); 689 } 690 } 691 return skip; 692 } 693 return this.each(function(){altasib_geobase_innerLight(this,pat.toUpperCase());}); 694}; 695 696$.fn.altasib_geobase_removeLight=function(){ 697 return this.find(altasib_geobase.is_mobile?'strong.altasib_geobase_mb_light':'strong.altasib_geobase_light').each(function(){ 698 this.parentNode.firstChild.nodeName; 699 with(this.parentNode){ 700 replaceChild(this.firstChild,this);normalize(); 701 } 702 }).end(); 703}; 704
705altasib_geobase.sc_lang_set=function(){ 706 altasib_geobase.lang='en'; 707 if(typeof altasib_geobase.auto_code!=='undefined'&&altasib_geobase.auto_code!==null) 708 if(typeof altasib_geobase.auto_code.COUNTRY_CODE!=='undefined'){ 709 if(altasib_geobase.auto_code.COUNTRY_CODE=='RU') 710 altasib_geobase.lang='ru'; 711 altasib_geobase.COUNTRY_CODE=altasib_geobase.auto_code.COUNTRY_CODE; 712 } 713 714 if(typeof altasib_geobase.manual_code!=='undefined'&&altasib_geobase.manual_code!==null){ 715 if(typeof altasib_geobase.manual_code.COUNTRY_CODE!=='undefined'){ 716 if(altasib_geobase.manual_code.COUNTRY_CODE=='RU') 717 altasib_geobase.lang='ru'; 718 altasib_geobase.COUNTRY_CODE=altasib_geobase.manual_code.COUNTRY_CODE; 719 } 720 if(typeof altasib_geobase.manual_code['REGION']!=='undefined'){ 721 if(typeof altasib_geobase.manual_code['REGION']['CODE']!=='undefined'){ 722 altasib_geobase.lang='ru'; 723 if(typeof altasib_geobase.COUNTRY_CODE=='undefined'||altasib_geobase.COUNTRY_CODE==null||altasib_geobase.COUNTRY_CODE=='') 724 altasib_geobase.COUNTRY_CODE='RU'; 725 } 726 } 727 } 728} 729 730altasib_geobase.sc_parse_city=function(){ 731 732 if((altasib_geobase.manual_code=altasib_geobase.sc_getCookie(altasib_geobase.COOKIE_PREFIX+'_'+'ALTASIB_GEOBASE_CODE'))!==null){ 733 altasib_geobase.manual_code=decodeURIComponent(altasib_geobase.manual_code.replace(/\+/g,' ')); 734 altasib_geobase.manual_code=$.parseJSON(altasib_geobase.manual_code); 735 } 736 if((altasib_geobase.auto_code=altasib_geobase.sc_getCookie(altasib_geobase.COOKIE_PREFIX+'_'+'ALTASIB_GEOBASE'))!==null){ 737 altasib_geobase.auto_code=decodeURIComponent(altasib_geobase.auto_code.replace(/\+/g,' ')); 738 altasib_geobase.auto_code=$.parseJSON(altasib_geobase.auto_code); 739 } 740 741 altasib_geobase.sc_lang_set(); 742 743 if(altasib_geobase.manual_code!==null){ 744 if(typeof altasib_geobase.manual_code['CITY']!=='undefined'){ 745 if(typeof altasib_geobase.manual_code['CITY']['NAME']!=='undefined'){ 746 altasib_geobase.city=altasib_geobase.manual_code['CITY']['NAME']; 747 altasib_geobase.region=altasib_geobase.manual_code['REGION']['NAME'] 748 +' '+altasib_geobase.manual_code['REGION']['SOCR']; 749 } 750 else if(typeof altasib_geobase.manual_code['CITY_RU']!=='undefined'){ 751 if(altasib_geobase.lang=='ru'){ 752 altasib_geobase.country=altasib_geobase.manual_code['COUNTRY_RU']; 753 altasib_geobase.city=altasib_geobase.manual_code['CITY_RU']; 754 }else{ 755 altasib_geobase.country=altasib_geobase.manual_code['COUNTRY']; 756 altasib_geobase.city=altasib_geobase.manual_code['CITY']; 757 } 758 altasib_geobase.region=altasib_geobase.manual_code['REGION']; 759 760 if(typeof altasib_geobase.manual_code['POST']!=='undefined') 761 altasib_geobase.post=altasib_geobase.manual_code['POST']; 762 } 763 } 764 else if(typeof altasib_geobase.manual_code['CITY_NAME']!=='undefined'){ 765 altasib_geobase.city=altasib_geobase.manual_code['CITY_NAME']; 766 altasib_geobase.region=altasib_geobase.manual_code['REGION_NAME']; 767 if(typeof altasib_geobase.manual_code['COUNTRY_NAME']!=='undefined') 768 altasib_geobase.country=altasib_geobase.manual_code['COUNTRY_NAME']; 769 if(typeof altasib_geobase.manual_code['POSTINDEX']!=='undefined') 770 altasib_geobase.post=altasib_geobase.manual_code['POSTINDEX']; 771 } 772 }else if(altasib_geobase.auto_code!==null){ 773 altasib_geobase.city=altasib_geobase.auto_code['CITY_NAME']; 774 altasib_geobase.region=altasib_geobase.auto_code['REGION_NAME']; 775 if(typeof altasib_geobase.auto_code['COUNTRY_NAME']!=='undefined') 776 altasib_geobase.country=altasib_geobase.auto_code['COUNTRY_NAME']; 777 if(typeof altasib_geobase.auto_code['POSTINDEX']!=='undefined') 778 altasib_geobase.post=altasib_geobase.auto_code['POSTINDEX']; 779 } 780} 781 782altasib_geobase.sc_getCookie=function(name){ 783 var nameEQ=name+'='; 784 var ca=document.cookie.split(';'); 785 for(var i=0;i<ca.length;i++){ 786 var c=ca[i]; 787 while(c.charAt(0)==' ') 788 c=c.substring(1,c.length); 789 if(c.indexOf(nameEQ)==0) 790 return c.substring(nameEQ.length,c.length); 791 } 792 return null; 793} 794 795altasib_geobase.sc_mb_cls=function(vis){ 796 if(vis==='visible'&&!$('div#altasib_geobase_mb_popup').is(':visible'))return false; 797 798 $('div#altasib_geobase_mb_win').fadeOut(400); 799 $('div#altasib_geobase_mb_popup_back').hide(); 800 altasib_geobase.sc_is_open=false; 801 802 if(typeof altasib_geobase.replace!='undefined'){ 803 altasib_geobase.parse_city(); 804 altasib_geobase.replace(); 805 }else if(typeof altasib_geobase.sc_parse_city!='undefined'){ 806 altasib_geobase.sc_parse_city(); 807 } 808} 809 810altasib_geobase.all_cities=function(){ 811 $('#all_cities_button_mobile').hide(); 812 $('#altasib_geobase_mb_cities').css({'overflow-y':'scroll','height':'259px'}); 813} 814 815altasib_geobase.city_field_focus=function(){ 816 $('#altasib_geobase_mb_header').hide(); 817 $('#altasib_geobase_mb_find').css({'padding-top':'23px'}); 818} 819 820altasib_geobase.city_field_blur=function(){ 821 if($('#altasib_geobase_mb_search').val().length==0){ 822 $('#altasib_geobase_mb_header').show(); 823 $('#altasib_geobase_mb_find').css({'padding-top':'0px'}); 824 $('#altasib_geobase_mb_search').val(altasib_geobase.perem); 825 setTimeout('$("#altasib_geobase_mb_search").focus()',1); 826 $('div#altasib_geobase_mb_info').animate({height:'show'},'fast'); 827 } 828} 829 830altasib_geobase.clear_field=function(){
831 altasib_geobase.perem=$('#altasib_geobase_mb_search').val(); 832 $('#altasib_geobase_mb_search').val(''); 833} 834 835altasib_geobase.sc_trim=function(s){ 836 if(altasib_geobase.sc_type.isString(s)) 837 return s.replace(/^[\s\r\n]+/g,'').replace(/[\s\r\n]+$/g,''); 838 else 839 return s; 840} 841altasib_geobase.sc_type={ 842 isString:function(item){ 843 return item===''?true:(item?(typeof(item)=='string'||item instanceof String):false); 844 } 845}
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.