﻿/// <reference path="../../../Scripts/dyk-ui-config.js" />
/// <reference path="../../../Scripts/dyk-ui-global.js" />
/// <reference path="../../../Scripts/dyk-ui-base.js" />
/// <reference path="../../../Plugins/json2/json2.js" />


DouYaoKanUI.历史.观看 = {
    cookie项名称: "ViewHistory",
    总记录数: 15,
    获取全部: function () {

        var _Cookie项的值 = DouYaoKanUI.历史.Cookies.获取方法1(this.cookie项名称);

        if (!DouYaoKanUI.基本.字符.isNullOrEmpty(_Cookie项的值)) {

            return JSON2.parse(_Cookie项的值);
        }

        return null;
    },
    获取数组在Html版: function () {

        var _获取全部 = this.获取全部();
        var _临时数组 = [];
        var _临时项 = null;

        for (var item in _获取全部) {
            _临时数组.push(_获取全部[item]);
        }

        for (var i = _临时数组.length - 2; i >= 0; i--) {
            for (var j = 0; j <= i; j++) {
                if (new Date(_临时数组[j + 1].Date).getTime() > new Date(_临时数组[j].Date).getTime()) {
                    _临时项 = _临时数组[j];
                    _临时数组[j] = _临时数组[j + 1];
                    _临时数组[j + 1] = _临时项;
                }
            }
        }

        return _临时数组;
    },
    获取数组在Flash版: function () {

        var _获取全部 = this.获取全部();
        var _临时数组 = [];
        var _临时项 = null;

        for (var item in _获取全部) {
            _临时项 = _获取全部[item];
            _临时数组.push({
                movie_id: _临时项.YSID,
                movie_name: _临时项.YSMC + "（" + _临时项.YSSM + "）",
                timing: "观看" + this._秒数转可视化时间(_临时项.Currentpos),
                url_continue: "/kankan/" + _临时项.BFID,
                url_movie: "/detail/" + _临时项.YSID,
                url_next: null,
                url_this: "/kankan/" + _临时项.BFID
            });
        }

        return _临时数组;
    },
    获取: function (_影视ID) {

        var _影视信息 = null;

        var _获取全部 = this.获取全部();

        if (_获取全部 != null) {

            if (!DouYaoKanUI.基本.类型.isUndefined(_获取全部[_影视ID])) {

                _影视信息 = _获取全部[_影视ID];
            }
        }

        return _影视信息;
    },
    添加: function (_影视ID, _播放ID, _影视名称, _影视说明, _当前播放时间) {

        var _影视信息 = {
            YSID: _影视ID || 0,
            BFID: _播放ID || 0,
            YSMC: _影视名称 || "无",
            YSSM: _影视说明 || "",
            Currentpos: _当前播放时间 || 0,
            Date: (new Date()).toUTCString()
        };

        var _获取数组在Html版 = this.获取数组在Html版() || [];

        var _临时对象 = {};

        for (var i = 0; i < _获取数组在Html版.length; i++) {

            if (i < this.总记录数) {
                _临时对象[_获取数组在Html版[i].YSID] = _获取数组在Html版[i];
            }
        }

        _临时对象[_影视ID] = _影视信息;

        var _Cookie项值 = JSON2.stringify(_临时对象);

        DouYaoKanUI.历史.Cookies.设置(this.cookie项名称, _Cookie项值);
    },
    同步: function (_影视ID, _当前播放时间) {

        var _影视信息 = this.获取(_影视ID);

        if (_影视信息 != null) {

            this.添加(
            _影视ID,
            _影视信息.BFID,
            _影视信息.YSMC,
            _影视信息.YSSM,
            _当前播放时间);
        }
    },
    移除: function (_影视ID) {

        var _获取全部 = this.获取全部();

        delete _获取全部[_影视ID];

        var _Cookie项值 = JSON2.stringify(_获取全部);

        DouYaoKanUI.历史.Cookies.设置(this.cookie项名称, _Cookie项值);
    },
    清空: function () {
        DouYaoKanUI.历史.Cookies.设置(this.cookie项名称, "");
    },

    获取历史列表在Html版: function (_影视数组) {

        var _获取数组在Html版 = _影视数组 || [];

        var _临时项 = null;
        var _播放页地址 = null;

        var html = "";
        html += "<ul class=\"histroylist\">";

        for (var i = 0; i < _获取数组在Html版.length; i++) {

            _临时项 = _获取数组在Html版[i];

            _播放页地址 = "/kankan/" + _临时项.BFID; // +"?currentpos=" + _临时项.Currentpos;

            html += "    <li>" +
                    "        <button onclick=\"DouYaoKanUI.历史.观看.移除我看过的在Html版(" + _临时项.YSID + ");\">" +
                    "            关闭<\/button>" +
                    "        <p>" +
                    "            <a title=\"" + _临时项.YSMC + "（" + _临时项.YSSM + "）\" href=\"" + _播放页地址 + "\">" +
                    "                " + _临时项.YSMC + "（" + _临时项.YSSM + "）<\/a>" +
                    "        <\/p>" +
                    "        <span style=\"width:110px;\">观看" + this._秒数转可视化时间(_临时项.Currentpos) + "<\/span>" +
                    "        <a class=\"goon\" title=\"" + _临时项.YSMC + "\" target=\"_blank\" href=\"" + _播放页地址 + "\">" +
                    "            继续观看<\/a>" +
                    "        <a class=\"goon\" style=\"color:#888;margin-left:10px;width:26px;\" title=\"查看详细\" target=\"_blank\" href=\"/detail/" + _临时项.YSID + "\">" +
                    "            详细<\/a>" +
                    "    <\/li>";
        }

        html += "<\/ul>";

        return html;
    },

    更新我看过的在Html版: function () {

        var _获取数组在Html版 = this.获取数组在Html版() || [];

        var _元素历史容器 = document.getElementById("view_history") || {};
        var _元素推荐容器 = document.getElementById("history_recommend") || {};

        var html = "";
        if (_获取数组在Html版.length > 0) {
            html = this.获取历史列表在Html版(_获取数组在Html版);
            _元素推荐容器.style.display = 'none';
        }
        else {
            html = "<center>您的观看历史为空。<\/center>";
            _元素推荐容器.style.display = 'block';
        }

        _元素历史容器.innerHTML = html;
    },

    设置我看过的在Flash版: function (_当前影视ID) {
        var iframeElem = document.getElementById("MovieHistory");
        var _this = this;
        var time = setInterval(function () {
            if (typeof iframeElem.js_setCurrentMovieID != "undefined") {
                clearInterval(time);
                iframeElem.js_setCurrentMovieID(_当前影视ID);
                iframeElem.js_setHistoryItems(_this.获取数组在Flash版());
                _this.更新容器宽高在Flash版();
            }
        }, 100);
    },
    更新容器宽高在Flash版: function () {
        var iframeElem = document.getElementById("MovieHistory");
        var contElem = document.getElementById("List_top_1");
        var historySize = iframeElem.js_getHistorySize();

        contElem.style.width = historySize.width + "px";
        contElem.style.height = historySize.height + "px"
    },

    移除我看过的在Html版: function (_影视ID) {
        this.移除(_影视ID);
        this.更新我看过的在Html版();
    },
    清空我看过的在Html版: function () {
        this.清空();
        this.更新我看过的在Html版();
    },
    _秒数分钟转为两位: function (_秒数分钟) {
        return _秒数分钟 < 10 ? "0" + _秒数分钟 : _秒数分钟;
    },
    _秒数转可视化时间: function (_秒数) {
        var time = parseFloat(_秒数);
        if (null != time && "" != time) {
            if (time % 60 == 0 && time < 60 * 60) {
                time = "至" + parseInt(time / 60.0) + "分钟";
            }
            else if (time > 60 && time < 60 * 60) {
                var second = parseInt((parseFloat(time / 60.0) - parseInt(time / 60.0)) * 60);

                time = "至" + parseInt(time / 60.0) + "分钟" + this._秒数分钟转为两位(second) + "秒";
            }
            else if (time >= 60 * 60 && time < 60 * 60 * 24) {
                var minute = parseInt((parseFloat(time / 3600.0) - parseInt(time / 3600.0)) * 60);

                time = "至" + parseInt(time / 3600.0) + "小时" + this._秒数分钟转为两位(minute) + "分钟"; //  + parseInt((parseFloat((parseFloat(time / 3600.0) - parseInt(time / 3600.0)) * 60) - parseInt((parseFloat(time / 3600.0) - parseInt(time / 3600.0)) * 60)) * 60) + "秒";
            }
            else {
                time = "少于1分钟";
            }
        }
        else {
            time = "少于1分钟";
        }
        return time;
    }
};

var G_PAGE_ASSISTANT = {
    hideHistory: function () {
        hideTop();
    },
    removieHistory: function (_影视ID) {
        DouYaoKanUI.历史.观看.移除(_影视ID);
        DouYaoKanUI.历史.观看.更新容器宽高在Flash版();
    },
    historySetEmpty: function () {
        DouYaoKanUI.历史.观看.清空();
        DouYaoKanUI.历史.观看.更新容器宽高在Flash版();
    }
};

//window.onload = function () {
//    for (var i = 0; i < 5; i++) {
//        DouYaoKanUI.历史.观看.添加(163246 + i, 1 + i, "无界之地", "第" + i + "集", 120);
//    }
//}
