/**
 * jQuery событие при загрузке страницы - инициализация
 */
$(document).ready(function(){

	/* Уголки */
	$(".announcement .img, .tv .img").corner("3px");
	$("#popular, .infobox, .interview").corner("8px");
	$("#popular .content, #blogs .content").corner("bottom 8px");

	/** Самые комментируемые */
	MostCommentedEvents()

	/* Проверяет показывать ли кнопку ВПРАВО для MostCommented */
	CheckMCNextButton();

	/** Самые Главная - Интервью */
	MainInterviewEvents()

	/* Проверяет показывать ли кнопку ВПРАВО для MainInterview */
	CheckMINextButton();

	/* Блок "Блоги Звезд" */
	StarBlogs();
	
});


/* Переключение блогов звезд (отечественные, зарубежные) */
function StarBlogs() {
	$("#our_country_link").click(function (){
		$(".other_country").css('display', 'none');
		$(".our_country").css('display', 'block');
	});
	$("#other_country_link").click(function (){
		$(".other_country").css('display', 'block');
		$(".our_country").css('display', 'none');
	});
}

/**
 * Блок Главная - Интервью - Ajax подгрузка
 */
function MainInterviewEvents() {
	/* Листаем вправо */
	$('.interview').find('.next > a').click(function() {
		var PrevButton = $('.interview').find('.prev > a');
		$(this).parent('div').hide();
		GetMIDataPage(1, PrevButton, $(this));
	});

	/* Листаем влево */
	$('.interview').find('.prev > a').click(function() {
		var NextButton = $('.interview').find('.next > a');
		$(this).parent('div').hide();
		GetMIDataPage(-1, $(this), NextButton);
	});
}

/**
 * Блок самые комментируемые - Ajax подгрузка
 */
function MostCommentedEvents() {
	/* Показываем за неделю */
	$('#popular').find('.period').find('.week > a').click(function() {
		var Url = '/Ajax/MainMost/';
		var Data = {'days' : 7};
		var ObjIn = $('#popular').find('.content').find('.itemWrapper');

		/** Добавляем функцию для запуска после у спешной подгрузки  */
		ObjIn.AfterLoad = function() {
			/* Проверяет показывать ли кнопку ВПРАВО для MostCommented */
			CheckMCNextButton();
		}

		DoAjaxHTML(Url,Data,ObjIn);
		
		$('#popular').find('.period').find('.month').removeClass('act');
		$(this).parent('.week').addClass('act');

		$('#popular').find('.period').find('.week > a:first').attr('rel', 'cur');
		$('#popular').find('.period').find('.month > a:first').attr('rel', '');

		return false;
	});

	/* Показываем за месяц */
	$('#popular').find('.period').find('.month > a').click(function() {
		var Url = '/Ajax/MainMost/';
		var Data = {'days' : 30};
		var ObjIn = $('#popular').find('.content').find('.itemWrapper');

		/** Добавляем функцию для запуска после у спешной подгрузки  */
		ObjIn.AfterLoad = function() {
			/* Проверяет показывать ли кнопку ВПРАВО для MostCommented */
			//CheckMCNextButton();
		}

		DoAjaxHTML(Url,Data,ObjIn);

		$('#popular').find('.period').find('.week').removeClass('act');
		$(this).parent('.month').addClass('act');

		$('#popular').find('.period').find('.week > a:first').attr('rel', '');
		$('#popular').find('.period').find('.month > a:first').attr('rel', 'cur');

		return false;
	});

	/* Листаем вправо */
	$('#popular').find('.content').find('.next > a').click(function() {
		var PrevButton = $('#popular').find('.content').find('.prev > a');
		$(this).parent('div').hide();
		GetMCDataPage(1, PrevButton, $(this));
	});

	/* Листаем влево */
	$('#popular').find('.content').find('.prev > a').click(function() {
		var NextButton = $('#popular').find('.content').find('.next > a');
		$(this).parent('div').hide();
		GetMCDataPage(-1, $(this), NextButton);
	});

}

/* Проверяет нужно ли показывать кнопку листания вправо MostCommented*/
function CheckMCNextButton() {
	var NumElements = $('#popular').find('.content').find('.itemWrapper').find('.itemRO > .item').length;

	if (NumElements < 5) {
		$('#popular').find('.content').find('.next').hide();
	} else {
		$('#popular').find('.content').find('.next').show();
	}
}

/* Проверяет нужно ли показывать кнопку листания вправо MainInterview*/
function CheckMINextButton() {
	var NumElements = $('.interview').find('.itemWrapper').find('.itemRO > .item').length;

	if (NumElements < 2) {
		$('.interview').find('.next').hide();
	} else {
		$('.interview').find('.next').show();
	}
}

/* Универсальная функция листания для MainInterview */
function GetMIDataPage(PageDif, PrevButton, NextButton) {
	/* Вычисляем страницу на которую идти */
	var PrevPage = parseInt(PrevButton.attr('rel'));
	var NextPage = parseInt(NextButton.attr('rel'));
	var CurPage = PrevPage + 1;
	var GoPage = CurPage + PageDif;

	/* Страница не может быть отрицательной или нулевой */
	if (GoPage < 0) {
		return;
	}

	/** Инициализируем данные для Ajax-запроса */
	var Url = '/Ajax/MainInterview/';
	var Data = {'page' : GoPage};
	var ObjIn = $('.interview').find('.itemWrapper');

	/** Добавляем функцию для запуска после у спешной подгрузки  */
	ObjIn.PrevButton = PrevButton;
	ObjIn.NextButton = NextButton;
	ObjIn.GoPage = GoPage;

	ObjIn.AfterLoad = function() {
		/* Меняем параметры след. и пред. страниц */
		this.PrevButton.attr('rel', (this.GoPage-1));
		this.NextButton.attr('rel', (this.GoPage+1));

		/* Убираем кнопку Prev если достигнуто начало */
		if (this.PrevButton.attr('rel') < 1) {
			this.PrevButton.parent('div').hide();
		} else {
			this.PrevButton.parent('div').show();
		}

		/* Проверяет показывать ли кнопку ВПРАВО для MostCommented */
		CheckMINextButton();
	}

	/* Отправляем Ajax-запрос */
	DoAjaxHTML(Url,Data,ObjIn);
}


/* Универсальная функция листания для MostCommented */
function GetMCDataPage(PageDif, PrevButton, NextButton) {

	/* Вычисляем страницу на которую идти */
	var PrevPage = parseInt(PrevButton.attr('rel'));
	var NextPage = parseInt(NextButton.attr('rel'));
	var CurPage = PrevPage + 1;
	var GoPage = CurPage + PageDif;
//	alert(GoPage);

	/* Страница не может быть отрицательной или нулевой */
	if (GoPage < 1) {
		GoPage = 3;
	} else if (GoPage > 3) {
		GoPage = 1;
	}

	/* Смотрим за месяц или за неделю данные */
	var IsWeek = ( $('#popular').find('.period').find('.week > a:first').attr('rel') == 'cur');
	var Days = IsWeek ? 7 : 30;

	/** Инициализируем данные для Ajax-запроса */
	var Url = '/Ajax/MainMost/';
	var Data = {'days' : Days, 'page' : GoPage};
	var ObjIn = $('#popular').find('.content').find('.itemWrapper');

	/** Добавляем функцию для запуска после у спешной подгрузки  */
	ObjIn.PrevButton = PrevButton;
	ObjIn.NextButton = NextButton;
	ObjIn.GoPage = GoPage;

	ObjIn.AfterLoad = function() {
		/* Меняем параметры след. и пред. страниц */
		this.PrevButton.attr('rel', (this.GoPage-1));
		this.NextButton.attr('rel', (this.GoPage+1));

		/* Убираем кнопку Prev если достигнуто начало */
//		if (this.PrevButton.attr('rel') < 1) {
//			this.PrevButton.parent('div').hide();
//		} else {
			this.PrevButton.parent('div').show();
			this.NextButton.parent('div').show();
//		}
		
		/* Проверяет показывать ли кнопку ВПРАВО для MostCommented */
//		CheckMCNextButton();
	}

	/* Отправляем Ajax-запрос */
	DoAjaxHTML(Url,Data,ObjIn);
}

/** Универсальная Ajax-функция */
function DoAjaxHTML(Url, Data, ObjIn) {
//	ObjIn.add('<div style="position:absolute;  z-index:200;"><img src="/i/ajax-loader.gif" align="center" /></div>');
	$.ajax({
		type: "POST",
        url : (Url),
        data: (Data),
        dataType: 'html',
        success: function(OutData){
				ObjIn.fadeOut(400,function() {
					ObjIn.html(OutData);
				});
				ObjIn.fadeIn(900,function() {
					ObjIn.AfterLoad();
				});
        }
    });
}

