// print.js
var openPrintWindow = function (url, options) {
	var settings = {
		width: 820,
		height: 580,
		toolbar: 1,
		location: 1,
		resizable: 1,
		scrollbars: 1,
		menubar: 1,
		top: '0',
		left: '0',
		status: '0'
	};
	if (options) {
		$.extend(settings, options);
	}
	var params =
		'width='+settings.width
		+',height='+settings.height
		+',top='+settings.top
		+',left='+settings.left
		+',location='+settings.location
		+',menubar='+settings.menubar
		+',resizable='+settings.resizable
		+',scrollbars='+settings.scrollbars
		+',status='+settings.status
		+',toolbar='+settings.toolbar;
	var wn = 'popup_window_' + url.replace(/\W/g, '_');
	if (!core.windows) core.windows = {};
	if (core.windows[wn] && !core.windows[wn].closed) {
		core.windows[wn].focus();
	} else {
		core.windows[wn] = window.open(url, wn, params);
	}
	return core.windows[wn];
}

var printWindow = function () {
	var print_div = $('#print-it');
	var html = print_div.html();
	print_div.html('');
	window.print();
	print_div.html(html);
	return false;
}
	

// styles.js
// green - orange
var changeCssColors = function (options) {
	var settings = {
		'style' : 'orange',
		'load' : false
	};
	if (options) $.extend(settings, options);
	// change button classes and
	if (settings.style == 'green') {
		var css = $("link[href='"+core.base_path+"css/orange.css']");
		css.attr('href', core.base_path+'css/green.css');
	} else {
		var css = $("link[href='"+core.base_path+"css/green.css']");
		css.attr('href', core.base_path+'css/orange.css');
	}
	// send new style session param
	if (settings.load) {
		$.get(core.base_path+'utilities/changestyle/'+settings.style+'/');
	}
};

// if > 1260
var changeCssWide = function () {
	var wdt = 1260;
	var wide_css = $(".main_layout").get(0);
	if (wide_css) {
		if ($(window).width() > wdt) {
			$(wide_css).width(wdt-20);
		}
	}
};

$(document).ready(function() {
	$('.change-style-orange').click(function() {
		changeCssColors({
			'style' : 'orange',
			'load' : true
		});
	});
	$('.change-style-green').click(function(){
		changeCssColors({
			'style' : 'green',
			'load' : true
		});
	});
	$(window).resize(changeCssWide);
	changeCssWide();
});


// search.js
$(document).ready(function() {

	$('#search_link').click(function() {
		var dialog = $('#search_dialog');
		var linkdiv = $('#search_link');
		var offset = linkdiv.offset();
		var linkh = linkdiv.outerHeight();
		var linkw = linkdiv.outerWidth();
		var props = {
			top: offset.top + linkh - dialog.outerHeight() - 15,
			left: offset.left + linkw - 35
		};
		dialog.css(props);
		dialog.toggle("normal");
		searchCount();
	});
	
	var searchCount = function() {
		$('#search_cities_selected option').each(function(){this.selected = false;});
		if (!$('#search_indicator').children().get(0)) {
			var $simg = $('<img src="/img/ajax-loader-search.gif" />');
			$('#search_indicator').append($simg);
		}
		$('#search_form').ajaxSubmit({
			dataType: 'json',
			success: function(json) {
				$('#search_indicator').children().remove();
				if (json.success == 'successmsg') {
					$('#search_result_count').html(''+json.count);
					if (json.count > 0) {
						$('#search_view_results').val('Показать объекты');
						$('#search_view_results').get(0).disabled = false;
					} else {
						$('#search_view_results').val('Нет подходящих');
						$('#search_view_results').get(0).disabled = true;
					}
				}
			}
		});
	}
	
	$('.close_search_dialog').click(function() {
		$('#search_dialog').hide("normal");
	});
	
	// select city
	var searchUnselectCity = function () {
		var sc = $('#search_cities_selected');
		this.selected = false;
		$(this).appendTo('#search_cities');
		var fnd = "input[type='hidden'][name='"+sc.attr('name')+"'][value='"+$(this).attr('value')+"']";
		var ofnd = $(fnd);
		if (ofnd) {
			ofnd.remove();
		}
		//$(this).unbind('dblclick', searchUnselectCity).dblclick(searchSelectCity);
		searchCount();
	}
	
	var searchSelectCity = function (load) {
		var sc = $('#search_cities_selected');
		var sf = $('#search_form');
		this.selected = false;
		$(this).appendTo(sc);
		var hid = $('<input type="hidden"/>');
		hid.attr({
			'name': sc.attr('name'),
			'value': $(this).attr('value')
		});
		sf.append(hid);
		//$(this).unbind('dblclick', searchSelectCity).dblclick(searchUnselectCity);
		searchCount();
	}
	
	$('#search_select_city').click(function() {
		$('#search_cities option:selected').each(searchSelectCity);
	});
	//$('#search_cities option').dblclick(searchSelectCity);
	//$('#search_cities').dblclick(function(){alert('sdfsd');});
	$('#search_cities').dblclick(function() {
		$('#search_cities option:selected').each(searchSelectCity);
	});
	$('#search_cities').click(function() {
		$(this).dblclick();
	});
	$('#search_cities_selected').dblclick(function() {
		$('#search_cities_selected option:selected').each(searchUnselectCity);
	});
	$('#search_cities_selected').click(function() {
		$(this).dblclick();
	});
	
	$('#search_unselect_city').click(function() {
		$('#search_cities_selected option:selected').each(searchUnselectCity);
	});
	
	// post ajax
	$("#search_form input[type='checkbox']").click(searchCount);
	$("#search_form input[type='text']").keyup(function() {
		$(this).val($(this).val().replace(/\D/g, ''));
		searchCount();
	});
	
	$('#search_view_results').click(function() {
		var url = core.base_path + 'catalog/search/';
		var suff = [];
		var types = $("#search_form input[name='types[]']:checked");
		var locations = $("#search_form input[name='locations[]']:checked");
		var cities = $("#search_form input[type='hidden'][name='cities[]']");
		var min_price = $("#search_form input[name='min_price']").val();
		var max_price = $("#search_form input[name='max_price']").val();
		var min_m2price = $("#search_form input[name='min_m2price']").val();
		var max_m2price = $("#search_form input[name='max_m2price']").val();
		var url_suff = $("#search_form input[name='url_suff']").val();
		var video = $("#search_form input[name='video']").get(0).checked;
		if (!min_price) min_price = 0;
		if (!max_price) max_price = 0;
		if (!min_m2price) min_m2price = 0;
		if (!max_m2price) max_m2price = 0;
		if (types && types.size() > 0) {
			var ts = [];
			types.each(function() {
				ts.push($(this).val());
			});
			suff.push('types:' + ts.join('.'));
		}
		if (locations && locations.size() > 0) {
			var ls = [];
			locations.each(function() {
				ls.push($(this).val());
			});
			suff.push('locations:' + ls.join('.'));
		}
		if (cities && cities.size() > 0) {
			var cs = [];
			cities.each(function() {
				cs.push($(this).val());
			});
			suff.push('cities:' + cs.join('.'));
		}
		if (video) {
			suff.push('video:1');
		}
		suff.push('price:'+min_price+'.'+max_price);
		suff.push('m2price:'+min_m2price+'.'+max_m2price);
		url += suff.join('-') + '/0/';
		if (url_suff) {
			url += url_suff;
		}
		var dt = {
			url : url,
			'params[]' : suff
		};
		$.post(core.base_path + 'utilities/send_search/', dt);
		window.location = url;
	});

});


// offices.js
$(document).ready(function() {
	
	var offices_hide = function() {
		$('#office_names .office_name').removeClass('active').addClass('link');
		$('#office_list > div').hide();
	};
	
	var office_hide = function() {
		
	};
	
	var office_show = function(name_id) {
		var div_id = name_id.replace(/_name$/, '');
		var div = $('#'+div_id);
		if (div) {
			div.show();
		}
	};
	
	$('#office_names .office_name').click(function() {
		offices_hide();
		office_show($(this).attr('id'));
		$(this).removeClass('link').addClass('active');
	});
	
	$($('#office_names .office_name')[0]).click();

});


// viewport.js
$(document).ready(function() {

	var viewport;
	
	if (viewport = $('#viewpages_6')) {
		viewport.click(function() {
			$.ajax({
				type: 'GET',
				async: false,
				url: core.base_path + 'utilities/viewport/c_6/',
				success: function(data) {
					window.location.reload();
				}
			});
			return false;
		});
	}

	if (viewport = $('#viewpages_12')) {
		viewport.click(function() {
			$.ajax({
				type: 'GET',
				async: false,
				url: core.base_path + 'utilities/viewport/c_12/',
				success: function(data) {
					window.location.reload();
				}
			});
			return false;
		});
	}

	if (viewport = $('#viewpages_all')) {
		viewport.click(function() {
			$.ajax({
				type: 'GET',
				async: false,
				url: core.base_path + 'utilities/viewport/c_all/',
				success: function(data) {
					window.location.reload();
				}
			});
			return false;
		});
	}
	
	if (viewport = $('#viewpages_hor')) {
		viewport.click(function() {
			$.ajax({
				type: 'GET',
				async: false,
				url: core.base_path + 'utilities/viewport/horizont/',
				success: function(data) {
					window.location.reload();
				}
			});
			return false;
		});
	}
	
	if (viewport = $('#viewpages_vert')) {
		viewport.click(function() {
			$.ajax({
				type: 'GET',
				async: false,
				url: core.base_path + 'utilities/viewport/vertical/',
				success: function(data) {
					window.location.reload();
				}
			});
			return false;
		});
	}

});
