// Получаем объект
function getHTTPObject() {
	if (window.ActiveXObject) 
		return new ActiveXObject("Microsoft.XMLHTTP");
	else 
		if (window.XMLHttpRequest) 
			return new XMLHttpRequest();
		else {
			alert("Your browser does not support AJAX.");
			return null;
		}
}

// Переменные для работы
var httpObject = null;
var antiCache = null;

/* Функции для галереи */
function getRazdel (id, lang, webid) {
  var p=document.getElementById('chgroup').value;
  if(webid!=p){
    document.getElementById(webid).className='choosen';
    document.getElementById(p).className='unchoosen';
  	document.getElementById('chgroup').value = webid;	
  	httpObject = getHTTPObject();
  	if (httpObject != null) {
  		antiCache = '&r='+Math.random();
  		document.getElementById('pgroup').innerHTML = '<div align="center"><img src="images/loading/loader.f9.gif"></div>';
  		httpObject.open("GET", "utils/requests/reqgallery.php?lang="+lang+"&pgid="+id+antiCache, true);
  		httpObject.send(null);
  		httpObject.onreadystatechange = setRazdel;
  	}
  }
}

function setRazdel () {
	if(httpObject.readyState == 4){
		document.getElementById('pgroup').innerHTML = httpObject.responseText;
		startGallery();
	} 
}

/* Обработка отелей */

// Передача данных через AJAX методом GET
function listCategory(stars,cityId,lang) {
	httpObject = getHTTPObject();
	
	globalHotel = 0;
	globalCity = cityId;
	globalLang = lang;
	globalStar = stars;
	
	document.getElementById('hide_star').innerHTML = stars;
	
	if (httpObject != null) {
		antiCache = '&r='+Math.random();
		document.getElementById('hotel_list').innerHTML = '<div align="center"><div><img src="images/loading/loader.mid.gif"></div><div>Идет загрузка...</div></div>';
		document.getElementById('hotel_content').innerHTML = '';
		httpObject.open("GET", "utils/requests/hotels/req_list.php?lang="+lang+"&star="+stars+"&city="+cityId+antiCache, true);
		httpObject.send(null);
		httpObject.onreadystatechange = setList;
	}
	return;
}

function descHotel(hotelId,cityId,lang) {
	httpObject = getHTTPObject();
	globalHotel = hotelId;
	globalCity = cityId;
	globalLang = lang;
	globalStar = currentRating;
	nextStep(3,-1);
  nextStep(2,-1);
	if (httpObject != null) {
		antiCache = '&r='+Math.random();
		document.getElementById('hotel_content').innerHTML = '<div align="center"><div><img src="images/loading/loader.mid.gif"></div><div>Идет загрузка...</div></div>';
		httpObject.open("GET", "utils/requests/hotels/req_desc.php?lang="+lang+"&hid="+hotelId+"&city="+cityId+antiCache, true);
		httpObject.send(null);
		httpObject.onreadystatechange = setDescription;
	}
	return;
}

// Устанавливаем значения
function setList() {
	if(httpObject.readyState == 4){
		document.getElementById('hotel_list').innerHTML = httpObject.responseText;
		document.getElementById('hotel_content').innerHTML = '&nbsp;';
		dropdownCategory(globalCity,globalLang,globalHotel,globalStar);
	}
	return;
}
function setDescription() {
	if(httpObject.readyState == 4){
		document.getElementById('hotel_content').innerHTML = httpObject.responseText;
		dropdownCategory(globalCity,globalLang,globalHotel,globalStar);
	}
	return;
}

// Вывод отелей в форму
function dropdownCategory(city,lang,hotel,star) {
	httpObject = getHTTPObject();
	if (hotel == 0) {
		hotel = '';
	}	
	if (httpObject != null) {
		antiCache = '&r='+Math.random();
		document.getElementById('dropdown').innerHTML = '<div align="left"><img src="images/loading/progress.ed.gif"></div>';
		httpObject.open("GET", "utils/requests/hotels/req_dropdown.php?lang="+lang+"&star="+star+"&city="+city+'&hotel='+hotel+antiCache, true);
		httpObject.send(null);
		httpObject.onreadystatechange = setDropdownCategory;
	}
	return;
}

function setDropdownCategory() {
	if(httpObject.readyState == 4){
		document.getElementById('dropdown').innerHTML = httpObject.responseText;		
	}
	return;
}

// Установка звезд
function setHotelRating (lang,toset) {
  for (var i=5;i>=0;i--) {
    var starTab=document.getElementById('star'+i+'u');
    var starImage=document.getElementById('star'+i+'image');
    var starLink=document.getElementById('star'+i+'-link');
    if (i==currentRating) {
     // if IE
     if (navigator.appName.indexOf("Microsoft")!=-1) {
      switch (i) {
        case 5: {
          starLink.onmouseover=function(){ document.getElementById('star5u').className='line-star-yes' };
          starLink.onmouseout=function(){ document.getElementById('star5u').className='line-star-no' };
          break;
        }
        case 4: {
          starLink.onmouseover=function(){ document.getElementById('star4u').className='line-star-yes' };
          starLink.onmouseout=function(){ document.getElementById('star4u').className='line-star-no' };
          break;
        }
        case 3: {
          starLink.onmouseover=function(){ document.getElementById('star3u').className='line-star-yes' };
          starLink.onmouseout=function(){ document.getElementById('star3u').className='line-star-no' };
          break;
        }
        case 2: {
          starLink.onmouseover=function(){ document.getElementById('star2u').className='line-star-yes' };
          starLink.onmouseout=function(){ document.getElementById('star2u').className='line-star-no' };
          break;
        }
        case 1: {
          starLink.onmouseover=function(){ document.getElementById('star1u').className='line-star-yes' };
          starLink.onmouseout=function(){ document.getElementById('star1u').className='line-star-no' };
          break;
        }
        case 0: {
          starLink.onmouseover=function(){ document.getElementById('star0u').className='line-star-yes' };
          starLink.onmouseout=function(){ document.getElementById('star0u').className='line-star-no' };
          break;
        }
      }
     } else {
     // if Mozilla etc...
      starLink.setAttribute('onmouseover','document.getElementById("star'+i+'u").className="line-star-yes";');
      starLink.setAttribute('onmouseout','document.getElementById("star'+i+'u").className="line-star-no";');  
     }
     starImage.removeAttribute('src');
     starImage.setAttribute ('src','images/stars/'+i+'-stars-blue.png');
     starTab.className='line-star-no';
    }
    if (i == toset) {
     starImage.removeAttribute('src');
     if (navigator.appName.indexOf("Microsoft")!=-1) {
      starLink.onmouseover=null;
      starLink.onmouseout=null;
     } else {
     // if Mozilla etc...
      starLink.setAttribute('onmouseover','');
      starLink.setAttribute('onmouseout','');
     }
     starImage.setAttribute ('src','images/stars/'+i+'-stars-yellow.png');
     starTab.className='line-star-yes';
    }
  }
	nextStep(3,-1);
  nextStep(2,-1);
 	return toset;
}

/*var IE = document.all?true:false;
if (!IE) document.captureEvents(Event.MOUSEMOVE)
document.onmousemove = getMouseXY;
var tempX = 0;
var tempY = 0;
function getMouseXY(e) {
if (IE) { // grab the x-y pos.s if browser is IE
tempX = event.clientX + document.body.scrollLeft;
tempY = event.clientY + document.body.scrollTop;
}
else {  // grab the x-y pos.s if browser is NS
tempX = e.pageX;
tempY = e.pageY;
}  
if (tempX < 0){tempX = 0;}
if (tempY < 0){tempY = 0;}  
document.Show.MouseX.value = tempX;
document.Show.MouseY.value = tempY;

document.getElementById('search-countries-loading').style.left=tempX+7+'px';
document.getElementById('search-countries-loading').style.top=tempY+7+'px';
//alert(document.getElementById('search-countries-loading').style.top);
return true;
}*/

// Запуск поисковика
/*function activateSearchCountry () {
  document.getElementById('').
}*/

var curLetter='all';
// Фильтрация стран по алфавиту
function filter (letter,lang,pid,mid,newLetter){
  httpObject = getHTTPObject();
  antiCache = 'r='+Math.random();
  var obj = document.getElementById('country-list');
  var postArray=new Array(
    'letter='+encodeURIComponent(letter),
    'lang='+encodeURIComponent(lang),
    'pid='+encodeURIComponent(pid),
    'mid='+encodeURIComponent(mid)
  );
  httpObject.onreadystatechange = function () {
    if (httpObject.readyState == 4) {
     if (httpObject.status == 200) {
        result = httpObject.responseText;
        obj.innerHTML=result;
        if (curLetter=='all'){
          colorold='#E06F00';
        }else{
          colorold='#1D84D4';
        }
        if(newLetter!='all'){
          bgcolor='#1D84D4';
        }else{
          bgcolor='#E06F00';
        }
        document.getElementById(curLetter).style.backgroundColor='#EDF0F1';
        document.getElementById(curLetter).style.color=colorold;
        document.getElementById(newLetter).style.backgroundColor=bgcolor;
        document.getElementById(newLetter).style.color='#FFFFFF';
        curLetter=newLetter;
     } else {
        alert('There was a problem with the request.');
     }
  }
  };
  obj.innerHTML='<div align="center" style="margin-top:10px;"><img src="images/loading/loader.white.gif"></div>';
  httpObject.open('POST','utils/requests/country/search_letters.php?'+antiCache, true);
	httpObject.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	httpObject.setRequestHeader("Content-length", postArray.length);
	httpObject.setRequestHeader("Connection", "close");
	httpObject.send(postArray.join("&"));	
  return;
}

function hideSearch(){
  document.getElementById('search-results-div').style.display="none";
  document.getElementById('close-search-up').style.display="none";
  document.getElementById('close-search-down').style.display="none";
  document.getElementById('open-search').style.display="block";
}

function showSearch(){
  document.getElementById('search-results-div').style.display="block";
  document.getElementById('close-search-up').style.display="block";
  document.getElementById('close-search-down').style.display="block";
  document.getElementById('open-search').style.display="none";
}

// Поиск стран V2
function searchCountry (part,lang,pid,mid){
  if(part.value==''){
    alert('Введите запрос для поиска');
    part.focus();
    return;
  }
  httpObject = getHTTPObject();
  antiCache = 'r='+Math.random();
  var obj = document.getElementById('country-search-results');
  var postArray=new Array(
    'part='+encodeURIComponent(part.value),
    'lang='+encodeURIComponent(lang),
    'pid='+encodeURIComponent(pid),
    'mid='+encodeURIComponent(mid)
  );
  httpObject.onreadystatechange = function () {
    if (httpObject.readyState == 4) {
     if (httpObject.status == 200) {
        result = httpObject.responseText;
        if(result!='0'){
          obj.innerHTML=result;
        }else{
          obj.innerHTML='';
          alert ('По Вашему запросу стран не найдено.');
        }
     } else {
        alert('There was a problem with the request.');
     }
  }
  };
  obj.innerHTML='<div align="center" style="margin-top:10px;"><img src="images/loading/loader.white.gif"></div>';
  httpObject.open('POST','utils/requests/country/search_all.php?'+antiCache, true);
	httpObject.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	httpObject.setRequestHeader("Content-length", postArray.length);
	httpObject.setRequestHeader("Connection", "close");
	httpObject.send(postArray.join("&"));	
  return;
}

// Реализация поиска по странам V1
function doSearchCountry (pid,lang) {
  httpObject = getHTTPObject();
  antiCache = 'r='+Math.random();
  var obj=document.search.box; // Окно ввода
  var obj_result=document.getElementById('search_list'); // Результат
  var obj_searching=document.getElementById('searching'); // Загрузка...
  var postArray=new Array(
    'lower='+encodeURIComponent(obj.value),
    'string='+encodeURIComponent(obj.value.toUpperCase()),
    'pid='+encodeURIComponent(pid),
    'lang='+encodeURIComponent(lang)
  );
  httpObject.onreadystatechange = function () {
    if (httpObject.readyState == 4) {
     if (httpObject.status == 200) {
        result = httpObject.responseText;
        if(result!=''){
          obj_result.style.display='block';
          obj_result.innerHTML = result;
        }else{
          obj_result.style.display='none';
        }
     } else {
        alert('There was a problem with the request.');
     }
  }
  };
  httpObject.open('POST','utils/requests/country/search.php?'+antiCache, true);
  obj_searching.style.display = 'block';
	httpObject.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	httpObject.setRequestHeader("Content-length", postArray.length);
	httpObject.setRequestHeader("Connection", "close");
	httpObject.send(postArray.join("&"));	
  return;
}
function doCloseSearchList(){
  document.getElementById('search_list').style.display='none';
  return;  
}

var prevLetterId = 0;

// Подсветка букв в алфавите для стран
function countryLetterEnable (id) {
  var obj=document.getElementById('letter-a-'+prevLetterId);
  if(prevLetterId!=id){
    obj.style.fontSize='10pt';
    obj.style.color='#1D84D4';
    obj.style.backgroundColor='#EDF0F1';
  }else{
    obj.style.fontSize='10pt';
    obj.style.color='#1D84D4';
    obj.style.backgroundColor='#E06F00';
    alert
  }
  obj=document.getElementById('letter-a-'+id);
  obj.style.fontSize='14pt';
  obj.style.color='#FFFFFF';
  obj.style.backgroundColor='#1D84D4';
  prevLetterId=id;
}

// таймер
var time = null;

// Закрываем suggestion box
function closeSearch(){
  time=setTimeout("commitCloseSearch()",20);
}

function commitCloseSearch(){
  
  document.getElementById('search_box').style.display='none';
}

function cancelCloseSearch(){
  clearTimeout(time);
}
