function check_int(e)
{
	e = (e) ? e : event;
	var c = (e.charCode) ? e.charCode : e.keyCode;
	if ((c>36 && c<41) || c<32  || c==43 || c==46  || (c>47 && c<58)) {
		return true;
	} else {
		return false;
	}
};
function check_float(e)
{
	e = (e) ? e : event;
	var c = (e.charCode) ? e.charCode : e.keyCode;
	if ((c>36 && c<41) || c<32  || c==43 || c==46  || (c>47 && c<58) || c==46) {
		return true;
	} else {
		return false;
	}
};
function check_phone(e)
{
	e = (e) ? e : event;
	var c = (e.charCode) ? e.charCode : e.keyCode;
	if ((c>36 && c<41) || c<33 || c==43 || c==46 || (c>47 && c<58) || c==45 || c==40 || c==41) {
		return true;
	} else {
		return false;
	}
};

function Inint_AJAX() {
   try { return new ActiveXObject("Msxml2.XMLHTTP");  } catch(e) {} //IE
   try { return new ActiveXObject("Microsoft.XMLHTTP"); } catch(e) {} //IE
   try { return new XMLHttpRequest();          } catch(e) {} //Native Javascript
   alert("XMLHttpRequest not supported");
   return null;
};

function Ajax_resp(uri,msg,div_id,data,asins) {
    var req = Inint_AJAX();
	if (msg!='') { document.getElementById(div_id).innerHTML=msg; }
    req.onreadystatechange = function () { 
          if (req.readyState==4) {
               if (req.status==200) {
                    if (navigator.appName == "Microsoft Internet Explorer")
					{
                    document.getElementById(div_id).innerHTML=BinaryToString(req.responseBody);
					if (asins!="") setTimeout(asins,500);
					}
                                        else 
					{
                    document.getElementById(div_id).innerHTML=req.responseText; 
					if (asins!='') setTimeout(asins,500);
					}
               } 
          }
     };
	 if (data.length>0) {
	 req.open("POST", uri); 
     req.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=utf-8");
	 req.send(data); 
	 } else {
	 req.open("GET", uri); 
     req.setRequestHeader("Content-Type", "text/xml");
	 req.send(null);
	 }
};

function dochange(dsn,src,type) {
     var req = Inint_AJAX();
	 var zapros = '';
	 if ("district"==src) {document.getElementById(src).innerHTML="<Select><option>Загрузка...</Select>";
	 zapros="/ajax_backdoor.php?"+type + "=" + dsn + "&flag=1";} else {
	 zapros="/ajax_backdoor.php?"+type + "=" + dsn + "&flag=0";
	 }
     req.onreadystatechange = function () { 
          if (req.readyState==4) {
               if (req.status==200) {
                    if (navigator.appName == "Microsoft Internet Explorer")
                    document.getElementById(src).innerHTML=BinaryToString(req.responseBody);
                                        else 
                    document.getElementById(src).innerHTML=req.responseText; 
               } 
          }
     };
     req.open("GET", zapros); 
     req.setRequestHeader("Content-Type", "text/xml"); 
     req.send(null); 
}

function form_dochange(dsn,src,type) {
     var req = Inint_AJAX();
	 var t=document.getElementsByName('select_form')[0].value;
	 if ("district"==src) {
	 document.getElementById(t.charAt(0)+'mess_city').innerHTML='';
	 document.getElementById(t.charAt(0)+'_'+src).innerHTML="<Select><option>Загрузка...</Select>";
	 }
     req.onreadystatechange = function () { 
          if (req.readyState==4) {
               if (req.status==200) {
                    if (navigator.appName == "Microsoft Internet Explorer")
                    document.getElementById(t.charAt(0)+'_'+src).innerHTML=BinaryToString(req.responseBody);
                                        else 
                    document.getElementById(t.charAt(0)+'_'+src).innerHTML=req.responseText; 
               } 
          }
     };
     req.open("GET", "/ajax_backdoor.php?"+type + "=" + dsn); 
     req.setRequestHeader("Content-Type", "text/xml"); 
     req.send(null); 
}
function getList(dsn) {
  document.getElementById("district").innerHTML = '<option value="all">Любой</option>';
  url = "ajax_backdoor.php?dsn=" + dsn;
  createRequest();
  request.open("GET", url, true);
  request.onreadystatechange = makeList;
  request.send(null);
}
 
function makeList() {
  // только при состоянии "complete"
  if (request.readyState == 4) {
    // для статуса "OK"
    if (request.status == 200) {
      // здесь идут построение списков заново
      responseXml = request.responseXML;
      xmlDoc = responseXml.documentElement;
      options = xmlDoc.getElementsByTagName("options")[0].firstChild.data;
      document.getElementById("district").innerHTML = options;
    } else {
      alert("Не удалось получить данные от сервера:\n" + request.statusText);
    }
  }
}
function createAJAXObject()
{
  var ajax=null;
  try { ajax=new XMLHttpRequest(); } catch (e) {}
  if(!ajax) try { ajax=new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) {}
  if(!ajax) try { ajax=new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) {}
  return ajax;
}

function encodeAJAXSymbol(code)
{
  var hex="0123456789ABCDEF";
  return "%"+hex.charAt(code>>4)+hex.charAt(code&15);
}

function encodeAJAXString(text)
{
  var result="";
  for(var index=0; index < text.length; index++) {
    var symbol=text.charAt(index);
    var code=text.charCodeAt(index);
    if(code<128) { result+=encodeAJAXSymbol(code); continue; }
    if(code>=1040 && code<=1103)
      { result+=encodeAJAXSymbol(code-848); continue; }
    switch(symbol) {
      case "Ў": result+=encodeAJAXSymbol(161); break;
      case "ў": result+=encodeAJAXSymbol(162); break;
      case "Ё": result+=encodeAJAXSymbol(168); break;
      case "ё": result+=encodeAJAXSymbol(184); break;
      case "Є": result+=encodeAJAXSymbol(170); break;
      case "є": result+=encodeAJAXSymbol(186); break;
      case "Ї": result+=encodeAJAXSymbol(175); break;
      case "ї": result+=encodeAJAXSymbol(191); break;
      default: result+=encodeAJAXSymbol(63);
    }
  }
  return result;
}

function checkFormSubmit(formname, scripturl)
{
  var ajax=createAJAXObject();
  if(!ajax) return true;
  var formobj=document.forms[formname];
  var request="";
  var separator="";
  for(var index=0; index < formobj.length; index++) {
    var itemobj=formobj.elements[index];
    if(itemobj.name=="") continue;
    if(itemobj.type=="checkbox" && !itemobj.checked) continue;
    request+=separator+itemobj.name+"="+encodeAJAXString(itemobj.value);
    separator="&";
  }
  request+=separator+"isajax=1";
  ajax.open("POST",scripturl,false);
  ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
  ajax.send(request);
  if(ajax.status!=200) return true;
  if(ajax.responseText=="" || ajax.responseText=="OK" || ajax.responseText.length>250) return true;
  alert(ajax.responseText);
  return false;
}

function PasswordComplexity(passwordboxid, containerdivid, minmax, showtext)
{
    //Главные элементы
    var passwordbox = document.getElementById(passwordboxid);
    var container   = document.getElementById(containerdivid);
    
    //Вновь созданные элементы
    var indicator   = document.createElement("div");
    var indicator_i = document.createElement("div");
    var text_ind    = document.createElement("div");
    
    //Устанавливаем параметры индикатора
    container.appendChild(indicator);
    indicator.className = "pc-indicator";
    indicator.style.width = passwordbox.clientWidth - 30;
    
    //Устанавливаем параметры внутреннего индикатора
    indicator.appendChild(indicator_i);
    indicator_i.className = "pc-indicator-inline";
    
    //Устанавливаем параметры текстого индикатора
    if (showtext == null && showtext != false)
    container.appendChild(text_ind);
    text_ind.className = "pc-indicator-text";
    text_ind.innerHTML = "Низкая сложность";
    
    //Устанавливаем параметры контейнера
    container.className = "pc-container";
    
    //Проверяем вводные данные
    if (minmax == null)
    minmax = Array(0, 25);
    
    //Вычисляем данные сложности
    var current_complexity = 0;
    
    //Значения для определения сложности
    var numeric = "0123456789";
    var lower = "abcdefghijklmopqrstuvwxyzабвгдеёжзийклмнопрстуфхцчшщъыьэюя";
    var upper = "ABCDEFGHIJKLMOPQRSTUVWXYZАБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ";
    var signs = "~`!@#$%^&*+-=_|\\/()[]{}<>,.;:?\"\'";
    
    //Факторы сложности
    var has_only_numeric = false;
    var has_numeric = false;
    var has_lower = false;
    var has_upper = false;
    var has_signs = false;
        
    //Устанавливаем обработчик
    passwordbox.onkeyup = function()
    {
        //Если что-нибудь введено
        if (passwordbox.value.length != 0)
        {
            //Показываем индикатор
            container.style.display = "block";
        }
        else
        {
            //В противном случае, скрываем
            container.style.display = "none";
        }
        
        //Вычисляем комплексность
        current_complexity = (passwordbox.value.length / minmax[1]).toString().substr(0,4);
        
        //Проверяем наличие определенной группы символов
        for(i = 0; i < passwordbox.value.length; i++)
        {            
            has_numeric |= numeric.indexOf(passwordbox.value.charAt(i)) >= 0;
            has_lower   |= lower.indexOf(passwordbox.value.charAt(i)) >= 0;
            has_upper   |= upper.indexOf(passwordbox.value.charAt(i)) >= 0;
            has_signs   |= signs.indexOf(passwordbox.value.charAt(i)) >= 0;
            
            if (has_numeric)
            has_only_numeric++;
        }
        
        
        
        //Вычисляем самое частое состояние - пароль состоит из одних лишь цифр
        if (has_only_numeric == passwordbox.value.length && has_lower == false && has_upper == false && has_signs == false)
        {
            current_complexity = 0.40;
            text_ind.innerHTML = "<span style=\"critical\">Лёгкий пароль</span>";
            indicator_i.style.width = "25%";
            indicator_i.className = "pc-indicator-inline pc-i-critical";
            has_only_numeric = 0;
            has_numeric = false;
            has_lower= false;
            has_upper = false;
            has_signs = false;
            return;
        }
        
        //Сбрасываем
        has_only_numeric = 0;
        
        //Изменяем комплексность в соответствии с паролем
        if (has_lower == true || has_upper == true)
        {
            current_complexity = parseFloat(current_complexity) + 0.10;
        }
        
        if (has_lower == true && has_upper == true)
        {
            current_complexity = parseFloat(current_complexity) + 0.15;
        }
        
        if (has_signs == true)
        {
            current_complexity = parseFloat(current_complexity) + 0.15;
        }
        
        //Сбрасываем
        has_numeric = false;
        has_lower= false;
        has_upper = false;
        has_signs = false;
        
        //Если комплексность достаточна, то пароль оптимален
        if (current_complexity >= 1)
        {
            text_ind.innerHTML = "<span class=\"pc-green\">Оптимальный</span>";
            indicator_i.style.width = "97%";
            indicator_i.className = "pc-indicator-inline pc-i-green";
            return;
        }
        
        //Если длина введенного пароля меньше порога
        if (passwordbox.value.length < minmax[0])
        {
            //Выводим критическое сообщение
            text_ind.innerHTML = "<span class=\"pc-critical\">Слишком короткий</span>";
            indicator_i.style.width = "25%";
            indicator_i.className = "pc-indicator-inline pc-i-critical";
            return;
        }
        
        //Если длина пароля больше порога
        if (passwordbox.value.length > minmax[1])
        {
            text_ind.innerHTML = "<span class=\"pc-green\">Оптимальный</span>";
            indicator_i.style.width = "97%";
            indicator_i.className = "pc-indicator-inline pc-i-green";
            return;
        }
        
        
        //Выводим состояние в индикаторе
        indicator_i.style.width = current_complexity * 100;
        indicator_i.className = "pc-indicator-inline pc-i-yellow";
        
        //Выводим состояние в текстовый элемент
        text_ind.innerHTML = "<span style=\"pc-yellow\">Средней сложности</span>";
    }
} 
function ShowOrHideEx(id, show) {
    var item = null;

    if (document.getElementById) {
      item = document.getElementById(id);
    } else if (document.all) {
      item = document.all[id];
    } else if (document.layers){
      item = document.layers[id];
    }
    if (item && item.style) {
      item.style.display = show ? "" : "none";
    }
  }
      function ShowOrHide(d1, d2) {
      if (d1 != '') DoDiv(d1);
      if (d2 != '') DoDiv(d2);
    }
    function DoDiv(id) {
      var item = null;
      if (document.getElementById) {
        item = document.getElementById(id);
      } else if (document.all){
        item = document.all[id];
      } else if (document.layers){
        item = document.layers[id];
      }
      if (!item) {
      }
      else if (item.style) {
        if (item.style.display == "none"){ item.style.display = ""; }
        else {item.style.display = "none"; }
      }else{ item.visibility = "show"; }
     }
function setCookie (name, value, expires, path, domain, secure) {
    document.cookie = name + "=" + escape(value) +
    ((expires) ? "; expires=" + expires : "") +
    ((path) ? "; path=" + path : "") +
    ((domain) ? "; domain=" + domain : "") +
    ((secure) ? "; secure" : "");
}

function CheckStringSimv (Alph,Txt)
{
var sim_err=0;
for (var i = 0; i < Txt.length; i++)
    {    
        if (Alph.indexOf(Txt.charAt(i)) < 0) {sim_err=1}
    }
return sim_err;
};
	 
function mail_check (txt)
{
var r=0;
var left=1;
var right=0;
var ext=0;
var emailsucces=0;
var t=0;
if (txt.length>0)
{
	for (t=0; t<txt.length; t++)
	{
	if (t==0) 
	{
		if (CheckStringSimv ("0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",txt.charAt(t))==1) 
			{
			r++;
			}
	} else {
		if ((txt.charAt(t)=='@') && (right==1)) 
			{
			r++;
			} else {
				if (txt.charAt(t)=='@') 
				{
				right=1;
				if (CheckStringSimv ("0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",txt.charAt(t-1))==1) {r++;}
				}
			}
		if ((txt.charAt(t)=='.') && (right==1)) 
			{
				if (CheckStringSimv ('0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_-',txt.charAt(t-1))==1) {r++;} else {ext=1;}
			}
		if ((CheckStringSimv ('0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ',txt.charAt(t))==0) && (ext==1)) {emailsucces=-10;}
	}
	if (CheckStringSimv ('0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_-@.',txt.charAt(t))==1) {r++;}
	}
}

var res=0;
res=r+emailsucces;
return res;
};
	 
	 //Добавление объекта....//
function check_add_data(auth_status)
{
	var fr=document.getElementsByName('select_form')[0].value+'s';
	var addForm=document.forms[fr];
	var warningMess='';
	if (addForm.adress.value.length==0) {
										document.getElementById(fr.charAt(0)+'mess_adress').innerHTML='Вы не указали Адрес.';
										warningMess+='Адрес\r\n';
										} else { document.getElementById(fr.charAt(0)+'mess_adress').innerHTML='';}
	if (addForm.district.value==0) {
	document.getElementById(fr.charAt(0)+'mess_district').innerHTML='Вы не указали Район.';
	warningMess+='Район\r\n';
	} else {document.getElementById(fr.charAt(0)+'mess_district').innerHTML='';}
	//Проверка цены...
	var df='';
	var dt='';
	var dp='';
	var p=0;
	var f,t=0;
	if (num_price>1) {
	for (var i=0; i<num_price; i++) {
	df='day_from'+i;
	dt='day_to'+i;
	dp='price'+i;
	p=i+1;
	if (document.getElementsByName(dt)[0].value=='') document.getElementsByName(dt)[0].value=0;
	if (document.getElementsByName(dp)[0].value=='') document.getElementsByName(dp)[0].value=0;
	f=document.getElementsByName(df)[0].value;
	t=document.getElementsByName(dt)[0].value;
	if (document.getElementsByName(dt)[0].value<1) warningMess+='В интервале '+p+' конечное число дней равно 0'+"\r\n";
	if (!(Math.round(f)<Math.round(t))) warningMess+='В интервале '+p+' начальное число дней равно или больше конечного числа.'+"\r\n";
	if (Math.round(document.getElementsByName(dp)[0].value)<1) warningMess+='В интервале '+p+' цена должна быть больше нуля.'+"\r\n";
	}
	} else {
	if (document.getElementsByName('price')[0].value=='' || isNaN(document.getElementsByName('price')[0].value)) document.getElementsByName('price')[0].value=0;
	if (Math.round(document.getElementsByName('price')[0].value)<1) warningMess+='Цена не может быть равна 0.';
	}
	if (document.getElementsByName('select_form')[0].value=='house') {
	if (addForm.rast.value.length==0 || isNaN(addForm.rast.value)) {
										document.getElementById(fr.charAt(0)+'mess_rast').innerHTML='Вы не указали Удалённость от города.';
										warningMess+='Удалённость от города\r\n';
										} else { document.getElementById(fr.charAt(0)+'mess_rast').innerHTML='';
										addForm.rast.value=Math.abs(addForm.rast.value);}
	if (addForm.etazh.value.length==0 || addForm.etazh.value=='0' || isNaN(addForm.etazh.value)) {
										document.getElementById(fr.charAt(0)+'mess_etazh').innerHTML='Вы не указали Кол-во этажей.';
										warningMess+='Кол-во этажей\r\n';
										} else { document.getElementById(fr.charAt(0)+'mess_etazh').innerHTML='';
										addForm.etazh.value=Math.abs(addForm.etazh.value);}
	}
	/* else
	{
	if (addForm.etazh.value.length==0 || addForm.etazh.value=='0' || isNaN(addForm.etazh.value)) {
										document.getElementById(fr.charAt(0)+'mess_etazh').innerHTML='Вы не указали Этаж.';
										warningMess+='Этаж\r\n';
										} else { document.getElementById(fr.charAt(0)+'mess_etazh').innerHTML='';
										addForm.etazh.value=Math.abs(addForm.etazh.value);}
	}
*/
	if (warningMess!='') alert ('Вы неправильно заполнили следующие поля:\r\n'+warningMess); else { addForm.submit();}
};

function auth_or_reg()
{
	var warningMess='';
	var login=document.forms['authOrReg'].elements['login'].value;
	var pass=document.forms['authOrReg'].elements['password'].value;
	if (login.length==0) {warningMess+='Вы не ввели E-mail\r\n';}else{
	if (mail_check(login)!=-10) warningMess+="E-mail не корректен.\r\n";
	if (mail_check(login)==0) warningMess+="E-mail не введён до конца.\r\n";
	}
	if (pass.length==0) warningMess+='Вы не ввели Пароль\r\n';
	if (warningMess=='') { if (CheckStringSimv ("0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ,.;'[]<>:\"{}",pass)==1)
		warningMess+="Вы ввели не допустимый символ в написании пароля. Допустимые: a-Z; 0-9; ,.;'[]:<>\"{};";
		}
	if (warningMess!='') {
		alert(warningMess);
		} else {
			var req = Inint_AJAX();
			req.onreadystatechange = function () { 
			if (req.readyState==4) {
					if (req.status==200) {
							var o=(navigator.appName == "Microsoft Internet Explorer")?BinaryToString(req.responseBody):req.responseText;
							o=o.replace(/(^\s+)|(\s+$)/g, "");
							if (o.charAt(1)=='0' || o.charAt(0)=='0') location.replace("http://"+site_dsn+".sutochno.ru/user_registration.php"); else
							if (o.charAt(1)=='1' || o.charAt(0)=='1') document.getElementById('displayAction').innerHTML="<b>Пароль введен с ошибкой! Воспользуйтесь <a href=\"http://"+site_dsn+".sutochno.ru/remember_pass.php\">напоминанием пароля</a></b>"; else
							if (o.charAt(1)=='2' || o.charAt(0)=='2') document.getElementsByName('authOrReg')[0].submit();
					}
				}
			};
			req.open("POST", "/ajax/check_auth_data.php"); 
			req.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=utf-8");
			req.send('lgn='+login+'&pwd='+pass);
		}
};
function stnd_check_reg()
{
var warningMess='';
var frm=document.forms['adv_reg'];
document.getElementById('login_mess').innerHTML='';
if (frm.elements['login'].value.length==0) {warningMess+='Вы не ввели E-mail\r\n';}else{
if (mail_check(frm.elements['login'].value)!=-10) warningMess+="E-mail не корректен.\r\n";
if (mail_check(frm.elements['login'].value)==0) warningMess+="E-mail не введён до конца.\r\n";
	}	
if (warningMess=='') 
			{
			var req = Inint_AJAX();
			req.onreadystatechange = function () { 
			if (req.readyState==4) {
					if (req.status==200) {
						if (navigator.appName == "Microsoft Internet Explorer")
						{
							var o=BinaryToString(req.responseBody);
							if (o.charAt(0)=='0' || o.charAt(1)=='0') {
								if (frm.elements['name'].value.length==0) warningMess+='Вы не ввели Имя\r\n';
								if (frm.elements['surname'].value.length==0) warningMess+='Вы не ввели Фамилию\r\n';
								if (document.getElementsByName('flag_org')[1].checked && frm.elements['comp_name'].value.length==0) warningMess+='Вы не ввели Название\r\n';
								if (warningMess!='') {alert (warningMess);} else {
								document.forms['adv_reg'].submit();
								} 
							}
							if (o.charAt(0)=='1' || o.charAt(1)=='1') document.getElementById('login_mess').innerHTML="<b>Введённый вами e-mail уже зарегистрирован! Но введённый вами пароль не верен."+
"Воспользуйтесь <a href=\"/remember_pass.php\" title=\"Напоминание пароля\">напоминанием пароля</a></b>";
							} else {
							var o=req.responseText;
							if (o.charAt(0)=='0' || o.charAt(1)=='0') 
							{	
								if (frm.elements['name'].value.length==0) warningMess+='Вы не ввели Имя\r\n';
								if (frm.elements['surname'].value.length==0) warningMess+='Вы не ввели Фамилию\r\n';
								if (document.getElementsByName('flag_org')[1].checked && frm.elements['comp_name'].value.length==0) warningMess+='Вы не ввели Название\r\n';
								if (warningMess!='') {alert (warningMess);} else {
								document.forms['adv_reg'].submit();
								} 
							}
							if (o.charAt(0)=='1' || o.charAt(1)=='1') document.getElementById('login_mess').innerHTML="<b>Введённый вами e-mail уже зарегистрирован! Но введённый вами пароль не верен."+
"Воспользуйтесь <a href=\"/remember_pass.php\" title=\"Напоминание пароля\">напоминанием пароля</a></b>";
							}
					} 
				}
			};
			req.open("POST", "/ajax/check_reg_data.php"); 
			req.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=utf-8");
			req.send('lgn='+frm.elements['login'].value);
			} else {
								if (frm.elements['name'].value.length==0) warningMess+='Вы не ввели Имя\r\n';
								if (frm.elements['surname'].value.length==0) warningMess+='Вы не ввели Фамилию\r\n';
								if (document.getElementsByName('flag_org')[1].checked && frm.elements['comp_name'].value.length==0) warningMess+='Вы не ввели Название\r\n';
								alert (warningMess);
			}
};
function rotate_img (id,img,lev,id_photo,t) {
	var divv='p'+id_photo+'i';
	document.getElementById(divv).innerHTML="<img src=\"./images/loader.gif\"/ border=\"0\">";
	var photos = Inint_AJAX();
		photos.onreadystatechange = function () { 
          if (photos.readyState==4) {
               if (photos.status==200) {
				if (navigator.appName == "Microsoft Internet Explorer") {
						document.getElementById(divv).innerHTML='<img src="/'+BinaryToString(photos.responseBody)+'"/>';
						} else {
						document.getElementById(divv).innerHTML='<img src="/'+photos.responseText+'"/>';
						}
				} 
          }
     };
     photos.open("GET","/rotate_img.php?id="+id+"&img="+img+"&lev="+lev+"&t="+t+"&id_photo="+id_photo+"&rnumber="+Math.random()); 
     photos.setRequestHeader("Content-Type", "text/xml");
	 photos.send(null);  
};
function chg_title_photo (pos,id,ttype) {
	var div='tit'+pos;
	document.getElementById(div).innerHTML='<input type="text" name="tit_edit'+pos+'" value="'+tit_arr[pos]+'" maxlength="120"/> <span class="iz"><a href=javascript:save_title_photo(\''+pos+'\',\''+id+'\',\''+ttype+'\')>сохранить</a></span>';
}
function save_title_photo (pos,id,ttype) {
	var div='tit'+pos;
	var ed='tit_edit'+pos;
	var req = Inint_AJAX();
	if (document.getElementsByName(ed)[0].value.length==0) tit_arr[pos]='Фотография №'+pos; else tit_arr[pos]=document.getElementsByName(ed)[0].value;
    req.onreadystatechange = function () { 
          if (req.readyState==4) {
               if (req.status==200) {
                    document.getElementById(div).innerHTML=tit_arr[pos]+' <span class=\"iz\"><a href=javascript:chg_title_photo(\''+pos+'\',\''+id+'\',\''+ttype+'\')>изменить</a></span>';
               } 
          }
     };
	 req.open("POST",'/ajax/chg_tit_photo.php'); 
     req.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=utf-8");
	 req.send("id_photo="+pos+"&ttype="+ttype+"&title="+tit_arr[pos]);
}
function rotate_user_logo (id,lev) {
	var ran=100*Math.random();
	document.getElementById('user_logo').innerHTML="<STRONG>Подождите...</STRONG>";
	var photos = Inint_AJAX();
		photos.onreadystatechange = function () { 
          if (photos.readyState==4) {
               if (photos.status==200) {
                    document.getElementById('user_logo').src="/images/users/"+document.getElementsByName('sel_photo')[0].value+"?"+ran;
				} 
          }
     };
     photos.open("POST","/rotate_user_logo.php"); 
     photos.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=utf-8");
	 photos.send("id="+id+"&lev="+lev);
};
function rotate_user_plan (id,lev,ttype) {
	var ran=100*Math.random();
	document.getElementById('user_plan').innerHTML="<STRONG>Подождите...</STRONG>";
	var photos = Inint_AJAX();
		photos.onreadystatechange = function () { 
          if (photos.readyState==4) {
               if (photos.status==200) {
                    document.getElementById('user_plan').src=document.getElementsByName('sel_path')[0].value+"plan.png?"+ran;
				} 
          }
     };
     photos.open("POST","/rotate_user_plan.php"); 
     photos.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=utf-8");
	 photos.send("id="+id+"&lev="+lev+"&type="+ttype);
};
function delete_img (id,fname,id_photo,t)
{
	var div='p'+id_photo;
	var photos = Inint_AJAX();
		photos.onreadystatechange = function () { 
          if (photos.readyState==4) {
               if (photos.status==200) {
                    document.getElementById(div).style.display='none';
					} 
          }
     };
     photos.open("GET","/delete_img.php?id="+id+"&fname="+fname+"&id_photo="+id_photo+"&t="+t+"&rnumber="+Math.random()); 
     photos.setRequestHeader("Content-Type", "text/xml");
	 photos.send(null);
};
function down_img (id_photo)
{
	var fact = document.getElementsByName('action_photo_post')[0];
	fact.elements['act'].value='down';
	fact.elements['id_photo'].value=id_photo;
	fact.submit();
};
function up_img (id_photo)
{
	var fact = document.getElementsByName('action_photo_post')[0];
	fact.elements['act'].value='up';
	fact.elements['id_photo'].value=id_photo;
	fact.submit();
};
function top_img (id_photo) 
{
	document.getElementsByName('id_photo')[0].value=id_photo;
	document.getElementsByName('act')[0].value='top';
	document.getElementsByName('action_photo_post')[0].submit();
};
function change_form_rooms() {
	var sform=document.getElementsByName('search_form')[0];
	if (!check_dates()) sform.elements['day_to'].value=sform.elements['day_from'].value;
	document.getElementById('find_button').style.display='none';
	Ajax_resp('/ajax/chg_action_form.php?type='+sform.elements['type'].value+'&city_id='+sform.elements['city'].value+'&district='+sform.elements['district'].value+'&rooms='+sform.elements['rooms'].value+'&day_from='+sform.elements['day_from'].value+'&day_to='+sform.elements['day_to'].value+'&row=city','<select><option>Загрузка...</option></select>','district','','adv_chg_districts()');
	document.getElementById('find_button').style.display='block';
};
function adv_chg_districts () {
var sform=document.getElementsByName('search_form')[0];
document.getElementById('find_button').style.display='none';
Ajax_resp('/ajax/chg_action_form.php?type='+sform.elements['type'].value+'&city_id='+sform.elements['city'].value+'&district='+sform.elements['district'].value+'&rooms='+sform.elements['rooms'].value+'&day_from='+sform.elements['day_from'].value+'&day_to='+sform.elements['day_to'].value+'&row=kol','Подсчёт...','kol_var','','');
document.getElementById('find_button').style.display='block';
}
function adv_chg_rooms () {
var sform=document.getElementsByName('search_form')[0];
document.getElementById('find_button').style.display='none';
Ajax_resp('/ajax/chg_action_form.php?type='+sform.elements['type'].value+'&city_id='+sform.elements['city'].value+'&district='+sform.elements['district'].value+'&rooms='+sform.elements['rooms'].value+'&day_from='+sform.elements['day_from'].value+'&day_to='+sform.elements['day_to'].value+'&row=kol','Подсчёт...','kol_var','','');
document.getElementById('find_button').style.display='block';
}
function check_dates() {
var sform=document.getElementsByName('search_form')[0];
var date_from=sform.elements['day_from'].value.split('.');
var date_to=sform.elements['day_to'].value.split('.');
var date1=new Date (date_from[2],--date_from[1],date_from[0]);
var date2=new Date (date_to[2],--date_to[1],date_to[0]);
document.getElementById('date_from_dis').innerHTML=sform.elements['day_from'].value;
document.getElementById('date_to_dis').innerHTML=sform.elements['day_to'].value;
if (date1.getTime()>date2.getTime()) return false; else return true;
};
function change_form_district() {
	var sform=document.getElementsByName('search_form')[0];
	if (!check_dates()) sform.elements['day_to'].value=sform.elements['day_from'].value;
	document.getElementById('find_button').style.display='none';
	Ajax_resp('/ajax/chg_action_form.php?type='+sform.elements['type'].value+'&city_id='+sform.elements['city'].value+'&district='+sform.elements['district'].value+'&rooms='+sform.elements['rooms'].value+'&day_from='+sform.elements['day_from'].value+'&day_to='+sform.elements['day_to'].value+'&row=district','<select><option>Загрузка...</option></select>','rooms_pl','','adv_chg_rooms()');
	Ajax_resp('/ajax/chg_action_form.php?row=city_rod&id='+sform.elements['city'].value,'','city_dis','','');
};

function change_form_city() {
	var sform=document.getElementsByName('search_form')[0];
	if (!check_dates()) sform.elements['day_to'].value=sform.elements['day_from'].value;
	document.getElementById('find_button').style.display='none';
	Ajax_resp('/ajax/chg_action_form.php?type='+sform.elements['type'].value+'&city_id='+sform.elements['city'].value+'&district='+sform.elements['district'].value+'&rooms='+sform.elements['rooms'].value+'&day_from='+sform.elements['day_from'].value+'&day_to='+sform.elements['day_to'].value+'&row=city','<select><option>Загрузка...</option></select>','district','','change_form_district()');
};
function click_form_search() {
	if (!check_dates()) sform.elements['day_to'].value=sform.elements['day_from'].value;
	var sform=document.getElementsByName('search_form')[0];
	var a = Inint_AJAX();
    a.onreadystatechange = function () { 
          if (a.readyState==4) {
               if (a.status==200) {
                    if (navigator.appName == "Microsoft Internet Explorer")
					{					
                    location.href=BinaryToString(a.responseBody);
					}
                                        else 
					{
                    location.href=a.responseText;
					}
               } 
          }
     };
	 a.open("GET",'/ajax/chg_action_form.php?type='+sform.elements['type'].value+'&city_id='+sform.elements['city'].value+'&district='+sform.elements['district'].value+'&rooms='+sform.elements['rooms'].value+'&day_from='+sform.elements['day_from'].value+'&day_to='+sform.elements['day_to'].value+'&row=link',true); 
     a.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=utf-8");
	 a.send(null);
};
function addHandler(o,e,h) {
	if(typeof o.addEventListener!='undefined')
		o.addEventListener(e,h,false);
	else if(typeof o.attachEvent!='undefined')
		o.attachEvent('on'+e,h);
	else
		throw "Неподдерживаемый браузер";
};
function toFixedPrice()
{
if (num_price>1) {
num_price=1;
document.getElementsByName('num_price')[0].value=num_price;
document.getElementById('price_pan').innerHTML='<p>Стоимость за сутки: <input name="price" type="text" value="0" size="10" maxlength="5" onkeypress="return check_int(event)"> руб.</p>';
}
};
function toVariablePrice()
{
if (num_price<2) {
num_price=4;
document.getElementsByName('num_price')[0].value=num_price;
document.getElementById('price_pan').innerHTML='<p>От <input name="day_from0" type="text" value="1" maxlength="1" readonly style="width: 20px;">&nbsp;&nbsp;&nbsp; до  <input name="day_to0" type="text" value="7" maxlength="2" onkeyup="if (typeof(document.getElementsByName(\'day_from1\')[0])!=\'undefined\') { var t=this.value; document.getElementsByName(\'day_from1\')[0].value=++t; document.getElementsByName(\'day_to1\')[0].value=++t} chg_min_time();" onkeypress="return check_int(event)" style="width: 20px;"> дней включительно  &mdash;'+
'стоимость <input name="price0" type="text" value="0" maxlength="5" onkeypress="return check_int(event)" style="width: 60px;"> руб. за сутки</p>';
document.getElementById('price_pan').innerHTML+='<p>От <input name="day_from1" type="text" value="8" maxlength="2" readonly style="width: 20px;">&nbsp;&nbsp;&nbsp; до  <input name="day_to1" type="text" value="14" maxlength="2" onkeyup="if (typeof(document.getElementsByName(\'day_from2\')[0])!=\'undefined\') { var t=this.value; document.getElementsByName(\'day_from2\')[0].value=++t; document.getElementsByName(\'day_to2\')[0].value=++t} chg_min_time();" onkeypress="return check_int(event)" style="width: 20px;"> дней включительно  &mdash;'+
'стоимость <input name="price1" type="text" value="0" maxlength="5" onkeypress="return check_int(event)" style="width: 60px;"> руб. за сутки</p>';
document.getElementById('price_pan').innerHTML+='<p>От <input name="day_from2" type="text" value="15" maxlength="2" readonly style="width: 20px;">&nbsp;&nbsp;&nbsp; до  <input name="day_to2" type="text" value="30" maxlength="2" onkeyup="if (typeof(document.getElementsByName(\'day_from3\')[0])!=\'undefined\') { var t=this.value; document.getElementsByName(\'day_from3\')[0].value=++t; document.getElementsByName(\'day_to3\')[0].value=++t} chg_min_time();" onkeypress="return check_int(event)" style="width: 20px;"> дней включительно  &mdash;'+
'стоимость <input name="price2" type="text" value="0" maxlength="5" onkeypress="return check_int(event)" style="width: 60px;"> руб. за сутки</p>';
document.getElementById('price_pan').innerHTML+='<p>От <input name="day_from3" type="text" value="31" maxlength="2" readonly style="width: 20px;">&nbsp;&nbsp;&nbsp; до  <input name="day_to3" type="text" value="99" maxlength="2" onkeyup="if (typeof(document.getElementsByName(\'day_from4\')[0])!=\'undefined\') { var t=this.value; document.getElementsByName(\'day_from4\')[0].value=++t; document.getElementsByName(\'day_to4\')[0].value=++t} chg_min_time();" onkeypress="return check_int(event)" style="width: 20px;"> дней включительно  &mdash;'+
'стоимость <input name="price3" type="text" value="0" maxlength="5" onkeypress="return check_int(event)" style="width: 60px;"> руб. за сутки</p>';
document.getElementById('price_pan').innerHTML+='<span class="iz"><a href=javascript:add_pole_pr()>добавить интервал</a></span><br/><span class="iz"><a href=javascript:del_pole_pr()>удалить последний интервал</a></span>';
chg_min_time();
}
};

function add_pole_pr()
{
var temp=num_price-1;
temp='day_to'+temp;
if (document.getElementsByName(temp)[0].value<98) {
temp='';
var df='';
var dt='';
var dfn='';
var dtn='';
var dp='';
var dpn='';
var sp='';
var p=0;
for (var i=0; i<num_price; i++) {
df='day_from'+i;
dt='day_to'+i;
dp='price'+i;
p=i;
p++;
dfn='day_from'+p;
dtn='day_to'+p;
dpn='price'+p;
temp+='<p>От <input name="'+df+'" type="text" value="'+document.getElementsByName(df)[0].value+'" maxlength="2" readonly style="width: 20px;">&nbsp;&nbsp;&nbsp; до  <input name="'+dt+'" type="text" value="'+document.getElementsByName(dt)[0].value+'" maxlength="2" onkeyup="if (typeof(document.getElementsByName(\''+dfn+'\')[0])!=\'undefined\') { var t=this.value; document.getElementsByName(\''+dfn+'\')[0].value=++t; document.getElementsByName(\''+dtn+'\')[0].value=++t} chg_min_time();" onkeypress="return check_int(event)" style="width: 20px;"> дней включительно  &mdash;'+
'стоимость <input name="'+dp+'" type="text" value="'+document.getElementsByName(dp)[0].value+'" maxlength="5" onkeypress="return check_int(event)" style="width: 60px;"> руб. за сутки'+
'</p>';
}
var nx=document.getElementsByName(dt)[0].value;
nx++;
num_price++;
temp+='<p>От <input name="'+dfn+'" type="text" value="'+nx+'" maxlength="2" readonly style="width: 20px;">&nbsp;&nbsp;&nbsp; до  <input name="'+dtn+'" type="text" value="'+(++nx)+'" maxlength="2" onkeyup="if (typeof(document.getElementsByName(\'day_from'+num_price+'\')[0])!=\'undefined\') { var t=this.value; document.getElementsByName(\'day_from'+num_price+'\')[0].value=++t; document.getElementsByName(\'day_to'+num_price+'\')[0].value=++t} chg_min_time();" onkeypress="return check_int(event)" style="width: 20px;"> дней включительно  &mdash;'+
'стоимость <input name="'+dpn+'" type="text" value="'+document.getElementsByName(dp)[0].value+'" maxlength="5" onkeypress="return check_int(event)" style="width: 60px;"> руб. за сутки</p>';
if (num_price>2) {
document.getElementById('price_pan').innerHTML=temp+'<span class="iz"><a href=javascript:add_pole_pr()>добавить интервал</a></span><br/><span class="iz"><a href=javascript:del_pole_pr()>удалить последний интервал</a></span>';
} else {
document.getElementById('price_pan').innerHTML=temp+'<span class="iz"><a href=javascript:add_pole_pr()>добавить интервал</a></span>';
}
document.getElementsByName('num_price')[0].value=num_price;
}
};
function del_pole_pr()
{
var temp='';
var df='';
var dt='';
var dfn='';
var dtn='';
var dp='';
var dpn='';
var sp='';
var p=0;
num_price--;
for (var i=0; i<num_price; i++) {
df='day_from'+i;
dt='day_to'+i;
dp='price'+i;
p=i;
p++;
dfn='day_from'+p;
dtn='day_to'+p;
dpn='price'+p;
temp+='<P>От <input name="'+df+'" type="text" value="'+document.getElementsByName(df)[0].value+'" maxlength="2" readonly style="width: 20px;">&nbsp;&nbsp;&nbsp; до  <input name="'+dt+'" type="text" value="'+document.getElementsByName(dt)[0].value+'" maxlength="2" onkeyup="if (typeof(document.getElementsByName(\''+dfn+'\')[0])!=\'undefined\') { var t=this.value; document.getElementsByName(\''+dfn+'\')[0].value=++t; document.getElementsByName(\''+dtn+'\')[0].value=++t} chg_min_time();" onkeypress="return check_int(event)" style="width: 20px;"> дней включительно  &mdash;'+
'стоимость <input name="'+dp+'" type="text" value="'+document.getElementsByName(dp)[0].value+'" maxlength="5" onkeypress="return check_int(event)" style="width: 60px;"> руб. за сутки'+
'</P>';
}
if (num_price>2) {
document.getElementById('price_pan').innerHTML=temp+'<span class="iz"><a href=javascript:add_pole_pr()>добавить интервал</a></span><br/><span class="iz"><a href=javascript:del_pole_pr()>удалить последний интервал</a></span>';
} else {
document.getElementById('price_pan').innerHTML=temp+'<span class="iz"><a href=javascript:add_pole_pr()>добавить интервал</a></span>';
}
document.getElementsByName('num_price')[0].value=num_price;
};
function chg_min_time()
{
if (num_price>1) {
var df='';
var dt='';
var p=0;
var days=1
if (document.getElementById('field_min_time4').checked) days=2;
if (document.getElementById('field_min_time5').checked) days=3;
document.getElementsByName('day_from0')[0].value=days;
while (Math.round(document.getElementsByName('day_from0')[0].value)>=Math.round(document.getElementsByName('day_to0')[0].value)) { document.getElementsByName('day_to0')[0].value++;}
for (var i=1; i<num_price; i++) {
df='day_from'+i;
dt='day_to'+i;
p=i;
p--;
dtb='day_to'+p;
document.getElementsByName(df)[0].value=document.getElementsByName(dtb)[0].value
document.getElementsByName(df)[0].value++;
if (Math.round(document.getElementsByName(df)[0].value)>=Math.round(document.getElementsByName(dt)[0].value)) {
	while (Math.round(document.getElementsByName(df)[0].value)>=Math.round(document.getElementsByName(dt)[0].value)) { document.getElementsByName(dt)[0].value++;}
}
}
}
};
function openItem(idname){
var div="#"+idname;
/*	div=document.getElementById(idname);
	if (div.style.display!='block') div.style.display='block';	
*/
$(div).show("slow");
	$(document).bind('keydown',function(event){
  switch (event.keyCode) {
    case 27: closeItem(idname);
  }
});
};
function closeItem(idname){
var div="#"+idname;
/*
	div=document.getElementById(idname);
	if (div.style.display!='none') div.style.display='none';
*/
$(div).hide("slow");
};

function rotate_div(id) {
 if (document.getElementById(id).style.display=='none') {
	var div='#'+id;
	$(div).show("slow");
	return true;
 } else {
	var div='#'+id;
	$(div).hide("slow");
	return false;
 }
};