// не трогать :)
var IE = false;
var IE6 = false;

// время появления объектов
var shadowSpeed = 300;
var windowsSpeed = 300;

$(document).ready(function(){

	// фокус и потеря фокуса текстовых полей с подсказками
	$(".autohiding").each( function() {
		$(this).val($(this).attr("title"));
	}).focus( function() {
		if ( $(this).hasClass("pure") ) {
			$(this).val("");
			$(this).removeClass("pure");
		}
	}).blur( function() {
    	if ( trim($(this).val()) == "" ) { 
       		$(this).val( $(this).attr("title") );
			$(this).addClass("pure");
    	}
	});
	
	// очищаем формы от подсказок перед отправкой
	$("form").submit(function(){
		$(".pure").val("");
	});	
	
	// hover на триггере формы
	
	makeHover( ".show-form span, .add span, .add-order-pop span, .add-order span, .add-request span", "hover" );
	
	// Включаем просмотрщик изображений
	
	if ( $(".photoalbum").length )
		$(".photoalbum a[rel^='prettyPhoto']").prettyPhoto({theme:'facebook'});
	
	// close window button
	
	$(".window-close").click(function(){
		hideWindow( $(this).parentsUntil(".window").parent().attr("class").replace("window ", "") );
		return false;
	});

	// windows are appearing
		
	$(".add span, .show-form span, .show-window").click(function(){
		showWindow( "form-window" );
		return false;
	});	
	// the same as previous but with window scrolling 
	$(".show-window").click(function(){
		showWindow( "form-window" );
		//$("html,body").animate({
		//	scrollTop:0}, 2000
		//);
		window.scrollTo(0,0);
		return false;
	});
	
	
	$(".add-order span, .add-order-pop span").click(function(){
		showWindow( "ord-window" );
		return false;
	});
	
	$(".add-request span").click(function(){
		showWindow( "request-window" );
		window.scrollTo(0,0);
		return false;
	});
	
	
	//$("a.dop-info").click(function () { 
		//alert("Внимание! Все статьи данного сайта написаны лично сотрудниками EstateService и являются собственностью компании. Копирование материалов сайта запрещено, охраняется Законом об авторских правах, а также негативно отразится на продвижении вашего сайта в связи с политикой основных поисковых машин на предмет пессимизации в выдаче страниц сайтов с неуникальным контентом. Свяжитесь с нами для согласования вида  и условий размещения наших материалов."); 
		//return false;
	//})
	

	if(jQuery().msDropDown) {
		$("select.combobox-white").msDropDown({showIcon:false, mainCSS: "dd dd-listing-browse"});
	}
});

// при нажатии на ссылку "ознакомьтес с допол. инфой" вылазит табличка с текстом
getElementsByClassName('rights')["0"].getElementsByTagName("a")[0].onclick=function(){
	alert("Внимание! Все статьи данного сайта написаны лично сотрудниками EstateService и являются собственностью компании. Копирование материалов сайта запрещено, охраняется Законом об авторских правах, а также негативно отразится на продвижении вашего сайта в связи с политикой основных поисковых машин на предмет пессимизации в выдаче страниц сайтов с неуникальным контентом. Свяжитесь с нами для согласования вида  и условий размещения наших материалов."); 
	return false;
};


function makeHover( object, className )
{// добавляет к объекту класс при наведении мыши
	
	$("" + object).hover(
		function(){
			$(this).addClass(className);
		},
		function(){
			$(this).removeClass(className);
		}
	);	
}


//shows the window
function showWindow( windowClass )
{
	if ( IE6 )
	{
		$(".search").addClass("search-under");
		$(".count_objects_per_page").addClass("search-under");
	}
	
	shadow( 0.8 );
	
	if ( IE )
		setTimeout( '$(".' + windowClass + '").css("visibility", "visible")', windowsSpeed );
	else
		$("." + windowClass).css("visibility", "visible").animate( { opacity: 1 }, windowsSpeed );
}

//hides the window
function hideWindow( windowClass )
{
	shadow( 0 );
	
	if ( IE )
		$("." + windowClass).css("visibility", "hidden");	
	else {
		$("." + windowClass).animate( { opacity: 0 }, windowsSpeed );
		setTimeout( '$(".' + windowClass + '").css("visibility", "hidden")', windowsSpeed );
	}
	
	if ( IE6 )
	{
		$(".search").removeClass("search-under");
		$(".count_objects_per_page").removeClass("search-under");
	}
}

//smoothly changes shadow opacity to the "value"-argument
function shadow( value )
{
	/*
	if ( value > 0 && $(".shadow").css("display") == "block" ) return;
	if ( !value && $(".shadow").css("display") == "none" ) return;
	
	$(".shadow").css("display", "block").animate( { opacity: value }, shadowSpeed );
	if ( !value )
		setTimeout('$(".shadow").css("display", "none")', shadowSpeed);
	*/
	
	if ( value > 0 && $(".shadow").css("visibility") == "visible" ) return;
	if ( !value && $(".shadow").css("visibility") == "hidden" ) return;
	
	$(".shadow").css("visibility", "visible").animate( { opacity: value }, shadowSpeed );
	if ( !value )
		setTimeout('$(".shadow").css("visibility", "hidden")', shadowSpeed);
}


function ltrim(s)
{
	var ptrn = /\s*((\S+\s*)*)/;
	return s.replace(ptrn, "$1");
}

function rtrim(s)
{
	var ptrn = /((\s*\S+)*)\s*/;
	return s.replace(ptrn, "$1");
}

function trim(s) 
{
	return ltrim(rtrim(s));
}

// функция имитирующая "зависание"
function sleep(milliseconds) {
  var start = new Date().getTime();
  for (var i = 0; i < 1e7; i++) {
    if ((new Date().getTime() - start) > milliseconds){
      break;
    }
  }
}

function getElementsByClassName(classname, node) {
    if(!node) node = document.getElementsByTagName("body")[0];
    var a = [];
    var re = new RegExp('\\b' + classname + '\\b');
    var els = node.getElementsByTagName("*");
    for(var i=0,j=els.length; i<j; i++)
    if(re.test(els[i].className))a.push(els[i]);
    return a;
}

