﻿var handle;
var PID;
function popWin(cmd) {
  var ele = getEl("divTip");
  if ("up" == cmd) {
    if("0px" == getCurrentStyle(ele, "height")) {
      ele.style.display = "block";
      handle = setInterval("changeH('up')", 30);
    }
  }
  else if ("down" == cmd) {
    handle = setInterval("changeH('down')", 40);
  }
}

function changeH(str) {
  var ele = getEl("divTip");
  var body = bodyProperty();
  ele.style.top = (body.scrollTop + body.clientHeight - ele.offsetHeight-1)+"px";
  ele.style.left = (body.scrollLeft + body.clientWidth - ele.offsetWidth-10)+"px";
  var s = getCurrentStyle(ele, "height");
  var h = parseInt(s.substr(0, s.length - 2));
  if("up" == str) {
    if ( h > 151 )
      clearInterval(handle);
    else
      ele.style.height = (h+4).toString() + "px";
  }
  else { //if("down" == str) {
    if ( h < 20 ) {
      clearInterval(handle);
      ele.style.height = "0px";
      ele.style.display = "none";
    }
    else
      ele.style.height=(h-8).toString()+"px";
  }
}

function getPopInfo() {
  var retValue = cart.buy("gid","ex","1","1");
  // Is able to access server.
  if(retValue == "1") {
    var ele = getEl("divTip");
    var s = getCurrentStyle(ele, "height");
    var h = parseInt(s.substr(0, s.length - 2));
    //
    connectServer();
    //
    if ( h > 151 )
      setTimeout("getPopInfo()", 10000);
    else
      MakeFriends.Components.AJAX.Users.GetPopupInfo( _getPopInfoCallback );
  }
  else
    setTimeout("getPopInfo()", 10000);
}

function _getPopInfoCallback(res) {
  var obj = res.value;
  if(obj != null) {
    var rowCount = obj.Rows.length;
    if(rowCount > 0) {
      PID = obj.Rows[0].PID.toString();
      var insType = obj.Rows[0].InsType;
      // Begin initializing div content.
      var content = "";
      switch(insType) {
        case 1:
          content = "您好！Ta <a href='" + mfAppPath +"/Users/View/HisProfile.aspx?un="
            + obj.Rows[0].FromUsername + "' target='_blank'>" + obj.Rows[0].Nickname
            + "</a> 想邀请您聊天，您是 <a href='javascript:void(0);'><span class='biaoti-xi' onclick='accept()'><strong>接受</strong></span></a>，还是<a href='javascript:void(0);'><span class='biaoti-xi' onclick='closeWin()'><strong>拒绝</strong></span></a>";
          break;
        case 2:
          content = "您好，Ta <a href='" + mfAppPath + "/Users/View/HisProfile.aspx?un="
            + obj.Rows[0].FromUsername + "' target='_blank'>" + obj.Rows[0].Nickname
            + "</a> 给您发了一封邮件，您可以<a href='" + mfAppPath + "/Users/Mail/MailRec.aspx' target='_blank'>查看邮件</a> ";
          break;
        case 3:
          content = "您好，Ta <a href='" + mfAppPath + "/Users/View/HisProfile.aspx?un="
            + obj.Rows[0].FromUsername + "' target='_blank'>" + obj.Rows[0].Nickname
            + "</a> 邀请您<a href='" + mfAppPath + "/Users/Profile/UserInfo1.aspx' target='_blank'> 完善资料 </a> ";
          break;
        case 4:
          content = "您好，Ta <a href='" + mfAppPath + "/Users/View/HisProfile.aspx?un="
            + obj.Rows[0].FromUsername + "' target='_blank'>" + obj.Rows[0].Nickname
            + "</a> 邀请您<a href='" + mfAppPath + "/Users/Cert/EmailCert.aspx' target='_blank'> 进行验证 </a> ";
          break;
        case 5:
          var s = "";
          switch( parseInt(obj.Rows[0].Param) ) {
            case 0:
              s = "我带着一颗真诚的心来到这，希望遇到同样真诚的你，期待你的回信！";
              break;
            case 1:
              s = "一路走来，发现这里温暖踏实，就此轻轻的留下一个标记，希望与你相识。";
              break;
            case 2:
              s = "茫茫人海中能在这里遇到你，一定是上帝对我的眷顾，希望能跟你成为朋友，一切安康！";
              break;
            case 3:
              s = "看着你的照片，你的眼睛在说话，闪烁着温暖、善意、挚诚……不知我们能否认识一下呢。";
              break;
            case 4:
              s = "Hi，很高兴看到你的资料，可以认识你吗？";
              break;
            case 5:
              s = "打个招呼，没有灿烂的词语，只希望在这个酷热的季节，为你带来清爽的心意。";
              break;
            case 6:
              s = "酷热渐渐靠近，七夕也悄然而来，轻轻地对你说一声：噢，你也在这里吗？天热了，注意防暑降温。";
              break;
            case 7:
              s = "你真幸运呀，我要把这个季节最清凉的风儿送给你，愿你拥有清爽的夏天！呵呵";
              break;
          }
          content = "您好，Ta <a href='" + mfAppPath + "/Users/View/HisProfile.aspx?un="
            + obj.Rows[0].FromUsername + "' target='_blank'>" + obj.Rows[0].Nickname
            + "</a> 向您发出了问候：" + s;
          break;
        case 6:
          content = "您好，Ta <a href='" + mfAppPath + "/Users/View/HisProfile.aspx?un="
            + obj.Rows[0].FromUsername + "' target='_blank'>" + obj.Rows[0].Nickname
            + "</a> 已经接受了您的聊天申请，您可以和 Ta <a href='" + mfAppPath + "/Users/IM/Chat.aspx?un="
            + obj.Rows[0].FromUsername + "' target='_blank'>聊天</a> ";
          break;
        case 7:
          content = "您好，Ta <a href='" + mfAppPath + "/Users/View/HisProfile.aspx?un="
            + obj.Rows[0].FromUsername + "' target='_blank'>" + obj.Rows[0].Nickname
            + "</a> 已经将您加为好友 ";
          break;
        case 20:
          content = obj.Rows[0].Param;
          break;
        case 99:
          content = "您好，您的有些 <a href='" + mfAppPath + "/Users/Services/List.aspx' target='_blank'>服务</a> 即将到期，点击 <a href='" + mfAppPath + "/Users/Account/MyServices.aspx' target='_blank'>查看详情</a> ";
          break;
      }
      getEl("spanContent").innerHTML = content;
      popWin("up");
    }
  }
  setTimeout("getPopInfo()", 10000);
}

// Accept invitation.
function accept() {
  MakeFriends.Components.AJAX.Users.RecChatInv( PID, _respCallback );
  popWin('down');
}

function closeWin() {
  MakeFriends.Components.AJAX.Users.SetPopInfoState( PID, _setStateCallback );
  popWin('down');
}

function _respCallback(res) {}
function _setStateCallback(res) {}

function bodyProperty()
{
  var bodyST, bodyCH, bodyCW, bodySL;
  if(window.pageYOffset)
  {bodyST=window.pageYOffset;}
  else if(document.documentElement&&document.documentElement.scrollTop){bodyST=document.documentElement.scrollTop;}
  else if(document.body){bodyST=document.body.scrollTop;}
  if(window.innerHeight){bodyCH=window.innerHeight;}
  else if(document.documentElement&&document.documentElement.clientHeight){bodyCH=document.documentElement.clientHeight;}
  else if(document.body){bodyCH=document.body.clientHeight;}
  var w=window, d=document, dd=d.documentElement;
  if(dd&&dd.clientWidth) bodyCW=dd.clientWidth;
  else if(w.innerWidth) bodyCW=w.innerWidth;
  else if(d.body) bodyCW=d.body.clientWidth;
  if(w.pageXOffset) bodySL=w.pageXOffset;
  else if(dd&&dd.scrollLeft) bodySL=dd.scrollLeft;
  else if(d.body) bodySL=d.body.scrollLeft;
  return {"scrollTop":bodyST,"scrollLeft":bodySL,"clientWidth":bodyCW,"clientHeight":bodyCH};
}

function setToRightCorner(divId) {
  if('string' == typeof(divId) && 'undefined' != typeof(divId)) {
    var ele = getEl(divId);
	  if( ele ) {
      var body = bodyProperty();
      var w = getCurrentStyle(ele, "width");
      var iw = w.substr(0, w.length-2);
      ele.style.top=(body.scrollTop+body.clientHeight-ele.offsetHeight-1)+"px";
      ele.style.left=(body.scrollLeft+body.clientWidth-ele.offsetWidth-10)+"px";
	  }
	}
}

window["onscroll"] = function() {
  setToRightCorner("divTip");
}

window["onresize"] = function() {
  setToRightCorner("divTip");
}

///////////////////////////////////////////////////////////////////////
var check = new Check();
function connectServer() {
  MakeFriends.Components.AJAX.Users.ConnectServer(_connectCallback);
}

function _connectCallback(res) {
  if(null != res.value) {
    var username;
    for(var i=0; i<res.value.Rows.length; i++) {
      username = res.value.Rows[i].FromUsername;
      //if(check.add(username) == "1") {
        window.open("" + mfAppPath + "/Users/IM/Chat.aspx?un=" + username, username, "height=506,width=600,top=100,left=200,toolbar=no,menubar=no,scrollbars=no,resizable=no,location=no,status=no");
      //}
    }
  }
}
getPopInfo();
