(function ($)
{

$.fn.switchTo = function (params)
{
	var defaultParams = {
		classActive: 'station_types_active',
		classDisabled: 'station_types_disabled',
		waitMessage: '<div style="padding: 50px; text-align: center;"><img src="/themes/default/site-images/progress.gif" alt="Подождите ответа на запрос..."/></div>',
		errorMessage: '<h3>К сожалению, во время запроса произошла ошибка. Попробуйте повторить запрос позднее</h3>'
	};
	var $obj = $(this);
	var $tabs = $(params.selector);
	var $target = $($obj.attr ('target'));

	params = $.extend ({}, defaultParams, params);

	$target.html (params.waitMessage);
	$tabs.removeClass (params.classActive);
	$tabs.addClass (params.classDisabled);
	$obj.removeClass (params.classDisabled);
	$obj.addClass (params.classActive);

	$.ajax ({
		url: $obj.attr ('href'),
		success: function (data)
		{
			var res = /REDIRECT: (.*)/.exec (data);
			if (res != null)
			{
				location.href = res [1];
				return;
			}
			$target.html (data);
		},
		complete: function (jqXHR, textStatus)
		{
			$tabs.removeClass (params.classDisabled);
			if (textStatus == 'success' || textStatus == 'notmodified') return;
			$target.html (params.errorMessage);
		}
	});
};

}) (jQuery);

