var Url = {
	 
	// public method for url encoding
	encode : function (string) {
		return escape(this._utf8_encode(string));
	},
 
	// public method for url decoding
	decode : function (string) {
		return this._utf8_decode(unescape(string));
	},
 
	// private method for UTF-8 encoding
	_utf8_encode : function (string) {
		string = string.replace(/\r\n/g,"\n");
		var utftext = "";
 
		for (var n = 0; n < string.length; n++) {
 
			var c = string.charCodeAt(n);
 
			if (c < 128) {
				utftext += String.fromCharCode(c);
			}
			else if((c > 127) && (c < 2048)) {
				utftext += String.fromCharCode((c >> 6) | 192);
				utftext += String.fromCharCode((c & 63) | 128);
			}
			else {
				utftext += String.fromCharCode((c >> 12) | 224);
				utftext += String.fromCharCode(((c >> 6) & 63) | 128);
				utftext += String.fromCharCode((c & 63) | 128);
			}
 
		}
 
		return utftext;
	},
 
	// private method for UTF-8 decoding
	_utf8_decode : function (utftext) {
		var string = "";
		var i = 0;
		var c = c1 = c2 = 0;
 
		while ( i < utftext.length ) {
 
			c = utftext.charCodeAt(i);
 
			if (c < 128) {
				string += String.fromCharCode(c);
				i++;
			}
			else if((c > 191) && (c < 224)) {
				c2 = utftext.charCodeAt(i+1);
				string += String.fromCharCode(((c & 31) << 6) | (c2 & 63));
				i += 2;
			}
			else {
				c2 = utftext.charCodeAt(i+1);
				c3 = utftext.charCodeAt(i+2);
				string += String.fromCharCode(((c & 15) << 12) | ((c2 & 63) << 6) | (c3 & 63));
				i += 3;
			}
 
		}
 
		return string;
	}
 
}


function showElementsNums(num){ 
	var numbers = GKR.showElementsNumbers;
	var html = '<span class="sortingTitle">Выводить по:</span>';
	$('#showsElement').html(html);
	var nCount = numbers.length;
	for(var i = 0; i<nCount; i++){
		if(numbers[i] == num){
			$('<span></span>').appendTo('#showsElement').html(numbers[i]);
		} else {
			$('<a></a>').appendTo('#showsElement')
			.html(numbers[i])
			.attr('href', 'javascript:void(0)')
			.addClass('green')
			.click(function(){
				var val = $(this).html();
				showElementsNums(val);
				updateHash({'shows': val});
			});	
		}
	}
	$('#showsElement').show();
}

function convCur (price) {
	var _kurs = {"usd":  currencyUsd, "eur": currencyEur, "rur": 1};
	var _curr = $("input[name='currency']:radio:checked").attr('value');
	var kurs = _kurs[_curr];

	price /= kurs;

	if (parseInt(price/1000000) > 0) {
		price = parseInt(price/100000)/10 + " млн.";
	} else if (parseInt(price/1000) > 0) {
		price = parseInt(price/100)/10 + " тыс.";
	} else {
		price = parseInt(price * 10)/10;
	}

	switch(_curr) {
		case 'usd':
			price = "$" + price;
			break;
		case 'eur':
			price = "€" + price;
			break;
		case 'rur':
			price += " руб.";
			break;
		default:
	}

	return price;
}

hintContentArray = new Array();
hintContentArray['Ocenka'] = 'Оценка квартиры|Оценка рыночной стоимости квартиры на сегодняшний день.<br>С помощью электронной карты города и специально разработанного программного обеспечения определено расстояние от дома до основных зон, участвующих в ценообразовании и смоделировано влияние глобальных (например, центр города) и локальных центров (например, основных магистралей) на стоимость площади в доме. Этот показатель заложен в <font color="#218DCB">Do</font>-оценке.';
hintContentArray['StarsHint'] = starsHintContent;
hintContentArray['suspishiousHint'] = 'Что значит "подозрительное" объявление?|Объявление о продаже на вторичном рынке недвижимости считается подозрительным, если стоимость квадратного метра, рассчитанная на основе характеристик объявления, меньше do-оценки в этом доме на 30% или более.<br/><a class="blue" href="http://www.domoway.ru/wiki/flat_estimation/">подробнее...</a>';
if(!Array.indexOf){
  Array.prototype.indexOf = function(obj){
   for(var i=0; i<this.length; i++){
	if(this[i]==obj){
	 return i;
	}
   }
   return -1;
  }
}

	GKR = {};
	GKR.showElementsNumbers = new Array(10, 20, 40, 60);
	GKR.time = new Date();
	GKR.updateTimer = 0;
	GKR.updateTO = 10;
	GKR.lastHash = null;
	GKR.needUpdate = true;
	GKR.params = {
		"subtype": "1",
		"extracrit": "0",
		"currency": "3",
		"price": [0,16],
		"rentprice": [0,16],
		"pricepermetr": [0,16],
		"area": [0,16],
		"karea": [0,16],
		"doprice": [0,16],
		"rooms": "5",
		"etagmin": "",
		"etagmax": "",
		"sort": "1",
		"shows" : "20",
		"region": projectGuid,
		"specialization": "1",
		/* additional params for advanced search */
		"housetype" : "",
		"walls" : "",
		"metro": "",
		"metrow" : "",
		"etagn" : "",
		"year" : "",
		"lift" : "",
		"search" : "",
		"suspishious" : "1"
		/* end  of  params */
		};
	$.extend(GKR.params, reqParams);
	GKR.defParams = {
		"subtype": "1",
		"extracrit": "0",
		"currency": "3",
		"price": [0,16],
		"rentprice": [0,16],
		"pricepermetr": [0,16],
		"area": [0,16],
		"karea": [0,16],
		"doprice": [0,16],
		"rooms": "5",
		"etagmin": "",
		"etagmax": "",
		"sort": "1",
		"shows": "20",
		"region": projectGuid,
		"specialization": "1",
		/* additional params for advanced search */
		"housetype" : "",
		"walls" : "",
		"metrow" : "",
		"metro": "",
		"etagn" : "",
		"year" : "",
		"lift" : "",
		"search" : "",
		"suspishious" : "1"
		/* end  of  params */
		};
	$.extend(GKR.defParams, reqParams);	
	GKR.convertArr = {
		"type": "t",
		"currency": "c",
		"price": "pr",
		"rentprice": "rpr",
		"pricepermetr": "ppm",
		"area": "a",
		"karea": "ka",
		"doprice": "dp",
		"rooms": "r",
		"metro": "m",
		"district": "d",
		"street": "st",
		"house": "h",
		"sort": "s",
		"shows" : "sh",
		"page": "p",
		"letter": "l",
		"subtype": "sbt",
		"extracrit": "ex",
		"etagmin": "emn",
		"etagmax": "emx",
		"region": "rg",
		"specialization": "sp",
		"t": "type",
		"c": "currency",
		"pr": "price",
		"rpr": "rentprice",
		"ppm": "pricepermetr",
		"a": "area",
		"ka": "karea",
		"dp": "doprice",
		"r": "rooms",
		"m": "metro",
		"d": "district",
		"st": "street",
		"h": "house",
		"s": "sort",
		"sh": "shows",
		"p": "page",
		"l": "letter",
		"sbt": "subtype",
		"ex": "extracrit",
		"emn": "etagmin",
		"emx": "etagmax",
		"rg": "region",
		"sp": "specialization",
		/* additional params for advanced search */
		"suspishious" : "sps",
		"housetype" : "ht",
		"walls" : "w",
		"metrow" : "mw",
		"etagn" : "en",
		"year" : "y",
		"lift" : "lft",
		"search" : "srh",
		"ht" : "housetype",
		"w" : "walls",
		"mw" : "metrow",
		"en" : "etagn",
		"y" : "year",
		"lft" : "lift",
		"srh" : "search",
		"sps" : "suspishious"
		/* end  of  params */
		};
	GKR.LoadCounter = 0;
	GKR.LoaderTimeOut = 0;
	GKR.Sync = 0;
	GKR.LoaderStart = function() {
		$("#progressbar").show();
		GKR.LoadCounter++;
		clearTimeout(GKR.LoaderTimeOut);
		GKR.LoaderTimeOut = setTimeout(GKR.LoaderEnd, 10000);
	}
	GKR.LoaderEnd = function() {
		clearTimeout(GKR.LoaderTimeOut);
		if (GKR.LoadCounter > 0) GKR.LoadCounter--;
		if (GKR.LoadCounter == 0)
			$("#progressbar").fadeOut('fast');
	}
	GKR.touchlist = {
		"data": {},
		"letter": {},
		"type": "",
		"breadcrumbs": {}};
	GKR.stars = new Array();
	for (var cntStars = 1; cntStars < 5; cntStars++) {
		var doStars = '<a href="javascript:void(0)">';
		for (var i = 0; i < cntStars; i++)
			doStars += '<img hintText="StarsHint" style="padding:0;margin:0" src="/html/domoway_msk/images/default/i/stars/o_big.gif" alt="*">';
		for (var i = 0; i < (4 - cntStars); i++)
			doStars += '<img hintText="StarsHint"style="padding:0;margin:0" src="/html/domoway_msk/images/default/i/stars/g_big.gif" alt="">';
		doStars += '</a>';
		GKR.stars[i] = doStars;
	}
	GKR.ajaxLoadCounter = 0;

	parseHash();

	//Функционал для сравнения
	hintContentArray['compareTooManyHint'] = 'Сравнение переполнено|За один раз можно сравнивать только три объекта';
	function compare(pg, dt, dg, checkFlag) {
		if (checkFlag == true) compareRequest(pg, dt, dg, 'check');
		else if(!$("#com_" + dg).hasClass("compareOn"))
			compareRequest(pg, dt, dg, 'add');
		else compareRequest(pg, dt, dg, 'remove');
	}
	
	function compareRequest(pg, dt, dg, act){
		JsHttpRequest.query(
			'/ajax/compare/',{
				"pg": pg,
				"dt": dt,
				"dg": dg,
				"act": act
			},
			function( result, error ){
				if(error != true){
					if( result.success ){
						compareRequestHM();
						if(act == 'add' || result.data) {
							$("#com_" + dg).addClass("compareOn");
							$("#scal_" + dg).show();}
						else if(act == 'remove' || result.data == false) {
							$("#com_" + dg).removeClass("compareOn");
							$("#scal_" + dg).hide();}		
						return true;
					}
					else {
						if (result.error == 'toomany') {
							$(".hintQ[hinttext=compareTooManyHint]").mousedown();
						}
						else
							//alert("При выполнении запроса произошла ошибка!\n"+result.error);
						return false;
					}
				}
				else {
					//alert("При выполнении запроса произошла ошибка!("+error+")\nПовторите запрос.");
					return false;
				}
			},
			true
			);
		return false;
	}

	$(document).ready( function() {
		$('#filterNonJS').hide();
		$("#SearchStr").autocomplete('/map/process/?command=autocomplete', {
			autoFill: false,
			delay: 500,
			cacheLength: 10,
			matchSubset: 0,
			maxItemsToShow: 9,
			width: '588px'
				}
		);

		$("#lbl2").html('Адреса');
		$("#lbl3").html('Продажа');
		$("#lbl1").html('Оценки');
		$("#lbl4").html('Аренда');
		$("#lbl5").html('Риэлторы');
		$('#JSelements').show();
		$('#srtElement').show();
		$('#showsElement').show();
		$('.popBlockExitBttn').show();
		$("#filter6").change( function() {
			ToggleRadio(1);
			$('.advancedSearch').hide();
			$('#metroStation').hide();
			$('#suspBox').hide();
			$('#kSquare').hide();
			$('#critrooms').show();
			$('#critetag').hide();
			$('#slider_3').show();
			$('#filter_currency').show();
			$('#slider_price').show();
			$('#slider_rentprice').hide();
			$('#slider_pricepermetr').show();
			$('#slider_1').hide();
			$('#JSsuboffers').hide();
			$('#JSsubrent').hide();
			$('#realtorsort').hide();
			$('#touchListControl').show();
			$("input[name='extracrit'][value!='0']").parent().parent().hide();
			if ($('#h1_title_div').length > 0)
				$('#h1_title_div').hide();
			$('#sortBy').html('\
				<option selected="1" value="1">Дате (сначала свежие)</option>\
				<option value="2">Дате (сначала старые)</option>\
				<option value="3">Цене (по убыванию)</option>\
				<option value="4">Цене (по возрастанию)</option>');
			$('#sortBy').attr('value', GKR.params.sort);
			if(document.all)
				$('#sortBy').outerHTML = $('#sortBy').outerHTML;
			updateHash({"type": 3});
		});
		$("#filter7").change( function() {
			ToggleRadio(2);
			$('.advancedSearch').hide();
			$('#metroStation').hide();
			$('#suspBox').hide();
			$('#critrooms').hide();
			$('#critetag').hide();
			$('#slider_3').hide();
			$('#filter_currency').show();
			$('#slider_1').show();
			$('#JSsuboffers').hide();
			$('#JSsubrent').hide();
			$('#realtorsort').hide();
			$('#touchListControl').show();
			$("input[name='extracrit'][value!='0']").parent().parent().hide();
			if ($('#h1_title_div').length > 0)
				$('#h1_title_div').hide();
			$('#sortBy').html('\
				<option selected="1" value="1">Адресу (от А до Я)</option>\
				<option value="2">Адресу (от Я до А)</option>\
				<option value="3">Do-оценке (по убыванию)</option>\
				<option value="4">Do-оценке (по возрастанию)</option>');
			$('#sortBy').attr('value', GKR.params.sort);
			if(document.all)
				$('#sortBy').outerHTML = $('#sortBy').outerHTML;
			updateHash({"type": 1});
		});
		$("#filter8").change( function() {
			ToggleRadio(3);
			$('#kSquare').show();
			$('#metroStation').show();
			$('.advancedSearch').show();
			$('#suspBox').show();
			$('#critrooms').show();
			$('#critetag').show();
			$('#slider_3').show();
			$('#filter_currency').show();
			$('#slider_price').show();
			$('#slider_rentprice').hide();
			$('#slider_pricepermetr').show();
			$('#slider_1').hide();
			$('#JSsuboffers').show();
			$('#JSsubrent').hide();
			$('#realtorsort').hide();
			$('#touchListControl').show();
			$("input[name='extracrit'][value!='0']").parent().parent().hide();
			if ($('#h1_title_div').length > 0)
				$('#h1_title_div').show();
			$('#sortBy').html('\
				<option selected="1" value="1">Дате (сначала свежие)</option>\
				<option value="2">Дате (сначала старые)</option>\
				<option value="3">Цене (по убыванию)</option>\
				<option value="4">Цене (по возрастанию)</option>');
			$('#sortBy').attr('value', GKR.params.sort);
			if(document.all)
				$('#sortBy').outerHTML = $('#sortBy').outerHTML;

				var tmp = $("input[name='suboffer']:checked");
				var sbt = 0;
				for (i = 0; i < tmp.length; i++) {
					sbt += (tmp[i].value - 0);
				}
			updateHash({"type": 2, "subtype": sbt});
		});
		$("#filter9").change( function() {
			ToggleRadio(4);
			$('#kSquare').show();
			$('#metroStation').hide();
			$('.advancedSearch').show();
			$('#suspBox').hide();
			$('#critrooms').show();
			$('#critetag').show();
			$('#slider_3').show();
			$('#filter_currency').show();
			$('#slider_price').hide();
			$('#slider_rentprice').show();
			$('#slider_pricepermetr').hide();
			$('#slider_1').hide();
			$('#JSsuboffers').hide();
			$('#JSsubrent').show();
			$('#realtorsort').hide();
			$('#touchListControl').show();
			$("input[name='extracrit']").parent().parent().show();
			if ($('#h1_title_div').length > 0)
				$('#h1_title_div').hide();
			$('#sortBy').html('\
				<option selected="1" value="1">Дате (сначала свежие)</option>\
				<option value="2">Дате (сначала старые)</option>\
				<option value="3">Цене (по убыванию)</option>\
				<option value="4">Цене (по возрастанию)</option>');
			$('#sortBy').attr('value', GKR.params.sort);
			if(document.all)
				$('#sortBy').outerHTML = $('#sortBy').outerHTML;
			
			var tmp = $("input[name='subrent']:checked");
				var sbt = 0;
				for (i = 0; i < tmp.length; i++) {
					sbt += (tmp[i].value - 0);
				}
			updateHash({"type": 5, "subtype": sbt});
		});
		$("#filter10").change( function() {
			ToggleRadio(5);
			$('.advancedSearch').hide();
			$('#metroStation').hide();
			$('#suspBox').hide();
			$('#critrooms').hide();
			$('#critetag').hide();
			$('#slider_3').hide();
			$('#filter_currency').hide();
			$('#slider_1').hide();
			$('#JSsuboffers').hide();
			$('#JSsubrent').hide();
			$('#realtorsort').show();
			$('#touchListControl').hide();
			$("input[name='extracrit'][value!='0']").parent().parent().hide();
			if ($('#h1_title_div').length > 0)
				$('#h1_title_div').hide();
			$('#sortBy').html('\
				<option selected="1" value="1">ФИО (от А до Я)</option>\
				<option value="2">ФИО (от Я до А)</option>\
				<option value="3">Объялений (по убыванию)</option>\
				<option value="4">Объялений (по возрастанию)</option>');
			$('#sortBy').attr('value', GKR.psort);
			if(document.all)
				$('#sortBy').outerHTML = $('#sortBy').outerHTML;
			updateHash({"type": 4, "region": projectGuid, "specialization": 1});
		});
		$("input[name='show-filter-radio']").click(function(evt) {
			var e = evt ? evt : window.event;
			var elm = e.target ? e.target : e.srcElement;
			$('#' + elm.id).change();
		});
		switch (GKR.params.currency) {
			case "1":
				currency = "usd";
				break;
			case "2":
				currency = "eur";
				break;
			case "3":
				currency = "rur";
				break;
			default:
				break;
		}

		$("input[name='currency'][value='" + currency + "']").attr("checked", 1);

		var minPrice = 0;
		var maxPrice = 16;
		var minArea = 0;
		var maxArea = 16;
		var minKArea = 0;
		var maxKArea = 16;
		var minPriceStart = GKR.params.price[0];
		var maxPriceStart = GKR.params.price[1];
		var minAreaStart = GKR.params.area[0];
		var maxAreaStart = GKR.params.area[1];
		var minKAreaStart = GKR.params.karea[0];
		var maxKAreaStart = GKR.params.karea[1];

		var options = {
			min: minPrice,
			max: maxPrice,
			values: [minPriceStart, maxPriceStart],
			step :1,
			range :true,
			slide: sliderSlideEvent,
			stop: sliderChangeEvent
		};
		$("#priceSlider").slider(options);

		var minRentPrice = 0;
		var maxRentPrice = 16;
		var minRentPriceStart = GKR.params.rentprice[0];
		var maxRentPriceStart = GKR.params.rentprice[1];

		var options = {
			min :minRentPrice,
			max :maxRentPrice,
			values: [minRentPriceStart, maxRentPriceStart],
			step :1,
			range :true,
			slide: sliderSlideEvent,
			stop: sliderChangeEvent
		};
		$("#rentPriceSlider").slider(options);

		options = {
			min :minArea,
			max :maxArea,
			values: [minAreaStart, maxAreaStart],
			step :1,
			range :true,
			slide: sliderSlideEvent,
			stop: sliderChangeEvent
		};
		$("#areaSlider").slider(options);
		
		options = {
			min :minKArea,
			max :maxKArea,
			values: [minKAreaStart, maxKAreaStart],
			step :1,
			range :true,
			slide: sliderSlideEvent,
			stop: sliderChangeEvent
		};
		$("#kareaSlider").slider(options);

		var minPricePerMetr = 0;
		var maxPricePerMetr = 16;
		var minPricePerMetrStart = GKR.params.pricepermetr[0];
		var maxPricePerMetrStart = GKR.params.pricepermetr[1];

		options = {
			min :minPricePerMetr,
			max :maxPricePerMetr,
			values: [minPricePerMetrStart, maxPricePerMetrStart],
			step :1,
			range :true,
			slide: sliderSlideEvent,
			stop: sliderChangeEvent
		};
		$("#pricePerMetrSlider").slider(options);

		var minDoprice = 0;
		var maxDoprice = 16;
		var minDopriceStart = GKR.params.doprice[0];
		var maxDopriceStart = GKR.params.doprice[1];

		options = {
			min :minDoprice,
			max :maxDoprice,
			values: [minDopriceStart, maxDopriceStart],
			step :1,
			range :true,
			slide: sliderSlideEvent,
			stop: sliderChangeEvent
		};
		$("#dopriceSlider").slider(options);

		// инициализация слайдеров
		var slideObj = null;
		for(i=1; i<=6; i++){ 
			switch(i){
				case 1:
					var slideObj = {};
					slideObj.name = 'priceSlider';
					slideObj.values = new Array();
					slideObj.values[0] = minPriceStart;
					slideObj.values[1] = maxPriceStart;
					break;
				case 2:
					var slideObj = {};
					slideObj.name = 'rentPriceSlider';
					slideObj.values = new Array();
					slideObj.values[0] = minRentPriceStart;
					slideObj.values[1] = maxRentPriceStart;
					break;
				case 3:
					var slideObj = {};
					slideObj.name = 'areaSlider';
					slideObj.values = new Array();
					slideObj.values[0] = minAreaStart;
					slideObj.values[1] = maxAreaStart;
					break;
				case 4:
					var slideObj = {};
					slideObj.name = 'pricePerMetrSlider';
					slideObj.values = new Array();
					slideObj.values[0] = $("#pricePerMetrSlider").slider("values")[0];
					slideObj.values[1] = $("#pricePerMetrSlider").slider("values")[1];
					break;
				case 5:
					var slideObj = {};
					slideObj.name = 'dopriceSlider';
					slideObj.values = new Array();
					slideObj.values[0] = minDopriceStart;
					slideObj.values[1] = maxDopriceStart;
					break;
				case 6:
					var slideObj = {};
					slideObj.name = 'kareaSlider';
					slideObj.values = new Array();
					slideObj.values[0] = minKAreaStart;
					slideObj.values[1] = maxKAreaStart;
					break;
			}
			sliderInitialize(slideObj);
		}


		var showFilter = "filter7";
		switch (GKR.params.type) {
			case "1":
				showFilter = "filter7";
				break;
			case "2":
				showFilter = "filter8";
				break;
			case "3":
				showFilter = "filter6";
				break;
			case "4":
				showFilter = "filter10";
				break;
			case "5":
				showFilter = "filter9";
				break;
		}
		$("#" + showFilter).change();

		$("input[name='currency']").click(function () {
				if (($("#priceSlider").slider("values")[1] == 16) && ($("#priceSlider").slider("values")[0] == 0))
				{
					$("#price-min").text("любая ");
					$("#price-max").text("цена");
					$("#minus").hide();
				} else if (($("#priceSlider").slider("values")[1] == 16))
				{
					$("#price-min").text("более ");
					$("#price-max").text(SliderPointToValue("price",$("#priceSlider").slider("values")[0]));
					$("#minus").hide();
				} else if ($("#priceSlider").slider("values")[0] == 0)
				{
					$("#price-min").text("менее ");
					$("#price-max").text(SliderPointToValue("price",$("#priceSlider").slider("values")[1]));
					$("#minus").hide();
				} else
				{
					$("#price-min").text(SliderPointToValue("price", $("#priceSlider").slider("values")[0]));
					$("#price-max").text(SliderPointToValue("price",$("#priceSlider").slider("values")[1]));
					$("#minus").show();
				}

				if (($("#rentPriceSlider").slider("values")[1] == 16) && ($("#rentPriceSlider").slider("values")[0] == 0))
				{
					$("#rent-price-min").text("любая ");
					$("#rent-price-max").text("цена");
					$("#minus_3").hide();
				} else if (($("#rentPriceSlider").slider("values")[1] == 16))
				{
					$("#rent-price-min").text("более ");
					$("#rent-price-max").text(SliderPointToValue("rentPrice",$("#rentPriceSlider").slider("values")[0]));
					$("#minus_3").hide();
				} else if ($("#rentPriceSlider").slider("values")[0] == 0)
				{
					$("#rent-price-min").text("менее ");
					$("#rent-price-max").text(SliderPointToValue("rentPrice",$("#rentPriceSlider").slider("values")[1]));
					$("#minus_3").hide();
				} else
				{
					$("#rent-price-min").text(SliderPointToValue("rentPrice", $("#rentPriceSlider").slider("values")[0]));
					$("#rent-price-max").text(SliderPointToValue("rentPrice",$("#rentPriceSlider").slider("values")[1]));
					$("#minus_3").show();
				}

				if (($("#pricePerMetrSlider").slider("values")[1] == 16) && ($("#pricePerMetrSlider").slider("values")[0] == 0))
				{
					$("#pricepermetr-min").text("любая ");
					$("#pricepermetr-max").text("цена");
					$("#minus_1").hide();
				} else if (($("#pricePerMetrSlider").slider("values")[1] == 16))
				{
					$("#pricepermetr-min").text("более ");
					$("#pricepermetr-max").text(SliderPointToValue("pricePerMetr",$("#pricePerMetrSlider").slider("values")[0]));
					$("#minus_1").hide();
				} else if ($("#pricePerMetrSlider").slider("values")[0] == 0)
				{
					$("#pricepermetr-min").text("менее ");
					$("#pricepermetr-max").text(SliderPointToValue("pricePerMetr",$("#pricePerMetrSlider").slider("values")[1]));
					$("#minus_1").hide();
				} else
				{
					$("#pricepermetr-min").text(SliderPointToValue("pricePerMetr", $("#pricePerMetrSlider").slider("values")[0]));
					$("#pricepermetr-max").text(SliderPointToValue("pricePerMetr",$("#pricePerMetrSlider").slider("values")[1]));
					$("#minus_1").show();
				}

				if (($("#dopriceSlider").slider("values")[1] == 16) && ($("#dopriceSlider").slider("values")[0] == 0))
				{
					$("#doprice-min").text("любая ");
					$("#doprice-max").text("цена");
					$("#minus_2").hide();
				} else if (($("#dopriceSlider").slider("values")[1] == 16))
				{
					$("#doprice-min").text("более ");
					$("#doprice-max").text(SliderPointToValue("doprice",$("#dopriceSlider").slider("values")[0]));
					$("#minus_2").hide();
				} else if ($("#dopriceSlider").slider("values")[0] == 0)
				{
					$("#doprice-min").text("менее ");
					$("#doprice-max").text(SliderPointToValue("doprice",$("#dopriceSlider").slider("values")[1]));
					$("#minus_2").hide();
				} else
				{
					$("#doprice-min").text(SliderPointToValue("doprice", $("#dopriceSlider").slider("values")[0]));
					$("#doprice-max").text(SliderPointToValue("doprice",$("#dopriceSlider").slider("values")[1]));
					$("#minus_2").show();
				}

				var currency = 3;
				switch (this.value) {
					case "usd":
						currency = 1;
						break;
					case "eur":
						currency = 2;
						break;
					case "rur":
						currency = 3;
						break;
					default:
						break;
				}

				updateHash({"currency": currency});
				setTimeout(renderContainer, 100);
			});
		if (GKR.params.subtype > 4)
			GKR.params.subtype = 1;
		$("#suboffer1").attr('checked', GKR.params.subtype & 1);
		//$("#suboffer2").attr('checked', GKR.params.subtype >> 1 & 1);
		$("#suboffer4").attr('checked', GKR.params.subtype >> 2 & 1);
		$("input[name='suboffer']").click(function () {this.blur();});
		$("input[name='suboffer']").change(function () {
				if (this.value == 4) {
					if ($(this).attr('checked')) {
						$("#suboffer1").attr('checked', 0);
						$("#suboffer2").attr('checked', 0);
					} else {
						$("#suboffer1").attr('checked', 1);
					}
				} else {
					if (!$("#suboffer1").attr('checked') && !$("#suboffer2").attr('checked')) {
						//$("#suboffer" + (3 - this.value)).attr('checked', 1);
						$("#suboffer4").attr('checked', 1);
					} else {
						$("#suboffer4").attr('checked', 0);
					}
				}
				var tmp = $("input[name='suboffer']:checked");
				var sbt = 0;
				for (i = 0; i < tmp.length; i++) {
					sbt += (tmp[i].value - 0);
				}
				updateHash({'subtype': sbt});
			});
		$("input[name='subrent']").click(function () {this.blur();});
		$("input[name='subrent']").change(function () {
				if (this.value == 6) {
					if ($(this).attr('checked')) {
						$("#suboffer5").attr('checked', 0);
					} else {
						$("#suboffer5").attr('checked', 1);
					}
				} else {
					if (!$(this).attr('checked')) {
						$("#suboffer6").attr('checked', 1);
					} else {
						$("#suboffer6").attr('checked', 0);
					}
				}
				var tmp = $("input[name='subrent']:checked");
				var sbt = 0;
				for (i = 0; i < tmp.length; i++) {
					sbt += (tmp[i].value - 0);
				}
				updateHash({'subtype': sbt});
			});

		$("input[name='roomcount']").click(function () {this.blur();});
		$("input[name='roomcount']").change(function () {
				if (this.value == 0) {
					$("input[name='roomcount'][value!='0']").attr('checked', $("input[name='roomcount'][value='0']").attr('checked'));
				} else {
					if ($("input[name='roomcount'][value!='0']:checked").get().length == 4) {
						$("input[name='roomcount'][value='0']").attr('checked', 1);
					} else {
						$("input[name='roomcount'][value='0']").attr('checked', 0);
					}
				}

				if ($("input[name='roomcount'][value='0']").attr('checked')) {
					updateHash({"rooms": 5});
				} else {
					var _tmp = $("input[name='roomcount'][value!='0']:checked").get();
					if (_tmp.length > 0) {
						var _tmpArr = [];
						for (i = 0; i < _tmp.length; i++) {
							_tmpArr[_tmpArr.length] = _tmp[i].value;
						}
						updateHash({"rooms": _tmpArr});
					} else {
						updateHash({"rooms": 5});
					}
				}
			});

		if (typeof(GKR.params.rooms) == "object") {
			for (i = 0; i < GKR.params.rooms.length; i++) {
				$("input[name='roomcount'][value='" + GKR.params.rooms[i] + "']").attr('checked', 1);
			}
			$("input[name='roomcount'][value='" + GKR.params.rooms[i] + "']").change();
		} else {
			if (GKR.params.rooms == "5") {
				$("input[name='roomcount'][value='0']").attr('checked', 1);
				$("input[name='roomcount'][value='0']").change();
			} else {
				$("input[name='roomcount'][value='" + GKR.params.rooms + "']").attr('checked', 1);
				$("input[name='roomcount'][value='" + GKR.params.rooms + "']").change();
			}
		}


		var t = parseInt(GKR.params.etagmin - 0);
		GKR.params.etagmin = (t > 0 ? (t < 100 ? t : 100) : '');
		var t = parseInt(GKR.params.etagmax - 0);
		GKR.params.etagmax = (t > 0 ? (t < 100 ? t : 100) : '');
		$("#critetag input[name='etagmin']").val(GKR.params.etagmin);
		$("#critetag input[name='etagmax']").val(GKR.params.etagmax);

		$("#critetag input").keydown(function (event) {
				if (event.keyCode == 13) {
					this.blur();
					return true;
				}
				return true;
			});

		$("#critetag input").keypress(function (event) {
				if (event.charCode > 0 && event.ctrlKey == false) {
					if (event.charCode >= 48 && event.charCode <= 57)
						return true;
					event.preventDefault();
					return false;
				} else {
					return true;
				}
			});

		$("#critetag input").blur(function (event) {
				var t = parseInt(this.value - 0);
				this.value = (t > 0 ? (t < 100 ? t : 100) : '');
				var upd = {};
				upd[this.name] = this.value;
				updateHash(upd);
			});

		for (i = 0; i <= 7; i++) {
			$("input[name='extracrit'][value='" + i + "']").attr('checked', GKR.params.extracrit >> i & 1);
		}
		$("input[name='extracrit']").click(function () {this.blur();});
		$("input[name='extracrit']").change(function () {
				var tmp = $("input[name='extracrit']:checked");
				var ex = 0;
				for (i = 0; i < tmp.length; i++) {
					ex += 1 << (tmp[i].value - 0);
				}
				updateHash({'extracrit': ex});
			});
		if(GKR.params.suspishious == 1)
			$("#suspishiousCheck").attr("checked", 'true');
		else
			$("#suspishiousCheck").attr("checked", 'false');

		showElementsNums(GKR.params.shows);
		//location.hash += "&";
		setTimeout(checkHash, 300);
	});

	function parseHash () { 
		var tmp = location.hash.replace(/^#/, "").split("&");
		if (tmp) {
			if (typeof(tmp) == "object") {
				for (param = 0; param < tmp.length; param++) {
					var _val = /([^=]+)=([^=]*)/.exec(tmp[param]); 
					if (_val) GKR.params[GKR.convertArr[_val[1]]] = (/,/.test(_val[2]) ? _val[2].split(",") : _val[2]);
				}
			} else {
				var _val = /([^=]+)=([^=]*)/.exec(tmp);
				if (_val) GKR.params[GKR.convertArr[_val[1]]] = (/,/.test(_val[2]) ? _val[2].split(",") : _val[2]);
			}
		}

		if(GKR.params['metro'] > 0 || GKR.params['housetype'].length > 0 || GKR.params['walls'].length > 0 || GKR.params['metrow'] > 0 || GKR.params['etagn'] > 0 || GKR.params['year'] > 0 || GKR.params['lift'].length > 0 || GKR.params['search'].length > 0){
			showASBlock(); 
		}
	}

	function checkHash () { 
		if (location.hash != GKR.lastHash) {
			GKR.lastHash = location.hash;
			_params = {};
			for (key in GKR.params) {
				_params[key] = GKR.params[key];
				GKR.params[key] = GKR.defParams[key];
			} 
			parseHash();
			if(_params['metro'] > 0)
				showASBlock();
			changed = [];
			for (key in GKR.params) {
				if (typeof(_params[key]) != "undefined" && _params[key].toString() != GKR.params[key].toString())
					changed[changed.length] = key;
			}
			updateFlag = GKR.needUpdate || changed.length > 0;
			for (i = 0; i < changed.length; i++) {
				switch (changed[i]) {
					case "type":
						var showFilter = "filter7";
						switch (GKR.params.type) {
							case "1":
								showFilter = "filter7";
								break;
							case "2":
								showFilter = "filter8";
								break;
							case "3":
								showFilter = "filter6";
								break;
							case "4":
								showFilter = "filter10";
								break;
							case "5":
								showFilter = "filter9";
								break;
						}
						$("#" + showFilter).change();
						break;
					case "currency":
						updateFlag = false;
						switch (GKR.params.currency) {
							case "1":
								currency = "usd";
								break;
							case "2":
								currency = "eur";
								break;
							case "3":
								currency = "rur";
								break;
							default:
								break;
						}
						$("input[name='currency'][value='" + currency + "']").attr('checked', 1);
						$("input[name='currency'][value='" + currency + "']").click();
						break;
					case "price":
						if (_params['price'][0] != GKR.params['price'][0] && $("#priceSlider").slider('value', 0) != GKR.params['price'][0])
							$("#priceSlider").slider({ values: [GKR.params.price[0], $("#priceSlider").slider("values")[1]]});
						if (_params['price'][1] != GKR.params['price'][1] && $("#priceSlider").slider('value', 1) != GKR.params['price'][1])
							$("#priceSlider").slider({ values: [$("#priceSlider").slider("values")[0], GKR.params.price[1]]});

						break;
					case "rentprice":
						if (_params['rentprice'][0] != GKR.params['rentprice'][0] && $("#rentPriceSlider").slider('value', 0) != GKR.params['rentprice'][0])
							$("#rentPriceSlider").slider({ values: [GKR.params.rentprice[0], $("#rentPriceSlider").slider("values")[1]]});
						if (_params['rentprice'][1] != GKR.params['rentprice'][1] && $("#rentPriceSlider").slider('value', 1) != GKR.params['rentprice'][1])
							$("#rentPriceSlider").slider({ values: [$("#rentPriceSlider").slider("values")[0], GKR.params.rentprice[1]]});
						break;
					case "pricepermetr":
						if (_params['pricepermetr'][0] != GKR.params['pricepermetr'][0] && $("#pricePerMetrSlider").slider('value', 0) != GKR.params['pricepermetr'][0])
							$("#pricePerMetrSlider").slider({ values: [GKR.params.pricepermetr[0], $("#pricePerMetrSlider").slider("value")[1]]});
						if (_params['pricepermetr'][1] != GKR.params['pricepermetr'][1] && $("#pricePerMetrSlider").slider('value', 1) != GKR.params['pricepermetr'][1])
							$("#pricePerMetrSlider").slider({ values: [$("#pricePerMetrSlider").slider("values")[0], GKR.params.pricepermetr[1]]});
						break;
					case "area":
						if (_params['area'][0] != GKR.params['area'][0] && $("#areaSlider").slider('value', 0) != GKR.params['area'][0])
							$("#areaSlider").slider({ values: [GKR.params.area[0], $("#areaSlider").slider("values")[1]]});
						if (_params['area'][1] != GKR.params['area'][1] && $("#areaSlider").slider('value', 1) != GKR.params['area'][1])
							$("#areaSlider").slider({ values: [$("#areaSlider").slider("values")[0], GKR.params.area[1]]});
						break;
					case "karea":
						if (_params['karea'][0] != GKR.params['karea'][0] && $("#kareaSlider").slider('value', 0) != GKR.params['karea'][0])
							$("#kareaSlider").slider({ values: [GKR.params.karea[0], $("#areaSlider").slider("values")[1]]});
						if (_params['karea'][1] != GKR.params['karea'][1] && $("#kareaSlider").slider('value', 1) != GKR.params['karea'][1])
							$("#kareaSlider").slider({ values: [$("#kareaSlider").slider("values")[0], GKR.params.karea[1]]});
						break;
					case "doprice":
						if (_params['doprice'][0] != GKR.params['doprice'][0] && $("#dopriceSlider").slider('value', 0) != GKR.params['doprice'][0])
							$("#dopriceSlider").slider({ values: [GKR.params.doprice[0], $("#dopriceSlider").slider("values")[1]]});
						if (_params['doprice'][1] != GKR.params['doprice'][1] && $("#dopriceSlider").slider('value', 1) != GKR.params['doprice'][1])
							$("#dopriceSlider").slider({ values: [$("#dopriceSlider").slider("values")[0], GKR.params.doprice[1]]});
						break;
					case "rooms":
						$("input[name='roomcount']").attr('checked', 0);
						if (typeof(GKR.params.rooms) == "object") {
							for (i = 0; i < GKR.params.rooms.length; i++) {
								$("input[name='roomcount'][value='" + GKR.params.rooms[i] + "']").attr('checked', 1);
							}
							$("input[name='roomcount'][value='" + GKR.params.rooms[i] + "']").change();
						} else {
							if (GKR.params.rooms == "5") {
								$("input[name='roomcount'][value='0']").attr('checked', 1);
								$("input[name='roomcount'][value='0']").change();
							} else {
								$("input[name='roomcount'][value='" + GKR.params.rooms + "']").attr('checked', 1);
								$("input[name='roomcount'][value='" + GKR.params.rooms + "']").change();
							}
						}
						break;
					case "sort":
						$('#sortBy').attr('value', GKR.params.sort);
						break;
					case "region":
						$('#sortByRegion').attr('value', GKR.params.region);
						break;
					case "specialization":
						$('#sortBySpecialization').attr('value', GKR.params.specialization);
						break;
					case "subtype":
						$("#suboffer1").attr('checked', GKR.params.subtype & 1);
						$("#suboffer2").attr('checked', GKR.params.subtype >> 1 & 1);
						$("#suboffer4").attr('checked', GKR.params.subtype >> 2 & 1);
						break;
					case "extracrit":
						for (i = 0; i <= 7; i++) {
							$("input[name='extracrit'][value='" + i + "']").attr('checked', GKR.params.extracrit >> i & 1);
						}
						break;
					case "etagmin":
						var t = parseInt(GKR.params.etagmin - 0);
						GKR.params.etagmin = (t > 0 ? (t < 100 ? t : 100) : '');
						$("#critetag input[name='etagmin']").val(GKR.params.etagmin);
						break;
					case "etagmax":
						var t = parseInt(GKR.params.etagmax - 0);
						GKR.params.etagmax = (t > 0 ? (t < 100 ? t : 100) : '');
						$("#critetag input[name='etagmax']").val(GKR.params.etagmax);
						break;
					case "shows":
						showElementsNums(GKR.params.shows);
						break;
					case "metro":
						showASBlock();
						break;
		/*
		* @TODO  Добавить инициализацию дополнительных фильтров
		*/			
					default:
				}
			}
			GKR.needUpdate = false;
			if (updateFlag) updatePage(true);
		}
		setTimeout(checkHash, 200);
	}

	function updatePage (timeOut) {
		if (!timeOut) {
			clearTimeout (GKR.updateTimer);
			_tmp = 100;
			if (GKR.updateTimer == 0)
				_tmp = 10;
			GKR.updateTimer = setTimeout(function () {updatePage (true);}, _tmp);
			return;
		}

		var _sync = Math.random();
		GKR.Sync = _sync;

		var _params = {"action": "get_values"};
		for (key in GKR.params) {
			if (typeof(GKR.params[key]) != "undefined" && GKR.params[key].toString() != GKR.defParams[key].toString()) {
				_params[key] = GKR.params[key];
			}
			if (GKR.params[key])
				_params[key] = GKR.params[key];
		}

		GKR.LoaderStart();
		JsHttpRequest.query("/doma/process/", _params, function (result, text) {
			if (GKR.Sync == _sync) {
				//$("#tracelog").html(text);
				GKR.data = result.container; 
				GKR.params.page = GKR.data[0] ? GKR.data[0]['page'] : 1;
				$('.noFoundMessage').remove();
				if(typeof(GKR.data['notFound']) != 'undefined'){
					
					var html = "<noindex><span class='noFoundMessage'>" + GKR.data['notFoundMessage'] + "</span></noindex>";
					$('#objectsList').before(html);
					
					$('#paginationTop').hide();
					$('#showsElement').hide();
					$('#pagenav_bottom').hide();

				} else {
					$('#paginationTop').show();
					$('#showsElement').show();
					$('#pagenav_bottom').show();
				}
				
				if (typeof(GKR.data[0]) != 'undefined' && typeof(GKR.data[0]['total'])!='undefined' && GKR.data[0]['total'] > 0) {
					
					renderContainer();
					
					if(typeof(GKR.data['notFound']) != 'undefined'){
						$('.noFoundMessage').remove();
						var html = "<noindex><span class='noFoundMessage'>" + GKR.data['notFoundMessage'] + "</span></noindex>";
						$('#objectsList').before(html);
						var html = "<span class='noFoundMessage' style='clear: both; margin: 40px 0 10px 15px;'>" + GKR.data['notFoundDealsMessage'] + "</span>";
						$('#objectsList').before(html);
					}

				} else {
					$('#resultContainer_1').html('');
					$('#resultContainer_2').html('');
					$('#resultContainer_3').html('');
				}
				
				/* отключаем переход на уровень выше, если не найдены объявления
				else {
					if (GKR.params.house && GKR.params.street && GKR.params.district) {
						GKR.params.house = '';
						updatePage();
					} else if (GKR.params.street && GKR.params.district) {
						GKR.params.street = '';
						updatePage();
					} else if (GKR.params.district) {
						GKR.params.district = '';
						updatePage();
					}else {
						renderContainer();
					}
				}
				*/
				updateTouchList(result.touchlist);

				if (GKR.ajaxLoadCounter > 0 && typeof(pageTracker) != "undefined" && typeof(pageTracker._trackPageview) == "function") {
					var page = "doma";
					switch (GKR.params.type) {
						case "1":
							page = "doma";
							break;
						case "2":
							page = "sale";
							break;
						case "3":
							page = "values";
							break;
						case "4":
							page = "realtors";
							break;
						case "5":
							page = "rent";
							break;
					}
					pageTracker._trackPageview("/" + page + "/#ajax");
				}
				GKR.ajaxLoadCounter++;

			}
			GKR.LoaderEnd();
			}, true);



	}

	function updateHash (params) {  
		GKR.needUpdate = false;
		if(params == 'default'){
			location.hash = params;
			return true;
		} else if (params) {
			for (key in params) {
				if (key != "currency")
					GKR.needUpdate = true;
				GKR.params[key] = params[key];
			}
		} 
		var hash = "";
		for (key in GKR.params) {
			if (typeof(GKR.params[key]) != "undefined" && GKR.params[key].toString() != GKR.defParams[key].toString()) {
				if (hash != "")
					hash += "&";
				hash += GKR.convertArr[key] + "=" + GKR.params[key];
			}
		}
		if(typeof(params.sort) != "undefined")
			GKR.psort = params.sort;
		$('#sHash').val(hash);
		
		if (location.hash.replace(/^#/,"") == hash) return false;
		if($.browser.webkit)
			hash = Url._utf8_encode(hash);
		if (hash == "")
			hash = "default";
		if (hash || location.hash) location.hash = hash;
		return true;
	}

	function updateTouchList (result) {
		//$("#tracelog1").html('<b>updateTouchList: </b>'+ text);
		GKR.touchlist.data = {};
		GKR.touchlist.type = result.type;
		GKR.touchlist.breadcrumbs = result.breadcrumbs;
		GKR.touchlist.nearest = result.nearest;
		GKR.touchlist.seo_text = result.seo_text;
		GKR.touchlist.pform = result.pform;
		GKR.touchlist.count = 0;
		var elCnt = result['data'].length;
		for (var i = 0; i < elCnt; i++) {
			GKR.touchlist.count += result['data'][i].name.length + 2;
		}
		if(GKR.touchlist.count < 500 && GKR.touchlist.type == 'house'){
			for (var i = 0; i < elCnt; i++) {
				var letter = 0;
				if (GKR.touchlist.data[letter]) {
					GKR.touchlist.data[letter][GKR.touchlist.data[letter].length] = result['data'][i];
				} else {
					GKR.touchlist.data[letter] = new Array(result['data'][i]);
				}
			}
		} else {
			for (var i = 0; i < elCnt; i++) {
				var letter = result['data'][i].name.substring(0, 1).toUpperCase();
				if (GKR.touchlist.data[letter]) {
					GKR.touchlist.data[letter][GKR.touchlist.data[letter].length] = result['data'][i];
				} else {
					GKR.touchlist.data[letter] = new Array(result['data'][i]);
				}
			}
		}
		var letter = result['data'].length > 0 ? result['data'][0].name.substring(0, 1).toUpperCase() : "";
		var firstLetter = (result['data'].length > 0 ? letter : null);
		var html = "";
		if (GKR.touchlist.type != 'realtors') {
			if (firstLetter) {
				if (GKR.touchlist.letter[GKR.touchlist.type] && GKR.touchlist.data[GKR.touchlist.letter[GKR.touchlist.type]]) {
					firstLetter = GKR.touchlist.letter[GKR.touchlist.type];
				}
				changeTouchList(firstLetter);
			} else {
				$('#touchListContainer').html(html);
			}
		}
		if(typeof(GKR.touchlist.breadcrumbs['district']) != 'undefined' && typeof(GKR.touchlist.breadcrumbs['street']) == 'undefined') {
			$('#seo_text_block').html(GKR.touchlist.seo_text);
			switch(GKR.params.type) {
			case "5":
				var distr_name = GKR.touchlist.breadcrumbs['district'];
				html_text = "<p>Аренда квартир и комнат в районе " + distr_name +".</p><p>Для тех, кто планирует снять квартиру или комнату\
				в районе " + distr_name + " база предложений по аренде квартир, комнат с описанием и указанием цен.</p><p>Вся информация с предложениями \
				по аренде квартир в районе " + distr_name + " обновляется по мере поступления новых вариантов квартир в аренду, и вы можете снять квартиру в \
				районе " + distr_name + ", наиболее устраивавшую Вас по стоимости, качеству и территориальному признаку.</p><p>Аренда квартир \
				в районе " + distr_name + " отличается по стоимости, если вы желаете снять элитную квартиру или снять комнату в квартире, \
				главное отличие в цене на аренду квартиры.</p>";
				$('#seo_text_block').html(html_text);
				$('#seo_text_block').append("<br/><a class='blue' style='text-decoration: underline; display: block; font-size: 12px;' href='/sale/"+ GKR.touchlist.breadcrumbs['district_alias'] +"/'>Продажа квартир в районе "+ GKR.touchlist.breadcrumbs['district'] +"</a>");
				break;
			case "1":
				var distr_name = GKR.touchlist.breadcrumbs['district'];
				html_text = "<h2>Стоимость квартир в районе " + distr_name + ' г.' + cityName + ".</h2>\
							<p>Для определения рыночной стоимости квартиры или стоимости аренды квартиры в районе " + distr_name + " с помощью данного сервиса, необходимо указать только основные параметры квартиры и дома, которые влияют на цену жилья.</p>\
							<p>Рыночная стоимость квартиры в " + distr_name + " – это наиболее вероятная цена квартиры, которая складывается при продаже жилья на рынке недвижимости и зависит от ситуации на рынке недвижимости.</p>";
				$('#seo_text_block').html(html_text);
				break;	
			
			case "3": 
				html_text = "<p>Сервис <b>Оценка квартир</b> на Domoway – это определение <b>стоимости квартир</b> в режиме оn-line.</p>\
						<p>Для определения рыночной <b>стоимости квартиры</b> в " + cityNamePP + " \
						 с помощью данного сервиса необходимо указать только основные параметры квартиры и дома, которые влияют на цену жилья.</p>\
						<p>Рыночная стоимость квартиры – это наиболее вероятная цена квартиры,\
						которая складывается при продаже жилья на рынке недвижимости и зависит от ситуации на рынке недвижимости.</p>";
				$('#seo_text_block').html(html_text);
				break;
			default:
				html_text = "";
				$('#seo_text_block').html(html_text);
				break;
			}
		}
		else {
		switch (GKR.params.type) {
		case "1":
			if(typeof(GKR.touchlist.breadcrumbs['street']) == 'undefined' && typeof(GKR.touchlist.breadcrumbs['district']) == 'undefined')
				html_text = "<p>Продажа квартир в " + cityNamePP + ".</p><p>Выберите метраж квартиры, которую вы хотели бы купить, минимальную и максимальную цену на квартиру, выставленную на продажу, количество комнат.</p><p>Для более точных результатов, укажите улицу, на которой вы хотели бы купить квартиру,	укажите номер дома, продажа квартир в котором интересует вас больше всего.	Поиск квартир по улицам и домам, один из самых простых вариантов поиска квартир в продаже.</p><p>Вы сможете добавить объявление о продаже квартиры, и его увидят потенциальные покупатели. 	Размещение объявлений о продаже квартир бесплатно.</p>";
			else {
				var distr_name = GKR.touchlist.breadcrumbs['district'];
				var str_name = (GKR.touchlist.breadcrumbs['street_kind'] != 'переулок')?GKR.touchlist.breadcrumbs['street_name'].replace(' '+GKR.touchlist.pform, ''):GKR.touchlist.breadcrumbs['street'];
				var str_type = ((GKR.touchlist.breadcrumbs['street_kind'] != "улица")? ((GKR.touchlist.breadcrumbs['street_kind'] != 'переулок') ? GKR.touchlist.breadcrumbs['street_kind']+"е " : "") :"улице ");
				html_text = "<h2>Стоимость квартир на " + str_type + str_name + ' г.' + cityName + ".</h2><p>Для определения рыночной стоимости квартиры или стоимости аренды квартиры на " + str_type + str_name + ' с помощью данного сервиса, необходимо указать только основные параметры квартиры и дома, которые влияют на цену жилья.</p><p>Рыночная стоимость квартиры на ' + str_type + str_name + " – это наиболее вероятная цена квартиры, которая складывается при продаже жилья на рынке недвижимости и зависит от ситуации на рынке недвижимости.</p>";
			}
			break;
		case "3":
			html_text = "<p>Сервис <b>Оценка квартир</b> на Domoway – это определение <b>стоимости квартир</b> в режиме оn-line.</p>\
						<p>Для определения рыночной <b>стоимости квартиры</b> в ";
			html_text += cityNamePP;
			html_text += "с помощью данного сервиса необходимо указать только основные параметры квартиры и дома, которые влияют на цену жилья.</p>\
						<p>Рыночная стоимость квартиры – это наиболее вероятная цена квартиры,\
						которая складывается при продаже жилья на рынке недвижимости и зависит от ситуации на рынке недвижимости.</p>";
			break;
		case "2":
			if(typeof(GKR.touchlist.breadcrumbs['street']) == 'undefined')
				html_text = "<p>Продажа квартир в " + cityNamePP + ".</p><p>Выберите метраж квартиры, которую вы хотели бы купить, минимальную и максимальную цену на квартиру, выставленную на продажу, количество комнат.</p><p>Для более точных результатов, укажите улицу, на которой вы хотели бы купить квартиру,	укажите номер дома, продажа квартир в котором интересует вас больше всего.	Поиск квартир по улицам и домам, один из самых простых вариантов поиска квартир в продаже.</p><p>Вы сможете добавить объявление о продаже квартиры, и его увидят потенциальные покупатели. 	Размещение объявлений о продаже квартир бесплатно.</p>";
			else {
				var distr_name = GKR.touchlist.breadcrumbs['district'];
				var str_name = (GKR.touchlist.pform != 'переулок')?GKR.touchlist.breadcrumbs['street'].replace(' '+GKR.touchlist.pform, ''):GKR.touchlist.breadcrumbs['street'];
				var str_type = ((GKR.touchlist.pform != "улица")? ((GKR.touchlist.pform != 'переулок') ? GKR.touchlist.pform+"е " : "") :"улице ");
				html_text = "<p style='font-weight: bold;'>Продажа квартир и комнат в районе "+ distr_name +" на "+ str_type + str_name +".</p><p>Если вас интересует покупка квартиры на "+ str_type + str_name +", то поиск по домам на этой улице один из самых простых вариантов поиска.</p><p>Выберите среди объявлений о продаже квартир подходящий вам вариант. Ознакомьтесь с описанием жилья, посмотрите фотографии, узнайте информацию о доме (год постройки, материал стен, этажность и т.д.), посмотрите статистику изменения цен на квартиры в доме за последний год, а также множество другой дополнительной информации, а затем свяжитесь с автором объявления.</p><p>На странице каждого дома предусмотрена специальная форма, где вы можете задать вопросы жителям интересующих вас домов и почитать отзывы.</p><p>Все квартиры выставлены на продажу, нанесены на карту города. Если в строке поиска ввести улицу, то на карте появятся все предложения по продажам на этой улице.</p>";
			}
			break;
		case "3":
			html_text = "<p>Сервис <b>Оценка квартир</b> на Domoway – это определение <b>стоимости квартир</b> в режиме оn-line.</p>\
						<p>Для определения рыночной <b>стоимости квартиры</b> в ";
			html_text += cityNamePP;
			html_text += "с помощью данного сервиса необходимо указать только основные параметры квартиры и дома, которые влияют на цену жилья.</p>\
						<p>Рыночная стоимость квартиры – это наиболее вероятная цена квартиры,\
						которая складывается при продаже жилья на рынке недвижимости и зависит от ситуации на рынке недвижимости.</p>";
			break;
		case "4":
			html_text = "";
			break;
		case "5":
			if(typeof(GKR.touchlist.breadcrumbs['street']) == 'undefined')
				html_text = "<p>Аренда квартир и комнат в " + cityNamePP + " пользуется высоким спросом.\
					С необходимостью снять квартиру или комнату сталкиваются и приезжие, и жители " + cityNameRP + ".\
					Когда человек арендует квартиру, он сохраняет мобильность и возможность без труда менять место жительства.</p>\
					<p>В разделе «Аренда» - предложения по аренде квартир в " + cityNamePP + " с описанием и указанием цен.\
					Вся информация с предложениями по аренде квартир обновляется по мере поступления новых вариантов квартир в аренду.</p>\
					<p>Ознакомьтесь с описанием жилья, посмотрите фотографии сдаваемой в аренду квартиры или комнаты,\
					свяжитесь с автором объявления и договоритесь о встрече. </p>\
					<p>Перед владельцами квартир в " + cityNamePP + " стоит другая проблема -\
					как быстро сдать в аренду квартиру или комнату. Любой зарегистрированный пользователь может\
					бесплатно добавить объявление на Domoway о сдаче в аренду квартиры или комнаты в " + cityNamePP + ".</p>" +
					"<br/><a class='blue' style='text-decoration: underline; display: block; font-size: 12px;' href='/districts/rent/'>Аренда квартир в " + cityNamePP + "</a>";
			else {
				var distr_name = GKR.touchlist.breadcrumbs['district'];
				var str_name = (GKR.touchlist.pform != 'переулок')?GKR.touchlist.breadcrumbs['street'].replace(' '+GKR.touchlist.pform, ''):GKR.touchlist.breadcrumbs['street'];
				var str_type = ((GKR.touchlist.pform != "улица")? ((GKR.touchlist.pform != 'переулок') ? GKR.touchlist.pform+"е " : "") :"улице ");
				html_text = "<p style='font-weight: bold;'>Аренда квартир и комнат в районе "+ distr_name +" на " + str_type + str_name +"</p><p>Желаете снять квартиру или комнату на "+ str_type + str_name +"? У нас собраны предложения по аренде квартир и комнат на этой улице, сдающиеся на длительный срок.</p><p>Ознакомьтесь с описанием сдаваемого жилья, имеются ли там необходимые вам вещи: холодильник, кабельное телевидение, Интернет и т.д. Возможно, вам нужна квартира без мебели на длительный срок. Что вас интересует - аренда однокомнатной квартиры или элитное жилье.</p><p>Добавляя объявления в избранное, вы не потеряете наиболее интересные.</p><p>Чтобы вам было проще ориентироваться в ценах на аренду жилья, на Domoway есть информация о стоимости аренды квадратного метра на любой улице в каждом доме.</p>";
			}
			break;
		default:
			html_text = "<p>Продажа квартир в " + cityNamePP + ".</p><p>Выберите метраж квартиры, которую вы хотели бы купить, минимальную и максимальную цену на квартиру, выставленную на продажу, количество комнат.</p><p>Для более точных результатов, укажите улицу, на которой вы хотели бы купить квартиру,	укажите номер дома, продажа квартир в котором интересует вас больше всего.	Поиск квартир по улицам и домам, один из самых простых вариантов поиска квартир в продаже.</p><p>Вы сможете добавить объявление о продаже квартиры, и его увидят потенциальные покупатели. 	Размещение объявлений о продаже квартир бесплатно.</p>";
			break;
			}
		$('#seo_text_block').html(html_text);
		}

		if (GKR.touchlist.type != 'realtors') { 
			updateNearestTable(GKR.touchlist.nearest,GKR.touchlist.breadcrumbs);
			changeCatLink();
		}
	}

function updateNearestTable (nearestList,breadcrumb) { 
	if(typeof(nearestList) == "object" && typeof(nearestList.items) != "undefined") {
	var table_cont = '<table class="rndBord" style="float: right; margin-bottom: 20px;" id="touchListTable"><tr><td class="rndBordTL iePNG"></td><td class="rndBordT"></td><td class="rndBordTR iePNG"></td></tr><tr><td class="rndBordL"></td><td class="rndBordHdr"><div id="nearestListHeader" style="float:left;width:635px;"></div></td><td class="rndBordR"></td>	</tr><tr><td class="rndBordL"></td><td class="rndBordCnt" ><div id="nearestListContainer" ></div></td><td class="rndBordR"></td></tr><tr><td class="rndBordBL iePNG"></td><td class="rndBordB"></td><td class="rndBordBR iePNG"></td></tr></table>';
	$('#nearest_block_id').html(table_cont);
		var list = nearestList.items;
		var html = "";
		var i=0;
		$('#touchListTable').css('display','none');
		//alert(list[Item]['alias']);

		if(breadcrumb['street'] && (GKR.params.type == 2 || GKR.params.type == 5)) {
			var obj_type = 'улицы';

			for(Item in list){
			i++;
			if(i==4) html += '<a href="javascript:void(0)" onclick="return false;" onmousedown="updateHash({\'street\':\''+list[Item]['alias']+'\'}); return false;">Квартиры: '+list[Item]['name']+'</a>';
			else html += '<a href="javascript:void(0)" onclick="return false;" onmousedown="updateHash({\'street\':\''+list[Item]['alias']+'\'}); return false;">Квартиры: '+list[Item]['name']+'</a><span>, </span>';
				}
			$('#touchListTable').css('display','table');
		}
		else if(breadcrumb['district'] && (GKR.params.type == 2 || GKR.params.type == 5)) {
			var obj_type = 'районы';
	        for(Item in list){
			i++;
			if(i==4) html += '<a href="javascript:void(0)" onclick="return false;" onmousedown="updateHash({\'district\':\'' + list[Item]['alias'] + '\'}); return false;">Квартиры: '+list[Item]['name']+'</a>';
			else html += '<a href="javascript:void(0)" onclick="return false;" onmousedown="updateHash({\'district\':\'' + list[Item]['alias'] + '\'}); return false;">Квартиры: '+list[Item]['name']+'</a><span>, </span>';
				}
				$('#touchListTable').css('display','table');
			}
		if(breadcrumb['house']) $('#touchListTable').css('display','none');

		$('#nearestListContainer').html(html);

		var head = 'Соседние '+ obj_type;
		$('#nearestListHeader').html(head);
	}
	}


	function changeTouchList (symbol) {
		symbol = unescape(symbol);
		GKR.touchlist.letter[GKR.touchlist.type] = symbol;
		if (GKR.touchlist.count > 500) {
			var html = '<div style="width: 636px; _width: 633px; text-align:center;">';
			for (var simb in GKR.touchlist.data) {
				if (simb == symbol) {
					html += '<a href="javascript:void(0)" onclick="return false;" onmousedown="changeTouchList(\''
								+ escape(simb)
								+ '\'); return false;" style="color:#333232">'
								+ simb
								+ '</a> | ';
				} else {
					html += '<a href="javascript:void(0)" onclick="return false;" onmousedown="changeTouchList(\''
								+ escape(simb)
								+ '\'); return false;">'
								+ simb
								+ '</a> | ';
				}
			}
			if(typeof(GKR.touchlist.data[symbol]) == 'undefined' && GKR.touchlist.type == 'house')
				symbol = 0;

			html = html.substring(0, html.length - 2);
			html += '</div><div style="width: 636px; _width: 633px; margin-top: 10px;text-align:justify;">';
			for (i = 0; i < GKR.touchlist.data[symbol].length; i++) {
				html += '<a href="javascript:void(0)" onclick="return false;" onmousedown="updateHash({\'' + GKR.touchlist.type + '\':' + GKR.touchlist.data[symbol][i].guid + '}); return false;">' + GKR.touchlist.data[symbol][i].name + '</a>, ';
			}
			html = html.substring(0, html.length - 2);
			html += '</div>';
		} else {
			if(typeof(GKR.touchlist.data[symbol]) == 'undefined' && GKR.touchlist.type == 'house')
				symbol = 0;
			html = '<div style="width: 636px; _width: 633px; text-align:justify;">';
			for (var symbol in GKR.touchlist.data) {
				for (i = 0; i < GKR.touchlist.data[symbol].length; i++) {
					html += '<a href="javascript:void(0)" onclick="return false;" onmousedown="updateHash({\'' + GKR.touchlist.type + '\':' + GKR.touchlist.data[symbol][i].guid + '}); return false;">' + GKR.touchlist.data[symbol][i].name + '</a>, ';
				}
			}
			html = html.substring(0, html.length - 2);
			html += '</div>';
		}
		$('#touchListContainer').html(html);
	}

	function changeCatLink () {
		var headPart = (typeof(GKR.touchlist.breadcrumbs['title']) != 'undefined' ? GKR.touchlist.breadcrumbs['title'] : "Список районов");
		var filterHtml = (typeof(GKR.touchlist.breadcrumbs['filterHtml']) != 'undefined' ? GKR.touchlist.breadcrumbs['filterHtml'] : '');
		
		var header = headPart;
		if (GKR.touchlist.breadcrumbs['district']){
			header = '<span class="dashLink" style="float:left;margin:0">\
				<a href="#" onclick="return false;" onmousedown="updateHash(\'default\'); return false;">'
				+ headPart
				+ '</a>\
				<div class="path_arrow" style="width: 22px; height: 20px;"></div></span>';
		}
		if (GKR.touchlist.breadcrumbs['street']){
			header += filterHtml + '<span class="dashLink" style="float:left;margin:0">\
				<a href="#" onclick="return false;" onmousedown="updateHash({\'street\':\'\', house:\'\'}); return false;">'
				+ GKR.touchlist.breadcrumbs['district']
				+ '</a>\
				<div class="path_arrow" style="width: 22px; height: 20px;"></div></span>';
		} else if (GKR.touchlist.breadcrumbs['district']) {
			header += filterHtml + ' <span class="dashLink" style="float:left;margin:0">' + GKR.touchlist.breadcrumbs['district'] + '</span>';
		}
		if (GKR.touchlist.breadcrumbs['house']){
			header += '<span class="dashLink" style="float:left;margin:0">\
				<a href="#" onclick="return false;" onmousedown="updateHash({\'house\':\'\'}); return false;">'
				+ GKR.touchlist.breadcrumbs['street']
				+ '</a><div class="path_arrow" style="width: 22px; height: 20px;"></div>'
				+ GKR.touchlist.breadcrumbs['house'] + '</span>';
		} else if (GKR.touchlist.breadcrumbs['district'] && GKR.touchlist.breadcrumbs['street']) {
			header += ' <span class="dashLink" style="float:left;margin:0">' + GKR.touchlist.breadcrumbs['street'] + '</span>';
		}
		var catlink = '<span class="dashLink" style="float:left;">\
			<a href="#" onclick="return false;" onmousedown="$(\'#catAddress\').show(); $(\'#catLink\').hide(); return false;">Выбрать адрес</a>\
			<div class="path_arrow" style="width: 22px; height: 20px;"></div>\
			</span>';
		if (GKR.touchlist.breadcrumbs['district']){
			catlink = '<span class="dashLink" style="float:left;margin:0">\
				<a href="#" onclick="return false;" onmousedown="updateHash({\'street\':\'\', house:\'\'}); $(\'#catAddress\').show(); $(\'#catLink\').hide(); return false;">'
				+ GKR.touchlist.breadcrumbs['district']
				+ '</a>\
				<div class="path_arrow" style="width: 22px; height: 20px;"></div></span>';
		}
		if (GKR.touchlist.breadcrumbs['street']){
			catlink += '<span class="dashLink" style="float:left;margin:0">\
				<a href="#" onclick="return false;" onmousedown="updateHash({house:\'\'}); $(\'#catAddress\').show(); $(\'#catLink\').hide(); return false;">'
				+ GKR.touchlist.breadcrumbs['street']
				+ '</a>\
				<div class="path_arrow" style="width: 22px; height: 20px;"></div></span>';
		}
		if (GKR.touchlist.breadcrumbs['house']){
			catlink += '<span class="dashLink" style="float:left;margin:0">\
				<a href="#" onclick="return false;" onmousedown="$(\'#catAddress\').show(); $(\'#catLink\').hide(); return false;">'
				+ GKR.touchlist.breadcrumbs['house']
				+ '</a></span>';
		}
		$('#catLink').html(catlink);
		$('#touchListHeader').html(header);

		var filtred = 0;
		filtred = GKR.touchlist.breadcrumbs['filtred'];
		//var filtredDistrict = '';
		
			
		var h1_title = $('#h1_title');
		if (h1_title.length > 0) {
			var header_title = "";
			if (GKR.touchlist.breadcrumbs['house']) {
				header_title = "Продажа квартир в доме: " + GKR.touchlist.breadcrumbs['street'] + ", " + GKR.touchlist.breadcrumbs['house'];
			} else if (GKR.touchlist.breadcrumbs['street']) {
				header_title = "Продажа квартир: " + GKR.touchlist.breadcrumbs['street'];
			} else if (GKR.touchlist.breadcrumbs['district']) {
				header_title = (filtred > 0 ? GKR.touchlist.breadcrumbs['district'] : "Продажа квартир: район " + GKR.touchlist.breadcrumbs['district']);
				if(projectAlias == "domoway_msk" && filtred == 0)
					header_title += " - " + GKR.touchlist.breadcrumbs['okrug'];
			} else {
				header_title = "Продажа квартир в " + cityNamePP;
			}
			h1_title.text(header_title);
		}
	}

	function asyncLoader (level) {
		level = (level >-1  ? level : 0);
		var _timeOut = new Date();
		switch (level) {
			case 0:
				for (var _type in GKR.address) {
					for (var _guid in GKR.address[_type]) {
						if (_guid != "indexOf")
							GKR.address[_type][_guid].g = _guid;
					}
				}
				break;

			case 1:
				for (var _district in GKR.address.district) {
					GKR.address.district[_district].childstreets = new Array();
					GKR.address.district[_district].childmetros = new Array();
					for (var _street in GKR.address.street) {
						if (GKR.address.street[_street].pd.indexOf(_district) != -1)
							GKR.address.district[_district].childstreets[GKR.address.district[_district].childstreets.length] = GKR.address.street[_street];
					}
					for (var _metro = 0; _metro < GKR.address.metro.length; _metro++) {
						if (GKR.address.metro[_metro].pd.indexOf(_district) != -1)
							GKR.address.district[_district].childmetros[GKR.address.district[_district].childmetros.length] = GKR.address.metro[_metro];
					}
				}
				break;

			case 2:
				for (var _street in GKR.address.street) {
					GKR.address.street[_street].childdistricts = new Array();
					GKR.address.street[_street].childmetros = new Array();
					for (var _district in GKR.address.street[_street].pd) {
						GKR.address.street[_street].childdistricts[GKR.address.street[_street].childdistricts.length] = GKR.address.district[GKR.address.street[_street].pd[_district]];
					}
					for (var _metro = 0; _metro < GKR.address.metro.length; _metro++) {
						if (GKR.address.metro[_metro].ps.indexOf(_street) != -1)
							GKR.address.street[_street].childmetros[GKR.address.street[_street].childmetros.length] = GKR.address.metro[_metro];
					}
					delete(GKR.address.street[_street].pd);
				}
				break;

			case 3:
				for (var _metro = 0; _metro < GKR.address.metro.length; _metro++) {
					GKR.address.metro[_metro].childdistricts = new Array();
					GKR.address.metro[_metro].childstreets = new Array();
					for (var _district in GKR.address.metro[_metro].pd) {
						GKR.address.metro[_metro].childdistricts[GKR.address.metro[_metro].childdistricts.length] = GKR.address.district[GKR.address.metro[_metro].pd[_district]];
					}
					for (var _street in GKR.address.metro[_metro].ps) {
						GKR.address.metro[_metro].childstreets[GKR.address.metro[_metro].childstreets.length] = GKR.address.street[GKR.address.metro[_metro].ps[_street]];
					}
					delete(GKR.address.metro[_metro].pd);
					delete(GKR.address.metro[_metro].ps);
				}
				break;

			case 4:
				redrawSelects();
				break;
			case 5:
				$('#district').change(function () {
					if (this.value == 0) {
						redrawSelects();
					} else {
						redrawSelect(this.id, this.value, 'metro', 'Метро');
						redrawSelect(this.id, this.value, 'street', 'Улица');
					}});

				$('#metro').change(function () {
					if (this.value == 0) {
						redrawSelects();
					} else {
						redrawSelect(this.id, this.value, 'district', 'Район');
						redrawSelect(this.id, this.value, 'street', 'Улица');
					}});

				$('#street').change(function () {
					if (this.value == 0) {
						redrawSelects();
					} else {
						redrawSelect(this.id, this.value, 'metro', 'Метро');
						redrawSelect(this.id, this.value, 'district', 'Район');
					}});
				break;
			default:
				break;
		}
		level++;
		var tmp = new Date();
		_timeOut = (tmp - _timeOut);
		setTimeout(function () {asyncLoader(level);}, 50);
	}

	function redrawSelect (_curId, _curValue, _id, _idRus) {
		_tmpValue = $('#' + _id).attr('value');
		var html = [];
		if(document.all) {
			html.push('<option value="0">');
			html.push(_idRus);
			html.push('</option>');
		}
		html.push('<option value="0">');
		html.push(_idRus);
		html.push('</option>');
		for (var di = 0; di < GKR.address[_curId][_curValue]['child' + _id + 's'].length; di++)
			if (typeof(GKR.address[_curId][_curValue]['child' + _id + 's'][di]) === "object") {
			html.push('<option value="');
			html.push(GKR.address[_curId][_curValue]['child' + _id + 's'][di].g);
			html.push('">');
			html.push(GKR.address[_curId][_curValue]['child' + _id + 's'][di].n);
			html.push('</option>');
		}
		el = document.getElementById(_id);
		el.innerHTML = html.join('');
		$('#' + _id).attr('value', _tmpValue);
		if(document.all) {
			el.outerHTML = el.outerHTML;
		}
	}

	function redrawSelects () {
		var html = [];

		if(document.all) {
			html.push('<option value="0">');
			html.push("Улица");
			html.push('</option>');
		}

		html.push('<option value="0">');
		html.push("Район");
		html.push('</option>');
		for (var di in GKR.address.district) {
			html.push('<option value="');
			html.push(di);
			html.push('">');
			html.push(GKR.address.district[di].n);
			html.push('</option>');
		}
		el = document.getElementById('district');
		el.innerHTML = html.join('');
		$(el).attr('disabled', false);
		if(document.all) {
			el.innerHTML += "<option></option>";
			el.outerHTML = el.outerHTML;
		}

		var html = [];
		if(document.all) {
			html.push('<option value="0">');
			html.push("Улица");
			html.push('</option>');
		}
		html.push('<option value="0">');
		html.push("Метро");
		html.push('</option>');
		for (var di in GKR.address.metro) {
			html.push('<option value="');
			html.push(di);
			html.push('">');
			html.push(GKR.address.metro[di].n);
			html.push('</option>');
		}
		el = document.getElementById('metro');
		el.innerHTML = html.join('');
		$(el).attr('disabled', false);
		if(document.all) {
			el.innerHTML += "<option></option>";
			el.outerHTML = el.outerHTML;
		}


		var html = [];

		if(document.all) {
			html.push('<option value="0">');
			html.push("Улица");
			html.push('</option>');
		}

		html.push('<option value="0">');
		html.push("Улица");
		html.push('</option>');
		for (var di in GKR.address.street) {
			if (GKR.address.street[di].n != "") {
				html.push('<option value="');
				html.push(di);
				html.push('">');
				html.push(GKR.address.street[di].n);
				html.push('</option>');
			}
		}
		el = document.getElementById('street');
		el.innerHTML = html.join('');
		$(el).attr('disabled', false);
		if(document.all) {
			el.outerHTML = el.outerHTML;
		}
	}

	function drawContainer(containerNum) {
		var html = '';
		offset = 0;
		switch (containerNum) {
			case 1:
				offset = 0;
				break;
			case 2:
				offset = parseInt(GKR.data.eldistrib[1]);
				break;
			case 3:
				offset = parseInt(GKR.data.eldistrib[1]) + parseInt(GKR.data.eldistrib[2]);
				break;
			case 'premium':
			case 'nearest':
				if(typeof(GKR.data[containerNum]) != 'undefined'){
					var oldGKRdata = GKR.data;
					GKR.data = GKR.data[containerNum];
					GKR.data.eldistrib = new Array();
					GKR.data.eldistrib[containerNum] = GKR.data[0]['count'];
					offset = 0;
				}
				break;
			default:
				return "Bad container Num";
		} 
		offset++;
		if (parseInt(GKR.data.eldistrib[containerNum]) > 0) { 
			switch (GKR.data[0].type) { 
				case "1":
					for (var i = offset; i < (offset + parseInt(GKR.data.eldistrib[containerNum])); i++) {
						html += '<div class="tableSentence'
							+ (i%2 ? '' : ' clearRight clearLeft')
							+'">\
							<div class="tableSentenceRightBorder'
							+ (i%2 ? '' : ' hidden')
							+'"></div>\
							<div class="tableSentenceImage">'
							+ (GKR.data[i].dos ?
								'<div style="position: absolute; z-index: 1000; left: 5px; top: 5px;">\
								<map name="map_'
								+ GKR.data[i].alias + '_do"><area id="map_'
								+ GKR.data[i].alias + '_do_id" coords="8,1,3,6,3,14,9,20,16,20,22,14,22,6,17,1"\
								shape="poly" alt="Количество оценок в доме, по адресу '
								+ GKR.data[i].address + '" style="z-index: 1000;" title="Оценок в доме ('
								+ GKR.data[i].dos + ')" href="/map/'
								+ GKR.data[i].alias + '/" /></map>\
								<img width="26" height="26" src="/html/domoway_msk/images/default/blank.gif"\
								style="position: absolute; width: 26px; height: 26px; z-index: 1000;" usemap="#map_'
								+ GKR.data[i].alias + '_do" /><div class="m_blue_small iePNG">'
								+ (parseInt(GKR.data[i].dos) < 100 ? GKR.data[i].dos : '∞') + '</div></div>' : '')
							+ (GKR.data[i].deals ?
								'<div style="position: absolute; z-index: 1000; left: '
								+ (GKR.data[i].dos ? '23' : '5')
								+ 'px; top: 5px;">\
								<map name="map_'
								+ GKR.data[i].alias + '_deal"><area id="map_'
								+ GKR.data[i].alias + '_deal_id" coords="8,1,3,6,3,14,9,20,16,20,22,14,22,6,17,1"\
								shape="poly" alt="Количество объявлений в доме, по адресу '
								+ GKR.data[i].address + '" style="z-index: 1000;" title="Объявлений в доме ('
								+ GKR.data[i].deals + ')" href="/map/'
								+ GKR.data[i].alias + '/" /></map>\
								<img width="26" height="26" src="/html/domoway_msk/images/default/blank.gif"\
								style="position: absolute; width: 26px; height: 26px; z-index: 1000;" usemap="#map_'
								+ GKR.data[i].alias + '_deal" /><div class="m_red_small iePNG">'
								+ (parseInt(GKR.data[i].deals) < 100 ? GKR.data[i].deals : '∞') + '</div></div>' : '')
							+ '<a title="Перейти на страницу дома" href="/map/'
							+ GKR.data[i].alias
							+ '/">\
									<img width="80" height="80" class="th_img flat" alt="" src="'
							+ GKR.data[i].image
							+ '"/>\
								</a>\
							</div>\
							<div class="downPrice">\
								<span class="tableSentenceAdress"><a href="/map/'
							+ GKR.data[i].alias
							+ '/">'
							+ GKR.data[i].address
							+ '</a></span><a href="http://'+window.location.host+'/compare/doma/" title="Перейти на страницу сравнения"><span class="scales" style="'+((GKR.data[i].isInCompare)?null:' display:none;')+'" id="scal_'+GKR.data[i].alias.substring(1)+'"></span></a>\
								<span class="tableSentenceSubAdress">'
							+ (GKR.data[i].walls ? 'Материал стен: ' + GKR.data[i].walls : '')
							+ (GKR.data[i].etagn ? (GKR.data[i].walls ? ', э' : 'Э') + 'тажность: ' + GKR.data[i].etagn : '')
							+ (GKR.data[i].year ? (GKR.data[i].walls || GKR.data[i].etagn ? ', г' : 'Г') + 'од постройки: ' + GKR.data[i].year : '')
							+'</span>\
							</div>\
							<span class="tableSentencePrice green">'
							+ formatPrice (GKR.data[i].est1m2)
							+ '/м<sup>2</sup>\
							<a class="hintQ" style="margin:0 0 6px 4px;" title="Что такое Do-оценка" href="" onclick="return false;" onmousedown="return false;" hintText = "StarsHint"></a></span>\
							<div class="tableSentenceStars">'
							+ GKR.stars[GKR.data[i].stars]
							+ '</div>\
							<div class="tableSentenceHypers" style="margin-top:-14px;_margin-top:0px;">\
							<span class="tableSentenceHyper"><a href="/map/?deals&amp;lat=' + GKR.data[i].lat + '&amp;lng=' + GKR.data[i].lng + '" style="font-weight:normal;">на карте</a></span>'
							+ '<span class="tableSentenceHyper"><a class="compareButton'+((GKR.data[i].isInCompare)?' compareOn':null)+'" id="com_' + GKR.data[i].alias.substring(1) + '" href="javascript: void(0);" onclick="compare(' + projectGuid + ',' + GKR.data[0].type + ',' + GKR.data[i].alias.substring(1) + ')">сравнить</a></span>'
							+ '<span class="tableSentenceHyper" style="float:right;margin-right:12px;"><noindex><a rel="nofollow" href="/map/' + GKR.data[i].alias + '/dos/add/" class="blue" style="font-weight:normal;">оценить квартиру</a></noindex></span>'
							+ '<span class="tableSentenceHyper" style="float:right;margin-right:8px;"><noindex><a rel="nofollow" href="/deals/add/?house=' + GKR.data[i].alias + '" class="orange" style="font-weight:normal;">подать объявление</a></noindex></span>\
							</div>\
							</div>';
					}
					break;
				case "2":
					for (var i = offset; i < (offset + parseInt(GKR.data.eldistrib[containerNum])); i++) {
							html += '<div class="tableSentence'
								+ ((i > 2 && containerNum == 'premium') ? ' bottomEl' : (parseInt(GKR.data.eldistrib[containerNum]) <= 2 && containerNum == 'premium' ? ' bottomEl' : ''))
								+ ((GKR.data[i].mark == 1 && containerNum != 'premium') ? ' markedDeal' : '')
								+ (i%2 ? (containerNum == 'premium' ? ' firstEl' : '') : ' clearRight clearLeft' + (containerNum == 'premium' ? ' lastEl' : ''))
								+'">\
								<div class="tableSentenceRightBorder'
								+ (i%2 ? '' : ' hidden')
								+'"></div>\
								<div class="tableSentenceImage">\
									<a title="Посмотреть подробности объявления" href="/deals/'
								+ GKR.data[i].alias
								+ '/">\
										<img style="width: 80px; height: 80px;" class="th_img flat'
								+ (GKR.data[i].falseprice == 1 ? ' fPrice' : '' ) + '" alt="" src="'
								+ GKR.data[i].image
								+ '"/>'
								+ (GKR.data[i].falseprice == 1 ? '<div class="fPriceBend"></div>' : '' )
								+	'</a>\
								</div>\
								<div class="downPrice'
								+ (GKR.data[i].type == 'silent' ? ' silent' : '') + '">\
									<span class="tableSentenceAdress"><a href="/deals/'
								+ GKR.data[i].alias
								+ '/">'
								+ GKR.data[i].address
								+ '</a></span><a href="http://'+window.location.host+'/compare/sale/"  title="Перейти на страницу сравнения"><span class="scales" style="'+((GKR.data[i].isInCompare)?null:' display:none;')+'" id="scal_'+GKR.data[i].alias.substring(1)+'"></span></a>\
									<span class="tableSentenceSubAdress">'
								+ (GKR.data[i].rooms != 0 ? GKR.data[i].rooms + ' комн.' : '')
								+ (GKR.data[i].sob || GKR.data[i].sobMin != 0 ? (GKR.data[i].rooms != 0 ? ', ' : '') + 'площ. ' + (GKR.data[i].realtyobject == 'Новостройка' ? GKR.data[i].sobMin + ' м<sup>2</sup> - ' + GKR.data[i].sobMax + ' м<sup>2</sup>' : GKR.data[i].sob + ' м<sup>2</sup>') : '')
								+'</span>\
								</div>'
								+ (GKR.data[i].realtyobject == 'Новостройка' ? '<div class="ppmetr">Стоимость 1м<sup>2</sup></div>' : '' )
								+ '<span class="tableSentencePrice orange'
								+ (GKR.data[i].realtyobject == 'Новостройка' ? '" style="width: 230px;"><span style="font-size: 14px;">' + formatPrice(GKR.data[i].priceMin) + ' - ' + formatPrice (GKR.data[i].priceMax) + '</span>' : '">' + formatPrice (GKR.data[i].price))
								+ '</span>\
								<span class="tableSentenceDays">'
								+ GKR.data[i].fdate
								+ '</span>\
								<div class="tableSentenceHypers" style="margin-top:-14px;_margin-top:0px;">\
								<span class="tableSentenceHyper"><a href="/map/?deals&amp;lat=' + GKR.data[i].lat + '&amp;lng=' + GKR.data[i].lng + '">на карте</a></span>'
								+ (GKR.data[i].house ? '<span class="tableSentenceHyper"><a href="/map/' + GKR.data[i].house + '/" title="Перейти на страницу дома">дом</a></span>' : '')
								+ '<span class="tableSentenceHyper clearRight"><a href="/profile/?addFavDeal=' + GKR.data[i].alias.substring(1) + '">в избранное</a></span>'
								+ '<span class="tableSentenceHyper clearRight"><a class="compareButton'+((GKR.data[i].isInCompare)?' compareOn':null)+'" id="com_' + GKR.data[i].alias.substring(1) + '" href="javascript: void(0);" onclick="compare(' + projectGuid + ',' + GKR.data[0].type + ',' + GKR.data[i].alias.substring(1) + ')">сравнить</a></span>\
								</div>\
								</div>';
						}
					if(containerNum == 'premium'){
						if(parseInt(GKR.data.eldistrib[containerNum]) % 2){
							html += drawPremiumAds(); 
						}
						GKR.data = oldGKRdata; 
					}
					break;
				case "3":
					for (var i = offset; i < (offset + parseInt(GKR.data.eldistrib[containerNum])); i++) {
						html += '<div class="tableSentence'
							+ (i%2 ? '' : ' clearRight clearLeft')
							+'">\
							<div class="tableSentenceRightBorder'
							+ (i%2 ? '' : ' hidden')
							+'"></div>\
							<div class="tableSentenceImage">\
								<a title="Посмотреть подробности оценки" href="/map/'
							+ GKR.data[i].house + '/dos/'
							+ GKR.data[i].alias
							+ '/">\
									<img style="width: 80px; height: 80px;" class="th_img flat" alt="" src="'
							+ GKR.data[i].image
							+ '"/>\
								</a>\
							</div>\
							<div class="downPrice">\
								<span class="tableSentenceAdress"><a href="/map/'
							+ GKR.data[i].house + '/dos/'
							+ GKR.data[i].alias
							+ '/">'
							+ GKR.data[i].address
							+ '</a></span>\
								<span class="tableSentenceSubAdress">'
							+ (GKR.data[i].rooms ? GKR.data[i].rooms + ' комн.' : '')
							+ (GKR.data[i].sob ? (GKR.data[i].rooms ? ', ' : '') + 'площ. ' + GKR.data[i].sob + ' м<sup>2</sup>' : '')
							+'</span>\
							</div>\
							<span class="tableSentencePrice blue">'
							+ formatPrice (GKR.data[i].price)
							+ '</span>\
							<span class="tableSentenceDays">'
							+ GKR.data[i].fdate
							+ '</span>\
							<div class="tableSentenceHypers" style="margin-top:-14px;_margin-top:0px;">\
							<span class="tableSentenceHyper"><a href="/map/?do&amp;lat=' + GKR.data[i].lat + '&amp;lng=' + GKR.data[i].lng + '">на карте</a></span>'
							+ (GKR.data[i].house ? '<span class="tableSentenceHyper"><a href="/map/' + GKR.data[i].house + '/" title="Перейти на страницу дома">дом</a></span>' : '')
							+ '<span class="tableSentenceHyper clearRight"><a href="/profile/?addFavDo=' + GKR.data[i].alias.substring(2) + '">в избранное</a></span>\
							</div>\
							</div>';
					}
					break;
				case "4":
					for (var i = offset; i < (offset + parseInt(GKR.data.eldistrib[containerNum])); i++) {
						html += '<div class="tableSentence'
							+ (i % 2 ? '' : ' clearRight clearLeft')
							+ '"><div class="tableSentenceRightBorder'
							+ (i % 2 ? '' : ' hidden')
							+ '"></div><div class="tableSentenceImage">'
							+ (GKR.data[i].salecount > 0 ?
									'<div style="position: absolute; z-index: 1000; left: 5px; top: 5px;">\
									<img width="26" height="26" src="/html/domoway_msk/images/default/blank.gif"\
									style="position: absolute; width: 26px; height: 26px; z-index: 1000;" usemap="#map_'
									+ GKR.data[i].alias + '_deal" /><map name="map_'
									+ GKR.data[i].alias + '_deal"><area id="map_'
									+ GKR.data[i].alias + '_deal_id" coords="8,1,3,6,3,14,9,20,16,20,22,14,22,6,17,1"\
									shape="poly" alt="Количество объявлений у риэлтора" style="z-index: 1000;" title="Объявлений у риэлтора ('
									+ GKR.data[i].salecount + ')" href="/users/'
									+ GKR.data[i].alias + '/" /></map><div class="m_red_small iePNG">'
									+ (GKR.data[i].salecount < 100 ? GKR.data[i].salecount : "∞") + '</div></div>' : '')
							+ '<table style="height:100%"><tr><td style="vertical-align:middle; text-align:center;">\
								<a title="Посмотреть профиль пользователя" href="/users/'
							+ GKR.data[i].alias
							+ '/"><img alt="Фото риэлтора" src="'
							+ GKR.data[i].image
							+ '"/></a></td></tr></table></div><div class="downPrice">\
								<span class="tableSentenceAdress" style="width:210px; float:right; margin-right:14px; text-align:right;"><a href="/users/'
							+ GKR.data[i].alias + '/">'
							+ (GKR.data[i].username ? GKR.data[i].username : '') + ' '
							+ (GKR.data[i].lastname ? GKR.data[i].lastname : '')
							+ '</a></span>'
							+ (GKR.data[i].firmname ? '<span class="tableSentenceSubAdress ellipsis">АН: ' + GKR.data[i].firmname + '</span>' : '')
							+ (GKR.data[i].specialization ? '<span class="tableSentenceSubAdress ellipsis">Спец: ' + GKR.data[i].specialization + '</span>' :
								(GKR.data[i].experience ? '<span class="tableSentenceSubAdress ellipsis">Опыт на рынке: ' + GKR.data[i].experience + '</span>' : ''))
							+ (GKR.data[i].jobregion ? '<span class="tableSentenceSubAdress ellipsis">Регион: ' + GKR.data[i].jobregion + '</span>' : '')
							+ '</div><span class="tableSentencePrice orange ellipsis" style="width:220px; text-align:right;">'
							+ (GKR.data[i].phone ? GKR.data[i].phone : GKR.data[i].firmphone)
							+ '</span><div class="tableSentenceHypers" style="margin-top:-14px;_margin-top:0px;">\
							<span class="tableSentenceHyper"><a title="Профиль пользователя" href="/users/'
							+ GKR.data[i].alias
							+ '/">профиль</a></span>'
							+'<span class="tableSentenceHyper"><a title="отправить личное сообщение" href="/messages/'
							+ GKR.data[i].alias
							+ '/?write"><img class="iePNG" src="/html/domoway_msk/images/default/i/pen2.png" style="margin-top:-3px; width:18px; height:18px"></a></span>'
							+ '<span class="tableSentenceHyper" style="float:right;margin-right:14px;">профиль заполнен на '
							+ GKR.data[i].rate
							+ '%</span></div></div>';
					}
					break;
				case "5":
					for (var i = offset; i < (offset + parseInt(GKR.data.eldistrib[containerNum])); i++) {
						html += '<div class="tableSentence'
							+ ((i > 2 && containerNum == 'premium') ? ' bottomEl' : (parseInt(GKR.data.eldistrib[containerNum]) <= 2 && containerNum == 'premium' ? ' bottomEl' : ''))
							+ ((GKR.data[i].mark == 1 && containerNum != 'premium') ? ' markedDeal' : '')
							+ (i%2 ? (containerNum == 'premium' ? ' firstEl' : '') : ' clearRight clearLeft' + (containerNum == 'premium' ? ' lastEl' : ''))
							+'">\
							<div class="tableSentenceRightBorder'
							+ (i % 2 ? '' : ' hidden')
							+ '"></div><div class="tableSentenceImage"><a title="Посмотреть подробности объявления" href="/deals/'
							+ GKR.data[i].alias
							+ '/"><img style="width: 80px; height: 80px;" class="th_img flat" alt="Аренда квартиры" src="'
							+ GKR.data[i].image
							+ '"/></a></div><div class="downPrice"><span class="tableSentenceAdress"><a href="/deals/'
							+ GKR.data[i].alias + '/">'
							+ GKR.data[i].address
							+ '</a></span><a href="http://'+window.location.host+'/compare/rent/" title="Перейти на страницу сравнения"><span class="scales" style="'+((GKR.data[i].isInCompare)?null:' display:none;')+'" id="scal_'+GKR.data[i].alias.substring(1)+'"></span></a><span class="tableSentenceSubAdress">'
							+ (GKR.data[i].rooms ? GKR.data[i].rooms + ' комн.' : '')
							+ (GKR.data[i].sob ? (GKR.data[i].rooms ? ', ' : '') + 'площ. ' + GKR.data[i].sob + ' м<sup>2</sup>' : '')
							+ '</span></div><span class="tableSentencePrice" style="color:#CC3399 !important">'
							+ formatPrice (GKR.data[i].price)
							+ '</span><span class="tableSentenceDays">'
							+ GKR.data[i].fdate
							+ '</span><div class="tableSentenceHypers" style="margin-top:-14px;_margin-top:0px;">\
							<span class="tableSentenceHyper"><a href="/map/?rent&amp;lat='
							+ GKR.data[i].lat + '&amp;lng='
							+ GKR.data[i].lng + '">на карте</a></span>'
							+ (GKR.data[i].house ? '<span class="tableSentenceHyper"><a href="/map/'
								+ GKR.data[i].house + '/" title="Перейти на страницу дома">дом</a></span>' : '')
							+ '<span class="tableSentenceHyper"><a href="/profile/?addFavDeal='
							+ GKR.data[i].alias.substring(1)
							+ '">в избранное</a></span>'
							+ '<span class="tableSentenceHyper"><a class="compareButton'+((GKR.data[i].isInCompare)?' compareOn':null)+'" id="com_' + GKR.data[i].alias.substring(1) + '" href="javascript: void(0);" onclick="compare(' + projectGuid + ',' + GKR.data[0].type + ',' + GKR.data[i].alias.substring(1) + ')">сравнить</a></span></div></div>';
					}
					if(containerNum == 'premium'){
						if(parseInt(GKR.data.eldistrib[containerNum]) % 2){
							html += drawPremiumAds(); 
						}
						GKR.data = oldGKRdata;
					}
					break;
			}
		}
		return html;
	}

	function drawSpecContainer(containerNum) {
		html = ""; 
		offset = (containerNum - 1) * 2;
		if (GKR.data.specdata.length >= offset) {
			for (i = offset; i < (offset + 2); i++) { 
				if ((typeof(GKR.data.specdata[i]) != "undefined" &&  GKR.data.specdata[i] != null) || parseInt(GKR.data.eldistrib[containerNum + 1]) > (i - offset)) {  
					html += '<div class="tableSpecSentence' + (i % 2 ? ' clearLeft' : '') + '"><span>'
								+ (typeof(GKR.data.specdata) != "undefined" ? GKR.data.specdata : '&nbsp;')
								+ '</span><div class="tableSentenceBottomBorder"></div></div>';
				}
				break;
			}
		}
		return html;
	}
	
	function drawPremiumAds(){
		var html = '<div class="tableSentence bottomEl clearRight clearLeft lastEl"><div class="tableSentenceRightBorder"></div><a target="_blank" href="http://www.domoway.ru/wiki/sms/"><p style="color: rgb(241, 91, 35); font-weight: bold; text-align: center; margin-top: 10px;"><font style="font-size: 21px;">ВЫДЕЛИ или &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br/>ПРОДВИНЬ</font><br><font style="font-size: 20px;">любое объявление</font></p></a></div>';
		return html;
	}

	function renderContainer() { 
		if(typeof(GKR.data['notFound']) != 'undefined'){
				$('#resultContainer_1').html('');
				$('#resultContainer_2').html('');
				$('#resultContainer_3').html('');
				$('#resultContainer_1').html(drawContainer(1));
		} else {		
			$('#resultContainer_1').html(drawContainer(1));
			$('#resultContainer_2').html(drawContainer(2));
			$('#resultContainer_3').html(drawContainer(3));
		}
		
		if((GKR.data[0].type == 2 || GKR.data[0].type == 5) && typeof(GKR.data['premium']) != 'undefined' && GKR.data['premium'][0]['count'] > 0){
			$('#resultContainer_premium').html(drawContainer('premium'));
			$('.premium_deals').show();
		} else {
			$('.premium_deals').hide();
		}

		var html = drawSpecContainer(1);
		if (parseInt(GKR.data.eldistrib[0]) == 0 || GKR.data.specdata.length == 0) {
			$('#specContainer_1').hide();
		} else {
			$('#specContainer_1').show();
		}
		$('#specContainer_1').html(html);

		var html = drawSpecContainer(2);
		if (parseInt(GKR.data.eldistrib[0]) <= 2 || GKR.data.specdata.length <= 2) {
			$('#specContainer_2').hide();
		} else {
			$('#specContainer_2').show();
		}
		$('#specContainer_2').html(html);
		if($('#resultContainer_1').html() == ''){
			var noResHtml = '<div class="imageBlock" id="rndbx" style="float: left; width: 684px !important;">\
								<div class="rndbx wrndbx"><b class="trb">\
									<b></b><i></i><u></u></b>\
									<div class="rndbxC ibHeight">\
										<div class="noResIco"></div><h1>К сожалению поиск не дал результатов.<br/>Попробуйте изменить параметры фильтров<br/> и повторите попытку.</h1><br style="clear: both;">\
									</div>\
									<b class="brb"><u></u><i></i><b></b></b>\
								</div>\
							</div>';
			$('#resultContainer_1').html(noResHtml);
			$('#pagenav').html('');
			$('#pagenav_bottom').html('');
			$('#showsElement').hide();
			$('#srtElement').hide();
		} else {
			$('#pagenav').html(GKR.data.pagenav);
			$('#pagenav_bottom').html(GKR.data.pagenav);
			$('#showsElement').show();
			$('#srtElement').show();
		}
		$('.tableSentence').hover(function() {$(this).addClass('dealHover')},
		function() {$(this).removeClass('dealHover')});
	}

	function ToggleRadio(num) {
		var i = 0;
		for (i = 1; i <= 5; i++) {
			if (i == num) {
				$('#lbl' + i).addClass('activeBig' + i);
			} else {
				$('#lbl' + i).removeClass('activeBig' + i);
			}
		}
	}


	function formatPrice (price) {
		var _kurs = {"usd":  currencyUsd, "eur": currencyEur, "rur": 1};
		var _curr = $("input[name='currency']:checked").attr('value');
		var kurs = _kurs[_curr];

		price /= kurs;

		var summ = new String(parseInt((price + 50) / 100)*100);
		var res = new String();
		len = summ.length;
		for (i = len; i > 0; i -= 3) {
			res = ' ' + summ.substring(i - 3, i) + res;
		}
		res = res.substring(1, res.length);

		switch(_curr) {
			case 'usd':
				res = "$" + res;
				break;
			case 'eur':
				res = "€" + res;
				break;
			case 'rur':
				res += " руб.";
				break;
			default:
		}

		return res;
	}

	function SliderPointToValue(slider, point, internal) {
		var value = new Array();
		if (slider == "rentPrice") {
			value[0] = 1000;
			value[1] = 5000;
			value[2] = 10000;
			value[3] = 13000;
			value[4] = 15000;
			value[5] = 20000;
			value[6] = 25000;
			value[7] = 30000;
			value[8] = 35000;
			value[9] = 40000;
			value[10] = 45000;
			value[11] = 50000;
			value[12] = 55000;
			value[13] = 60000;
			value[14] = 75000;
			value[15] = 100000;
			value[16] = 500000;
			value[point] = convCur(value[point]);
		} else if (slider == "price") {
			var values = getSliderValues();
			value = values.price;
			if (internal)
				return value[point];
			value[point] = convCur(value[point]);
		} else if (slider == "pricePerMetr") {
			var values = getSliderValues();
			value = values.pricePerMetr;
			step = (value[16] - value[0])/256;
			for (i = 1; i < 16; i++) {
				value[i] = value[0] + step * i * i;
			}
			value[point] = convCur(value[point]);
		} else if (slider == "doprice") {
			var values = getSliderValues();
			value = values.doPrice;
			value[point] = convCur(value[point]);
		} else if (slider == 'karea') {
			value[0] = 1;
			value[1] = 2;
			value[2] = 4;
			value[3] = 6;
			value[4] = 8;
			value[5] = 10;
			value[6] = 12;
			value[7] = 14;
			value[8] = 16;
			value[9] = 18;
			value[10] = 20;
			value[11] = 25;
			value[12] = 30;
			value[13] = 40;
			value[14] = 50;
			value[15] = 60;
			value[16] = 100;
		} else {
			value[0] = 10;
			value[1] = 34;
			value[2] = 37;
			value[3] = 40;
			value[4] = 44;
			value[5] = 46;
			value[6] = 50;
			value[7] = 54;
			value[8] = 58;
			value[9] = 63;
			value[10] = 70;
			value[11] = 76;
			value[12] = 83;
			value[13] = 99;
			value[14] = 126;
			value[15] = 229;
			value[16] = 1000;
		}
		return value[point];
	}

	function sliderSlideEvent(e, ui) {
		var sliderName = ui.handle.parentNode.id;
		var hIndex = $(ui.handle).index();
		var lHandlerValue = ui.values[0];
		var rHandlerValue = ui.values[1];

		switch(sliderName){
			case 'priceSlider':
				var lHandlerText = "#price-min";
				var rHandlerText = "#price-max";
				var minus = "#minus";
				var sl = "price";
				break;
			case 'rentPriceSlider':
				var lHandlerText = "#rent-price-min";
				var rHandlerText = "#rent-price-max";
				var minus = "#minus_3";
				var sl = "rentPrice";
				break;
			case 'areaSlider':
				var lHandlerText = "#area-min";
				var rHandlerText = "#area-max";
				var sl = "area";
				break;
			case 'pricePerMetrSlider':
				var lHandlerText = "#pricepermetr-min";
				var rHandlerText = "#pricepermetr-max";
				var minus = "#minus_1";
				var sl = "pricePerMetr";
				break;
			case 'dopriceSlider':
				var lHandlerText = "#doprice-min";
				var rHandlerText = "#doprice-max";
				var minus = "#minus_2";
				var sl = "doprice";
				break;
			case 'kareaSlider':
				var lHandlerText = "#karea-min";
				var rHandlerText = "#karea-max";
				var minus = "#minus_4";
				var sl = "karea";
				break;
		}
		if(rHandlerValue == lHandlerValue)
			return false;

		if(sl == 'area'){
			if(hIndex == 1)
					$(lHandlerText).text(SliderPointToValue(sl, lHandlerValue));
				else if(hIndex == 2)
					$(rHandlerText).text(SliderPointToValue(sl, rHandlerValue));
		} else {
			if ((rHandlerValue == 16) && (lHandlerValue == 0)){
						$(lHandlerText).text("любая ");
						if(sl == 'karea')
							$(rHandlerText).text("площадь");
						else
							$(rHandlerText).text("цена");
						$(minus).hide();
					} else if (rHandlerValue == 16){
						$(lHandlerText).text("более ");
						$(rHandlerText).text(SliderPointToValue(sl, lHandlerValue));
						if(sl == 'karea'){ 
							$(rHandlerText).append('м<sup>2</sup>');
						}
						$(minus).hide();
					} else if (lHandlerValue == 0){
						$(lHandlerText).text("менее ");
						$(rHandlerText).text(SliderPointToValue(sl, rHandlerValue));
						if(sl == 'karea'){ 
							$(rHandlerText).append('м<sup>2</sup>');
						}
						$(minus).hide();
					} else {
						$(lHandlerText).text(SliderPointToValue(sl, lHandlerValue));
						$(rHandlerText).text(SliderPointToValue(sl, rHandlerValue));
						if(sl == 'karea'){ 
							$(rHandlerText).append('м<sup>2</sup>');
							$(lHandlerText).append('м<sup>2</sup>');
						}
						$(minus).show();
					}
		}
		/*
		if(sliderName != 'pricePerMetrSlider' ) {
			if (($('#pricePerMetrSlider').slider("values")[1] == 16) && ($('#pricePerMetrSlider').slider("values")[0] == 0)){
							$('#pricepermetr-min').text("любая ");
							$('#pricepermetr-max').text("цена");
							$("#minus_1").hide();
						} else if ($('#pricePerMetrSlider').slider("values")[1] == 16){
							$('#pricepermetr-min').text("более ");
							$('#pricepermetr-max').text(SliderPointToValue('pricePerMetr', $('#pricePerMetrSlider').slider("values")[0]));
							$("#minus_1").hide();
						} else if ($('#pricePerMetrSlider').slider("values")[0] == 0){
							$('#pricepermetr-min').text("менее ");
							$('#pricepermetr-max').text(SliderPointToValue('pricePerMetr', $('#pricePerMetrSlider').slider("values")[1]));
							$("#minus_1").hide();
						} else {
							$('#pricepermetr-min').text(SliderPointToValue('pricePerMetr', $('#pricePerMetrSlider').slider("values")[0]));
							$('#pricepermetr-max').text(SliderPointToValue('pricePerMetr', $('#pricePerMetrSlider').slider("values")[1]));
							$("#minus_1").show();
						}
		}
		*/
	}

	function sliderChangeEvent () {
		var _params = {
			"price": [$("#priceSlider").slider("values")[0], $("#priceSlider").slider("values")[1]],
			"rentprice": [$("#rentPriceSlider").slider("values")[0], $("#rentPriceSlider").slider("values")[1]],
			"pricepermetr": [$("#pricePerMetrSlider").slider("values")[0], $("#pricePerMetrSlider").slider("values")[1]],
			"area": [$("#areaSlider").slider("values")[0], $("#areaSlider").slider("values")[1]],
			"karea": [$("#kareaSlider").slider("values")[0], $("#kareaSlider").slider("values")[1]],
			"doprice": [$("#dopriceSlider").slider("values")[0], $("#dopriceSlider").slider("values")[1]]};
		updateHash(_params);
	}
function sliderInitialize(ui) {
		if(ui == null) return false;
		var sliderName = ui.name;
		var lHandlerValue = ui.values[0];
		var rHandlerValue = ui.values[1];

		switch(sliderName){
			case 'priceSlider':
				var lHandlerText = "#price-min";
				var rHandlerText = "#price-max";
				var minus = "#minus";
				var sl = "price";
				break;
			case 'rentPriceSlider':
				var lHandlerText = "#rent-price-min";
				var rHandlerText = "#rent-price-max";
				var minus = "#minus_3";
				var sl = "rentPrice";
				break;
			case 'areaSlider':
				var lHandlerText = "#area-min";
				var rHandlerText = "#area-max";
				var sl = "area";
				break;
			case 'pricePerMetrSlider':
				var lHandlerText = "#pricepermetr-min";
				var rHandlerText = "#pricepermetr-max";
				var minus = "#minus_1";
				var sl = "pricePerMetr";
				break;
			case 'dopriceSlider':
				var lHandlerText = "#doprice-min";
				var rHandlerText = "#doprice-max";
				var minus = "#minus_2";
				var sl = "doprice";
				break;
			case 'kareaSlider':
				var lHandlerText = "#karea-min";
				var rHandlerText = "#karea-max";
				var minus = "#minus_4";
				var sl = "karea";
				break;
		} 
		if(sl == 'area'){
			$(lHandlerText).text(SliderPointToValue(sl, lHandlerValue));
			$(rHandlerText).text(SliderPointToValue(sl, rHandlerValue));
		} else {
			if ((rHandlerValue == 16) && (lHandlerValue == 0)){
						$(lHandlerText).text("любая ");
						if(sl == 'karea')
							$(rHandlerText).text("площадь");
						else
							$(rHandlerText).text("цена");
						$(minus).hide();
					} else if (rHandlerValue == 16){
						$(lHandlerText).text("более ");
						$(rHandlerText).text(SliderPointToValue(sl, lHandlerValue));
						if(sl == 'karea')
							$(rHandlerText).append('м<sup>2</sup>');
						$(minus).hide();
					} else if (lHandlerValue == 0){
						$(lHandlerText).text("менее ");
						$(rHandlerText).text(SliderPointToValue(sl, rHandlerValue));
						if(sl == 'karea')
							$(rHandlerText).append('м<sup>2</sup>');
						$(minus).hide();
					} else {
						$(lHandlerText).text(SliderPointToValue(sl, lHandlerValue));
						$(rHandlerText).text(SliderPointToValue(sl, rHandlerValue));
						if(sl == 'karea'){
							$(rHandlerText).append('м<sup>2</sup>');
							$(lHandlerText).append('м<sup>2</sup>');
						}
						$(minus).show();
					}
		}
	}
	
function refreshFilters(){
	$('.advSearch').each(function(){
		$(this).val('')
		});
	options = 	{
				values: [0, 16],
				};
		
	var slideObj = null;
		for(i=1; i<=6; i++){
			var slideObj = {};
			switch(i){
				case 1:
					slideObj.name = 'priceSlider';
					break;
				case 2:
					slideObj.name = 'rentPriceSlider';
					break;
				case 3:
					slideObj.name = 'areaSlider';
					break;
				case 4:
					slideObj.name = 'pricePerMetrSlider';
					break;
				case 5:
					slideObj.name = 'dopriceSlider';
					break;
				case 6:
					slideObj.name = 'kareaSlider';
					break;
			}
			$("#" + slideObj.name).slider(options);
			slideObj.values = new Array();
			slideObj.values[0] = options.values[0];
			slideObj.values[1] = options.values[1];
			sliderInitialize(slideObj);
		}
	
	if(window.location.hash != '#default'){
		window.location.hash = '#default';
		updatePage();
	}
}	
	
function showASBlock(){
	$('#advancedSearchBlock').slideDown('fast', function(){ 
			$('#openLinkAdv').hide();
			$('#closeLinkAdv').show();
		});
}
function closeASBlock(){
	$('#advancedSearchBlock').slideUp('fast', function(){
			$('#openLinkAdv').show();
			$('#closeLinkAdv').hide();
		});
}

function suspCheckbox (obj)
{ 
var thischeck = $(obj);
if (thischeck.is (':checked'))
{
	thischeck.val('1');
} else {
	thischeck.val('0');
}
updateHash({'suspishious': thischeck.val()})
};


