﻿/// <reference path="../extjs_intellisense.js" />
var cardlock = 0; //0：未请求过一次  1：正在请求，这时要加锁  2:空闲
//时间调度
var enterTimes = 0;
var endTimesThread = null;
var globalSpaceSkinUrl = "";
var globalSpaceHeadPicUrl = "";
var globalSpaceWebRoot = ".";
$(document).ready(function() {    
    if ($("#globalSpaceWebRoot")) {
        globalSpaceWebRoot = $("#globalSpaceWebRoot").val();
    }
    if ($("#globalSpaceSkinUrl").length == 0) {
        globalSpaceSkinUrl = "http://static.space.91img.com";
    } else {
        globalSpaceSkinUrl = $("#globalSpaceSkinUrl").val();
    }
    if ($("#globalSpaceHeadPicUrl").length == 0) {
        globalSpaceHeadPicUrl = "http://static.space.91img.com";
    } else {
        globalSpaceHeadPicUrl = $("#globalSpaceHeadPicUrl").val();
    }
});
function showUserCard(e, mousep) {
    if ($("#visitorBlackList").val() == "1") {
        return;
    }

    if (cardlock == 1) {
        return;
    }
    cardlock = 1;
    if ($("#usercardshow_div")) {
        $("#usercardshow_div").remove();
    }
    $("<div class='businessCard' id='usercardshow_div'>正在获取名片....</div>").appendTo(document.body);
    $("#usercardshow_div").css("display", "block");
    var x;
    var y;
    var uinstr;
    if (typeof (e) == "object") {
        x = GetCardElementLeft(e, 0);
        y = GetCardElementTop(e, 0);
        uinstr = e.id.substr(3);
    }
    else {
        uinstr = e.split('_')[0];
        //debugger;  
        x = e.split('_')[1];
        y = e.split('_')[2];
        //alert(x);
    }
    $("#usercardshow_div").css("top", y).css("left", x);
    //alert("X:"+x+"  Y:"+y);
    // return;
    $(e).css("cursor", "pointer");

    var urlstr = "/" + globalSpaceWebRoot + "/home.aspx?type=usercard&action=getcard&uin=" + uinstr;

    $.ajaxSetup({
        'beforeSend': function() { },
        'complete': null
    });
    $.post(urlstr, {}, showUserCardHandle);
    $.ajaxSetup({
        'beforeSend': function() { if (typeof (AjaxBegin) == "function") { AjaxBegin() } },
        'complete': function() { if (typeof (AjaxEnd) == "function") { AjaxEnd() } }
    });
    function showUserCardHandle(ret) {        
        if (ret.substr(0, 6) != "<table") {
            cardlock = 2;
            return;
        }
        $("#usercardshow_div").html(ret);
        //对操作的处理
        //加好友
        if ($("#IcardUin").val() == "0" || $("#IcardUin").val() == uinstr) {
            $("#a_addfriend").html("").attr("class", "");
            $("#a_greet").html("").attr("class", "");
            $("#a_sendmessage").html("").attr("class", "");
            $("#a_pkme").html("").attr("class", "");
        }
        else {
            $("#a_addfriend").html("");
            //$("#a_addfriend").html("<img src='" + globalSpaceSkinUrl + "/skin/m/userarchives/images/addfrend.png'  />加好友");
            $("#a_addfriend").html("<span class='cardAddIcon'>加好友</span>");
            $("#a_addfriend").attr("href", "javascript:a_addfriend(" + uinstr + ")");
            $("#a_greet").html("");
            //$("#a_greet").html("<img src='" + globalSpaceSkinUrl + "/skin/m/userarchives/images/sayhello.png'  />打招呼");
            $("#a_greet").html("<span class='cardGreetIcon'>打招呼</span>");
            $("#a_greet").attr("href", "javascript:ShowSendNotify(" + uinstr + ")");
            $("#a_sendmessage").html("");
            //$("#a_sendmessage").html("<img src='" + globalSpaceSkinUrl + "/skin/m/userarchives/images/sendmes.png'  />发消息");
            $("#a_sendmessage").html("<span class='cardMsgIcon'>发消息</span>");
            $("#a_sendmessage").attr("href", "javascript:a_sendmessage(" + uinstr + ")");
            $("#a_pkme").html("");
            //$("#a_pkme").html("<img src='" + globalSpaceSkinUrl + "/skin/m/userarchives/images/mypk.png'  />与我PK");
            $("#a_pkme").html("<span class='cardPkIcon'>与我PK</span>");
            $("#a_pkme").attr("href", "/" + uinstr + "/WebPK");
            $("#a_pkme").attr("target", "_blank");
        }
        $("#usercardshow_div").show();
        $("#usercardshow_div").bind("mouseleave", function() { $("#usercardshow_div").css("display", "none"); });
        $("#usercardshow_div").bind("mouseenter", function() { $("#usercardshow_div").css("display", "block"); });
        cardlock = 2;
    }
    cardlock = 2;
    if (autoHeightFunc != null) {
        autoHeightFunc.call(this, 80);
    }
    autoHeightFunc = null;
}
function showUserCard_init() {    
    $(".UserCardImg").unbind("mouseenter");
    $(".UserCardImg").unbind("mouseleave");
    $(".UserCardImg").bind("mouseenter", function(mousep) {
        imgTemp = this; mousepTemp = mousep;
        cardSleep(mousep);
    });
    $(".UserCardImg").bind("mouseleave", function() {
        if (endTimesThread != null) {
            window.clearTimeout(endTimesThread);
            endTimesThread = null;
            enterTimes = 0;
        }
        $("#usercardshow_div").css("display", "none");
    });
}

function ImgerrorFn(obj, type) {
    if (globalSpaceWebRoot == "." && $("#globalSpaceWebRoot")) {
        globalSpaceWebRoot = $("#globalSpaceWebRoot").val();
    }
    obj.src = "/" + globalSpaceWebRoot + "/skin/images/head/anonymous-" + type + ".jpg";
}
var autoHeightFunc = null;
function showUserCard_initAutoHeight(func) {
    $(".UserCardImg").unbind("mouseenter");
    $(".UserCardImg").unbind("mouseleave");
    $(".UserCardImg").bind("mouseenter", function(mousep) {
        imgTemp = this; mousepTemp = mousep;
        autoHeightFunc = func;
        cardSleep(mousep);
    });
    $(".UserCardImg").bind("mouseleave", function() {
        if (endTimesThread != null) {
            window.clearTimeout(endTimesThread);
            endTimesThread = null;
            enterTimes = 0;
        }
        $("#usercardshow_div").css("display", "none");
    });
}
var imgTemp = null;
var mousepTemp = null;
function cardSleep() {
    endTimesThread = window.setTimeout("cardSleep()", 200);
    if (enterTimes >= 400) {
        enterTimes = 0;
        window.clearTimeout(endTimesThread);
        showUserCard(imgTemp, mousepTemp);
    }
    else {
        enterTimes += 200;
    }
}

//加好友---start
function a_addfriend(uin) {  
    Nd.Space.Friend.Common.AddFriend(uin);
}
//发消息
function a_sendmessage(uin) {
    var urlstr = "/" + globalSpaceWebRoot + "/home.aspx?type=usercard&action=getnickname&uin=" + uin;
    var ret = $.ajax({ url: urlstr, async: false }).responseText;
    var idx = ret.indexOf("{$}");
    if (idx < 0 || idx > 15) {
        spaceAlert({ msg: "操作失败，请稍后再试" });
        //        setTimeout(function(){
        //            if(jBox.boxes[0]){
        //                jBox.close(jBox.boxes[0]);
        //            }
        //        }, 2000);
    } else {
        var result = ret.split("{$}");
        if (result[0] == "0") {
            if (typeof (spaceAlert) != "undefined") {
                spaceAlert({ msg: result[1] });
            }
            else {
                parent.spaceAlert({ msg: result[1] });
            }
            //            setTimeout(function(){
            //                if(jBox.boxes[0]){
            //                    jBox.close(jBox.boxes[0]);
            //                }
            //            }, 2000);
        } else {
            var nickname = result[1];
            var contentstr = "";
            contentstr += "<div>";
            contentstr += "<div>接收者:&nbsp;&nbsp;" + nickname + "</div>";
            contentstr += "<input type=\"hidden\" id=\"userCardSendMsgUserName\" value=\"" + nickname + "\" />";
            contentstr += "<div class=\"usercard_mess\"><TEXTAREA id=\"MessMemo\"  rows=\"6\" style='width:100%' class=\"inputNormal\" onfocus=\"clearDefaultComment(this,'消息内容');\" onblur=\"setDefaultComment(this,'消息内容');\" ></TEXTAREA><br></div>";
            contentstr += "<div ><input id=\"sendBtn\" type=\"button\" class=\"btnNormal\" onclick=\"sendBtn_mess(" + uin + ");\" value=\"发送\" />&nbsp;&nbsp;<input id=\"closeBtn\" type=\"button\" class=\"btnCancel\" onclick=\"closeBtn_mess();\" value=\"关闭\" /><label id='usercard_lab'></label></div><!--br class=\"cbr\" /-->";
            contentstr += "</div>";

            //                var parm={
            //                  w:"300",
            //                  h:"150",
            //                  type:"div",
            //                  model:"0",
            //                  title:"发消息",
            //                  content:contentstr
            //                } 
            //jBoxWin=jBox.window(parm);
            if (typeof (spaceWindow) != "undefined") {
                spaceWindow({ "type": "div", "divContent": contentstr, "title": "发消息", "w": 300 });
            }
            else {
                parent.spaceWindow({ "type": "div", "divContent": contentstr, "title": "发消息", "w": 300 });
            }
            setTimeout(function() {
                if ($("#MessMemo").length > 0) {
                    $("#MessMemo")[0].focus();
                }
            }, 300);
        }
    }
}
//
function closeBtn_mess() {
    //    if(jBoxWin)
    //    {
    //        jBox.close(jBoxWin);
    //    }
    //    else//游乐园
    //    {
    //        try
    //        {
    //            jBox.close(parent.frames["ifmVillage"].jBoxWin);
    //        }
    //        catch(Error)
    //        {
    //            return;
    //        }
    //    }
    if (typeof (spaceWindow) != "undefined") {
        closeSpaceWindow();
    }
    else {
        parent.closeSpaceWindow();
    }
}
//
function sendBtn_mess(touin) {
    var contentstr = $("#MessMemo").val();
    if (contentstr == "点击这里你就可以填写消息：）") {
        contentstr = "";
    }
    if (contentstr.length <= 0) {
        $('#usercard_lab').html("<img src=\"" + globalSpaceSkinUrl + "/Skin/Images/clock-loader.gif\" style=\"height:32px;\" />不允许发送空消息");
        return;
    }
    var param = { uin: touin, content: contentstr };

    var url = "/" + globalSpaceWebRoot + "/home.aspx?type=usercard&action=sendmessage";
    $('#usercard_lab').html("<img src=\"" + globalSpaceSkinUrl + "/Skin/Images/clock-loader.gif\" style=\"height:32px;\" />正在给" + $("#userCardSendMsgUserName").val() + "发送消息");
    $.ajax({
        "type": "POST",
        "url": url,
        "data": param,
        "success": function(msg) {
            sendBtn_mess_Handle(msg);
        }
    });
}
function sendBtn_mess_Handle(msg) {
    //alert(msg);
    if (msg.substr(0, 1) == "0") {
        $('#usercard_lab').html(msg.substr(4));
    }
    else {
        $('#usercard_lab').html(msg.substr(4));
    }
    window.setTimeout("closeBtn_mess()", 1000);
    //closeBtn_mess();

}
function clearDefaultComment(obj) {
    if (obj.value == '点击这里你就可以填写消息：）') {
        obj.value = '';
        obj.style.color = '#000';
    }
}

function EnableTacc(obj) {
    obj.style.color = '#000';
    obj.value = '';
}

function setDefaultComment(obj) {
    if (obj.value == '') {
        obj.value = '点击这里你就可以填写消息：）';
        obj.style.color = '#737373';
    }
}
GetCardElementTop = function(obj, positionNum) {
    var y = obj.offsetTop;
    var theight = obj.offsetHeight / 3;
    //alert(1);
    var divScrollTop = 0; //处理有滚动条的时候
    if ($(".DIVscroll").length > 0) {
        divScrollTop = $(".DIVscroll")[0].scrollTop;
    }
    if ($("#friendList").length > 0) {
        divScrollTop = $("#friendList")[0].scrollTop;
    }
    while (obj = obj.offsetParent) y += obj.offsetTop;
    if (document.all) {
        if (typeof (positionNum) != 'undefined') {
            return y + positionNum + theight - divScrollTop;
        } else {
            return y + theight - divScrollTop;
        }
    }
    else {
        if (typeof (positionNum) != 'undefined') {
            return (y + positionNum + theight - divScrollTop) + "px";
        } else {
            return (y + theight - divScrollTop) + "px";
        }
    }
}

GetCardElementLeft = function(obj, positionNum) {
    var x = obj.offsetLeft;
    var twidth = obj.offsetWidth;
    var cardwidth = parseInt($("#usercardshow_div").css("width").replace("px", ""), 10);
    while (obj = obj.offsetParent) x += obj.offsetLeft;
    if (document.all) {
        //alert(x-positionNum+twidth+cardwidth);
        if (x - positionNum + twidth + cardwidth > ContainGetElementLeft($(".container")[0])) {
            return x - positionNum - cardwidth;
        }
        else {
            return x - positionNum + twidth;
        }
    } else {
    if (x - positionNum + twidth + cardwidth > ContainGetElementLeft($(".container")[0])) {
            return (x - positionNum - cardwidth) + "px";
        }
        else {
            return (x - positionNum + twidth) + "px";
        }
    }
}
ContainGetElementLeft = function(obj) {
    if (!obj) {
        obj = $(".main");
        if (obj.lengtn == 0) {
            return 0;
        }
    }
    var x = obj.offsetLeft;
    var twidth = obj.offsetWidth;
    while (obj = obj.offsetParent) x += obj.offsetLeft;
    return x + twidth;
}
$(document).ready(function() {
    showUserCard_init();
});
//JS通过UIN取头像
/*
uin:用户号
type: [1:20*20] [2:50*50]  [3:112*112]
*/
function GetHeadPicPath(uin, type) {
    var headPic = "/HeadPic/";
    var dir1 = Math.floor(uin / (1000 * 1000));
    var dir2 = Math.floor((uin % (1000 * 1000)) / 1000);
    var dir3 = ((uin % (1000 * 1000)) % 1000);
    var picName = uin;
    if (undefined == type) {
        headPic = globalSpaceHeadPicUrl + headPic + "/" + dir1 + "/" + dir2 + "/" + dir3 + "/" + uin + "-2.jpg";
    }
    else {
        headPic = globalSpaceHeadPicUrl + headPic + "/" + dir1 + "/" + dir2 + "/" + dir3 + "/" + uin + "-" + type + ".jpg";
    }
    return headPic;
}
