//--------------------------------// Browsers
opera = (window.opera) ? true : false;
ie = (document.all && !opera) ? true : false;
dom = (document.getElementById)? true : false;


var version = 7;
var flash = false;
if (navigator.plugins) {
	if(navigator.plugins["Shockwave Flash"]) {
		var re = new RegExp("Flash\\s(\\d*)","ig");

		plugin = navigator.plugins["Shockwave Flash"].description;
		var arr= re.exec(plugin);
		flash = arr[1] >= version;
	} else {
		if ((navigator.userAgent.indexOf('MSIE') != -1)&&(navigator.userAgent.indexOf('Win') != -1)) {
		  	var vb = '<script language="vbscript">\n'
			+ ' on error resume next\n'
			+ ' flash = IsObject(CreateObject('
			+ ' "ShockwaveFlash.ShockwaveFlash.' + version + '"))\n'
			+ '<' + '/script>';
			document.write(vb);
		}
	}
}

var current_dropdown;
var timer = null;

function ShowPhoto(url, width, height) {
	var scroll = (screen.width < 1000) ? "yes" : "no";
	var left = (self.screen.width >> 1) - (width >> 1);
	var top = (self.screen.height >> 1) - (height >> 1);
	var param = 'left='+left+',top='+top+',width='+width+',height='+height+',';
	window.open(url, '_blank', param+'menubar=no,scrollbars=' + scroll + ',status=no');
}

function GetObj(objId) {
	return document.getElementById(objId);
}

function GetAbsoluteTop(obj_id) {
   var obj;
   var result = 0;
   obj = GetObj(obj_id);
   while( obj.tagName != 'BODY' ) {
     result += obj.offsetTop;
     obj = obj.offsetParent;
   }
   return result;
}

function GetAbsoluteLeft(obj_id) {
   var obj;
   var result = 0;
   obj = GetObj(obj_id);
   while( obj.tagName != 'BODY' ) {
     result += obj.offsetLeft;
     obj = obj.offsetParent;
   }
   return result;
}

function SetFavorites() {
	window.external.AddFavorite('http://n-s.spb.ru', 'Невский синдикат')
}
//--------------------------------// Menu Functions
function hide_menu(id) {
	if(id_menu!='' ) {
		timer=window.setTimeout("GetObj('div"+id+"').style.visibility='hidden';id_menu='';",400);
	}
}

var id_menu = 0;
var id_div = 0;
var id_submenu = 0;

function menu_on(id,is_parent) {
	var div;
	if(id_menu!=0){
		id_menu = 0;
	}
	if(id_div!=0){
		if(id_div != id) {
			GetObj("div"+id_div).style.display="none";
			id_div = 0;
		}
	}
	id_menu = id;
	if(is_parent != 0){
		div = GetObj("div"+id);
		if(id.charAt(0)=='p') {
			// Pages
			div.style.top = GetAbsoluteTop('menu'+id) + 28 + 'px';
			div.style.left = GetAbsoluteLeft('menu'+id) - 12 + 'px';
		} else {
			// Menu
			div.style.width = GetObj('menu'+ id).parentNode.clientWidth - 11 + 'px';
			div.style.top = GetAbsoluteTop('menu'+id) + 48 + 'px';
			fix = (!ie && !opera) ? 0 : 4;
			div.style.left = GetAbsoluteLeft('menu'+id) + fix + 'px';
		}
		div.style.display="block";
		id_div=id;
	}
	clearTimeout(timer);
}

function menu_off(id,is_parent) {
	if(is_parent != 0){
		timer = window.setTimeout(" GetObj('div"+id+"').style.display='none'; id_div = 0; id_menu = 0",400);
	}
}

function submenu_off () {
	timer = window.setTimeout("GetObj('div"+id_div+"').style.display='none';id_div=0;id_menu = 0;",400);
}

function submenu_on() {
	if(id_div!=0){
		GetObj("div"+id_div).style.display = 'block';
	}
	clearTimeout(timer);
}

//--------------------------------// Check Mail Form
function CheckMail(form){
	return (CheckField(form, "email", "Вы не ввели 'e-mail'", 3, 3, 200));
}

//--------------------------------// Print Flash
function PrintFlash(path, wid, heg, pic, lnk, paramz) {
	if(flash){
		if(lnk){
			if(paramz != ''){
				paramz += '&';
			}
			paramz += 'link='+lnk;
		}

		document.open();
		/*////document.write ('<div width="' + wid + '" height="' + heg + '" style="position:relative">');*/
		document.write ('<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version="6,0,0,0" width="' + wid + '" height="' + heg + '">');
		document.write ('<param name=movie value="' + path + '">');
		document.write ('<param name="quality" value="high">');
		document.write ('<param name="wmode" value="transparent">');
		document.write ('<param name="menu" value="false">');
		document.write ('<param name="FlashVars" value="' + paramz + '">');
		document.write ('<embed src="' + path + '" wmode="transparent" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" width="' + wid + '" height="' + heg +'" FlashVars="' + paramz + '" menu="false"></embed>');
  		document.write ('</object>');
		/*if (lnk != '' ) {document.write ('<div style="position:absolute;top:0;left:0;right:0;bottom:0;z-index:999;cursor:pointer" onclick="window.open(\'' + lnk + '\')"></div>');}*/
		/*document.write("</div>");*/
		document.close();
	} else {
		document.open();
		if(lnk != '') document.write ('<a href="'+ lnk +'">');
		document.write('<img src="'+ pic +'" width="'+ wid +'" height="'+ heg +'">')
		if(lnk != '') document.write ('</a>');
		document.close();
	}
}

//--------------------------------// Get Splitted Link
function GetLink(splited_link,target) {
	newlink = unescape(splited_link).replace(/\|/g,"");
	if(!target || target == 1) {
		newwin = window.open(newlink,"_blank","toolbar=1,scrollbars=1,status=1,location=1,menubar=1,resizable=1,personalbar=1");
		if (newwin) {
			newwin.focus();
		}
	} else {
		window.location = newlink;
	}
}

//--------------------------------// Slide
function Slide(id) {
	if(!(obj = document.getElementById(id)))
		return;

	if(!obj.style.display || obj.style.display == 'none')
		obj.style.display = 'block';
	else
		obj.style.display = 'none';
}

//--------------------------------// Realty Selection
function filterSelectAll(which, pref){
	var child = which.parentNode.parentNode.getElementsByTagName('li');
	for(var j=0; j<child.length; j++){
		var elements = child[j].getElementsByTagName('input');
		if(which.checked){
			elements[0].checked = true;
		}
		else{
			elements[0].checked = false;
		}
	}

	var name = which.parentNode.parentNode.parentNode.parentNode.getElementsByTagName('div');
	var labelall = child[0].getElementsByTagName('label');
	if(which.checked){
		name[0].innerHTML = 'Все';
		labelall[0].innerHTML = 'Снять всё';

	}
	else{
		name[0].innerHTML = 'Пусто';
		labelall[0].innerHTML = 'Выбрать всё';
	}
}

function filterSelectElement(which, pref){
	var child = which.parentNode.parentNode.getElementsByTagName('li');
	var in_cheked=0;
	var un_cheked=0;
	var checked_name;
	var labelel;
	for(var j=0; j<child.length; j++){
		if(j == 0){
			elementall = child[j].getElementsByTagName('input');
			continue;
		}
		var elements = child[j].getElementsByTagName('input');
		if(elements[0].checked){
			in_cheked++;
			labelel = child[j].getElementsByTagName('label');
			checked_name = labelel[0].innerHTML;
		}
		else{
			un_cheked++;
		}
	}

	var name = which.parentNode.parentNode.parentNode.parentNode.getElementsByTagName('div');
	var count = child.length-1;
	var labelall = child[0].getElementsByTagName('label');

	if(in_cheked == count){
		name[0].innerHTML = 'Все';
		elementall[0].checked = true;
	}
	else if(un_cheked == count){
		name[0].innerHTML = 'Пусто';
		elementall[0].checked = false;
	}
	else if(in_cheked == 1){
		name[0].innerHTML = checked_name;
		elementall[0].checked = false;
	}
	else{
		name[0].innerHTML = 'Фильтр';
		elementall[0].checked = false;
	}

	if(elementall[0].checked){
		labelall[0].innerHTML = 'Снять всё';
	}
	else{
		labelall[0].innerHTML = 'Выделить всё';
	}
}

/*function CheckDefaultValue(which){
	var input_tag = which.getElementsByTagName('input');
	var input_checked = false;
//	alert(input_tag[0].type);
	for(var j=0; j<input_tag.length; j++){
		if(input_tag[j].checked){
			input_checked = true;
			break;
		}
	}

	if(input_checked == false){
		input_tag[0].checked = true;
	}
}*/

opera = (window.opera) ? true : false;
ie = (document.all && !opera) ? true : false;
dom = (document.getElementById)? true : false;

var typesName = [
	'Квартиры: Новостройки',
	'Квартиры: Вторичный рынок',
	'Комнаты',
	'Загородные дома',
	'Загородные участки',
	'Коммерческие помещения', // temp
//	'Коммерческие: Новостройки',
//	'Коммерческие: Вторичный рынок',
	'Элитные квартиры',
	'Элитные загородные дома'
];

function getWindowWidth() {
	var windowWidth = 0;
	if (typeof(window.innerWidth) == 'number') {
		windowWidth = window.innerWidth;
	} else {
		if (document.documentElement && document.documentElement.clientWidth) {
			windowWidth = document.documentElement.clientWidth;
		} else {
			if (document.body && document.body.clientWidth) {
				windowWidth = document.body.clientWidth;
			}
		}
	}
	return windowWidth;
}

function getRelLeft(which) {
	var pos = which.offsetLeft;
	while (which.offsetParent != null) {
		which = which.offsetParent;
		pos += which.offsetLeft;
		if (which.tagName == 'BODY') break;
	} return pos;
}

function getRelTop(which) {
	var pos = which.offsetTop;
	while (which.offsetParent != null) {
		which = which.offsetParent;
		pos += which.offsetTop;
		if (which.tagName == 'BODY') break;
	} return pos;
}


function dropThis(which) {
	var drop = which.parentNode.getElementsByTagName('div')[1];

	if(current_dropdown && drop != current_dropdown) {
		hideThat(current_dropdown);
	}


	if(drop.style.display != 'block') {
		which.onmouseout = hideNextDiv;
		which.onmouseover = ShowNextDiv;
		showThis(drop);
	} else {
		hideThat(drop);
	}
}


function hideNextDiv(){
	next_div = this.parentNode.getElementsByTagName('div')[1];
	hideThis(next_div);
}

function ShowNextDiv(){
	if(current_dropdown && current_dropdown == this.parentNode.getElementsByTagName('div')[1]){
		next_div = this.parentNode.getElementsByTagName('div')[1];
		showThis(next_div);
	}
}


function showThis(which) {
	if (timer) clearTimeout(timer);

	showThat(which);

	base_el = which.parentNode.getElementsByTagName('div')[0];

	which.style.top = getRelTop(base_el) + 'px';
	if((getWindowWidth() - getRelLeft(base_el) - base_el.clientWidth) < which.clientWidth) {
		which.style.left = getRelLeft(base_el) - which.clientWidth - 4 + 'px';
	} else {
		which.style.left = getRelLeft(base_el) + base_el.clientWidth + 4 + 'px';
	}
}

function hideThis(which) {
	which.id = which.style.top + 'id';
	timer = window.setTimeout("el = document.getElementById('"+ which.id +"');hideThat(el);",1000);
}


function showThat(which) {
	current_dropdown = which;
	which.style.display = 'block';
	which.parentNode.getElementsByTagName('div')[0].style.background = '#DBEBFF url(/images/select-on.gif) 100% 50% no-repeat';
}

function hideThat(which) {
	which.style.display = 'none';
	which.parentNode.getElementsByTagName('div')[0].style.background = '#FFF url(/images/select-off.gif) 100% 50% no-repeat';
	current_dropdown = false;
}



function selectTree(which) {
	var radios = document.getElementsByName(which.name);
	for(var i=0; i<radios.length; i++) {
		var radio = radios[i];
		var childs = radio.parentNode.getElementsByTagName('ul');
		for(var j=0; j<childs.length; j++) {
			var checks = childs[j].getElementsByTagName('input');
			if(which != radio) {
				childs[j].style.display = 'none';
				for(var k=0; k<checks.length; k++) {
					checks[k].checked = false;
				}
			} else {
				childs[j].style.display = (which.checked) ? 'block' : 'none';
				for(var l=0; l<checks.length; l++) {
					checks[l].checked = (which.checked) ? true : false;
				}
			}
		}
	}
}

/*function CheckDefaultValueOnForm(which){
	alert(which);
	var radios = document.getElementsByName(which.name);
	for(var i=0; i<radios.length; i++) {
		var radio = radios[i];
		var childs = radio.parentNode.getElementsByTagName('ul');
		for(var j=0; j<childs.length; j++) {
			var checks = childs[j].getElementsByTagName('input');
			for(var l=0; l<checks.length; l++) {
				checks[l].checked = (which.checked) ? true : false;
			}
		}
	}
}
*/
function showType(which) {
	var typesTable = which.parentNode.parentNode.parentNode.parentNode.parentNode.getElementsByTagName('table');
	var typesRadio = [
		document.getElementById('newf'),
		document.getElementById('secf'),
		document.getElementById('room'),
		document.getElementById('house'),
		document.getElementById('plot'),
		document.getElementById('secc'), // temp
//		document.getElementById('newc'),
//		document.getElementById('secc'),
		document.getElementById('elf'),
		document.getElementById('elh')
	];
	for(var i=0; i<typesRadio.length; i++) {
		if(typesRadio[i].checked) {
			var selectedType = typesRadio[i].id;
			var selectedTypeNum = i;
			break;
		}
	}
	document.getElementById('selectType').innerHTML = typesName[selectedTypeNum];
	for(var j=0; j<typesTable.length; j++){
		if(typesTable[j].className.indexOf('options') != -1) {
			if(typesTable[j].className.split(' ')[1] == selectedType && (typesTable[j].className.split(' ')[2] == 'rent' || typesTable[j].className.split(' ')[2] == 'rs')){
				typesTable[j].style.display = 'block';
				SetRadioDefaultValue(typesTable[j]);
				add_div = document.getElementById('selection-add-div');
				if(add_div){
					GetAdditionalDiv(selectedType);
				}
			}
			else{
				typesTable[j].style.display = 'none';
			}
		}
	}
}


function SetRadioDefaultValue(typesTable){
	//расстановка значений по дефолту
//	alert(typesTable.className);
	div_elements = typesTable.getElementsByTagName('div');
	for(var k=0; k<div_elements.length; k++){
		input_el = div_elements[k].getElementsByTagName('input');
		input_label = div_elements[k].getElementsByTagName('label');
		if(input_el[0]){
			switch(input_el[0].type){
				case 'radio':
					if(CheckOnCheckedValue(input_el) == false){
						input_el[0].checked = true;
						div_elements[k-1].innerHTML = input_label[0].innerHTML;
						div_elements[k-1].style.background = '#FFF url(/images/select-off.gif) 100% 50% no-repeat';
					}
				break;
				case 'checkbox':
					CheckOnOneValue(input_el, input_label, div_elements[k-1]);
				break;
			}
		}
	}
}

function CheckOnOneValue(input_array, input_label, div){
	if(input_array.length == 2){
		html = input_array[1].parentNode.innerHTML;
		input_array[1].parentNode.parentNode.innerHTML='<li>' + html + '</li>';
		div.innerHTML = input_label[0].innerHTML;
		div.onclick = function() {}
		div.style.background = '#FFF';
//		input_array[0].onclick = function() {}
//		input_array[0].disabled = true;
	}
}

function CheckOnCheckedValue(input_array){
	var yes_checked = false;
	for(var z=0; z<input_array.length; z++){
		if(input_array[z].checked == true){
			yes_checked = true;
			break;
		}
	}
	return 	yes_checked;
}

function dropOk(which) {
	var el = which.parentNode.parentNode.parentNode.parentNode.getElementsByTagName('div')[0];
	dropThis(el);
	showType(el);
}

function ShowFormeOnClickType(which){
	var el = which.parentNode.parentNode.parentNode.parentNode.getElementsByTagName('div')[0];
	showType(el);
}

function selectThis(which) {
	var name = which.parentNode.getElementsByTagName('label')[0].innerHTML;
	var select = which.parentNode.parentNode.parentNode.parentNode.getElementsByTagName('div')[0];
	if(which.checked) {
		select.innerHTML = name;
	}
}

function selectRS(which) {
	var options = which.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.getElementsByTagName('table');
	var currName = which.id.split('-')[0];
	var currRS = which.id.split('-')[2];
	for(var i=0; i<options.length; i++) {
		if(options[i].className.split(' ')[1] == currName && options[i].className.split(' ')[2] != 'rs') {
			if(currRS == '1') {
				if(options[i].className.split(' ')[2] == 'rent') {
					SetRadioDefaultValue(options[i]);
					options[i].style.display = 'block';
					add_div = document.getElementById('selection-add-div');
					if(add_div){
						GetAdditionalDiv(currName, 'rent');
					}
				} else {
					options[i].style.display = 'none'
				}
			} else {
				if(options[i].className.split(' ')[2] == 'rent') {
					options[i].style.display = 'none'
				} else {
					SetRadioDefaultValue(options[i]);
					options[i].style.display = 'block';
					add_div = document.getElementById('selection-add-div');
					if(add_div){
						GetAdditionalDiv(currName, 'sale');
					}
				}
			}
		}
	}
}

function selectLink(which) {
	var lnk = '';
	var type = which.parentNode.parentNode.parentNode.parentNode.className;
	lnk += type.split(' ')[1];
	if(type.split(' ')[1] != 'plot') {
		lnk += (type.split(' ')[2] == 'rent') ? '/rs/1' : '/rs/2';
	}
	var drops = which.parentNode.parentNode.parentNode.getElementsByTagName('ul');

	for(var i=0; i<drops.length; i++) {
		if(drops[i].className.indexOf('selectTree ') != -1){
			var sall = drops[i].getElementsByTagName('li')[0];
			if(sall && (sall.className.indexOf('all') != -1) && sall.getElementsByTagName('input')[0].checked) continue;

			var param = '/' + drops[i].className.split(' ')[1] + '/';
			var subparam = '';
			var checks = drops[i].getElementsByTagName('input');
			for(var j=0; j<checks.length; j++) {
				if(checks[j].checked) {
					subparam += checks[j].id.split('-')[2] + '|';
				}
			}
			if(subparam != ''){
				lnk += param;
				lnk += subparam;
				lnk = lnk.substring(0, (lnk.length - 1));
			}
		}
	}
	lnk += '/';
	var inputs = which.parentNode.parentNode.parentNode.getElementsByTagName('input');
	for(var k=0; k<inputs.length; k++) {
		if(inputs[k].type == 'text' && inputs[k].value != ' От' && inputs[k].value != ' До' && inputs[k].value != 'От' && inputs[k].value != 'До' && inputs[k].name != '') {
			lnk += inputs[k].name + '/' + inputs[k].value + '/';
		}
	}
	lnk = '/selection/tp/' + lnk;
//	alert(lnk);
	add_div = document.getElementById('selection-add-div');
	if(add_div){
		if(getElementByClassName('add '+type.split(' ')[1]+' '+type.split(' ')[2])){
			lnk = GetAdditionalProperties(type.split(' ')[1], type.split(' ')[2], lnk);
		}
	}
	window.location.href = lnk;
/*	var form = document.getElementById('selectForm');
	var txt = document.createElement('textarea');
		txt.style.display = 'none';
		txt.name = 'params';
		txt.value = 'tp/' + lnk;
	form.insertBefore(txt,null);
	form.action = '/selection';
	form.submit();*/
}

function GetAdditionalProperties(table_name, sale, lnk){
	var curr_table = getElementByClassName('add '+table_name+' '+sale);
	var drops = curr_table.getElementsByTagName('ul');
	for(var i=0; i<drops.length; i++) {
		if(drops[i].className.indexOf('selectTree ') != -1) {
			var param = '/' + drops[i].className.split(' ')[1] + '/';
			var subparam = '';
			var checks = drops[i].getElementsByTagName('input');
			for(var j=0; j<checks.length; j++) {
				if(checks[j].checked) {
					subparam += checks[j].id.split('-')[2] + '|';
				}
			}
			if(subparam != '') {
				lnk += param;
				lnk += subparam;
				lnk = lnk.substring(0, (lnk.length - 1));
			}
		}
	}
	lnk += '/';
	var inputs = curr_table.getElementsByTagName('input');
	for(var k=0; k<inputs.length; k++) {
		if(inputs[k].type == 'text' && inputs[k].value != ' От' && inputs[k].value != ' До' && inputs[k].value != 'От' && inputs[k].value != 'До' && inputs[k].name != '') {
			lnk += inputs[k].name + '/' + inputs[k].value + '/';
		}
	}

	return lnk;
}

function getElementByClassName(class_name){
	var inc=0;
	var alltags=document.all ? document.all : document.getElementsByTagName("*");
	for (i=0; i<alltags.length; i++){
		if(alltags[i].className==class_name){
			return alltags[i];
		}
	}
	return false;
}

//--------------------------------// Map Flags
var selected_object = false;

function setFlags() {
	if(document.getElementById('map')) {
		for(hobj in flags) {
			var el = flags[hobj];
			if(!checkF(el)) continue;
			var img_num = '' + el.type + el.status;
			if(selected_object && selected_object == el.id) {
				img_num = el.type + 'c';
			}
			var pic = document.createElement('img');
				pic.src = '/images/flag-' + img_num + '.gif';
				pic.id = el.id;
				pic.className = 'flag';
				pic.style.top = el.y + 'px';
				pic.style.left = el.x + 'px';
				pic.onmouseover = function() {
					showDsc(this);
				}
				pic.onmouseout = function() {
					hideDsc(this);
				}
				pic.onclick = function() {
					window.location.href = flags['object_' + this.id].link;
				}
			document.getElementById('map').insertBefore(pic,null);
		}
	}
}

function showDsc(which) {
	var el = document.getElementById('mapDsc');
	el.childNodes[0].innerHTML = flags['object_' + which.id].alt;
	el.style.display = 'block';
	el.style.top = parseInt(which.style.top) - el.clientHeight + 8 + 'px';
	el.style.left = parseInt(which.style.left) - el.clientWidth + 5 + 'px';
}

function hideDsc(which) {
	var el = document.getElementById('mapDsc');
	el.style.display = 'none';
}

//--------------------------------// Get Cookie
function GetCookie(sName) {
	var aCookie = document.cookie.split("; ");
	for (var i=0; i < aCookie.length; i++) {
	var aCrumb = aCookie[i].split("=");
	if (sName == aCrumb[0])
		return unescape(aCrumb[1]);
	}
	return null;
}

//--------------------------------// PreLoad Images
function load(arg) {
	img = new Image();
	img.src = '/images/' + arg;
	return img;
}

load('dsc-arr.gif');

//--------------------------------// Forum Functions
function OpenTread(id) {
	oTread = GetObj('tread' + id);
	if (oTread.style.display == 'none') {
		oTread.style.display = 'Block';
	}
	else {
		oTread.style.display = 'none';
	}
}

function ShowForumWindow(url) {
	window.open(url, '_blank', 'width=420, height=250, left=320, top=200, menubar=no, scrollbars=no, status=no');
}
//----------------------------------// Headers Time
function SwitchHeader() {
	nowdate = new Date();
	hour = nowdate.getHours();
	if(hour >=12 && hour <18) return 1;
	if(hour >=18 && hour <22) return 2;
	if(hour >=22 || hour < 6) return 3;
	if(hour >= 6 && hour <12) return 0;
}

function CheckAfterSelect(which){
	if(which){
		var parent_element = which.parentNode.parentNode.parentNode;
		var parent_input = parent_element.getElementsByTagName('input');
		if(parent_input[0] && parent_element.tagName == 'LI'){
			parent_input[0].checked = true;
			selectTree(parent_input[0]);
		}
		which.checked = true;
	}
}

function showTypeAfterSelection(which, sale, form_prop) {
	var typesTable = which.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.getElementsByTagName('table');
	var typesRadio = [
		document.getElementById('newf'),
		document.getElementById('secf'),
		document.getElementById('room'),
		document.getElementById('house'),
		document.getElementById('plot'),
		document.getElementById('secc'), // temp
//		document.getElementById('newc'),
//		document.getElementById('secc'),
		document.getElementById('elf'),
		document.getElementById('elh')
	];
	for(var i=0; i<typesRadio.length; i++){
		if(typesRadio[i].checked) {
			var selectedType = typesRadio[i].id;
			var selectedTypeNum = i;
			break;
		}
	}
	document.getElementById('selectType').innerHTML = typesName[selectedTypeNum];
	for(var j=0; j<typesTable.length; j++) {
		if(typesTable[j].className.indexOf('options') != -1){
			if(typesTable[j].className.split(' ')[1] == selectedType && (typesTable[j].className.split(' ')[2] == sale || typesTable[j].className.split(' ')[2] == 'rs')){
				typesTable[j].style.display = 'block';
				SetChoosenValue(typesTable[j], form_prop);
				add_div = document.getElementById('selection-add-div');
				if(add_div){
					GetAdditionalDiv(selectedType, sale, form_prop);
				}
			}
			else{
				typesTable[j].style.display = 'none';
			}
		}
	}
}

function SetVisibleAdditionalDiv(mode){
	document.getElementById('add-block-l').style.display = mode;
	document.getElementById('selection-add-div').style.display = mode;
	document.getElementById('add-header').style.display = mode;

	if(mode == 'none'){
		document.getElementById('f-block-l').style.background = '#EEE url(/images/w-bl.gif) 0 100% no-repeat';
		document.getElementById('f-block-r').style.background = 'url(/images/w-br.gif) 100% 100% no-repeat';
	}
	else{
		document.getElementById('f-block-l').style.background = '#EEE';
		document.getElementById('f-block-r').style.background = '#EEE';
	}
}

function GetAdditionalDiv(table_name, sale, form_prop){
	var div_el =  document.getElementById('selection-add-div');
	var tables_array = div_el.getElementsByTagName('table');
	mode = 'none';
	if(!sale){
		sale = 'rent';
	}
	for(var j=0; j<tables_array.length; j++){
		if(tables_array[j].className.indexOf('add') != -1){
			if(tables_array[j].className.split(' ')[1] == table_name && tables_array[j].className.split(' ')[2] == sale){
				mode = 'block';
				tables_array[j].style.display = 'block';
				if(form_prop){
					SetChoosenValue(tables_array[j], form_prop);
				}
				else{
					SetRadioDefaultValue(tables_array[j]);
				}
			}
			else{
				tables_array[j].style.display = 'none';
			}
		}
	}
	SetVisibleAdditionalDiv(mode);
}

function SetChoosenValue(typesTable, values){
	//расстановка значений в радиобаттанах и чекбоксах
	div_elements = typesTable.getElementsByTagName('div');
	for(var k=0; k<div_elements.length; k++){
		input_el = div_elements[k].getElementsByTagName('input');
		input_label = div_elements[k].getElementsByTagName('label');
		if(input_el[0]){
			switch(input_el[0].type){
				case 'radio':
					input_name = input_el[0].name;
					if(values[input_name]){
						SetChoosenValueForRadio(input_el, input_label, div_elements[k-1], values[input_name]);
					}
					else{
						input_el[0].checked = true;
						div_elements[k-1].innerHTML = input_label[0].innerHTML;
					}
				break;
				case 'checkbox':
					CheckOnOneValue(input_el, input_label, div_elements[k-1])
					input_name = GetInputName(input_el[0].name);
/*					if(typesTable.className == 'add plot rent'){
						alert(input_name);
					}
*/
					if(values[input_name]){
						SetChoosenValueForCheckBox(input_el, input_label, div_elements[k-1], values[input_name]);
					}
				break;
			}
		}
	}

	//расстановка значений в инпутбосах
	text_elements = typesTable.getElementsByTagName('input');
	for(var k=0; k<text_elements.length; k++){
		if(text_elements[k].type == 'text'){
			if(values[text_elements[k].name]){
				text_elements[k].value = values[text_elements[k].name];
			}
		}
	}
}

function GetInputName(name){
	split_array = name.split('-');
	if(split_array.length == 2){
		name = split_array[0];
	}
	else if(split_array.length == 3){
		name = split_array[1];
	}
	return name;
}

function SetChoosenValueForRadio(elements, label, parent_div, value){
	var checked = false;
	for(var k=0; k<elements.length; k++){
		if(elements[k].id.split('-')[2] == value){
			checked = true;
			elements[k].checked = true;
			parent_div.innerHTML = label[k].innerHTML;
			parent_div.style.background = '#FFF url(/images/select-off.gif) 100% 50% no-repeat';
		}
	}

	if(!checked){
		elements[0].checked = true;
	}
}


function SetChoosenValueForCheckBox(elements, label, parent_div, value){
	var splited_value = value.split('|');
	var checked = 0;
	var checked_name = 'Пусто';
	for(var k=0; k<elements.length; k++){
		if(in_array(splited_value, elements[k].id.split('-')[2])){
			elements[k].checked = true;
			checked++;
			checked_name = label[k].innerHTML;
		}
		else{
			elements[k].checked = false;
		}
	}

	GetCheckBoxName(checked, elements, parent_div, checked_name, label);
}

function in_array(el_array, value){
	for(var k=0; k<el_array.length; k++){
		if(el_array[k] == value){
			return true;
		}
	}
	return false;
}

function GetCheckBoxName(checked, elements, parent_div, checked_name, label){
	var count = elements.length;

	if(count == 1 && elements[0].disabled == true){
		return;
	}

	if(checked == count){
		parent_div.innerHTML = 'Все';
	}
	else if(checked == 0){
		parent_div.innerHTML = 'Пусто';
	}
	else if(checked == 1){
		parent_div.innerHTML = checked_name;
	}
	else{
		parent_div.innerHTML = 'Фильтр';
	}

	if(elements[0].checked){
		label[0].innerHTML = 'Снять всё';
	}
	else{
		label[0].innerHTML = 'Выделить всё';
	}
}

function rich_init() {
	var cont = document.getElementById('richbanner');
	if (cont) {
		cont.style.display = 'block';
	}
}

function rich_hide() {
	var cont = document.getElementById('richbanner');
	if (cont) {
		cont.style.display = 'none';
	}
}


function richbannerHide () {
    var r = document.getElementById('richbanner');
    if (r) {
	var p = r.parentNode;
	p.removeChild(r);
    }
}

