
	var changecity_cache_areas = new Array();
	var changecity_cache_cities = new Array();
	var changecity_current_country = 0;
	var changecity_current_area = 0;
	var changecity_current_country_name = '';
	var changecity_current_area_name = '';

	function showChangecityTab( tab_open_button )
	{
		var obj = $(tab_open_button);
		var next_obj = obj.next();

		if( next_obj.hasClass( 'tab_objects_list_closed' ) )
		{
			$('div#changecity_box div.tab_header_closed').unbind( 'click' );

			$('div#changecity_box div.tab_header_opened').removeClass('tab_header_opened').addClass('tab_header_closed');
			$('div#changecity_box div.tab_objects_list_opened').removeClass('tab_objects_list_opened').addClass('tab_objects_list_closed').slideUp( 200 );

			obj.removeClass('tab_header_closed').addClass('tab_header_opened');
			next_obj.removeClass('tab_objects_list_closed').addClass('tab_objects_list_opened').slideDown( 200 );

			$('div#changecity_box div.tab_header_closed').click( function(){showChangecityTab(this);} );
		}
	}

	function __changecityGetListHtml( data, js_function_name )
	{
		var n = data.length;
		var step = n > 30 ? 3 : 2;
		var col_length = Math.ceil( n / step );
		var paginator_flag = false;
		if( n > 50 )
		{
			col_length = 15;
			step = Math.ceil( n / col_length );
			paginator_flag = true;
		}

		var html_results = '<table'+(paginator_flag?' class="paged"':'')+'>';

		for( i=0; i<col_length; i++ )
		{
			html_results += '<tr>';
			for( j=0; j<step; j++ )
			{
				var num = i + col_length*j;
				if( num < n )
				{
					var obj = data[num];

					if( js_function_name == '' || 1==1 )
					{
						html_results += '<td class="first_letter"';
						if( paginator_flag && j > 2 ) html_results += ' style="width: 0px;display: none;"';
						html_results += '>';

						first_letter = obj.name.substr(0, 1);
						if( num > 0 )
						{
							if( first_letter == data[num-1].name.substr(0, 1) )
								first_letter = '';
						}
						html_results += first_letter;
						html_results += '</td>';
					}

					html_results += '<td';
					if( paginator_flag && j > 2 ) html_results += ' style="width: 0px;display: none;"';
					html_results += '>';
					if( js_function_name != '' )
						html_results += '<a href="#" onclick="return ' + js_function_name + '(this,' + obj.id + ')">' + obj.name + '</a>';
					else
					{
						var path = decodeURIComponent( location.pathname );
						var additional_path = '';
						if(path != '')
						{
							tmp = path.split('/');
							if( tmp.length > 2 )
							{
								path_comp = tmp[1];
								if( path_comp != 'ru' )
								{
									if( path_comp == 'О-городе' )
									{
										additional_path = path_comp + '/';
									}
									else if( path_comp == 'Объявления'
											|| path_comp == 'Новости'
											|| path_comp == 'Каталог-предприятий'
											|| path_comp == 'Акции'
											|| path_comp == 'Работа'
											|| path_comp == 'Карта-города' )
									{
										additional_path = path_comp + '/';
										if( tmp.length > 3 )
										{
											additional_path += tmp[2] + '/';
											if( path_comp == 'Работа' && tmp.length > 4 )
											{
												additional_path += tmp[3] + '/';
											}
										}
									}
								}
							}
						}
						html_results += '<a href="http://' + obj.domain + '.prostogorod.ua/' + additional_path + '">' + obj.name + '</a>';
					}
					html_results += '</td>';
				}
			}
			html_results += '</tr>';
		}

		html_results += '</table>';

		if( paginator_flag )
		{
			html_results += '<div class="paginator">';
			html_results += '<span class="paginator_left paginator_left_disabled">предыдущая страница</span>';
			html_results += '<span class="paginator_right" onclick="clickPaginator(this, \'right\');">следующая страница</span>';
			html_results += '</div>';
		}

		return html_results;
	}

	function __changecityRedrawFullCityPath()
	{
		html_results = '<span onclick="showChangecityTab($(\'div.changecity_countries_list_header\'));">' + changecity_current_country_name + '</span>';
		if( changecity_current_area_name != '' )
		{
			html_results += '<span onclick="showChangecityTab($(\'div.changecity_areas_list_header\'));">' + changecity_current_area_name + '</span>';
			html_results += '<i onclick="showChangecityTab($(\'div.changecity_cities_list_header\'));">выберите город</i>';
		}
		else html_results += '<i onclick="showChangecityTab($(\'div.changecity_areas_list_header\'));">выберите регион</i>';

		$('div#changecity_box div.full_city_path').html( html_results );
	}

	function clickChangecityCountry( link_obj, id )
	{
		if( changecity_current_country != id )
		{
			changecity_current_country = id;
			changecity_current_country_name = $(link_obj).text();
			changecity_current_area_name = '';
			__changecityRedrawFullCityPath();

			$('div.changecity_areas_list').html( '<strong>Производится загрузка списка регионов...</strong>' );
			showChangecityTab( $('div.changecity_areas_list_header') );
			$('div.changecity_cities_list').html( '' );
			$('div.changecity_cities_list_header').unbind( 'click' ).addClass( 'tab_header_disabled' ).children( 'i' ).html( 'выберите регион' );

			$.getJSON( '/ru/ajax/areas/id/' + id + '?mode=json', function(data, status) {
				if( status == 'success' )
				{
					if( data && data.length > 0 )
					{
						$('div.changecity_areas_list').html( __changecityGetListHtml( data, 'clickChangecityArea' ) );
					}
					else
					{
						$('div.changecity_areas_list').html( '<strong>Регионы отсутствуют. Попробуйте выбрать другую страну.</strong>' );
					}
				}
				else
				{
					$('div.changecity_areas_list').html( '<strong class="error">Ошибки при загрузке списка!</strong>' );
				}
			});
		}
		else
		{
			showChangecityTab( $('div.changecity_areas_list_header') );
		}

		return false;
	}

	function clickChangecityArea( link_obj, id )
	{
		if( changecity_current_area != id )
		{
			changecity_current_area = id;
			changecity_current_area_name = $(link_obj).text();
			__changecityRedrawFullCityPath();

			$('div.changecity_cities_list').html( '<strong>Производится загрузка списка городов...</strong>' );
			$('div.changecity_cities_list_header').removeClass( 'tab_header_disabled' ).children( 'i' ).html( 'нажмите чтобы открыть' );
			showChangecityTab( $('div.changecity_cities_list_header') );

			$.getJSON( '/ru/ajax/cities/id/' + id + '?mode=json', function(data, status) {
				if( status == 'success' )
				{
					if( data && data.length > 0 )
					{
						$('div.changecity_cities_list').html( __changecityGetListHtml( data, '' ) );
					}
					else
					{
						$('div.changecity_cities_list').html( '<strong>Города отсутствуют. Попробуйте выбрать другой регион.</strong>' );
					}
				}
				else
				{
					$('div.changecity_cities_list').html( '<strong class="error">Ошибки при загрузке списка!</strong>' );
				}
			});
		}
		else
		{
			showChangecityTab( $('div.changecity_cities_list_header') );
		}

		return false;
	}

	function clickPaginator( link_obj, direction )
	{
		var link_obj = $(link_obj);
		var container = link_obj.parent().parent();

		var cells = container.find( 'table tr:first td' );
		var i = 0;
		var start_flag = false;
		cells.each( function(index, value) {
			if( start_flag == false )
			{
				if( $(value).css('display') == '' || $(value).css('display') == 'table-cell' )
				{
					start_flag = true;
				}
				i++;
			}
			else
			{
				if( $(value).css('display') == '' || $(value).css('display') == 'table-cell' )
				{
					i++;
				}
			}
		} );

		if( direction == 'right' )
		{
			if( i > 5 )
			{
				container.find( 'table tr td:nth-child('+(i-5)+')' ).hide();
				container.find( 'table tr td:nth-child('+(i-4)+')' ).hide();
				container.find( 'table tr td:nth-child('+(i+1)+')' ).show();
				container.find( 'table tr td:nth-child('+(i+2)+')' ).show();
			}

			if( i-5 > 0 )
			{
				$('div.paginator span.paginator_left_disabled').removeClass('paginator_left_disabled').click( function() { clickPaginator(this, 'left'); } );
			}
			if( i+2 >= cells.length )
			{
				$('div.paginator span.paginator_right').addClass('paginator_right_disabled').removeAttr('onclick').unbind();
			}
		}
		else if( direction == 'left' )
		{
			if( i > 7 )
			{
				container.find( 'table tr td:nth-child('+(i-7)+')' ).show();
				container.find( 'table tr td:nth-child('+(i-6)+')' ).show();
				container.find( 'table tr td:nth-child('+(i-1)+')' ).hide();
				container.find( 'table tr td:nth-child('+(i)+')' ).hide();
			}

			if( i-8 <= 0 )
			{
				$('div.paginator span.paginator_left').addClass('paginator_left_disabled').removeAttr('onclick').unbind();
			}

			if( i <= cells.length )
			{
				$('div.paginator span.paginator_right_disabled').removeClass('paginator_right_disabled').click( function() { clickPaginator(this, 'right'); } );
			}
		}

		return false;
	}


	/* Форма логина */
	function showLoginForm () {
		$("#loginForm").show() ;
	}


	/**
	*	Переводчик google translate
	*/

	function googleTranslateElementInit() {
		new google.translate.TranslateElement({
				pageLanguage: 'ru',
				includedLanguages: 'en,be,el,es,it,de,pl,ro,ru,uk,fi,fr,cs'
			}, 'google_translate_element');
	}
	function googleTranslateLoad()
	{
		$('#google_translate_container').slideToggle('250', function(){
			if( $('#google_translate_element span.loading').length == 1 )
			{
				$.getScript( 'http://translate.google.com/translate_a/element.js?cb=googleTranslateElementInit', function( ){
					$('#google_translate_element span.loading').html('Перевод страницы').addClass('selectlang').removeClass('loading');
				});
			}
		});
	}


	/**
	*	Поиск по сайту
	*/
	function selectSiteSearchRepo( txt, id )
	{
		$('.select_search').html( txt );
		$('#block_search_menu_select').hide();
		$('#site_search_repo').val( id );
	}

	function search_select_region( obj )
	{
		$( obj ).addClass('active');
		document.getElementById('search_site_field').focus();

		var region_id = $( obj ).attr( 'id' );
		switch( region_id )
		{
			case 'search_in_site':
				$('#site_search_where').val( 'city' );
				break;
			case 'search_in_ukraine':
				$('#site_search_where').val( 'country' );
				break;
			case 'search_in_world':
				$('#site_search_where').val( 'world' );
				break;
			default:
				$('#site_search_where').val( '' );
		}
	}

	function submitSearchForm()
	{
		// ПЕРЕПИСАТЬ!!!!!!!
		if ($("select#repo").val() == "google"){
			var zsearch = str_replace(' ','+', $('input[name="z_search"]').val());
			var lang = $('#lang').val();
			window.open('http://www.google.com/search?as_q='+ zsearch+'&hl='+lang+'&sitesearch=prostogorod.ua');
			return false;
		}else{
			return true;
		}

	}


	$(function() {

		$("#changecity_box div.tab_header_closed").each( function(){
			var obj = $(this);
			obj.click( function(){showChangecityTab(obj);} );
		} );

		$("a#showLoginFormLink").fancybox({
			"modal" : "true",
			"scrolling": "no",
			"autoScale" : "true"
		});

		$('a.dobavit_v_izbranoe').jFav( { msg: 'Чтобы добавить страницу в закладки, нажмите одновременно кнопки Ctrl и D (или CMD и D для Mac)' } );
	});

