﻿var AnasayfaBannerDir = "/assets/img/anasayfa_banner/";
var p = 1;
var tvChannelTabLeftNav = "";

var getChannels = function (callback) {
	blockChannelWidget();

	var catId = $("#catId").val();
	var containerNode = $("#channelList");
	var pagingNode = $("#channelPaging");
	var q = $("#filterQ").val();
	q = (q == "Arama" || q == "Hemen Ara") ? "" : q;

	$.get("/" + currentPlatform() + "/tv/kanallar", { catId: catId, s: 0, p: p, t: 1, q: q, platform: currentPlatform() }, function (response) {
		containerNode.html(response.listHtml);
		pagingNode.html(response.pagingHtml);

		$("li", containerNode).hover(function () {
			$(this).addClass("hover")
		}).mouseleave(function () {
			$(this).removeClass("hover")
		});
		containerNode.append(tvChannelTabLeftNav);
		containerNode = null;
		pagingNode = null;

		$.uniform.update("#catId");

		unblockChannelWidget();

		$(".leftInfo2").find("li").removeClass("selected");
		$("#cNav-" + catId).addClass("selected");

	}, "json");
};

var bindTvGenreCategories = function () {
	$.get("/tv/GetTvChannelCategories.aspx", { opt: currentPlatform() }, function (response) {
		if (response != null) {
			tvChannelTabLeftNav = '<div class="leftInfo2"><ul class="ya filterNav"><li class="selected" id="cNav-0"><a href="javascript:;" class="ico1" onclick="filterChannelCategoryLeftNav(0)">Tüm Kanallar</a></li>';

			$("#catId").html("").append("<option value=\"0\">Kategori</option>");
			for (var i = 0; i < response.length; i++) {
				$("#catId").append("<option value=\"" + response[i].Id + "\">" + response[i].Name + "</option>");
				tvChannelTabLeftNav += '<li id="cNav-' + response[i].Id + '"><a href="javascript:;" class="ico1" onclick="filterChannelCategoryLeftNav(' + response[i].Id + ')">' + response[i].Name + '</a></li>';
			}

			tvChannelTabLeftNav += "</ul></div>";

			$("#catId").unbind("change");
			$("#catId").bind("change", getChannels);
			$.uniform.update("#catId");

			getChannels();
		}
	}, "json")
};

var advancePage = function (page) {
	p = page;

	getChannels();
};

var blockChannelWidget = function () {
	$(".leftSide").block({
		message: null,
		overlayCSS: {
			backgroundColor: '#ffffff',
			opacity: 0.4
		},
		css: {
			cursor: 'wait'
		},
		baseZ: 99999
	});
};

var unblockChannelWidget = function () {
	$(".leftSide").unblock();
};

var filterChannelName = function (evt) {
	var charCode = (evt.which) ? evt.which : evt.keyCode
	if (charCode == 13) {
		p = 1;
		getChannels();
	}
	charCode = null;
};

var filterChannelCategory = function () {
	p = 1;
	getChannels();
	$.uniform.update("#catId");
};

var filterChannelCategory = function () {
	p = 1;
	getChannels();
	$.uniform.update("#catId");
};

var filterChannelCategoryLeftNav = function (id) {
	p = 1;
	$("#catId").find("option").attr("selected", false);
	$("#catId").find("option[value=" + id + "]").attr("selected", true);
	getChannels();
	$.uniform.update("#catId");
};

$(function () {
	$("#catId").bind("change", filterChannelCategory);

	$("#tabchannels").click(function () {
		$(".hliner").hide();

		if (!$(this).hasClass("selected")) {
			$("#filterQ").val("");
			CurrentTabType = "tabchannels";
			$(".tabs .fl.xa li").removeClass("selected");
			$(this).addClass("selected");

			bindTvGenreCategories();

			$(".bottom .btnGo .ico1").text("TV Anasayfa");
			$(".bottom .btnGo").attr("href", "/tv");

			bindFilterQueryInput();

			$("#anasayfa_banner").first().attr("src", AnasayfaBannerDir + "tv_banner.jpg");

			UpdateLayout();
		}
	});
});

/************
filter query
************/

var bindFilterQueryInput = function () {
	$("#filterQ").unbind("keypress");
	$("#filterQ").bind("keypress", filterChannelName);
};

/******************
Video tab functions
******************/

var VideoTabPage = 1;
var CurrentTabType = "tvod";

var loadTVOD = function () {
	CurrentTabType = "tvod";
	UpdateLayout();

	$(".tabs .fl.xa li").removeClass("selected");
	$("#tabtvod").addClass("selected");

	$(".bottom .btnGo .ico1").text("Tümünü Göster");
	$(".bottom .btnGo").attr("href", "/" + currentPlatform() + "/video/kirala-izle/butun-turler/butun-kategoriler");

	$("#channelPaging").hide();
	$("#anasayfa_banner").first().attr("src", AnasayfaBannerDir + "kirala_izle_banner.jpg");
};

$(function() {
    $("#tabtvod").click(function() {
        $(".hliner").show();
        if (!$(this).hasClass("selected")) {
            loadTVOD();
        }
    });
    $("#tabsvod").click(function() {
         $(".hliner").show();
    
        if (!$(this).hasClass("selected")) {
            CurrentTabType = "svod";
            UpdateLayout();

            $(".tabs .fl.xa li").removeClass("selected");
            $(this).addClass("selected");

            //$(".bottom .btnGo .ico1").text("Seç-İzle Videoları");
            $(".bottom .btnGo .ico1").text("Tümünü Göster");
            $(".bottom .btnGo").attr("href", "/" + currentPlatform() + "/video/sec-izle/butun-turler/butun-kategoriler");

            $("#channelPaging").hide();
            $("#anasayfa_banner").first().attr("src", AnasayfaBannerDir + "sec_izle_banner.jpg");
        }
    });
    $("#tabtstv").click(function() {
         $(".hliner").show();

        if (!$(this).hasClass("selected")) {
            CurrentTabType = "tstv";
            UpdateLayout();

            $(".tabs .fl.xa li").removeClass("selected");
            $(this).addClass("selected");

            //$(".bottom .btnGo .ico1").text("Tekrar İzle Videoları");
            $(".bottom .btnGo .ico1").text("Tümünü Göster");
            $(".bottom .btnGo").attr("href", "/" + currentPlatform() + "/video/tekrar-izle/butun-turler/butun-kategoriler");

            $("#anasayfa_banner").first().attr("src", AnasayfaBannerDir + "tekrar_izle_banner.jpg");
        }
    });
    $("#tabfc").click(function() {
         $(".hliner").show();

        if (!$(this).hasClass("selected")) {
            CurrentTabType = "tabfc";
            UpdateLayout();
            $(".tabs .fl.xa li").removeClass("selected");
            $(this).addClass("selected");

            BindFilmClub("grid");

            $(".prodContainer .section")
                .append("<div class=\"tabs notop fr xa selectView\">" +
                            "<ul class=\"selectView\">" +
                                "<li id=\"listType-2\" class=\"last\"><a id=\"\" title=\"Liste Görünümü\" class=\"list\" href=\"javascript:;\"><span>Liste</span></a></li>" +
                                "<li id=\"listType-1\" class=\"last selected\"><a title=\"Küçük Resim Görünümü\" class=\"grid\" href=\"javascript:;\"><span>Grid</span></a></li>" +
                            "</ul>" +
                        "</div>");
            $(".selectView a").click(function() {
                if (!$(this).parent().hasClass("selected")) {
                    if ($(this).hasClass("list")) BindFilmClub("list");
                    if ($(this).hasClass("grid")) BindFilmClub("grid");
                    $(".selectView li").removeClass("selected");
                    $(this).parent().addClass("selected");
                }
            });
        }
    });
	
	if (currentPlatform() == "cep")
		$("#tabchannels a").trigger("click");
	else
		loadTVOD();
});

/******************
SinemaTV tab functions
******************/

var FilmClubItemCount;
var FilmClubPageCount;

var BindFilmClub = function (type) {
	blockChannelWidget();
	jQuery("#channelList").load("/tv/FilmClubTab.aspx?type=" + type, function () {
		unblockChannelWidget();

		//FilmClubItemCount = $("#channelList li").length;
		switch (type) {
			case "grid": FilmClubItemCount = $(".filmclub-grid li").length; FilmClubPageCount = Math.ceil(FilmClubItemCount / 2); break;
			case "list": FilmClubItemCount = $(".filmclub-list li").length; FilmClubPageCount = Math.ceil(FilmClubItemCount / 4); break;
		}

		if (FilmClubPageCount > 1) {
			var PagingHtml = "<li class=\"button\"><a href=\"javascript:;\" class=\"btnPrev btnStd\"><span class=\"ico1\">Geri</span></a></li>";
			for (var i = 0; i < FilmClubPageCount; i++) {
				if (i == 0) PagingHtml += "<li><a href=\"javascript:;\" class=\"selected\">1</a></li>";
				else if (i == (FilmClubPageCount - 1)) PagingHtml += "<li class=\"last\"><a href=\"javascript:;\">" + (i + 1) + "</a></li>";
				else PagingHtml += "<li><a href=\"javascript:;\">" + (i + 1) + "</a></li>";
			}
			PagingHtml += "<li class=\"button\"><a href=\"javascript:;\" class=\"btnNext btnStd\"><span class=\"ico1\">İleri</span></a></li>";
			$("#channelPaging").html(PagingHtml);
		} else { $("#channelPaging").html(""); }

		$("#channelPaging li a").each(function () {
			$(this).die("click");
		}).bind("click", function () {
			var PageToGo = $(this).text();
			var CurrentTab = $("#channelPaging li a.selected").text();
			if (PageToGo == "İleri") {
				if (CurrentTab != FilmClubPageCount.toString()) ChangeFilmClubPage(parseInt(CurrentTab) + 1, type);
			}
			else if (PageToGo == "Geri") {
				if (CurrentTab != 1) ChangeFilmClubPage(parseInt(CurrentTab) - 1, type);
			}
			else { ChangeFilmClubPage(PageToGo, type); }
		});
	});
};

var ChangeFilmClubPage = function (PageToGo, type) {
	$("#channelPaging li a").removeClass("selected");
	$($("#channelPaging li a")[parseInt(PageToGo)]).addClass("selected");
	$("#channelList ul").hide();
	$($("#channelList ul")[parseInt(PageToGo) - 1]).show();
};

/**********************
Video asset functions
**********************/

var VideoTabContent = function (evt) {
	var charCode = (evt.which) ? evt.which : evt.keyCode
	if (charCode == 13) {
		p = 1;
		BindVideoTabContent(CurrentTabType);
	}
	charCode = null;
};

var BindVideoTabContent = function (typename) {
	blockChannelWidget();

	var catId = $("#catId").val();
	catId = catId == "0" ? "" : catId;
	var containerNode = $("#channelList");
	var pagingNode = $("#channelPaging");
	var q = $("#filterQ").val();
	q = (q == "Arama" || q == "Hemen Ara") ? "" : q;

	$.get("/video/HomepageVideo.aspx", { type: typename, catId: catId, p: VideoTabPage, m: 8, q: q, platform: currentPlatform() }, function (response) {
		containerNode.html(response.listHtml);
		pagingNode.html(response.pagingHtml);

		$("li", containerNode).hover(function () {
			$(this).addClass("selected")
		}).mouseleave(function () {
			$(this).removeClass("selected")
		});

		containerNode = null;
		pagingNode = null;

		unblockChannelWidget();
	}, "json");

	catId = null;
};

var BindVideoCategories = function (type) {
	$.get("/video/HomepageVideoCategories.aspx", { type: type, platform: currentPlatform() }, function (response) {
		$("#catId").html("")
            .append("<option value=\"0\">Kategori</option>");
		for (var i = 0; i < response.length; i++) {
			var TypeValue = response[i];
			$("#catId").append("<option value=\"" + TypeValue + "\">" + TypeValue.replace(/\^/g, ",") + "</option>");
		}
		$.uniform.update("#catId");
	}, "json");
};

var UpdateLayout = function () {
	$("#filterQ").val("");
	$("#catId").show();
	$(".selectBox").show();
	$("#catId").val("0");
	$.uniform.update("#catId");

	$("#iconcan").attr("class", "").addClass("fr " + CurrentTabType);

	switch (CurrentTabType) {
		case "tabchannels":
			$(".showcase").removeClass("video").addClass("tvlogo");
			$("#channelPaging").show();
			$(".prodContainer .section .selectView").remove();
			$(".filmclub-static").show();
			$(".bottom .btnGo").show();
			$("#filterQ").show();
			break;
		case "tvod":
		case "svod":
		case "tstv":
			$(".showcase").removeClass("tvlogo").addClass("video");
			$("#catId").unbind("change");
			BindVideoCategories(CurrentTabType);
			$("#catId").bind("change", function () { BindVideoTabContent(CurrentTabType); });

			$("#filterQ").show();
			BindVideoTabContent(CurrentTabType);
			$("#filterQ").unbind("keypress");
			$("#filterQ").bind("keypress", VideoTabContent);

			$("#channelPaging").hide();
			$(".prodContainer .section .selectView").remove();

			$(".filmclub-static").hide();
			$(".bottom .btnGo").show();
			break;
		case "tabfc":
			$(".showcase").removeClass("video").addClass("tvlogo");
			$("#channelPaging").show();
			$(".filmclub-static").hide();
			$("#catId").hide();
			$(".selectBox").hide();
			$("#filterQ").hide();
			$(".bottom .btnGo").hide();
			break;
	}
};


