﻿Controls.Videos = function(obj) {
    var context = this;
    obj = obj || {};

    function getTemplate(clback) {
        if ($("#albumsItemTemplate").length > 0) {
            clback($("#albumsItemTemplate").html());
        }
        else {
            $.get("/HtmlTemplates/SiteControls/Videos/Albums.htm", function (data) {
                $('body').append(data); clback($("#albumsItemTemplate").html());
            });
        }
    }

    this.id = obj.id;
    this.folderId = obj.folderId;
    this.showAlbums = obj.showAlbums;

    this.dataBind = function (p) {
        if (context.showAlbums) {
            p = p || ((System.Web.QueryString.GetHashByName('pg') != "") ? System.Web.QueryString.GetHashByName('pg') : 0);
            $("#utsPopupLoading").show();
            getTemplate(function (d) {
                Data.FolderHelper.GetChildFoldersList({ folderId: context.folderId, pageNumber: parseInt(p), isVideo: true }, function (data) {
                    var _htmlStr = "";
                    if (data.RowsCount > 20) {
                        _htmlStr += "<div class='uts-video-imgs-padding'>"
                        var pc = parseInt(data.RowsCount / 20) + 1
                        for (var i = 0; i < pc; i++) {
                            _htmlStr += "<a class='uts-video-imgs-padding-item' onclick='fa.dataBind(" + i + ")' href='#pg=" + i + "'>" + (i + 1) + "</a>";
                        }
                        _htmlStr += "<a class='uts-video-imgs-padding-item' onclick='fa.dataBind(-1)' href='#pg=-1'>Все</a></div>"
                    }
                    for (var i = 0; i < data.List.length; i++) {
                        _htmlStr += d.formatBy({ item: data.List[i] });
                    }
                    $("#" + context.id).html(_htmlStr);
                    $("#liFName").text("");
                    $("#utsPopupLoading").hide();
                });
            });
        }
    }
    this.init = function () {
        $(document).bind('hashChange', function (e, newHash) {
            if (context.showAlbums) {
                var f = System.Web.QueryString.GetHashByName('folderId');
                if (f && f != "") {
                    context.bindImages(f);
                }
                else {
                    context.dataBind();
                }
            }
            else {
                window.location.hash = "folderId=" + context.folderId;
                context.bindImages(context.folderId);
            }
        });
        if (!System.Web.QueryString.GetHashByName('folderId') || System.Web.QueryString.GetHashByName('folderId') == "") context.dataBind();
        if (!context.showAlbums) {
            window.location.hash = "folderId=" + context.folderId;
            context.bindImages(context.folderId);
        }
    }
    this.bindImages = function (f, p) {
        $("#utsPopupLoading").show();
        f = f || System.Web.QueryString.GetHashByName('folderId');
        p = p || ((System.Web.QueryString.GetHashByName('p') != "") ? System.Web.QueryString.GetHashByName('p') : 0);
        if (f && f != "") {
            Data.DocumentHelper.GetImagesFromFolder({ folderId: f, pageNumber: parseInt(p), pageSize:20, isVideo: true }, function (data) {
                var _htmlStr = "";
                $("#" + context.id).html("");
                if (data.PageCount > 20) {
                    _htmlStr += "<div class='uts-video-imgs-padding'>";
                    var pc = parseInt(data.PageCount / 20) + 1;
                    for (var i = 0; i < pc; i++) {
                        _htmlStr += "<a class='uts-vodeo-imgs-padding-item' onclick='fa.bindImages(undefined," + i + ")' href='#folderId=" + f + "&p=" + i + "'>" + (i + 1) + "</a>";
                    }
                    _htmlStr += "<a class='uts-video-imgs-padding-item' onclick='fa.bindImages(undefined,-1)' href='#folderId=" + f + "&p=-1'>Все</a></div>";
                    $("#" + context.id).append(_htmlStr);
                }
                for (var i = 0; i < data.List.length; i++) {
                    _htmlStr = "<div class='uts-video-item'><br /><span style='color: #EF219B;'>" + data.List[i].DocumentName + "</span><br /><br /><small>" + data.List[i].Description + "</small><a class='uts-video-img-link' ><img style='margin-top:-42px;' class='uts-video-img' src='/Testing/RuntimeResizer.ashx?id=" + data.List[i].BlobId + "&h=100&w=100' /><div onclick='fa.showImage(this); return false;' class='uts-play-img'><img src='/img/playimg.png'  /></div></a></div>";
                    $("#" + context.id).append(_htmlStr);
                    $(".uts-play-img").last().attr('val', data.List[i].URL);
                }
                $("#utsPopupLoading").hide();
            });

            Data.FolderHelper.GetNameById_Rest({ folderId: f }, function (data) {
                $("#liFName").text(" " + data + " /");
            });
        }
    }
    this.showImage = function (sender) {
        $("#videoShowImg").html($(sender).attr("val"));
        $("#videoShow").show();
    }
    $(document).ready(function () { context.init(); });
};

