var regionActiveMod = false;
var subRegionsChecked = new Array();
var currentIdRegion = 11;
var rooms = new Object();
var options = new Object();
var notepadReloadLocation = false;
var idRegionUPD = 11;
var regionTitleUPD = 'Москва';
var idRegionUPD_Region = 14;
var regionTitleUPD_Region = 'Московская область';
var simpleSearchFlag = false;
var bonusStatus = false;
var arendaFlag = false;
var sutkiFlag = false;
var foreign = false;
var squareValues = {
	'from' : false,
	'to' : false
};

var checkedView = {
	'enabled' : {
		'map' : 'block',
		'list' : 'active'
	},
	'disabled' : {
		'map' : 'none',
		'list' : false
	}
};

var priceLimits = {
	'/arenda_sutki' : {
		'min' : 1000,
		'max' : 15000,
		'step' : 500,
		'id' : 10,
        'pm' : '',
		'arenda_flag': true,
		'sutki_flag' : true,
		'default_region': 11,
		'sqpm': 'м<sup>2</sup>'
	},
	'/cre' : {
		'min' : 5,
		'max' : 300,
		'id' : 7,
		'arenda_flag': false,
		'sutki_flag' : false,
		'default_region': 11,
		'sqpm': 'м<sup>2</sup>'
	},
	'/cre_arenda' : {
		'min' : 10,
		'max' : 600,
		'pm' : 'тыс.',
		'id' : 8,
		'arenda_flag': true,
		'sutki_flag' : false,
		'default_region': 11,
		'sqpm': 'м<sup>2</sup>'
	},
	'/flat' : {
		'min' : 2,
		'max' : 30,
		'id' : 2,
		'step' : 0.5,
		'arenda_flag': false,
		'sutki_flag' : false,
		'default_region': 11,
		'sqpm': 'м<sup>2</sup>'
	},
	'/novoe' : {
		'min' : 1,
		'max' : 30,
		'id' : 1,
		'step' : 0.5,
		'arenda_flag': false,
		'sutki_flag' : false,
		'default_region': 11,
		'sqpm': 'м<sup>2</sup>'
	},
	'/flat_arenda' : {
		'min' : 10,
		'max' : 70,
		'pm' : 'тыс.',
		'id' : 3,
		'arenda_flag': true,
		'sutki_flag' : false,
		'default_region': 11,
		'sqpm': 'м<sup>2</sup>'
	},
	'/zagorod' : {
		'min' : 0,
		'max' : 30,
		'id' : 4,
		'step' : 0.5,
		'arenda_flag': false,
		'sutki_flag' : false,
		'default_region': 14,
		'sqpm': 'м<sup>2</sup>'
	},
	'/zagorod_arenda' : {
		'min' : 1,
		'max' : 200,
		'pm' : 'тыс.',
		'id' : 5,
		'arenda_flag': true,
		'sutki_flag' : false,
		'default_region': 14,
		'sqpm': 'м<sup>2</sup>'
	},
	'/zagorod_sutki' : {
		'min' : 5000,
		'max' : 40000,
		'step' : 2500,
		'id' : 15,
        'pm' : '',
		'arenda_flag': true,
		'sutki_flag' : true,
		'default_region': 14,
		'sqpm': 'м<sup>2</sup>'
	},
	'/zagorod_land' : {
		'min' : 0,
		'max' : 30,
		'id' : 6,
		'step' : 0.5,
		'arenda_flag': false,
		'sutki_flag' : false,
		'default_region': 14,
		'sqpm': 'соток'
	}
};

$('#distanceFrom, #distanceTo').live('keyup change blur', 
		function (){
					setCounter();
					}
);

$('#squareFromSimple, #squareToSimple').live('keyup change blur', 
		function (){
					initSquaresSimple(this.id,$(this).val());
					}
);

function initSquaresSimple(id,value,dontCount)
{
	if (id == 'squareFromSimple') squareValues.from = value;
	if (id == 'squareToSimple') squareValues.to = value;
	if (!dontCount) setCounter();
}

var customSelectCallback = function (idSquareSelect, value)
{
	if (idSquareSelect.indexOf('squareFrom') === 0) squareValues.from = value;
	if (idSquareSelect.indexOf('squareTo') === 0) squareValues.to = value;
	
	setCounter();
}

function initRoomsQtList()
{
	rooms['-1'] = false;
	rooms['1'] = false;
	rooms['2'] = false;
	rooms['3'] = false;
	rooms['4'] = false;
	rooms['5'] = false;
}

function initSearchOptionsObject()
{
	options = {
		'phone' : false,
		'parking' : false,
		'owner' : false,
		'internet' : false,
		'uhrOffice' : false,
		'uhrShop' : false,
		'uhrFood' : false,
		'uhrWarehouse' : false,
		'uhrGarage' : false,
		'uhrBusiness' : false,
		'uhrAny' : false,
		'dateLimit' : false
	};
}

function initRegionTrigger()
{
	if(document.getElementById('searchMoscow')!== null) document.getElementById('searchMoscow').innerHTML = '<a rel="nofollow" href="#" onclick="setRegion(11, this.text)">Москва</a> и <a rel="nofollow" href="#" onclick="setRegion(14, this.text)">Московская область</a>';
	if(document.getElementById('searchSPB')!== null) document.getElementById('searchSPB').innerHTML = '<a href="http://spb.kvadroom.ru/">Санкт-Петербург и Ленинградская область</a>';

	regionActiveMod=!regionActiveMod;
}

function setRegion(idRegion, regionTitle)
{
	if (regionActiveMod)
	{
		document.getElementById('citySelectionTrigger').innerHTML = regionTitle;
		document.getElementById('idRegion').value = idRegion;
		regionActiveMod = !regionActiveMod;
		$('.modal-city-selection').jqmHide();
        currentIdRegion = idRegion;
        setCounter();
		if (idRegion == 11 || idRegion == 14)
		{

			$.post('/srv/mapsubregions.php', {
					'idRegion' : idRegion,
					'globalURI' : globalURI+'/'
				},
				function(data) {
					var mrResult = eval('('+data+')');
					$(".modal-subway-selection .modal-title").text(mrResult.title);
					$("#subway-list .clearfix").html(mrResult.subRegions);
					$("#subway-mapli").css("display","block");
                                        $("#subway-map").css("display","block");
                                        $("#subway-map").html(mrResult.map);
                                        if (idRegion == 14)
                                        {
					$("#subway-list").css("display","block");
                                        $("#subway-mapli").css("display","none");
                                        $("#subway-map").css("display","none");
                                        }
					$(".modal-subway-selection .subway-lines h3").text(mrResult.directionTitle);
					$(".modal-subway-selection .subway-lines-menu").html(mrResult.directionList);
					subRegionsListInit();
					subRegionDirectionsInit();
					eval(mrResult.directions);
				}
			);

			clearCheckedSubregions();
			fillSubRegionsBlock(false);
$(".selection-list .col4of4").css("display","block");
$(".selection-list .col4of4").css("width","25%");
$(".selection-list .col123of4").css("width","75%");
			var srTrigger = $(".subway-selection-trigger");
			var srTrigger = $(".subway-selection-trigger");
			var srtTitle = 'Выбрать район';
			var srtClass = 'sr-icon-region';
			if (idRegion == 11)
			{	
				srtTitle = 'Выбрать метро';
				srtClass = 'sr-icon-subway';
			}
			else if (idRegion == 14)
			{
				if ((globalURI == '/zagorod' || globalURI == '/zagorod_land' || globalURI == '/zagorod_arenda' || globalURI == '/zagorod_sutki'))
				{
					srtTitle = 'Выбрать шоссе';
					srtClass = 'sr-icon-highway';
                                        $(".selection-list .col4of4").css("display","none");
$(".selection-list .col123of4").css("width","100%");
				}
				else
				{
					$("#subway-list").removeClass('hide');
					$("#subway-map").addClass('hide');
                                        $("#subway-list").css('display','block');
					$("#subway-map").css('display','none');
                                        $(".tabbed-selection-menu li").toggleClass('active');
				}
			}

			srTrigger.children('span').text(srtTitle);
			srTrigger.removeClass('sr-icon-highway sr-icon-region sr-icon-subway');
			srTrigger.addClass(srtClass);
		} else {
            clearCheckedSubregions();
            fillSubRegionsBlock(false);
            subRegionsChecked = new Array();

            $("<div></div>").load('/srv/mapsubregions.php #mapSubRegions', {
					'idRegion' : idRegion,
					'globalURI' : globalURI+'/'
				},
                function() {
                    var srtTitle = 'Уточнить выбор';
			        var srtClass = 'sr-icon-region';
                    if (idRegion == 190)
                    {
                        srtClass = 'sr-icon-subway';
                        srtTitle = 'Выбрать метро';
                    } 
                    $(".subway-selection-trigger").removeClass('sr-icon-highway sr-icon-region sr-icon-subway').addClass(srtClass).children('span').text(srtTitle);
                    $("#mapSubRegions").html($("#mapSubRegions",this).html());
                    if($("#mapSubRegions").html()==""){
                        $(".subway-selection-trigger").hide();
                    } else {
                        $(".subway-selection-trigger").show();
                    }
                }
                );
            setCounter();
        }
	}
	return false;
}

function setRoomsQt(idRoomsQt)
{
	rooms[idRoomsQt] = !rooms[idRoomsQt];
	setCounter();
}

function setOption(element)
{
	options[element.name] = !options[element.name];
	setCounter();
}

function setCounter()
{
	var rqFields = new Object();
	var searchQuery = new Array();
	var roomsQtList = new Array();
	var subRegions = '';
	var detailFlags = new Array();

	rqFields['idRegion'] = currentIdRegion;
	rqFields['idCategory'] = document.getElementById('idCategory').value;
	rqFields['squareFrom'] = squareValues.from;
	rqFields['squareTo'] = squareValues.to;
	rqFields['priceFrom'] = currentPriceFrom;
	rqFields['priceTo'] = currentPriceTo;
	rqFields['distanceFrom'] = document.getElementById('distanceFrom') ? document.getElementById('distanceFrom').value : false;
	rqFields['distanceTo'] = document.getElementById('distanceTo') ? document.getElementById('distanceTo').value : false;

	if (rqFields['priceFrom'] == priceLimits[globalURI]['min']) rqFields['priceFrom'] = false;
	if (rqFields['priceTo'] == priceLimits[globalURI]['max']) rqFields['priceTo'] = false;
	
	$.post('/srv/counter.php', {
		'idRegion': rqFields['idRegion'],
		'idCategory': rqFields['idCategory'],
		'roomsQtList': rooms,
		'squareFrom': rqFields['squareFrom'],
		'squareTo': rqFields['squareTo'],
		'options': options,
		'priceFrom': rqFields['priceFrom'],
		'priceTo': rqFields['priceTo'],
		'distanceFrom': rqFields['distanceFrom'],
		'distanceTo': rqFields['distanceTo'],
		'subRegions' : subRegionsChecked,
		'globalURI' : globalURI+'/'
	}, function (data) {
		//console.log(data);
		if (data != 0) document.getElementById('showOffersButton').innerHTML = (simpleSearchFlag ? '' : 'Посмотреть ')+data+' '+getDeclension(parseInt(data), new Array('объявление', 'объявления', 'объявлений'));
		else document.getElementById('showOffersButton').innerHTML = simpleSearchFlag ? 'Посмотреть' :'Посмотреть объявления';
	});

	for (var key in rooms) if (rooms[key]) roomsQtList.push(key);
	for (var key in options) if (options[key]) detailFlags.push(key);
	if (roomsQtList.length > 0) roomsQtList = '&roomsQtList='+roomsQtList.join(',');
	if (subRegionsChecked.length > 0) subRegions = '&subRegions='+subRegionsChecked.join(',');
	if (detailFlags.length > 0) detailFlags = '&flags='+detailFlags.join(',');
	for (var key in rqFields) if (rqFields[key]) searchQuery.push(key+'='+rqFields[key]);
	
	if (simpleSearchFlag) {searchQuery.push('simpleSearch=true');}else{searchQuery.push('simpleSearch=false');}
    document.getElementById('showOffersButton').href = globalURI+'/search.html?'+searchQuery.join('&')+roomsQtList+subRegions+detailFlags;
}

function priceSliderCallback(priceFrom, priceTo)
{
	currentPriceFrom = priceFrom;
	currentPriceTo = priceTo;
	setCounter();
}

function checkSubregionDirection(idSubRegionDirection)
{
	for (var slChunk in subRegionDirections[idSubRegionDirection]['chunks']) checkSubregionDirectionChunk(subRegionDirections[idSubRegionDirection]['chunks'][slChunk]);
	for (var slCrossing in subRegionDirections[idSubRegionDirection]['crossing']) checkDirectionsCrossing(subRegionDirections[idSubRegionDirection]['crossing'][slCrossing]);
	for (var slStations in subRegionDirections[idSubRegionDirection]['regions']) checkSubRegion(subRegionDirections[idSubRegionDirection]['regions'][slStations]);
}

function checkSubregionDirectionRO(idSubRegionDirection)
{	
	for (var slStations in subRegionDirections[idSubRegionDirection]['regions']) checkSubRegion(subRegionDirections[idSubRegionDirection]['regions'][slStations]);
}

function checkSubregionDirectionLI(inputObj)
{
	var inputId = false;
	
	if (inputObj.id !== undefined)
	{
		inputId = inputObj.id.replace(/([a-z]+)_/,"");
		$('#srd_'+inputId).toggleClass('active');
	}
	else inputId = inputObj;

	checkSubRegion(inputId);

	return false;
}

function checkSubregionDirectionChunk(index)
{
	for (var i = 0; i < subRegionDirectionChunks[index].idList.length; i++) checkSubRegion(subRegionDirectionChunks[index].idList[i]);
}

function checkDirectionsCrossing(idCrossing)
{
	var stationList = new Array();
	if (!(subRegionDirectionsCrossing[idCrossing] instanceof Array)) stationList.push(subRegionDirectionsCrossing[idCrossing]);
	else stationList = subRegionDirectionsCrossing[idCrossing];
	for (var idSSC in stationList) checkSubRegion(stationList[idSSC]);
}

function checkSubRegion(inputObj)
{

	if (foreign == true) $('#modal-city-selection-render').remove();
	var inputIds = false;
	var idSubRegionList = new Array();
	if (inputObj.id !== undefined) inputIds = inputObj.id.replace(/([a-z]+)_/,"").split(",");
	else inputIds = inputObj;
	if (!(inputIds instanceof Array)) idSubRegionList.push(inputIds);
	else idSubRegionList = inputIds;

	for (var icss in idSubRegionList)
	{
		var currentView = updateStationList(idSubRegionList[icss]) ? 'enabled' : 'disabled';
		if (document.getElementById("sli_"+idSubRegionList[icss])) document.getElementById("sli_"+idSubRegionList[icss]).className = checkedView[currentView].list;
		$("#mms_"+idSubRegionList[icss]).css("display", checkedView[currentView].map);
	}

	return true;
}

function updateStationList(idSubRegion)
{
	for (var i = 0; i < subRegionsChecked.length; i++)
	{
		if (subRegionsChecked[i] == idSubRegion)
		{
			subRegionsChecked.splice(i, 1);
			return false;
		}
	}

	return subRegionsChecked.push(idSubRegion);
}

function fillSubRegionsBlock(hideMap)
{
	var innerHTML = '';
	//console.log('fillsubregionsblock',subRegionsChecked);
	var declensions = new Array('район', 'района' , 'районов');
    if (currentIdRegion == 11) declensions = new Array('станция', 'станции', 'станций');
    else if (currentIdRegion == 14 && (globalURI == '/zagorod' || globalURI == '/zagorod_land' || globalURI == '/zagorod_arenda' || globalURI == '/zagorod_sutki')) declensions = new Array('шоссе', 'шоссе', 'шоссе');
	   
    
    if (!simpleSearchFlag)
    {
        for (var fsC = 0; fsC < subRegionsChecked.length; fsC++)
        {
            if (fsC == 3) break;
            if (document.getElementById('sli_'+subRegionsChecked[fsC]) === null) continue;
            innerHTML += '<li><a rel="nofollow" href="#" onclick="removeStation('+subRegionsChecked[fsC]+')">'+document.getElementById('sli_'+subRegionsChecked[fsC]).getElementsByTagName('a')[0].innerHTML.replace(' м.', '')+'</a></li> ';
        }

        if (subRegionsChecked.length > 3) innerHTML += ' <li>и еще '+(subRegionsChecked.length-3)+' '+getDeclension((subRegionsChecked.length-3), declensions)+'</li> ';
        document.getElementById('stationsBlock').innerHTML = innerHTML;
    }
    else
    {
    	if (subRegionsChecked.length != 0)
    	{
    		document.getElementById('subrMapTitle').innerHTML = subRegionsChecked.length+' '+getDeclension(subRegionsChecked.length, declensions);
    	}
    	else if(document.getElementById('subrMapTitle'))
    	{
    		document.getElementById('subrMapTitle').innerHTML = 'выбрать';
    	}
    }
	
    
	if (hideMap) $('#mapSubRegions').jqmHide();
	setCounter();
}

function removeStation(idStation)
{
	document.getElementById("sli_"+idStation).className = checkedView['disabled'].list;
	$("#mms_"+idStation).css("display", checkedView['disabled'].map);

	updateStationList(idStation);
	fillSubRegionsBlock(false);
}

function clearCheckedSubregions()
{
	subRegionsChecked = new Array();
}

function getDeclension(number, titles)
{
	var cases = new Array(2, 0, 1, 1, 1, 2);
	return titles[ ((number%100>4 && number%100<20)? 2 : cases[Math.min(number%10, 5)]) ];
}

function globalUri(uri){
     uri = uri && uri!='.'? uri: location.href;
     if(uri.indexOf("http") == 0){
         uri = uri.substr(uri.lastIndexOf("/"),uri.indexOf(".html"));
         var mapping = {
            '/flat_sale':'/flat',
            '/novoe':'/novoe',
            '/zagorod_sale':'/zagorod',
            '/zagorod_land':'/zagorod_land',
            '/cre_sale':'/cre',
            '/flat_arenda':'/flat_arenda',
            '/flat_sutki':'/arenda_sutki',
            '/zagorod_arenda':'/zagorod_arenda',
            '/zagorod_sutki':'/zagorod_sutki',
            '/cre_arenda':'/cre_arenda'
         };
         uri = mapping[uri];
     }
    return uri;
}

function initPriceSlider()
{
	var sliderValues = {
		'min' : (window.currentPriceFrom ? currentPriceFrom :  priceLimits[globalURI].min),
		'max' : (window.currentPriceTo ? currentPriceTo :  priceLimits[globalURI].max)
	};
	
	$(function() {
		$( "#price-slider-range" ).slider({
			range: true,
			min: priceLimits[globalURI].min,
			max: priceLimits[globalURI].max,
			step: (priceLimits[globalURI].step == undefined ? 1 : priceLimits[globalURI].step),
			values: [ sliderValues.min, sliderValues.max ],
			slide: function( event, ui ) {
				$( "#price-range" ).val( "$" + ui.values[ 0 ] + " - $" + ui.values[ 1 ] );
				$( ".val-1" ).text( ui.values[ 0 ] );
				$( ".val-2" ).text( ui.values[ 1 ] );
			},
			change: function (event, ui) {
				priceSliderCallback(ui.values[0], ui.values[1]);
			}
		});
		$( "#price-range" ).val( "$" + $( "#price-slider-range" ).slider( "values", 0 ) +" - $" + $( "#price-slider-range" ).slider( "values", 1 ) );
		$(".ui-slider-handle:eq(0)").append("<span class='val-1'/>")
		$(".ui-slider-handle:eq(1)").append("<span class='val-2'/>")
		$(".val-1").text( $( "#price-slider-range" ).slider( "values", 0 ))
		$(".val-2").text( $( "#price-slider-range" ).slider( "values", 1 ))
	});
}
var currentSpecialOfferPage=0;
function showSpecialOfferPage2(direction)
{
	var fffliQt = 0;
	
	$("#featured-offers-list li").each(function (){
		$(this).addClass('hide');
		fffliQt++;
	});

	if (direction == 'next')
	{
		if (currentSpecialOfferPage <= (parseInt(fffliQt/5,10))) currentSpecialOfferPage++;
		else currentSpecialOfferPage = 0;
		if (specialOffers[currentSpecialOfferPage*5]  == undefined) currentSpecialOfferPage = 0;
		for (var i = currentSpecialOfferPage*5; i < ((currentSpecialOfferPage*5)+5); i++) $('#offer'+specialOffers[i]).removeClass('hide');
	}
	else if (direction == 'prev')
	{
		if (currentSpecialOfferPage == 0) currentSpecialOfferPage = parseInt(fffliQt/5,10);
		else currentSpecialOfferPage--;
		for (var i = currentSpecialOfferPage*5; i < ((currentSpecialOfferPage*5)+5); i++) $('#offer'+specialOffers[i]).removeClass('hide');
	}

	registerSpecialOfferShown();
	
	return false;
}

function setSearchResultViewType(viewType)
{
	setCookie('searchResultViewType', viewType, {'expires': 3600*24*365, 'path' : '/'});
    if(viewType=='srvtm'){
        var t=location.href;
        location.href=t.substr(0, t.indexOf('&offset='));;
    }
        else
	location.reload();
}

function setSearchResultLimit(limit)
{
	setCookie('searchResultLimit', limit, {'expires': 3600*24*365, 'path' : '/'});
    
        var t=location.href;
        location.href=t.substr(0, t.indexOf('&offset='));;
    
}
function setSearchResultLimitAg(limit)
{
	setCookie('searchResultLimitAg', limit, {'expires': 3600*24*365, 'path' : '/'});
    
        var t=location.href;
        location.href=t.substr(0, t.indexOf('&offset='));;
    
}


function initSearchOptions()
{
	$('table.other-options input[type="checkbox"]').each(function (index, element){
		if (element.checked) options[element.name] = true;
	});
	
	$('#roomsQtUl li.selected').each(function (index, element) {
		rooms[element.id.replace(/([a-z]+)_/, "")] = true;
	});
	
	$('#roomsQtUl td.current').each(function (index, element) {
		rooms[element.id.replace(/([a-z]+)_/, "")] = true;
	});

	if ($("#squareFrom").val()) squareValues.from = $("#squareFrom").val();
	if ($("#squareTo").val()) squareValues.to = $("#squareTo").val();
}

function searchTypeSwitcherCallback(element)
{
	$($("a",$(element)).attr('href')+' li').each(function() {
		if (this.className == 'active') searchFormSwitcherCallback(this);
	});
}



function searchFormSwitcherCallbackSimple(element)
{
	var elsVisibility = {
			'#rqtli_-1' : {
				'hideList' : ['/novoe'],
				'showList' : ['/flat', '/flat_arenda', '/arenda_sutki']
			},
			'#rqtBlock' : {
				'hideList' : ['/zagorod' ,'/zagorod_arenda', '/zagorod_land', '/cre', '/cre_arenda', '/zagorod_sutki'],
				'showList' : ['/flat', '/flat_arenda', '/arenda_sutki', '/novoe']
			},
			
			'#squareBlock' : {
				'hideList' : ['/flat', '/flat_arenda', '/arenda_sutki', '/novoe', '/zagorod' ,'/zagorod_arenda', '/zagorod_land', '/zagorod_sutki'],
				'showList' : ['/cre' ,'/cre_arenda']
			},
			'#optionsBlock' : {
				'hideList' : ['/flat', '/flat_arenda', '/arenda_sutki', '/novoe', '/zagorod' ,'/zagorod_arenda', '/zagorod_land', '/zagorod_sutki'],
				'showList' : ['/cre' ,'/cre_arenda']
			},
			'#priceBlock' : {
				'hideList' : ['/cre' ,'/cre_arenda'],
				'showList' : ['/arenda_sutki', '/zagorod_sutki', '/flat', '/flat_arenda', '/novoe', '/zagorod', '/zagorod_land', '/zagorod_arenda']
			}
		};
	if (idRegion == 11 || idRegion == 14)
	{
		elsVisibility['#distanceBlock'] = {
		'hideList' : ['/flat', '/flat_arenda', '/arenda_sutki', '/novoe', '/cre', '/cre_arenda'],
		'showList' : ['/zagorod' ,'/zagorod_arenda', '/zagorod_land', '/zagorod_sutki']
		};
	}
	else
	{
		elsVisibility['#distanceBlock'] = {
				'hideList' : ['/flat', '/flat_arenda', '/arenda_sutki', '/novoe', '/cre', '/cre_arenda','/zagorod' ,'/zagorod_arenda', '/zagorod_land', '/zagorod_sutki'],
				'showList' : []
				};
		elsVisibility['#squareBlock'] = {
				'hideList' : ['/flat', '/flat_arenda', '/arenda_sutki', '/novoe'],
				'showList' : ['/cre' , '/cre_arenda','/zagorod' ,'/zagorod_arenda', '/zagorod_land', '/zagorod_sutki']
			};
	}
	
	var currentFormURI = $(element).attr('href');
	currentFormURI = currentFormURI.substr(0, (currentFormURI.length-1));
    globalURI = currentFormURI;
    for(var elId in elsVisibility)
	{
		if (elsVisibility[elId].hideList !== undefined) for (var idCategory in elsVisibility[elId].hideList) if (elsVisibility[elId].hideList[idCategory] == currentFormURI) $(elId).hide();
		if (elsVisibility[elId].showList !== undefined) for (var idCategory in elsVisibility[elId].showList) if (elsVisibility[elId].showList[idCategory] == currentFormURI) $(elId).show();
	}

    id = priceLimits[currentFormURI].id;
	document.getElementById('idCategory').value = id;
	$('#sqpm').html(priceLimits[currentFormURI].sqpm);
	arendaFlag = priceLimits[currentFormURI].arenda_flag;
	sutkiFlag = priceLimits[currentFormURI].sutki_flag;
	squareValues.from = false;
	squareValues.to = false;
	$('#regionSelector option').removeAttr('selected');
	$('#region'+priceLimits[currentFormURI].default_region).attr('selected','selected');
	document.getElementById('priceFrom').value = currentPriceFrom;
	document.getElementById('priceTo').value = currentPriceTo;
	document.getElementById('distanceFrom').value='';
	document.getElementById('distanceTo').value='';
	document.getElementById('squareFromSimple').value='';
	document.getElementById('squareToSimple').value='';
	
	initRoomsQtList();
	initSearchOptionsObject();
	setRegionSimple(document.getElementById('regionSelector'));
	$('#rqtBlock td').removeClass('current');
	//$('.csl-footer-menu ul').hide();
	//$('#category_'+id).show();
	//setCounter();
}

function searchFormSwitcherCallback(element)
{

	var elsVisibility = {
		'#rqtli_-1' : {
			'hideList' : ['/novoe'],
			'showList' : ['/flat', '/flat_arenda', '/arenda_sutki']
		},
		'#rqtBlock' : {
			'hideList' : ['/zagorod' ,'/zagorod_arenda', '/zagorod_land', '/novoe', '/cre', '/cre_arenda', '/zagorod_sutki'],
			'showList' : ['/flat', '/flat_arenda', '/arenda_sutki', '/novoe']
		},
		'#distBlock' : {
			'hideList' : ['/flat', '/flat_arenda', '/arenda_sutki', '/novoe', '/cre', '/cre_arenda'],
			'showList' : ['/zagorod' ,'/zagorod_arenda', '/zagorod_land', '/zagorod_sutki']
		},
		'#urFullBlock' : {
			'hideList' : ['/flat', '/flat_arenda', '/arenda_sutki', '/novoe', '/zagorod' ,'/zagorod_arenda', '/zagorod_land', '/zagorod_sutki'],
			'showList' : ['/cre' ,'/cre_arenda']
		},
		'#uhrSearchFlags' : {
			'hideList' : ['/flat', '/flat_arenda', '/arenda_sutki', '/novoe', '/zagorod' ,'/zagorod_arenda', '/zagorod_land', '/zagorod_sutki'],
			'showList' : ['/cre' ,'/cre_arenda']
		},
		'#suqareAndOptions' : {
			'hideList' : ['/cre' ,'/cre_arenda'],
			'showList' : ['/flat', '/flat_arenda', '/arenda_sutki', '/novoe', '/zagorod' ,'/zagorod_arenda', '/zagorod_land', '/zagorod_sutki']
		},
		'#squareBlock' : {
			'hideList' : ['/zagorod_land', '/zagorod' , '/zagorod_arenda', '/zagorod_sutki'],
			'showList' : ['/flat', '/flat_arenda', '/arenda_sutki', '/novoe', '/cre', '/cre_arenda']
		},
		'#ownerBlock' : {
			'hideList' : ['/zagorod', '/zagorod_land', '/zagorod_arenda', '/arenda_sutki', '/zagorod_sutki', '/cre' ,'/cre_arenda'],
			'showList' : ['/flat', '/flat_arenda', '/novoe']
		},
		'#soNewBlock' : {
			'hideList' : ['/arenda_sutki', '/zagorod_sutki', '/cre' ,'/cre_arenda'],
			'showList' : ['/flat', '/flat_arenda', '/novoe', '/zagorod', '/zagorod_land', '/zagorod_arenda']
		},
		'#squareBlockHouses' : {
			'hideList' : ['/flat', '/flat_arenda', '/novoe', '/arenda_sutki','/cre' ,'/cre_arenda', '/zagorod_land'],
			'showList' : ['/zagorod', '/zagorod_arenda', '/zagorod_sutki']
		},
		'#squareBlockLand' : {
			'hideList' : ['/flat', '/flat_arenda', '/novoe', '/arenda_sutki','/cre' ,'/cre_arenda', '/zagorod', '/zagorod_arenda', '/zagorod_sutki'],
			'showList' : [ '/zagorod_land']
		}
	}
	
	var currentFormURI = $("a",$(element)).attr('href');
	currentFormURI = currentFormURI.substr(0, (currentFormURI.length-1));
    globalURI = currentFormURI;
    //globalURI = globalURI(globalURI);
	currentPriceFrom = priceLimits[currentFormURI].min;
	currentPriceTo = priceLimits[currentFormURI].max;
	$("#price-slider-range").slider('destroy');
	initPriceSlider();
	$("#sliderPriceUnit").html((priceLimits[currentFormURI].pm !== undefined ? priceLimits[currentFormURI].pm : 'млн.')+'&nbsp;рублей');

	for(var elId in elsVisibility)
	{
		if (elsVisibility[elId].hideList !== undefined) for (var idCategory in elsVisibility[elId].hideList) if (elsVisibility[elId].hideList[idCategory] == currentFormURI) $(elId).hide();
		if (elsVisibility[elId].showList !== undefined) for (var idCategory in elsVisibility[elId].showList) if (elsVisibility[elId].showList[idCategory] == currentFormURI) $(elId).show();
	}

	document.getElementById('idCategory').value = priceLimits[currentFormURI].id;
	squareValues.from = false;
	squareValues.to = false;
	document.getElementById('priceFrom').value = currentPriceFrom;
	document.getElementById('priceTo').value = currentPriceTo;
	document.getElementById('distanceFrom') ? (document.getElementById('distanceFrom').selectedIndex = 0) : false;
	document.getElementById('distanceTo') ? (document.getElementById('distanceTo').selectedIndex = 0) : false;

	initRoomsQtList();
	initSearchOptionsObject();
	subRegionsChecked = new Array();

	$('#rqtBlock li').each(function () {
		$(this).removeClass('selected');
	});

	$('.dropdown_toggle span').each(function () {
		this.innerHTML = '&nbsp;';
	});

	$('#suqareAndOptions input[type="checkbox"], #uhrSearchFlags input[type="checkbox"]').each(function() {
		this.checked = false;
	});

	if (currentFormURI.indexOf('/zagorod') === 0)
	{
		idRegionUPD = idRegionUPD_Region;
		regionTitleUPD = regionTitleUPD_Region;
	}

	regionActiveMod = true;
	setRegion(idRegionUPD, regionTitleUPD);
}

function initRegionUPD(idRegion, Title, idRegion_Region, Title_Region){
    idRegionUPD = idRegion||idRegionUPD;
    regionTitleUPD = Title||regionTitleUPD;
    idRegionUPD_Region = idRegion_Region||idRegionUPD_Region;
    regionTitleUPD_Region = Title_Region||regionTitleUPD_Region;
    regionActiveMod = true;
    setRegion(idRegion, Title);
}

function setOfferBookmark(idOffer, action)
{
	$.post('/notepad/crud.php', {
		'idOffer' : idOffer,
		'action' : action
	}, function (data) {
		$('#offerBookmarksQt').text(data);
		if (notepadReloadLocation) location.reload();
	});

	$('#deleteLink'+idOffer).toggleClass('hide');
	$('#createLink'+idOffer).toggleClass('hide');

	if (action == 'delete')
	{
		$('#uncompareLink'+idOffer).addClass('hide');
		$('#compareLink'+idOffer).removeClass('hide');
	}

	return false;
}

function compareOffer(idOffer, showModal)
{
	$.post('/notepad/crud.php', {
		'idOffer' : idOffer,
		'action' : 'compare'
	}, function (data) {
		$('#offerBookmarksQt').text(data);
		if (notepadReloadLocation) location.reload();
		if (showModal) showCompareList();
	});

	$('#compareLink'+idOffer).toggleClass('hide');
	$('#uncompareLink'+idOffer).toggleClass('hide');
	$('#iCompareLink'+idOffer).css('display', 'block');
	$('#iUncompareLink'+idOffer).css('display', 'none');
	$('#createLink'+idOffer).addClass('hide');
	$('#deleteLink'+idOffer).removeClass('hide');
	
	return false;
}

function hideComparedOffer(idOffer)
{
	$('.idOffer'+idOffer).hide();
	compareOffer(idOffer, false);
}

function showCompareList()
{
	$.post('/notepad/compare.php', {'globalURI' : globalURI+'/'}, function (cmpData) {
		$('#compareOfferList span').html(cmpData);
		$('#compareOfferList').jqmShow();
	});
}

function showSpecialOfferPage(direction)
{
	var liQt = 0;
	
	$("#featured-offers-list li").each(function (){
		$(this).addClass('hide');
		liQt++;
	});

	if (direction == 'next')
	{
		if (specialOffers[currentSpecialOfferPage*4]  == undefined) currentSpecialOfferPage = 0;
		for (var i = currentSpecialOfferPage*4; i < ((currentSpecialOfferPage*4)+4); i++) $('#offer'+specialOffers[i]).removeClass('hide');
		if (currentSpecialOfferPage <= (Math.round(liQt/4))) currentSpecialOfferPage++;
		else currentSpecialOfferPage = 0;
	}
	else if (direction == 'prev')
	{
		if (currentSpecialOfferPage == 0) currentSpecialOfferPage = Math.round(liQt/4)- currentSpecialOfferPage - 1;
		else currentSpecialOfferPage--;
		for (var i = currentSpecialOfferPage*4; i < ((currentSpecialOfferPage*4)+4); i++) $('#offer'+specialOffers[i]).removeClass('hide');
	}

	registerSpecialOfferShown();
	
	return false;
}

function registerSpecialOfferShown()
{
	var shownOffers = new Array();
	var registerOffers = new Array();
	
	$("#featured-offers-list li").each(function() {if (!$(this).hasClass('hide')) shownOffers.push(this.id.match(/([0-9]+)/)[0]+':'+$(this).hasClass('u_adv'));});

	for (var key in shownOffers)
	{
		if (specialOffersShown[shownOffers[key]] === undefined) registerOffers.push(shownOffers[key]);
		specialOffersShown[shownOffers[key]] = true;
	}

	if (registerOffers.length < 1) return;

	$.post('/srv/shownso.php', {
		'idOfferList' : registerOffers
		}, function (data) {}
	);
}

function addSpecialService(idOffer, action, element, resultModal, bonus)
{
	var modalMapping = {
		'mark' : '.modal-advpick',
		'raise' : '.modal-advup',
		'update' : '.modal-advdt'
	};
	
	$.post('/srv/offer.php', {
		'idOffer' : idOffer,
		'action' : action,
        'bonus' : bonus
		}, function (data) {
			var offerResponse = eval('('+data+')');
			if (offerResponse.result)
			{
                $("#currentAccountBalance").text(offerResponse.balance+' '+getDeclension(parseInt(offerResponse.balance), new Array('рубль', 'рубля', 'рублей')));
                
				if (action == 'mark')
				{
					$('#srIdOffer'+idOffer).addClass('featured-item');
					$('#srIdOffer'+idOffer).addClass('star-mark');
					$(element).hide();
				}
				else if (action == 'raise' || action == 'update')
				{
					if (resultModal)
					{   
                        if (!offerResponse.transaction) 
                        {
                            $(modalMapping[action]+'-result .date-limit-hide').hide();
                            $(modalMapping[action]+'-result .date-updated-hide').show();
                            $(modalMapping[action]+'-result .time').text(offerResponse.timestamp);
                        }
                        else
                        {
                            $(modalMapping[action]+'-result .date-limit-hide').show();
                            $(modalMapping[action]+'-result .date-updated-hide').hide();
                        }
						$(modalMapping[action]+'-result span.hintOfferId').text(idOffer);
						$(modalMapping[action]+'-result').jqmShow();
					}
					else
					{
						var strLocation = location.href;
						location.href = strLocation.replace(/\&offset\=[0-9]/, '');
					}
				}
			}
			else
			{
                $(modalMapping[action]+' span.hintOfferId').text(idOffer);
                if (!offerResponse.balance) 
                    {
                        $(modalMapping[action]+' .update-hide').hide();
                        $(modalMapping[action]+' .idClient').text(offerResponse.timestamp);
                    }
				
				$(modalMapping[action]).jqmShow();
			}
		}
	);

	return false;
}

function setCountry(select)
{
	document.location.href='http://'+select.value+'.kvadroom.ru'+globalURI+'/';
}

function setRegionSimple(select)
{
	simpleSearchFlag=true;
	clearCheckedSubregions();
    var idRegion = select.value;
	document.getElementById('idRegion').value = idRegion;
    regionActiveMod = !regionActiveMod;	
    currentIdRegion = idRegion;
    setCounter();
    if (idRegion == 11 || idRegion == 14)
    {
	    $.post('/srv/mapsubregions.php', {
	            'idRegion' : idRegion,
	            'globalURI' : globalURI+'/'
	        },
	        function(data) {//console.log(data);
	            var mrResult = eval('('+data+')');
	            $(".modal-subway-selection .modal-title").text(mrResult.title);
	            $("#subway-list .clearfix").html(mrResult.subRegions);
	            $("#subway-map").html(mrResult.map);
	            $(".modal-subway-selection .subway-lines h3").text(mrResult.directionTitle);
	            $(".modal-subway-selection .subway-lines-menu").html(mrResult.directionList);
	            subRegionsListInit();
	            subRegionDirectionsInit();
	            eval(mrResult.directions);
	        }
	    );
    }
    else
    {
    	
        fillSubRegionsBlock(false);
        
        $("<div></div>").load('/srv/mapsubregions.php #mapSubRegions', {
				'idRegion' : idRegion,
				'globalURI' : globalURI+'/'
			},
            function() {
                $("#mapSubRegions").html($("#mapSubRegions",this).html());
            }
            );
    }

    

    var srTrigger = $(".cs-subway-selection-trigger");
    var srtTitle = 'выбрать';
    var srtImg = 'icon-sr.gif';

    if (idRegion == 11 || idRegion == 190)
    {	
        srtTitle = 'выбрать';
        srtImg = 'icon-m.gif';
        $("#subway-mapli").removeClass('hide');       
        $("#subway-map").removeClass('hide');
        $("#subway-mapli").css('display','block');       
        $("#subway-map").css('display','block');
        $(".tabbed-selection-menu li").removeClass('active');
        $("#subway-mapli").addClass('active');
        $("#subway-list").css('display','none');       
        $(".selection-list .col4of4").css("display","block");
        $(".selection-list .col4of4").css("width","25%");
        $(".selection-list .col123of4").css("width","75%");
    }
    else if (idRegion == 14)
    {
        if ((globalURI == '/zagorod' || globalURI == '/zagorod_land' || globalURI == '/zagorod_arenda' || globalURI == '/zagorod_sutki'))
        {
            srtTitle = 'выбрать';
            srtImg = 'icon-hw.gif';
            $(".selection-list .col4of4").css("display","none");
            $(".selection-list .col4of4").css("width","0%");
            $(".selection-list .col123of4").css("width","100%");
        }else
        
        {
             $(".selection-list .col4of4").css("display","block");
        $(".selection-list .col4of4").css("width","25%");
        $(".selection-list .col123of4").css("width","75%");
            
            
        }
       // else
        {
            $("#subway-list").removeClass('hide');
            $("#subway-map").addClass('hide');
            $("#subway-mapli").addClass('hide');
            $("#subway-list").css('display','block'); 
            $("#subway-map").css('display','none'); 
            $("#subway-mapli").css('display','none'); 
            $("#subway-list").toggleClass('active');
            
        }
    }
    
    var imgSrc = document.getElementById('subrMapIcon').src.split('/');
    imgSrc.pop();
    imgSrc.push(srtImg);
    document.getElementById('subrMapIcon').src = imgSrc.join('/');
    document.getElementById('subrMapTitle').innerHTML = srtTitle;
    
	return false;
}

function formatInput(textField)
{
    var currentNumber = textField.value.replace(/[^0-9]/, '').split('');
    var currentValue = new Array();
    var lastIndex = currentNumber.length-1;
    var counter = 0;
    
    for (var i = 0; i < currentNumber.length; i++) 
    {
        if (currentNumber[lastIndex-i] && currentNumber[lastIndex-i] != ' ') 
        {
            if (counter == 3)
            {
                counter = 0;
                currentValue.push(' ');
            }
            
            currentValue.push(currentNumber[lastIndex-i]);
            counter++;
        }
    }
    
    textField.value = currentValue.reverse().join('');
    var divider;
    divider=(arendaFlag==true)?1000:1000000;
    if (sutkiFlag) divider = 1;
    priceTo = document.getElementById('priceToSimple').value;
    priceTo = (priceTo)?priceTo:'0';
    priceFrom = document.getElementById('priceFromSimple').value;
    priceFrom = (priceFrom)?priceFrom:'0';
    
    currentPriceFrom = (parseInt(priceFrom.match(/\d+/g).join(''))/divider).toFixed(7);
    currentPriceTo = (parseInt(priceTo.match(/\d+/g).join(''))/divider).toFixed(7);
//    console.log('priceFrom' + priceFrom, 'priceTo' + priceTo, 'currentPriceFrom' + currentPriceFrom, 'currentPriceTo' + currentPriceTo);
    
    
    setCounter();
}

initRoomsQtList();
initSearchOptionsObject();


$(document).ready(function(){
	if (simpleSearchFlag == true)
	{
		initSquaresSimple($('#squareFromSimple').attr('id'),$('#squareFromSimple').val(),true);
		initSquaresSimple($('#squareToSimple').attr('id'),$('#squareToSimple').val(),true);
	}
    if($("#idCategory").length>0)
	setCounter();
});
function trololo(){};
$(document).ready(function(){
    if(($(".clicknext").length>0)||($(".clickprev").length>0))
    $(document).keyup(function(e){
                if(e.ctrlKey){
                    if(e.keyCode==37)clickprev();
                    if(e.keyCode==39)clicknext();
                }
            })
    
    
});

function clicknext(){
        var t=$(".clicknext").attr("href");
        if(t!=undefined)
            window.location=t;
    }
    function clickprev(){
        var t=$(".clickprev").attr("href");
        if(t!=undefined)
            window.location=t;
    }
