﻿//------------------------------- 检查浏览器类型和版本
window["MzBrowser"] = {}; (function() {
    if (MzBrowser.platform) return;
    var ua = window.navigator.userAgent;
    MzBrowser.platform = window.navigator.platform;

    MzBrowser.firefox = ua.indexOf("Firefox") > 0;
    MzBrowser.opera = typeof (window.opera) == "object";
    MzBrowser.ie = !MzBrowser.opera && ua.indexOf("MSIE") > 0;
    MzBrowser.mozilla = window.navigator.product == "Gecko";
    MzBrowser.netscape = window.navigator.vendor == "Netscape";
    MzBrowser.safari = ua.indexOf("Safari") > -1;

    if (MzBrowser.firefox) var re = /Firefox(\s|\/)(\d+(\.\d+)?)/;
    else if (MzBrowser.ie) var re = /MSIE( )(\d+(\.\d+)?)/;
    else if (MzBrowser.opera) var re = /Opera(\s|\/)(\d+(\.\d+)?)/;
    else if (MzBrowser.netscape) var re = /Netscape(\s|\/)(\d+(\.\d+)?)/;
    else if (MzBrowser.safari) var re = /Version(\/)(\d+(\.\d+)?)/;
    else if (MzBrowser.mozilla) var re = /rv(\:)(\d+(\.\d+)?)/;

    if ("undefined" != typeof (re) && re.test(ua))
        MzBrowser.version = parseFloat(RegExp.$2);
})();

// 判断某文件名是否系统支持的图片
String.prototype.IsPicture = function() {
    //判断是否是图片 - strFilter必须是小写列举
    var strFilter = document.getElementById("hdfRecordPicType").value;
    if (this.indexOf(".") > -1) {
        var p = this.lastIndexOf(".");

        var strPostfix = this.substring(p, this.length) //+ '|';
        strPostfix = strPostfix.toLowerCase();

        if (strFilter.indexOf(strPostfix) > -1) {
            return true;
        }
    }
    return false;
}

String.prototype.AccordBrochureType = function() {
    var strFilter = document.getElementById("hdfRecordAccessoryType").value;

    if (this.indexOf(".") > -1) {
        var p = this.lastIndexOf(".");

        var strPostfix = this.substring(p, this.length) //+ '|';
        strPostfix = strPostfix.toLowerCase();

        if (strFilter.indexOf(strPostfix) > -1) {
            return true;
        }
    }
    return false;
}

function upBrochureFileView(brochureFile, hideText, errorLabel) {
    function getValue(id) {
        id.select();
        var result = document.selection.createRange().text;

        return result;
    }
    var fielvalue;
    if (MzBrowser.ie && MzBrowser.version >= 7) {
        fielvalue = getValue(document.getElementById(brochureFile));
    }
    else {
        fielvalue = document.getElementById(brochureFile).value;

    }
    if (fielvalue) {
        if (!fielvalue.AccordBrochureType()) {

            document.getElementById(errorLabel).innerHTML = "上传Brochure格式不正确";
            return false;
        }
        else {
            document.getElementById(errorLabel).innerHTML = "";
        }
    }
    document.getElementById(hideText).value = document.getElementById(brochureFile).value;
}

//------------------------------- 上传文件预览
function upfileView(imgFile, imgShowID, hideText, btnDeletePic, errorLabel, width, height) {
    function getValue(id) {
        id.select();
        var result = document.selection.createRange().text;

        return result;
    }

    var fielvalue;
    if (MzBrowser.ie && MzBrowser.version >= 7) {
        fielvalue = getValue(imgFile);
    }
    else {
        fielvalue = imgFile.value;
    }

    if (fielvalue) {
        if (!fielvalue.IsPicture()) {
            document.getElementById(errorLabel).innerHTML = "上传图片格式不正确";
            return false;
        }
        else {
            document.getElementById(errorLabel).innerHTML = "";
        }
    }

    document.getElementById(imgShowID).style.display = "block";
    document.getElementById(btnDeletePic).style.display = "block";
    document.getElementById(imgShowID).filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = fielvalue;
    document.getElementById(hideText).value = fielvalue;

    if (width && height) {
        document.getElementById(imgShowID).style.width = width;
        document.getElementById(imgShowID).style.height = height;

        document.getElementById(imgShowID).filters.item("DXImageTransform.Microsoft.AlphaImageLoader").sizingMethod = "scale";
    }
}

// 显示图片
function showPicFile(imgSrc, imgShowID, width, height) {
    if (imgSrc != "") {

        document.getElementById(imgShowID).style.display = "block";
        document.getElementById(imgShowID).filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = imgSrc;

        if (width && height) {
            document.getElementById(imgShowID).style.width = width;
            document.getElementById(imgShowID).style.height = height;

            document.getElementById(imgShowID).filters.item("DXImageTransform.Microsoft.AlphaImageLoader").sizingMethod = "scale";
        }
    }
}

//------------------------------- 清除上传文件
function clearFile(imgFileID, imgShowID, hideText, btnDeletePic,lblFileSize) {
    var obj = document.getElementById(imgFileID);
    obj.outerHTML = obj.outerHTML;

    document.getElementById(hideText).value = "Delete";

    document.getElementById(imgShowID).style.display = "none";
    document.getElementById(btnDeletePic).style.display = "none";
    if (lblFileSize) {
        document.getElementById(lblFileSize).style.display = "none";
    }
}

//------------------------------- 抽屉式菜单展示
function displayMenu(object, src, target) {
    var menuObject = document.getElementById("threeLevelMenu");

    var spanArray = menuObject.getElementsByTagName("span");
    for (var i = 0; i < spanArray.length; i++) {
        if (spanArray[i] != object) {
            spanArray[i].className = "spanStyle";
        }
    }
    object.className = "spanHover";

    if (!src) {
        var curryDiv;
        var brothers = object.parentNode.getElementsByTagName("*");
        for (var j = 0; j < brothers.length; j++) {
            if (brothers[j] == object && j + 1 < brothers.length) {
                curryDiv = brothers[j + 1];
                break;
            }
        }

        var divArray = menuObject.getElementsByTagName("div");
        for (var i = 0; i < divArray.length; i++) {
            if (divArray[i] == curryDiv) {
                if (curryDiv) {
                    if (curryDiv.style.display == "none" || curryDiv.style.display == "") {
                        setTimeoutMenu(curryDiv, true);
                    }
                    else {
                        setTimeoutMenu(curryDiv, false);
                    }
                }
            }
            else if (divArray[i] == object.parentNode || divArray[i] == object.parentNode.parentNode) {
                if (divArray[i].style.display != "block") {
                    setTimeoutMenu(divArray[i], true);
                }
            }
            else {
                if (divArray[i].style.display != "none" && divArray[i].style.display != "") {
                    setTimeoutMenu(divArray[i], false);
                }
            }
        }
    }
    else {
        if (!target) {
            location.href = src;
        }
        else {
            parent.document.getElementById(target).src = src;
        }
    }
}

var switchSpacing = 5;     // 菜单扩展的步移时间间隔，单位：毫秒
var movePercent = 20;       // 菜单扩展的步移距离，以百分比表示
//------------------------------- 抽屉式菜单动画处理
function setTimeoutMenu(obj, isShow) {
    var realHeight = 0;
    var moveSpeed = 0;
    if (switchSpacing < 1 || switchSpacing > 1000) {
        switchSpacing = 100;
    }
    if (movePercent < 1 || movePercent > 100) {
        movePercent = 10;
    }

    if (isShow) {
        obj.style.display = "block";
        realHeight = obj.scrollHeight;

        obj.style.height = "0px";
        obj.style.overflow = "hidden";

        moveSpeed = realHeight / 100 * movePercent;
        if (moveSpeed < 1 || moveSpeed > realHeight) {
            moveSpeed = 1;
        }

        setTimeoutShow(obj, realHeight, moveSpeed);
    }
    else {
        obj.style.display = "block";
        realHeight = obj.scrollHeight;

        obj.style.overflow = "hidden";

        moveSpeed = realHeight / 100 * movePercent;
        if (moveSpeed < 1 || moveSpeed > realHeight) {
            moveSpeed = 1;
        }

        setTimeoutHide(obj, realHeight, moveSpeed);
    }
}

//------------------------------- 抽屉式菜单动画显示
function setTimeoutShow(obj, realHeight, moveSpeed) {
    var addNum = 0;
    var curryHeight = parseInt(obj.style.height) + moveSpeed;
    if (curryHeight > realHeight) {
        addNum = realHeight - parseInt(obj.style.height);
        obj.style.height = realHeight + "px";
    }
    else {
        addNum = moveSpeed;
        obj.style.height = curryHeight + "px";
    }

    if (obj.parentNode.id != "threeLevelMenu") {
        obj.parentNode.style.height = parseInt(obj.parentNode.style.height) + addNum + "px";
    }

    if (parseInt(obj.style.height) < realHeight) {
        setTimeout(function() { setTimeoutShow(obj, realHeight, moveSpeed) }, switchSpacing);
    }
    else {
        obj.style.overflow = "visible";
    }
}

//------------------------------- 抽屉式菜单动画隐藏
function setTimeoutHide(obj, realHeight, moveSpeed) {
    var subNum = 0;
    var curryHeight = parseInt(obj.style.height) - moveSpeed;
    if (curryHeight < 0) {
        subNum = parseInt(obj.style.height);
        obj.style.height = "0px";
    }
    else {
        subNum = moveSpeed;
        obj.style.height = curryHeight + "px";
    }

    if (obj.parentNode.id != "threeLevelMenu") {
        var parentNodeHeight = parseInt(obj.parentNode.style.height) - subNum;
        if (parentNodeHeight < 0) {
            parentNodeHeight = 0;
        }
        obj.parentNode.style.height = parentNodeHeight + "px";
    }

    if (parseInt(obj.style.height) > 0) {
        setTimeout(function() { setTimeoutHide(obj, realHeight, moveSpeed) }, switchSpacing);
    }
    else {
        obj.style.display = "none";
    }
}

//------------------------------- 页面加载时扩展开指定菜单
function expandMenu() {
    var span = document.getElementById('spanExpandMenu');
    if (span) {
        span.className = "spanHover";

        if (span.parentNode.parentNode.id == "threeLevelMenu") {
            span.parentNode.style.display = "block";
            span.parentNode.style.height = span.parentNode.scrollHeight + "px";
        }
        else if (span.parentNode.parentNode.parentNode.id == "threeLevelMenu") {
            span.parentNode.style.display = "block";
            span.parentNode.parentNode.style.display = "block";
            span.parentNode.parentNode.style.height = span.parentNode.parentNode.scrollHeight + "px";
            span.parentNode.style.height = span.parentNode.scrollHeight + "px";
        }
    }
}

//------------------------------- 子页加载时iframe自适应高度
function JkOnLoadSetHeight()
{
/*
var frm = parent.document.getElementById("mainFrame");
	    var realHeight = frm.document.body.scrollHeight;
        if (realHeight > 440)
        {
	        frm.height = realHeight;
	    }
	    else
	    {
	        frm.height = 440;
	    }
*/
	    var frm = parent.document.getElementById("mainFrame");
	    var subWeb = parent.document.frames ? parent.document.frames["mainFrame"].document : frm.contentDocument;
	        var realHeight = subWeb.body.scrollHeight;alert(subWeb.body.scrollHeight);
	        if (realHeight > 440)
	        {
		        frm.height = realHeight;
		    }
		    else
		    {
		        frm.height = 440;
		    }
}

// 设置删除按钮可用状态
// 针对删除datagrid数据
// dg: 要操作的DataGrid; btn: 删除按钮; colIndex: 列索引,从0开始
// 可以在后面输入其它需要此触发的按钮
function SetButtonEnabled(dg, btn, colIndex) {
    if (btn == null) {
        return;
    }

    var seleted = false;
    for (i = 1; i < dg.rows.length; i++) {
        var cbx = gv.rows[i].cells[colIndex].children[0];
        if (cbx != null && cbx.checked) {
            seleted = true;
            break;
        }
    }
    btn.disabled = !seleted;

    for (i = 3; i < SetButtonEnabled.arguments.length; i++) {
        SetButtonEnabled.arguments[i].disabled = !seleted;
    }
}
