Skip to content

Instantly share code, notes, and snippets.

@zyxar
Last active December 15, 2015 12:19
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save zyxar/5259704 to your computer and use it in GitHub Desktop.
Save zyxar/5259704 to your computer and use it in GitHub Desktop.
WebIM.js?20130110
(function(d) {
d.extend(d.fn, {
jGroupTree: function(g) {
var k = d.extend({
target: d(document.body),
enable: true,
isSinglePattern: true,
onGroupListExpand: function() {},
onBuddyItemDbClick: function() {},
onBuddyItemClick: function() {},
onBuddyItemMouseOver: function() {}
}, g);
k.target = ((typeof k.target == "string") ? d("#" + k.target) : k.target);
var j = d("<div id='group_box' class='none'><dl /></div>")
.addClass("group_box");
k.target.append(j);
j.adjustHeight = function(l) {
if (typeof l == "undefined") {
l = k.target.innerHeight() - d("#search_friends")
.outerHeight(true) - d("#add_friend")
.outerHeight(true) - 46;
}
j.height(l);
};
j.adjustHeight();
j.setPattern = function(l) {
k.isSinglePattern = l;
};
j.createBuddyList = function(n) {
var l = new Object();
var r = "";
var p = "";
var m = "群组";
if (n) {
r = "<dt id='" + "groupList' title='" + m + "' class='open'><b>" + m + "</b><em>(0)</em></dt>";
p = "<dd>";
} else {
r = "<dt id='" + "groupList' title='" + m + "'><b>" + m + "</b><em>(0)</em></dt>";
p = "<dd style='display:none'>";
}
p += "<ul class='group_list'>";
var q = "</ul></dd>";
var o = new Array();
l.pushContent = function(s) {
o.push(s);
};
l.toHtmlString = function() {
o.sort(function(w, v) {
return groupComparator(w.groupObj, v.groupObj);
});
var u = "";
u += p;
var t = o.length;
for (var s = 0; s < t; s++) {
u += o[s].strContent;
}
u += q;
r = r.replace("<em>(0)</em>", "<em>(" + t + ")</em>");
u = r + u;
return u;
};
return l;
};
j.createGroupItem = function(o) {
var l = new Object();
var p = "groupitem_" + o.id;
var n = getGroupItemPortraitUrl(o, "2");
var m = o.id;
l.groupObj = o;
if (o.i == 4) {
l.strContent = "<li id='" + p + "' group='" + o.id + "'>" + "<a hidefocus='true'><img src='" + n + "'><p style='width:140px;'>" + m + "</p>";
l.strContent += "<span class='proving' title='等待管理员批准加入群'></span>";
} else {
if (o.i == 5) {
l.strContent = "<li id='" + p + "' group='" + o.id + "'>" + "<a hidefocus='true'><img src='" + n + "'><p style='width:140px;'>" + m + "</p>";
l.strContent += "<span class='refuse' title='管理员已经拒绝了您的加入申请'></span>";
} else {
l.strContent = "<li id='" + p + "' group='" + o.id + "'>" + "<a hidefocus='true'><img src='" + n + "'><p>" + m + "</p>";
}
}
l.strContent += "</a></li>";
return l;
};
j.bindEventToList = function() {
j.find("dt")
.bind("click", function() {
var n = {
expanded: false
};
var l = d(this);
var m = l.next();
if (m.css("display") == "none") {
n.expanded = true;
l.addClass("open");
m.css("display", "");
} else {
n.expanded = false;
l.removeClass("open");
m.css("display", "none");
}
k.onGroupListExpand(l, n);
return false;
});
};
j.bindEventToItem = function() {
var l = j.find("li");
l.bind("dblclick", function() {
k.onBuddyItemDbClick(this, d(this)
.attr("group"));
})
.bind("click", function() {
d(this)
.siblings()
.removeClass("on");
d(this)
.addClass("on");
});
};
function i(m) {
var l = m.attr("group");
return __groupMap.get(l);
}
function h(r, q) {
var n = r.size();
if (n <= 0) {
return -1;
} else {
var v = i(r.eq(0));
if (groupComparator(q, v) <= 0) {
return 0;
}
var p = i(r.eq(n - 1));
if (groupComparator(q, p) > 0) {
return n;
}
var m = 0;
var o = n - 1;
var t = 0;
while (o - m > 1) {
var t = Math.floor((m + o) / 2);
var u = i(r.eq(t));
var l = groupComparator(q, u);
if (l <= 0) {
o = t;
} else {
if (l > 0) {
m = t;
}
}
}
var s = i(r.eq(m));
if (groupComparator(q, s) == 0) {
return m;
} else {
return o;
}
}
}
j.getGroupList = function() {
var l = j.find(".group_list");
return l;
};
j.isBuddyListOpen = function(l) {
var m = j.getBuddyList(l);
if (m == null || m.size() == 0) {
return false;
} else {
return "none" != m.eq(1)
.css("display");
}
};
j.setInnerHtml = function(l) {
j.children()
.get(0)
.innerHTML = l;
j.bindEventToList();
j.bindEventToItem();
};
j.insertGroupItem = function(r) {
var p = j.getGroupList();
if (p.size() == 0) {
return;
}
var s = "groupitem_" + r.id;
var q = getGroupItemPortraitUrl(r, "2");
var m = d("<li id='" + s + "' group='" + r.id + "'><a hidefocus='true'><img src='" + q + "'><p>" + r.n + "</p></a></li> ");
d(m)
.bind("click", function() {
d(this)
.siblings()
.removeClass("on");
d(this)
.addClass("on");
})
.bind("dblclick", function() {
k.onBuddyItemDbClick(this, r.id);
});
var l = p.parent()
.find("ul > li[id!='" + s + "']");
var o = l.size();
var n = h(l, r);
if (n < 0 || n >= o) {
p.append(m);
} else {
l.eq(n)
.before(m);
}
j.updateBuddyStat(r.id, 1);
};
var f = /^\(([\d]+)\)$/ig;
j.updateBuddyStat = function(m, l) {
var o = d("#group_box")
.find("#groupList em");
var n = o.text()
.trim();
n = n.replace(f, function(q, p) {
return "(" + (parseInt(p) + l) + ")";
});
o.text(n);
};
j.deleteGroupItem = function(l) {
var n = j.getGroupList();
if (n.size() == 0) {
return null;
}
var m = n.find("#groupitem_" + l);
if (m.size() == 0) {
return null;
}
m.remove();
__groupMap.remove(l);
j.updateBuddyStat(l, - 1);
return m;
};
j.updateGroupMsgCount = function(r, p) {
var q = j.getGroupList();
var o = j.getGroupItem(r.id);
if (o.size() == 0) {
return;
}
var s = "groupitem_" + r.id;
var m = o.find("p >em");
if (m.length == 0) {
var l = o.find("p");
l.html(l.text() + "<em>(0)</em>");
m = o.find("p >em");
}
var n = m.text()
.trim();
if (!p) {
p = 1;
}
n = n.replace(f, function(u, t) {
return "(" + (parseInt(t) + p) + ")";
});
m.text(n);
};
j.clearGroupMsgCount = function(o) {
var n = j.getGroupList();
var m = j.getGroupItem(o.id);
if (m.size() == 0) {
return;
}
var p = "groupitem_" + o.id;
var l = m.find("p >em");
if (l.length != 0) {
l.remove();
}
};
j.getGroupItem = function(l) {
var m = j.getGroupList();
return m.find("#groupitem_" + l);
};
j.updateGroupItem = function(r) {
var n = j.getGroupList();
var s = j.getGroupItem(r.id);
if (s.size() == 0) {
return;
}
var p = "groupitem_" + r.id;
var t = getGroupItemPortraitUrl(r, "2");
var q = s.find("p");
var u = q.find("em");
if (r.msgRecv == 3) {
if (s.find("em")
.size() == 0) {
q.after('<em class="max_reject"></em>');
}
}
if (r.apvRs == 1) {
s.find("span")
.remove();
} else {
if (r.apvRs == 2) {
s.find("span")
.attr("class", "refuse")
.attr("title", "管理员已经拒绝了您的加入申请");
}
}
if (r.n != "") {
q.html(htmlEncode(r.n));
}
q.append(u);
s.find("img")
.attr("src", t);
var o = n.parent()
.find("ul > li[id!='" + p + "']");
var l = o.size();
var m = h(o, r);
if (m < 0 || m >= l) {
n.find("ul")
.append(s);
} else {
o.eq(m)
.before(s);
}
};
return j;
}
});
d.extend(d.fn, {
jGroupChatWindow: function(aq) {
var y = d.extend({
maxRelative: d(document.body),
mode: "singleChat",
user: {},
group: {},
groupMap: {},
defaultHeight: 365,
defaultWidth: 480,
onActive: function() {},
onClosed: function() {},
onFocus: function() {},
onMined: function() {},
onMaxed: function() {},
onResized: function() {},
onSendMessage: function() {}
}, aq);
var j = d("<div />")
.attr("id", "Main_chatWindow_" + y.user.uid + "_" + y.group.id)
.addClass("pop_default_message pop_dm_bg pop_group_message")
.css({
"top": "-1000px",
"left": "-1000px"
});
var G = d("<div />")
.addClass("pop_outer_new1");
var ac = d("<div />")
.addClass("pop_inner_new1");
j.append(G.append(ac));
j.appendTo(document.body);
y.maxRelative = ((typeof y.maxRelative == "string") ? d("#" + y.maxRelative) : y.maxRelative);
j.maxRelative = y.maxRelative;
var af = d("<div />")
.addClass("pop_message_title h42_new1");
var N = d("<div class='pop_message_head'>");
var W = d("<img style='width:32px;height:32px' />");
N.append(W);
var U = d("<h2 class='group_box_tit'></h2>");
var C = d("<p class='sign' title=''></p>");
af.append(N)
.append(U)
.append(C);
ac.append(af);
var A = d("<div />")
.addClass("pop_ctr_bar");
var aa = d("<i />")
.addClass("close");
var x = d("<i />")
.addClass("max");
var ab = d("<i />")
.addClass("min");
A.append(ab)
.append(x)
.append(aa);
ac.append(A);
var B = d("<div />")
.addClass("message_main_new1");
var Y = d("<div />")
.addClass("message_content_new1");
var K = Y;
var o = d("<div />")
.addClass("chat_info chat_new1 chat_append_sec")
.css({
"height": "158px"
});
var ag = d("<div class='chat_append_tip chat_append_tip1'>请勿轻信汇款、中奖和话费充值等信息,谨防受骗。</div>");
o.append(ag);
var X = d("<div />")
.addClass("face_main");
var r = d("<a />")
.attr("href", "#")
.attr("title", "选择表情")
.addClass("btn_face_new");
var ae = d("<a />")
.attr("href", "#")
.attr("title", "设置字体")
.addClass("btn_fonts none");
var al = jChatWindowPopExpression();
al.css("display", "none");
var w = d("<div />")
.addClass("chat_input chat_pc");
var n = "edit" + y.group.id;
var ar = d("<div contenteditable='true' id='" + n + "'/>")
.addClass("chat_textarea");
if (d.browser.mozilla) {
ar.append("<br/>");
}
w.append(ar);
var O = d("<div />")
.addClass("send_btn");
var M = d("<a />")
.attr("href", "#")
.attr("hidefocus", "true")
.addClass("btn_send_new")
.append("发 送");
O.append(M);
Y.append(o)
.append(X.append(r)
.append(ae)
.append(al))
.append(w)
.append(O);
var g = d("<div />")
.addClass("extend_btn");
var ah = d("<a />")
.attr("href", "#")
.addClass("btn_display none")
.append("显示");
var ap = d("<a />")
.attr("href", "#")
.addClass("btn_hide")
.append("隐藏");
j.isExpanded = true;
g.append(ah)
.append(ap);
var am = d("<div id='pop_group_box_" + y.group.id + "'/>")
.addClass("pop_group_box");
var V = 0;
if (y.group.members) {
V = y.group.members.length;
}
var ak = '<div class="pop_group_tit"><h3>群成员</h3><span>(0/' + V + ')</span></div><ul class="pop_group_list">';
for (var ao = 0; ao < V; ao++) {
var q = jMemUriToId(y.group.members[ao].MemberUri);
ak += '<li><a href="#"><span class="every"></span><strong class="BuddyList_Container">';
ak += ' <img src="' + portrait.offline_16 + '"></strong>' + q + "</a></li>";
}
am.append(ak);
var k = null;
B.append(Y)
.append(am)
.append(g);
ac.append(B);
var m = new jHashMap();
j.memMap = m;
var D;
j.groupMemTree = D;
j.isUsable = true;
var I = d("<div class='chat_move_right' direction='right' />")
.css("cursor", "e-resize");
var an = d("<div class='chat_move_left' direction='left' />")
.css("cursor", "w-resize");
var F = d("<div class='chat_move_bottom' direction='bottom'><img alt='' src='images/onepixel.jpg' complete='complete' style='height:1px;width:1px' /></div>")
.css("cursor", "s-resize");
var L = d("<div class='chat_move_rb' direction='right_bottom'><img alt='' src='images/onepixel.jpg' complete='complete' style='height:1px;width:1px' /></div>")
.css("cursor", "se-resize");
var H = d("<div class='chat_move_lb' direction='left_bottom'><img alt='' src='images/onepixel.jpg' complete='complete' style='height:1px;width:1px' /></div>")
.css("cursor", "sw-resize");
var ad = d("<div class='chat_move_top' direction='top'><img alt='' src='images/onepixel.jpg' complete='complete' style='height:1px;width:1px' /></div>")
.css("cursor", "n-resize");
var v = d("<div class='chat_move_rt' direction='right_top'><img alt='' src='images/onepixel.jpg' complete='complete' style='height:1px;width:1px' /></div>")
.css("cursor", "ne-resize");
var t = d("<div class='chat_move_lt' direction='left_top'><img alt='' src='images/onepixel.jpg' complete='complete' style='height:1px;width:1px' /></div>")
.css("cursor", "nw-resize");
j.append(ad)
.append(F)
.append(an)
.append(I)
.append(L)
.append(v)
.append(H)
.append(t);
j.lastPosition = {
"top": j.css("top"),
"left": j.css("left")
};
j.lastSize = {
"height": j.height(),
"width": j.width(),
"isExpanded": j.isExpanded
};
j.isActived = false;
j.isShow = false;
j.isExpanded = true;
j.maxed = false;
j.enablechatInput = true;
j.inputPermission = 0;
j.hasShown = false;
function E(i) {
stopPropagation(i);
j.css("z-index", __zIndex++);
y.onFocus(j);
}
function Z() {
al.css("display", "none");
}
j.close = function() {
j.css("z-index", - 1);
if (j.maxed) {
j.maxed = false;
j.css({
"top": j.lastPosition.top,
"left": j.lastPosition.left
});
o.scrollTop(o.get(0)
.scrollHeight);
}
j.css({
"top": "-1000px",
"left": "-1000px"
});
j.isActived = false;
j.isShow = false;
j.hasShown = false;
j.expand();
Z();
ar.get(0)
.innerHTML = d.browser.mozilla ? "<br/>" : "";
y.onClosed(j);
};
var f;
j.getTreelist = function() {
return f;
};
j.active = function() {
j.isActived = true;
j.css("z-index", - 1);
j.resize(y.defaultHeight, y.defaultWidth);
y.onActive(j);
};
j.show = function(au, i) {
if (typeof au == "number" && typeof i == "number" && !j.maxed) {
j.css({
"top": au + "px",
"left": i + "px"
});
}
j.css("z-index", __zIndex++);
j.isShow = true;
j.hasShown = true;
ar.blur();
ar.focus();
y.onFocus(j);
};
j.focus = function() {
y.onFocus(j);
};
j.hide = function() {
j.css("z-index", - 1);
Z();
j.isShow = false;
};
j.resize = function(ay, av) {
if (typeof ay != "number") {
ay = j.height();
}
if (typeof av != "number") {
av = j.width();
}
o.height(0);
j.get(0)
.style.height = ay + "px";
j.get(0)
.style.width = av + "px";
if (j.maxed) {
if (j.isExpanded) {
Y.get(0)
.style.width = (av - 155) + "px";
} else {
Y.get(0)
.style.width = (av - 16) + "px";
}
} else {
if (j.isExpanded) {
Y.get(0)
.style.width = (av - 155) + "px";
} else {
Y.get(0)
.style.width = (av - 16) + "px";
}
}
var au = 0;
o.parent()
.children()
.each(function(aA) {
au += d(this)
.outerHeight();
});
au = ay - (au + o.outerHeight()) - af.outerHeight();
if (k && k.css("display") == "none") {
au += k.outerHeight();
}
au = ((au < 0) ? 0 : au);
o.get(0)
.style.height = au + "px";
Z();
y.onResized(j);
var i = j.find(".pop_group_tit")
.height();
if (i != 0) {
var ax = j.find(".message_content_new1")
.height();
var aw = ax - i - 12;
var az = j.find(".pop_group_list");
az.height(aw);
}
};
j.bind("click", function() {
Z();
});
var aj;
var J;
var ai;
j.isLogShowNumber = false;
j.logSelfMsg = function(ax) {
ar.get(0)
.innerHTML = d.browser.mozilla ? "<br/>" : "";
var au = d("<dl />")
.addClass("self");
var aw = new Date();
var av = aw.getHours() + ":" + (aw.getMinutes() < 10 ? "0" + aw.getMinutes() : aw.getMinutes());
if (typeof aj == "undefined" || typeof J == "undefined" || !aj || av != J) {
var ay = d("<dt />")
.append(htmlEncode(cnSubstr(y.user.displayName, 18)));
ay.append(d("<strong />")
.append("说"));
ay.append(d("<span />")
.append("(" + av + "):"));
}
aj = true;
J = av;
ai = undefined;
ax = ax.replace("\u000d\u000a", "<br/>");
ax = ax.replace(__hrefReg, function(az) {
if (az.indexOf("://") >= 0) {
return "<a href='" + az + "' target='_blank'>" + az + "</a>";
} else {
return "<a href='http://" + az + "' target='_blank'>" + az + "</a>";
}
});
var i = d("<dd />")
.append(EmoticonReplace(ax));
au.append(ay)
.append(i);
o.append(au);
o.scrollTop(o.get(0)
.scrollHeight);
};
j.logFriendMsg = function(ay) {
var aw = jMemUriToId(ay.FromMemberUri);
var aA = "";
var aB = j.memMap.get(aw);
if (aB == null) {
aA = aw;
j.isLogShowNumber = true;
} else {
aA = aB.displayName;
}
var au = d("<dl />")
.addClass("friend");
var az = new Date();
var av = az.getHours() + ":" + (az.getMinutes() < 10 ? "0" + az.getMinutes() : az.getMinutes());
if (typeof aj == "undefined" || typeof J == "undefined" || ai != aA || av != J || (ai == aA && av != J)) {
var ax = d("<dt />");
ax.append(d("<span />")
.append(htmlEncode(cnSubstr(aA, 18))));
ax.append(d("<strong />")
.append("说"));
ax.append(d("<span />")
.append("(" + av + "):"));
}
aj = false;
J = av;
ai = aA;
msg = htmlEncode(ay.Message);
msg = msg.replace("\u000d\u000a", "<br/>");
msg = msg.replace(__hrefReg, function(aC) {
if (aC.indexOf("://") >= 0) {
return "<a href='" + aC + "' target='_blank'>" + aC + "</a>";
} else {
return "<a href='http://" + aC + "' target='_blank'>" + aC + "</a>";
}
});
var i = d("<dd />")
.append(EmoticonReplace(msg));
au.append(ax)
.append(i);
o.append(au);
o.scrollTop(o.get(0)
.scrollHeight);
};
j.logErrorInfo = function(i) {
var au = d("<div />")
.addClass("code_error")
.append(i);
o.append(au)
.append("<br/>");
o.scrollTop(o.get(0)
.scrollHeight);
};
j.logSuggetInfo = function(i) {
var av = U.text();
var au;
if (i == 1) {
au = d('<span class="suggest">您被群 ' + av + " 的管理员移出了该群!</span>");
} else {
au = d('<span class="suggest">' + av + " 已经被超级管理员删除!</span>");
}
o.append(au)
.append("<br/>");
o.scrollTop(o.get(0)
.scrollHeight);
};
j.enableInput = function(i) {
j.enablechatInput = i;
if (i) {
j.inputPermission = 0;
w.removeClass()
.addClass("chat_input chat_pc")
.css("background-color", "");
ar.removeAttr("disabled")
.attr("contenteditable", "true")
.css("background-color", "");
r.find("img")
.removeAttr("disabled")
.attr("src", "images/face_btn.png");
M.removeAttr("disabled")
.removeClass()
.addClass("btn_send_new");
} else {
w.removeClass()
.addClass("chat_fileinput chat_pc")
.css("background-color", "#f0f0f0");
ar.attr("disabled", "disabled")
.attr("contenteditable", "false")
.css("background-color", "#f0f0f0");
r.find("img")
.attr("disabled", "disabled")
.attr("src", "images/face_btnfile.png");
M.attr("disabled", "disabled")
.removeClass()
.addClass("btn_sendfile_new");
}
};
j.collapse = function() {
var i = 0;
if (j.maxed) {
var au = g.width() + am.width();
Y.width(Y.width() + au);
i = j.width();
} else {
i = j.width() - am.width();
}
j.isExpanded = false;
j.resize(j.height(), i);
ah.removeClass("none");
ap.addClass("none");
am.hide();
};
j.expand = function() {
var i = 0;
if (j.maxed) {
var au = g.width() + am.width();
Y.width(Y.width() - au);
i = j.width();
} else {
i = j.width() + am.width();
}
j.isExpanded = true;
j.resize(j.height(), i);
ah.addClass("none");
ap.removeClass("none");
am.show();
};
ah.bind("click", j.expand);
ap.bind("click", j.collapse);
j.setBulltinWidth = function(i) {
j.find(".sign")
.css("width", i);
};
j.setUnavai = function() {
j.find(".message_content_new1")
.addClass("masklayer");
j.find(".btn_send_new")
.removeClass()
.addClass("btn_sendfile_new")
.unbind();
};
j.getSendMessagePlainText = function(i) {
var au = i ? i : ar.get(0)
.innerHTML;
if (au == "") {
return au;
} else {
if (d.browser.mozilla) {
au = au.replace(/<br[ ]*[\/]?>$/i, "");
}
var av = /<img [^>]*(?:>[^<]*<\/img>|>)|<br[ ]*[\/]?>/gi;
au = au.replace(av, function(ax) {
if (ax.toLowerCase()
.startsWith("<br")) {
return "\u000d\u000a";
} else {
var ay = d(ax)
.attr("src");
var aw = ay.substring(ay.lastIndexOf("/") + 1, ay.lastIndexOf("."));
return GetEmotionKey(aw);
}
});
return au;
}
return "";
};
var p = ContactStatus.Unknown;
var s = ContactType.Unknown;
var T = true;
var R = false;
var u = false;
j.setGroupInfo = function(au) {
y.group = au;
U.text(au.n + "(" + au.id + ")");
C.text(au.b);
C.attr("title", au.b);
var i = getGroupItemPortraitUrl(au, "2");
W.attr("src", i);
};
j.setGroupInfo(y.group);
function at(av) {
Z();
if (!j.maxed) {
av = window.event || av;
if (j.get(0)
.setCapture) {
j.get(0)
.setCapture();
} else {
if (window.captureEvents) {
window.captureEvents(Event.MOUSEMOVE | Event.MOUSEUP);
}
}
var aw = j.offset();
var i = getViewportHeight();
var au = getViewportWidth();
var ax = {
win: j,
mOffsetX: av.clientX - aw.left,
mOffsetY: av.clientY - aw.top,
viewH: i,
viewW: au
};
d.appendMaskPage(99);
j.bind("mousemove", ax, a)
.bind("mouseup", ax, e);
}
}
af.bind("mousedown", at);
function z(av) {
Z();
if (!j.maxed) {
av = window.event || av;
if (j.get(0)
.setCapture) {
j.get(0)
.setCapture();
} else {
if (window.captureEvents) {
window.captureEvents(Event.MOUSEMOVE | Event.MOUSEUP);
}
}
var i = getViewportHeight();
var au = getViewportWidth();
var aw = d(this)
.attr("direction");
var ax = {
win: j,
originSize: {
H: j.height(),
W: j.width()
},
moveDire: aw,
originX: av.clientX,
originY: av.clientY,
viewH: i,
viewW: au
};
d.appendMaskPage(99);
j.bind("mousemove", ax, c)
.bind("mouseup", ax, b);
}
}
j.find("div[direction]")
.bind("mousedown", z);
A.bind("mousedown", E);
A.find("i")
.bind("mouseover", function() {
var i = d(this)
.attr("class");
d(this)
.attr("class", i + "_on");
})
.bind("mouseout", function() {
var i = d(this)
.attr("class");
d(this)
.attr("class", i.replace(/^(.*)_on$/, "$1"));
});
j.isOnFocus = function() {
return parseInt(j.css("z-index")) == __zIndex - 1 && j.isActived;
};
aa.bind("click", j.close);
ab.bind("click", function() {
j.hide();
y.onMined(j);
});
j.max = function() {
j.resize(y.maxRelative.height() - 3, y.maxRelative.width() - 2);
};
function l() {
if (!j.maxed) {
j.maxed = true;
x.removeClass()
.addClass("resume");
j.lastPosition = {
"top": j.css("top"),
"left": j.css("left")
};
j.lastSize = {
"height": j.height(),
"width": j.width(),
"isExpanded": j.isExpanded
};
var i = y.maxRelative.offset();
j.css({
"top": i.top,
"left": i.left
});
j.max();
y.onMaxed(j, true);
} else {
j.maxed = false;
x.removeClass()
.addClass("max");
j.css({
"top": j.lastPosition.top,
"left": j.lastPosition.left
});
if (j.isExpanded != j.lastSize.isExpanded) {
if (j.lastSize.isExpanded) {
j.expand();
} else {
j.collapse();
}
}
j.resize(j.lastSize.height, j.lastSize.width);
y.onMaxed(j, false);
}
o.scrollTop(o.get(0)
.scrollHeight);
ar.blur();
ar.focus();
}
x.bind("click", l);
af.bind("dblclick", l);
j.bind("mousedown", function() {
j.css("z-index", __zIndex++);
y.onFocus(j);
});
var h, Q;
function P() {
if (document.selection) {
h = document.selection.createRange();
} else {
if (window.getSelection) {
Q = window.getSelection()
.getRangeAt(0);
}
}
}
var S = Math.ceil(parseFloat(ar.css("line-height")));
ar.bind("keydown", function(av) {
av = window.event || av;
var au = av.keyCode || av.charCode;
function aw() {
return (au == 13 && av.ctrlKey) || (au == 13 && av.shiftKey) || (au == 13 && av.altKey);
}
function i() {
return au == 13;
}
P();
if (aw()) {
if (h) {
h.text = "\r\n";
h.select();
} else {
if (Q) {
replaceSelection(Q, "<br>");
replaceSelection(Q, " ");
ar.scrollTop(ar.scrollTop() + S);
}
}
if (av.preventDefault) {
av.preventDefault();
} else {
av.returnValue = false;
}
} else {
if (i()) {
if (av.preventDefault) {
av.preventDefault();
} else {
av.returnValue = false;
}
M.click();
}
}
})
.bind("keypress", P)
.bind("keyup", P)
.bind("mousedown", P)
.bind("mouseup", P)
.bind("click", P);
ar.bind("paste", function(ax) {
ax = window.event || ax;
if (window.clipboardData) {
var aA = window.clipboardData.getData("Text");
window.clipboardData.setData("Text", aA);
} else {
if (!d.browser.mozilla) {
if (ax.preventDefault) {
ax.preventDefault();
} else {
ax.returnValue = false;
}
var az = ar.get(0);
az.focus();
var av = window.getSelection();
var au = av.getRangeAt(0);
var ay = "";
ay = ax.clipboardData.getData("Text");
var aA = new String(ay);
au.deleteContents();
var i = au.createContextualFragment(aA);
var aw = i.lastChild;
au.insertNode(i);
au.setEndAfter(aw);
au.collapse(false);
av.removeAllRanges();
av.addRange(au);
au.detach();
au = null;
}
}
if (d.browser.mozilla) {
setTimeout(function() {
var aB = ar.get(0)
.textContent;
ar.get(0)
.innerHTML = "";
ar.append(aB);
}, 10);
}
});
M.bind("mousedown", E)
.bind("click", function() {
var i = j.getSendMessagePlainText();
if (i == "") {
return;
}
i = htmlDecode(i);
i = htmlEncode(i);
y.onSendMessage(j, y.group.gUri, i);
ar.blur();
ar.focus();
});
r.bind("mousedown", E)
.bind("mouseover", function() {
r.addClass("btn_hover");
})
.bind("mouseout", function() {
r.removeClass("btn_hover");
})
.bind("click", function(i) {
r.toggleClass("btn_fechove");
if (al.css("display") == "none") {
al.css("display", "");
} else {
al.css("display", "none");
}
stopPropagation(i);
});
j.setInput = function(i) {
ar.get(0)
.innerHTML = EmoticonReplace(i);
if (d.browser.mozilla) {
ar.append("<br>");
}
};
setTimeout(function() {
al.fillImgs();
al.bindItemClick(function(i, au) {
stopPropagation(au);
setTimeout(function() {
var aw = d(i)
.children("img");
var ay = EntityReplace(aw.attr("pattern"));
var ax = EmoticonReplace(ay);
if (h && h.parentElement && h.parentElement()
.id == n) {
replaceSelection(h, ax);
} else {
if ((Q && Q.startContainer && Q.startContainer.id == n) || (Q && Q.startContainer && Q.startContainer.parentNode && Q.startContainer.parentNode.id == n)) {
replaceSelection(Q, ax);
if (Q) {
ar.blur();
ar.focus();
}
} else {
var av = ar.get(0)
.innerHTML;
if (d.browser.mozilla) {
av = av.replace(/<br[ ]*[\/]?>$/i, ax + "<br>");
} else {
av += ax;
}
ar.get(0)
.innerHTML = av;
}
}
r.toggleClass("btn_fechove");
}, 50);
});
}, 1000);
j.fixPosition = function() {
var i = {
"top": j.css("top"),
"left": j.css("left")
};
j.css({
"top": "-1000px",
"left": "-1000px"
});
window.setTimeout(function() {
j.css({
"top": i.top,
"left": i.left
});
}, 300);
};
return j;
}
});
function a(k) {
var l = k.data;
var j = l.win;
var i = l.mOffsetX;
var g = l.mOffsetY;
var h = l.viewH - j.outerHeight();
var f = l.viewW - j.outerWidth();
h = (h < 0 ? 0 : h);
f = (f < 0 ? 0 : f);
var n = window.event || k;
if (n.button < 2) {
var m = parseInt(n.clientY) - parseInt(g);
var o = parseInt(n.clientX) - parseInt(i);
m = (m < 0 ? 0 : m);
o = (o < 0 ? 0 : o);
m = (m > h ? h : m);
o = (o > f ? f : o);
j.css({
top: m + "px",
left: o + "px"
});
}
}
function e(f) {
var h = f.data;
var g = h.win;
if (g.get(0)
.releaseCapture) {
g.get(0)
.releaseCapture();
} else {
if (window.releaseEvents) {
window.releaseEvents(Event.MOUSEMOVE | Event.MOUSEUP);
}
}
d.removeMaskPage();
g.unbind("mousemove")
.unbind("mouseup");
}
function c(k) {
var l = k.data;
var j = l.win;
var g = l.originSize;
var q = l.moveDire;
var p = l.originX;
var n = l.originY;
var m = window.event || k;
if (m.clientX < 0 || m.clientY < 0 || m.clientX > l.viewW || m.clientY > l.viewH) {
return;
}
var h = g.W;
var f = g.H;
var o = false;
var i = false;
switch (q) {
case "right":
h = g.W + (m.clientX - p);
break;
case "left":
h = g.W - (m.clientX - p);
i = true;
break;
case "top":
f = g.H - (m.clientY - n);
o = true;
break;
case "bottom":
f = g.H + (m.clientY - n);
break;
case "right_top":
h = g.W + (m.clientX - p);
f = g.H - (m.clientY - n);
o = true;
break;
case "right_bottom":
h = g.W + (m.clientX - p);
f = g.H + (m.clientY - n);
break;
case "left_top":
h = g.W - (m.clientX - p);
f = g.H - (m.clientY - n);
o = true;
i = true;
break;
case "left_bottom":
h = g.W - (m.clientX - p);
f = g.H + (m.clientY - n);
i = true;
break;
}
if (h >= 480 && i) {
j.css("left", m.clientX);
}
if (f >= 365 && o) {
j.css("top", m.clientY);
}
h = (h < 480 ? 480 : h);
f = (f < 365 ? 365 : f);
j.resize(f, h);
}
function b(f) {
var h = f.data;
var g = h.win;
if (g.get(0)
.releaseCapture) {
g.get(0)
.releaseCapture();
} else {
if (window.releaseEvents) {
window.releaseEvents(Event.MOUSEMOVE | Event.MOUSEUP);
}
}
d.removeMaskPage();
g.unbind("mousemove")
.unbind("mouseup");
}
})(jQuery);
(function(a) {
a.extend(a.fn, {
jGroupMemTree: function(c) {
var g = a.extend({
target: a("#pop_group_box"),
enable: true,
isSinglePattern: true,
user: {},
group: {},
onBuddyItemClick: function() {}
}, c);
var f = a("#pop_group_box_" + g.group.id);
f.createBuddyList = function(i) {
var h = new Object();
var m = "";
var k = "";
m = "<div class='pop_group_tit'><h3>群成员</h3><span>(0/0)</span></div>";
k = "<ul class='pop_group_list' id='groupMem_list_" + i.id + "'>";
var l = "</ul>";
var j = new Array();
h.pushContent = function(n) {
j.push(n);
};
h.toHtmlString = function() {
j.sort(function(s, r) {
return groupBuddyComparator(s.buddyObj, r.buddyObj);
});
var q = "";
q += k;
var n = 0;
var p = j.length;
for (var o = 0; o < p; o++) {
q += j[o].strContent;
if (j[o].buddyObj.currIsOc) {
n++;
}
}
q += l;
m = m.replace("(0/0)", "(" + n + "/" + p + ")");
q = m + q;
return q;
};
return h;
};
f.createBuddyItem = function(l, n) {
var h = new Object();
var o = "buddyitem_" + l.id;
var k = EmotionNonhtmlReplace1(l.displayName, 14, false);
var j = l.isVip ? "vip_link" : "";
h.buddyObj = l;
l.statusClass;
var m = l.statusClass;
var p = portrait.fetion_16;
h.strContent = "<li id='" + o + "' on='' user='" + l.id + "'>" + "<a href='#' hidefocus='true' class=" + j + "><span class='" + l.priName + "'></span>" + "<strong class='BuddyList_Container'><img class='" + m + "' src='" + p + "'></strong><p>" + k + "</p></a></li>";
return h;
};
f.bindEventToItem = function() {
var h = f.find("li");
h.each(function(j) {
a(this)
.bind("click", function() {
a(this)
.siblings()
.removeClass("on");
a(this)
.addClass("on");
});
});
};
f.setInnerHtml = function(h) {
f.html(h);
f.bindEventToItem();
};
function e(j) {
var i = j.attr("user");
var h = g.group.id;
var k = h + "_" + i;
return __group_mem.get(k);
}
function d(n, m) {
var j = n.size();
if (j <= 0) {
return -1;
} else {
var r = e(n.eq(0));
if (groupBuddyComparator(m, r) <= 0) {
return 0;
}
var l = e(n.eq(j - 1));
if (groupBuddyComparator(m, l) > 0) {
return j;
}
var i = 0;
var k = j - 1;
var p = 0;
while (k - i > 1) {
var p = Math.floor((i + k) / 2);
var q = e(n.eq(p));
var h = groupBuddyComparator(m, q);
if (h <= 0) {
k = p;
} else {
if (h > 0) {
i = p;
}
}
}
var o = e(n.eq(i));
if (groupBuddyComparator(m, o) == 0) {
return i;
} else {
return k;
}
}
}
f.getBuddyList = function(j) {
var h = f;
var i = null;
if (typeof j != "undefined" && j != null) {
var k = h.find("#buddyList_" + j)
.next();
i = k.prev()
.andSelf();
}
return i;
};
f.insertBuddyItem = function(r, k) {
var o = a("#groupMem_list_" + k);
if (o.size() == 0) {
return;
}
var j = new Object();
var s = "buddyitem_" + r.id;
var m = r.mnn || r.minn || r.id;
var h = EmotionNonhtmlReplace1(r.displayName, 14, false);
var t = r.isVip == true ? 'class="vip_link"' : "";
j.buddyObj = r;
var l = buddyPor(r, r.statusClass, 1);
var q = "";
j = a("<li id='" + s + "' user='" + r.id + "'>" + "<a " + t + " hidefocus='true'><span class=" + r.priName + "></span>" + "<strong class='BuddyList_Container'><img class='" + r.statusClass + "' src='" + l + "'></strong>" + "<p>" + h + "</p></a></li>");
j.bind("click", function() {
a(this)
.siblings()
.removeClass("on");
a(this)
.addClass("on");
});
var p = o.parent()
.find("ul > li[id!='" + s + "']");
var i = p.size();
var n = d(p, r);
if (n < 0 || n >= i) {
o.parent()
.find("ul")
.append(j);
} else {
p.eq(n)
.before(j);
}
if (r.currIsOc) {
f.updateBuddyStat(k, 1, 1);
} else {
f.updateBuddyStat(k, 0, 1);
}
};
var b = /^\(([\d]+)\/([\d]+)\)$/ig;
f.updateBuddyStat = function(j, i, h) {
var l = a("#pop_group_box_" + j)
.children()
.eq(0)
.find("span");
var k = l.text()
.trim();
k = k.replace(b, function(o, n, p) {
return "(" + (parseInt(n) + i) + "/" + (parseInt(p) + h) + ")";
});
l.text(k);
};
f.deleteBuddyItem = function(j, m) {
var i = m.id;
var l = a("#groupMem_list_" + j);
if (l.size() == 0) {
return null;
}
var k = l.find("#buddyitem_" + i);
if (k.size() == 0) {
return null;
}
k.remove();
var n = m.lastIsOc;
var h = m.currIsOc;
if (h) {
f.updateBuddyStat(j, - 1, - 1);
} else {
f.updateBuddyStat(j, 0, - 1);
}
return k;
};
f.getBuddyItem = function(i, h) {
var j = a("#groupMem_list_" + i);
return j.parent()
.find("#buddyitem_" + h);
};
f.updateBuddyItem = function(j, q) {
var m = a("#groupMem_list_" + j);
var u = m.parent()
.find("#buddyitem_" + q.id);
var r = "buddyitem_" + q.id;
if (u.size() == 0) {
return;
}
var w, h, x, t;
w = u.find("img");
x = u.find("a");
t = u.find("span");
h = u.find("p");
if (q.statusClass != w.attr("class") && q.lastIsOc == q.currIsOc) {
if (q.currIsOc == false) {
f.updateBuddyStat(j, - 1, 0);
} else {
f.updateBuddyStat(j, 1, 0);
}
}
var k = buddyPor(q, q.statusClass, 1);
w.removeClass()
.addClass(q.statusClass);
w.attr("src", k);
var p = q.isVip ? "vip_link" : "";
x.removeClass()
.addClass(p);
t.removeClass()
.addClass(q.priName);
var s = EmotionNonhtmlReplace1(q.displayName, 14, false);
if (s) {
h.text(s);
}
var o = m.parent()
.find("ul > li[id!='" + r + "']");
var i = o.size();
var l = d(o, q);
if (l < 0 || l >= i) {
m.parent()
.find("ul")
.append(u);
} else {
o.eq(l)
.before(u);
}
var n = q.lastIsOc;
var v = q.currIsOc;
if (n != v) {
if (n && !v) {
f.updateBuddyStat(j, - 1, 0);
} else {
f.updateBuddyStat(j, 1, 0);
}
}
};
return f;
}
});
})(jQuery);
(function(b) {
b.extend(b.fn, {
jGroupSysMsg: function(g) {
var j = b.extend({
maxRelative: b(document.body),
user: {},
group: {},
popWin: {},
defaultHeight: 365,
defaultWidth: 480,
onActive: function() {},
onClosed: function() {},
onFocus: function() {}
}, g);
var i = j.popWin;
i.isActived = false;
i.isShow = false;
i.hasShown = false;
function h(k) {
stopPropagation(k);
i.css("z-index", __zIndex++);
j.onFocus(i);
}
i.close = function() {
i.css("z-index", - 1);
i.css({
"top": "-1000px",
"left": "-1000px"
});
i.isActived = false;
i.isShow = false;
i.hasShown = false;
j.onClosed(i);
};
i.active = function() {
i.isActived = true;
i.css("z-index", - 1);
j.onActive(i);
};
i.show = function(l, k) {
if (typeof l == "number" && typeof k == "number" && !i.maxed) {
i.css({
"top": l + "px",
"left": k + "px"
});
}
i.css("z-index", __zIndex++);
i.isShow = true;
i.hasShown = true;
j.onFocus(i);
};
i.focus = function() {
j.onFocus(i);
};
i.hide = function() {
i.css("z-index", - 1);
i.isShow = false;
};
i.bind("click", function() {});
function f(m) {
if (!i.maxed) {
m = window.event || m;
if (i.get(0)
.setCapture) {
i.get(0)
.setCapture();
} else {
if (window.captureEvents) {
window.captureEvents(Event.MOUSEMOVE | Event.MOUSEUP);
}
}
var n = i.offset();
var k = getViewportHeight();
var l = getViewportWidth();
var o = {
win: i,
mOffsetX: m.clientX - n.left,
mOffsetY: m.clientY - n.top,
viewH: k,
viewW: l
};
b.appendMaskPage(99);
i.bind("mousemove", o, a)
.bind("mouseup", o, c);
}
}
var e = i.find(".pop_group_cont_tit");
e.bind("mousedown", f);
i.isOnFocus = function() {
return parseInt(i.css("z-index")) == __zIndex - 1 && i.isActived;
};
var d = i.find("pop_group_close");
d.bind("click", i.close);
i.bind("mousedown", function() {
i.css("z-index", __zIndex++);
j.onFocus(i);
});
return i;
}
});
function a(k) {
var l = k.data;
var j = l.win;
var i = l.mOffsetX;
var g = l.mOffsetY;
var h = l.viewH - j.outerHeight();
var f = l.viewW - j.outerWidth();
h = (h < 0 ? 0 : h);
f = (f < 0 ? 0 : f);
var n = window.event || k;
if (n.button < 2) {
var m = parseInt(n.clientY) - parseInt(g);
var o = parseInt(n.clientX) - parseInt(i);
m = (m < 0 ? 0 : m);
o = (o < 0 ? 0 : o);
m = (m > h ? h : m);
o = (o > f ? f : o);
j.css({
top: m + "px",
left: o + "px"
});
}
}
function c(f) {
var h = f.data;
var g = h.win;
if (g.get(0)
.releaseCapture) {
g.get(0)
.releaseCapture();
} else {
if (window.releaseEvents) {
window.releaseEvents(Event.MOUSEMOVE | Event.MOUSEUP);
}
}
b.removeMaskPage();
g.unbind("mousemove")
.unbind("mouseup");
}
})(jQuery);
(function(g) {
var e = /(http:\/\/|https:\/\/|ftp:\/\/|www\.){1}[\w-]+(\.[\w-]+)*(:[\d]+)?(\/[\w-\.\/?&=]*)?/ig;
var a = /<img\s[\s\S]*?(alt='[^']*'|alt="[^"]*"|alt=[\S]*)[\s\S]*?(>[^<]*<\/img>|>)/gi;
var c = /^<br\s*\/?>$/i;
g.extend(g.fn, {
jChatWindow: function(au) {
var w = g.extend({
maxRelative: g(document.body),
mode: "singleChat",
user: {},
buddy: {},
defaultHeight: 365,
defaultWidth: 468,
onActive: function() {},
onClosed: function() {},
onFocus: function() {},
onMined: function() {},
onMaxed: function() {},
onResized: function() {},
onSendMessage: function() {}
}, au);
var X = g("<div />")
.attr("id", "Main_chatWindow_" + w.user.uid + "_" + w.buddy.uid)
.addClass("pop_default_message pop_dm_bg w450")
.css({
"top": "-1000px",
"left": "-1000px"
});
var s = g("<div />")
.addClass("pop_outer_new1");
var aa = g("<div />")
.addClass("pop_inner_new1");
X.append(s.append(aa));
X.appendTo(document.body);
w.maxRelative = ((typeof w.maxRelative == "string") ? g("#" + w.maxRelative) : w.maxRelative);
X.maxRelative = w.maxRelative;
var aF = g("<div />")
.addClass("pop_message_title h42_new1");
var D = w.buddy.statusClass;
var F = buddyPor(w.buddy, D, 2);
var t = g("<i />")
.addClass("nobg");
var o = g("<img />")
.attr("src", F);
var aH = g("<em />")
.addClass(status);
t.append(o)
.append(aH);
var aj = g("<span />")
.addClass("status");
var u = g("<strong />")
.addClass("pl20");
var J = g("<p />");
var ax = g("<h2 />")
.append(t)
.append(u)
.append(aj);
aF.append(ax)
.append(J);
aa.append(aF);
var at = g("<div />")
.addClass("pop_ctr_bar");
var aI = g("<i />")
.addClass("close");
var W = g("<i />")
.addClass("max");
var z = g("<i />")
.addClass("min");
at.append(z)
.append(W)
.append(aI);
aa.append(at);
var B = g("<div />")
.addClass("message_main_new1 clearfix");
var G = g("<div />")
.addClass("message_content_new1");
var ae = G;
var y = g("<div />")
.addClass("chat_info chat_new1 chat_append_sec")
.css({
"height": "158px"
});
var p = g("<div class='chat_append_tip chat_append_tip1'>请勿轻信汇款、中奖和话费充值等信息,谨防受骗。</div>");
y.append(p);
var m = g("<div />")
.addClass("face_main");
var j = g("<a />")
.attr("href", "#")
.attr("title", "选择表情")
.addClass("btn_face_new");
var af = g("<a />")
.attr("href", "#")
.attr("title", "设置字体")
.addClass("btn_fonts none");
var H = jChatWindowPopExpression();
H.css("display", "none");
var am = g("<div />")
.addClass("chat_input chat_pc");
var ao = "edit" + w.buddy.uid;
var R = g("<div contenteditable='true' id='" + ao + "'/>")
.addClass("chat_textarea");
if (g.browser.mozilla) {
R.append("<br/>");
}
am.append(R);
var ay = g("<div />")
.addClass("send_btn");
var P = g("<a />")
.attr("href", "#")
.addClass("btn_send_new")
.append("发 送");
var aC = g("<span>");
var ak = X.attr("id") + "_checkbox";
var C = g("<input />")
.attr("name", "checkbox")
.attr("type", "checkbox")
.attr("id", ak)
.attr("checked", "checked");
var Z = g("<label />")
.attr("for", ak)
.append("以短信方式发送");
aC.append(C)
.append(Z);
var aB = g("<strong />")
.attr("id", X.attr("id") + "smsWordCounter")
.html("180");
var aA = g("<em />")
.append("还可输入")
.append(aB)
.append("字");
ay.append(P)
.append(aC)
.append(aA);
G.append(y)
.append(m.append(j)
.append(af)
.append(H))
.append(am)
.append(ay);
var ad = g("<div />")
.addClass("extend_btn");
var x = g("<a />")
.attr("href", "#")
.addClass("btn_display none")
.append("显示");
var I = g("<a />")
.attr("href", "#")
.addClass("btn_hide")
.append("隐藏");
X.isExpanded = true;
ad.append(x)
.append(I);
var ar = g("<div />")
.addClass("avatar");
var E = g("<img alt='' complete='complete' />")
.attr("src", portrait.defaultIcon);
var an = g("<div />")
.addClass("user_info_topnew1");
var q = "";
var ah = "";
if (w.buddy.mn && w.buddy.mn.trim()
.length > 0) {
ah = "fetion_mobile_new1";
q = w.buddy.mn;
} else {
var r = new jCompactUri(w.buddy.uri);
ah = "fetion_num_new1";
if (r.isMobileNo) {
ah = "fetion_mobile_new1";
}
q = r.mobileNoOrSid;
}
var k = g("<a href='#' target='_blank'>申请公开手机号</a>");
var ac = "";
if (w.buddy.isCT) {
ac = "(电信)";
}
if (w.buddy.isCU) {
ac = "(联通)";
}
an.append(g("<div class='user_head_90new1' />")
.append(E))
.append('<ul class="user_info_new1">' + "<li><label id='buddy_num' class=\"fetion_gray\">" + q + "</label><span>" + ac + "</span></li></ul>");
var ai = g("<div />")
.addClass("user_info_botnew1");
var l = g("<img alt='' complete='complete' />")
.attr("src", portrait.defaultIcon);
ai.append(g("<i class='user_head_90new1' />")
.append(l));
ar.append(an)
.append(ai);
var L = null;
B.append(G)
.append(ar)
.append(ad);
aa.append(B);
var ab = g("<div class='chat_move_right' direction='right' />")
.css("cursor", "e-resize");
var Y = g("<div class='chat_move_left' direction='left' />")
.css("cursor", "w-resize");
var Q = g("<div class='chat_move_bottom' direction='bottom'><img alt='' src='images/onepixel.jpg' complete='complete' style='height:1px;width:1px' /></div>")
.css("cursor", "s-resize");
var aJ = g("<div class='chat_move_rb' direction='right_bottom'><img alt='' src='images/onepixel.jpg' complete='complete' style='height:1px;width:1px' /></div>")
.css("cursor", "se-resize");
var aG = g("<div class='chat_move_lb' direction='left_bottom'><img alt='' src='images/onepixel.jpg' complete='complete' style='height:1px;width:1px' /></div>")
.css("cursor", "sw-resize");
var N = g("<div class='chat_move_top' direction='top'><img alt='' src='images/onepixel.jpg' complete='complete' style='height:1px;width:1px' /></div>")
.css("cursor", "n-resize");
var aw = g("<div class='chat_move_rt' direction='right_top'><img alt='' src='images/onepixel.jpg' complete='complete' style='height:1px;width:1px' /></div>")
.css("cursor", "ne-resize");
var av = g("<div class='chat_move_lt' direction='left_top'><img alt='' src='images/onepixel.jpg' complete='complete' style='height:1px;width:1px' /></div>")
.css("cursor", "nw-resize");
X.append(N)
.append(Q)
.append(Y)
.append(ab)
.append(aJ)
.append(aw)
.append(aG)
.append(av);
X.lastPosition = {
"top": X.css("top"),
"left": X.css("left")
};
X.lastSize = {
"height": X.height(),
"width": X.width(),
"isExpanded": X.isExpanded
};
X.isActived = false;
X.isShow = false;
X.isExpanded = true;
X.maxed = false;
X.enablechatInput = true;
X.inputPermission = 0;
X.hasShown = false;
function ag(aL) {
stopPropagation(aL);
X.css("z-index", __zIndex++);
w.onFocus(X);
}
function T() {
H.css("display", "none");
}
X.close = function() {
X.css("z-index", - 1);
if (X.maxed) {
X.maxed = false;
X.css({
"top": X.lastPosition.top,
"left": X.lastPosition.left
});
y.scrollTop(y.get(0)
.scrollHeight);
}
X.css({
"top": "-1000px",
"left": "-1000px"
});
X.isActived = false;
X.isShow = false;
X.hasShown = false;
X.expand();
T();
R.get(0)
.innerHTML = g.browser.mozilla ? "<br/>" : "";
w.onClosed(X);
};
X.active = function() {
X.isActived = true;
X.css("z-index", - 1);
X.resize(w.defaultHeight, w.defaultWidth);
w.onActive(X);
};
X.show = function(aM, aL) {
if (typeof aM == "number" && typeof aL == "number" && !X.maxed) {
X.css({
"top": aM + "px",
"left": aL + "px"
});
}
X.css({
"z-index": __zIndex++,
"display": "block"
});
X.isShow = true;
X.hasShown = true;
R.blur();
R.focus();
X.resize();
w.onFocus(X);
};
X.focus = function() {
w.onFocus(X);
};
X.hide = function() {
X.css({
"z-index": -1,
"display": "none"
});
T();
X.isShow = false;
};
X.resize = function(aN, aM) {
if (typeof aN != "number") {
aN = X.height();
}
if (typeof aM != "number") {
aM = X.width();
}
y.height(0);
X.get(0)
.style.height = aN + "px";
X.get(0)
.style.width = aM + "px";
if (X.maxed) {
if (X.isExpanded) {
G.get(0)
.style.width = (aM - 143) + "px";
} else {
G.get(0)
.style.width = (aM - 11) + "px";
}
} else {
if (X.isExpanded) {
G.get(0)
.style.width = (aM - 143) + "px";
} else {
G.get(0)
.style.width = (aM - 11) + "px";
}
}
var aL = 0;
y.parent()
.children()
.each(function(aO) {
aL += g(this)
.outerHeight();
});
aL = aN - (aL + y.outerHeight()) - aF.outerHeight();
if (L && L.css("display") == "none") {
aL += L.outerHeight();
}
aL = ((aL < 0) ? 0 : aL);
y.get(0)
.style.height = aL + "px";
T();
w.onResized(X);
};
X.bind("click", function() {
T();
});
var K;
var aD;
X.logSelfMsg = function(aP) {
R.get(0)
.innerHTML = g.browser.mozilla ? "<br/>" : "";
var aM = g("<dl />")
.addClass("self");
var aO = new Date();
var aN = aO.getHours() + ":" + (aO.getMinutes() < 10 ? "0" + aO.getMinutes() : aO.getMinutes());
if (typeof K == "undefined" || typeof aD == "undefined" || !K || aN != aD) {
var aQ = g("<dt />")
.append(htmlEncode(cnSubstr(w.user.displayName, 18)));
aQ.append(g("<strong />")
.append("说"));
aQ.append(g("<span />")
.append("(" + aN + "):"));
}
K = true;
aD = aN;
aP = aP.replace(/\u000a|\u000d\u000a/gi, "<br>");
aP = aP.replace(__hrefReg, function(aR) {
if (aR.indexOf("://") >= 0) {
return "<a href='" + aR + "' target='_blank'>" + aR + "</a>";
} else {
return "<a href='http://" + aR + "' target='_blank'>" + aR + "</a>";
}
});
var aL = g("<dd />")
.append(EmoticonReplace(aP));
aM.append(aQ)
.append(aL);
y.append(aM);
y.scrollTop(y.get(0)
.scrollHeight);
};
X.logFriendMsg = function(aP) {
var aM = g("<dl />")
.addClass("friend");
var aO = new Date();
var aN = aO.getHours() + ":" + (aO.getMinutes() < 10 ? "0" + aO.getMinutes() : aO.getMinutes());
if (typeof K == "undefined" || typeof aD == "undefined" || K || aN != aD) {
var aQ = g("<dt />")
.append(htmlEncode(cnSubstr(w.buddy.displayName, 18)));
aQ.append(g("<strong />")
.append("说"));
aQ.append(g("<span />")
.append("(" + aN + "):"));
}
K = false;
aD = aN;
aP = htmlEncode(aP);
aP = aP.replace(/\u000a|\u000d\u000a/gi, "<br>");
aP = aP.replace(__hrefReg, function(aR) {
if (aR.indexOf("://") >= 0) {
return "<a href='" + aR + "' target='_blank'>" + aR + "</a>";
} else {
return "<a href='http://" + aR + "' target='_blank'>" + aR + "</a>";
}
});
var aL = g("<dd />")
.append(EmoticonReplace(aP));
aM.append(aQ)
.append(aL);
y.append(aM);
y.scrollTop(y.get(0)
.scrollHeight);
};
X.logErrorInfo = function(aL) {
var aM = g("<div />")
.addClass("code_error")
.append(aL);
y.append(aM)
.append("<br/>");
y.scrollTop(y.get(0)
.scrollHeight);
};
X.getSendMessagePlainText = function(aL) {
var aM = aL ? aL : R.get(0)
.innerHTML;
if (!aM) {
return "";
} else {
if (!g.browser.msie) {
aM = aM.replace(/<br[ ]*[\/]?>$/i, "");
aM = aM.replace(/<br[ ]*[\/]?>/gi, "\\u000a");
}
aM = aM.replace(/<br[ ]*[\/]?>/gi, "\\u000d\\u000a");
aM = aM.replace(a, function(aO) {
var aP = g(aO)
.attr("src");
var aN = aP.substring(aP.lastIndexOf("/") + 1, aP.lastIndexOf("."));
return GetEmotionKey(aN);
});
return aM;
}
return "";
};
X.enableInput = function(aL) {
X.enablechatInput = aL;
if (aL) {
X.inputPermission = 0;
am.removeClass()
.addClass("chat_input chat_pc")
.css("background-color", "");
R.removeAttr("disabled")
.attr("contenteditable", "true")
.css("background-color", "");
j.find("img")
.removeAttr("disabled")
.attr("src", "images/face_btn.png");
P.removeAttr("disabled")
.removeClass()
.addClass("btn_send_new");
} else {
am.removeClass()
.addClass("chat_fileinput chat_pc")
.css("background-color", "#f0f0f0");
R.attr("disabled", "disabled")
.attr("contenteditable", "false")
.css("background-color", "#f0f0f0");
j.find("img")
.attr("disabled", "disabled")
.attr("src", "images/face_btnfile.png");
P.attr("disabled", "disabled")
.removeClass()
.addClass("btn_sendfile_new");
}
};
X.collapse = function() {
var aL = 0;
if (X.maxed) {
var aM = ad.width() + ar.width();
G.width(G.width() + aM);
aL = X.width();
} else {
aL = X.width() - ar.width();
}
X.isExpanded = false;
X.resize(X.height(), aL);
x.removeClass("none");
I.addClass("none");
ar.addClass("none");
};
X.expand = function() {
var aL = 0;
if (X.maxed) {
var aM = ad.width() + ar.width();
G.width(G.width() - aM);
aL = X.width();
} else {
aL = X.width() + ar.width();
}
X.isExpanded = true;
X.resize(X.height(), aL);
x.addClass("none");
I.removeClass("none");
ar.removeClass("none");
};
x.bind("click", X.expand);
I.bind("click", X.collapse);
X.recalWordCount = function() {
if (C.attr("checked")) {
setTimeout(function() {
var aL = X.getSendMessagePlainText();
var aM = 180 - aL.length;
aB.html(aM);
if (aM < 0) {
aA.addClass("font_warning");
} else {
aA.removeClass("font_warning");
}
aL = null;
}, 200);
}
};
X.popWarnBySmsCheker = false;
X.onCkbSmsCheckerChanged = function(aL) {
if (aL) {
if (C.attr("checked")) {
if ((w.buddy.isCT || w.buddy.isCU)) {
if ( !! L) {
L.remove();
}
L = jChatWindowPopMessage({
target: ae,
canClose: true,
className: "pop_blacktxt",
onClose: X.resize
});
var aM = w.buddy.isCT ? "电信" : "联通";
L.css({
"padding-right": "13px"
})
.setInnerHtml("对方是" + aM + "用户,发送短信收费,每条同本地短信资费。");
X.resize();
X.popWarnBySmsCheker = true;
}
aA.css("display", "");
U = true;
g.increaseCounters("500600001");
} else {
aA.css("display", "none");
U = false;
if (X.popWarnBySmsCheker) {
if ( !! L) {
L.remove();
if ((w.buddy.status & ContactStatus.SmsOnline) == ContactStatus.SmsOnline) {
L = jChatWindowPopMessage({
target: ae,
canClose: true,
className: "pop_blacktxt",
onClose: X.resize
});
L.setInnerHtml("对方将在下次登录时收到您发送的信息。");
}
X.resize();
X.popWarnBySmsCheker = false;
}
}
}
} else {
aA.css("display", "none");
U = false;
}
X.recalWordCount();
};
C.bind("click", X.onCkbSmsCheckerChanged);
var aK = ContactStatus.Unknown;
var aq = ContactType.Unknown;
var v = true;
var U = false;
var n = false;
function A(aL, aM) {
if (aL.isCM && (aL.cas != "0" || aL.sms != "0.0:0:0")) {
C.removeAttr("checked");
X.onCkbSmsCheckerChanged(false);
C.attr("disabled", "disabled");
Z.css("color", "rgb(128, 128, 128)");
} else {
if (aM) {
if (w.user.isCM || aL.isCM) {
C.removeAttr("disabled");
Z.css("color", "");
} else {
C.removeAttr("checked");
X.onCkbSmsCheckerChanged(false);
C.attr("disabled", "disabled");
Z.css("color", "rgb(128, 128, 128)");
}
}
}
}
function O(aL, aO, aM) {
U = false;
n = false;
if (aO == ContactType.MobileBuddy) {
if (L) {
L.remove();
}
if (w.user.isMobile) {
L = jChatWindowPopMessage({
target: ae,
canClose: true,
className: "pop_blacktxt",
onClose: X.resize
});
L.setInnerHtml("对方是您的手机好友,您的消息将以长短信方式发送到对方手机。");
v = true;
} else {
L = jChatWindowPopMessage({
target: ae,
canClose: false,
className: "pop_blacklist",
onClose: X.resize
});
L.setInnerHtml("对方是您的手机好友,您尚未绑定手机号,无法与其发起会话。");
v = false;
}
U = true;
C.attr("checked", "checked");
X.onCkbSmsCheckerChanged(true);
C.attr("disabled", "disabled");
Z.css("color", "rgb(128, 128, 128)");
X.resize();
} else {
if (aO == ContactType.ChatFriend) {
if (L) {
L.remove();
}
L = jChatWindowPopMessage({
target: ae,
canClose: true,
className: "pop_blacktxt",
onClose: X.resize
});
if ((aM & ContactStatus.CloseService) == ContactStatus.CloseService) {
L.setInnerHtml("对方没有开通服务,您不能和其会话。");
C.attr("disabled", "disabled");
Z.css("color", "rgb(128, 128, 128)");
v = false;
} else {
var aN = g("<span>该用户不在您的好友列表中。</span><a href=#>点击此处添加为好友</a><br/><span>请勿轻信汇款、中奖等消息。</span><a href=#>点击此处将其加入黑名单</a>");
L.setInnerHtml(aN);
C.attr("disabled", "disabled");
Z.css("color", "rgb(128, 128, 128)");
X.resize();
aN.eq(1)
.bind("click", function() {
createAddBuddyTab(aL.sid);
return false;
});
aN.eq(4)
.bind("click", function() {
OpBuddy(aL.uid, "1");
return false;
});
if (getUserPermission(__user.gp, "contact") != 1) {
v = false;
} else {
v = true;
}
}
C.removeAttr("checked");
X.onCkbSmsCheckerChanged(false);
C.attr("disabled", "disabled");
Z.css("color", "rgb(128, 128, 128)");
} else {
if (aO == ContactType.FetionBuddy) {
ap(aL, aM);
}
}
}
X.onCkbSmsCheckerChanged(v);
A(aL, false);
}
function ap(aL, aM) {
if (L) {
L.remove();
}
if (aL.bss == "0" && aL.mn == "") {
L = jChatWindowPopMessage({
target: ae,
canClose: false,
className: "pop_blacktxt",
onClose: X.resize
});
L.setInnerHtml("对方没有开通服务,您不能和其会话。");
C.removeAttr("checked");
X.onCkbSmsCheckerChanged(false);
C.attr("disabled", "disabled");
Z.css("color", "rgb(128, 128, 128)");
X.resize();
v = false;
} else {
if ((aM & ContactStatus.Online) == ContactStatus.Online) {
X.resize();
C.removeAttr("checked");
X.onCkbSmsCheckerChanged(false);
if (w.user.isCM || w.buddy.isCM) {
C.removeAttr("disabled");
Z.css("color", "");
} else {
C.attr("disabled", "disabled");
Z.css("color", "rgb(128, 128, 128)");
}
v = true;
} else {
if ((aM & ContactStatus.Busy) == ContactStatus.Busy) {
L = jChatWindowPopMessage({
target: ae,
canClose: true,
className: "pop_blacktxt",
onClose: X.resize
});
L.setInnerHtml("对方“忙碌”,可能无法及时回复您的消息。");
X.resize();
C.removeAttr("checked");
X.onCkbSmsCheckerChanged(false);
if (w.user.isCM || aL.isCM) {
C.removeAttr("disabled");
Z.css("color", "");
} else {
C.attr("disabled", "disabled");
Z.css("color", "rgb(128, 128, 128)");
}
v = true;
} else {
if ((aM & ContactStatus.Away) == ContactStatus.Away) {
L = jChatWindowPopMessage({
target: ae,
canClose: true,
className: "pop_blacktxt",
onClose: X.resize
});
L.setInnerHtml("对方“离开”,可能无法及时回复您的消息。");
X.resize();
C.removeAttr("checked");
X.onCkbSmsCheckerChanged(false);
if (w.user.isCM || aL.isCM) {
C.removeAttr("disabled");
Z.css("color", "");
} else {
C.attr("disabled", "disabled");
Z.css("color", "rgb(128, 128, 128)");
}
v = true;
} else {
if ((aM & ContactStatus.SmsOnline) == ContactStatus.SmsOnline) {
L = jChatWindowPopMessage({
target: ae,
canClose: true,
className: "pop_blacktxt",
onClose: X.resize
});
C.removeAttr("checked");
X.onCkbSmsCheckerChanged(false);
if (w.user.isMobile) {
if (w.buddy.isCM) {
L.setInnerHtml("对方短信在线,您的消息会以短信发送到对方手机。");
C.removeAttr("disabled");
Z.css("color", "");
n = true;
v = true;
} else {
if (w.user.isCM && !w.buddy.isCM) {
L.setInnerHtml("对方将在下次登录时收到您发送的信息。");
C.removeAttr("disabled");
Z.css("color", "");
} else {
L.setInnerHtml("对方将在下次登录时收到您发送的信息。");
C.attr("disabled", "disabled");
Z.css("color", "rgb(128, 128, 128)");
n = false;
v = true;
}
}
} else {
L.setInnrHetml("对方离线,您的消息将在对方下次登录时发送。");
C.attr("disabled", "disabled");
Z.css("color", "rgb(128, 128, 128)");
v = true;
}
X.resize();
} else {
if ((aM & ContactStatus.Offline) == ContactStatus.Offline) {
L = jChatWindowPopMessage({
target: ae,
canClose: true,
className: "pop_blacktxt",
onClose: X.resize
});
L.setInnerHtml("对方离线,您的消息将在对方下次登录时发送。");
X.resize();
C.removeAttr("checked");
X.onCkbSmsCheckerChanged(false);
C.attr("disabled", "disabled");
Z.css("color", "rgb(128, 128, 128)");
v = true;
} else {
X.resize();
C.removeAttr("checked");
X.onCkbSmsCheckerChanged(false);
if (w.user.isCM || aL.isCM) {
C.removeAttr("disabled");
Z.css("color", "");
} else {
C.attr("disabled", "disabled");
Z.css("color", "rgb(128, 128, 128)");
}
v = true;
}
}
}
}
}
}
A(aL, false);
}
X.setBuddyStatus = function(aS) {
w.buddy = aS;
A(aS, true);
var aT = aS.type,
aN = aS.status;
var aL = (aq != aT);
var aM = (aK != aN);
if (aT != ContactType.ChatFriend) {
var aQ = aS.pd ? cnSubstr(aS.pd.trim(), 6) : getStatusDesc(aS, aT, aN);
aj.text("(" + aQ + ")");
} else {
aj.text("- 陌生人");
}
if (!aL && !aM) {
return;
}
var aR = aS.statusClass;
aH.removeClass()
.addClass(aR);
var aP = w.buddy.statusClass;
var aO = buddyPor(w.buddy, aP, 2);
o.attr("src", aO);
if ((aN & ContactStatus.BlockList) > 0) {
if (L) {
L.remove();
}
L = jChatWindowPopMessage({
target: ae,
canClose: true,
className: "pop_blacktxt",
onClose: X.resize
});
L.setInnerHtml("对方在您的黑名单中,您不能和其会话。");
X.resize();
C.removeAttr("checked");
X.onCkbSmsCheckerChanged(false);
C.attr("disabled", "disabled");
Z.css("color", "rgb(128, 128, 128)");
v = false;
} else {
O(aS, aT, aN);
}
aK = aN;
aq = aT;
X.enableInput(v);
};
X.setBuddyStatus(w.buddy);
X.getBuddyDisplayNo = function(aM) {
var aL = "";
var aO = "";
if (aM.mn && aM.mn.trim()
.length > 0) {
aO = "fetion_mobile_new1";
aL = aM.mn;
} else {
var aN = new jCompactUri(aM.uri);
aO = "fetion_num_new1";
if (aN.isMobileNo) {
aO = "fetion_mobile_new1";
}
aL = aN.mobileNoOrSid;
}
return {
"num": aL,
"className": aO
};
};
X.setBuddyInfo = function(aN) {
w.buddy = aN;
u.text(cnSubstr(aN.displayName, 18));
J.text(cnSubstr(aN.ct == 1 ? "" : aN.i, 38));
var aO = aN.statusClass;
var aP = buddyPor(aN, aO, 2);
o.attr("src", aP);
E.attr("src", getUserPortraitUrl(w.buddy));
var aL = X.getBuddyDisplayNo(w.buddy);
an.find("#buddy_num")
.text(aL.num);
if (w.buddy.isCT || w.buddy.isCU) {
var aM = "";
aM = w.buddy.isCT ? "(电信)" : (w.buddy.isCU ? "(联通)" : "");
an.find("#buddy_num")
.next()
.text(aM);
}
};
X.setBuddyInfo(w.buddy);
X.setUserInfo = function(aL) {
w.user = aL;
l.attr("src", getUserPortraitUrl(aL));
if (w.user.cas != "0" && w.user.isMobile) {
C.removeAttr("checked");
X.onCkbSmsCheckerChanged(false);
C.attr("disabled", "disabled");
Z.css("color", "rgb(128, 128, 128)");
}
};
X.setUserInfo(w.user);
function S(aN) {
T();
if (!X.maxed) {
aN = window.event || aN;
if (X.get(0)
.setCapture) {
X.get(0)
.setCapture();
} else {
if (window.captureEvents) {
window.captureEvents(Event.MOUSEMOVE | Event.MOUSEUP);
}
}
var aO = X.offset();
var aL = getViewportHeight();
var aM = getViewportWidth();
var aP = {
win: X,
mOffsetX: aN.clientX - aO.left,
mOffsetY: aN.clientY - aO.top,
viewH: aL,
viewW: aM
};
g.appendMaskPage(99);
X.bind("mousemove", aP, b)
.bind("mouseup", aP, h);
}
}
aF.bind("mousedown", S);
function V(aN) {
T();
if (!X.maxed) {
aN = window.event || aN;
if (X.get(0)
.setCapture) {
X.get(0)
.setCapture();
} else {
if (window.captureEvents) {
window.captureEvents(Event.MOUSEMOVE | Event.MOUSEUP);
}
}
var aL = getViewportHeight();
var aM = getViewportWidth();
var aO = g(this)
.attr("direction");
var aP = {
win: X,
originSize: {
H: X.height(),
W: X.width()
},
moveDire: aO,
originX: aN.clientX,
originY: aN.clientY,
viewH: aL,
viewW: aM
};
g.appendMaskPage(99);
X.bind("mousemove", aP, f)
.bind("mouseup", aP, d);
}
}
X.find("div[direction]")
.bind("mousedown", V);
at.bind("mousedown", ag);
at.find("i")
.bind("mouseover", function() {
var aL = g(this)
.attr("class");
g(this)
.attr("class", aL + "_on");
})
.bind("mouseout", function() {
var aL = g(this)
.attr("class");
g(this)
.attr("class", aL.replace(/^(.*)_on$/, "$1"));
});
X.isOnFocus = function() {
return parseInt(X.css("z-index")) == __zIndex - 1 && X.isActived;
};
ax.bind("mousedown", ag);
J.bind("mousedown", ag);
aI.bind("click", X.close);
z.bind("click", function() {
X.hide();
w.onMined(X);
});
X.max = function() {
X.resize(w.maxRelative.height() - 3, w.maxRelative.width() - 2);
};
function aE() {
if (!X.maxed) {
X.maxed = true;
W.removeClass()
.addClass("resume");
X.lastPosition = {
"top": X.css("top"),
"left": X.css("left")
};
X.lastSize = {
"height": X.height(),
"width": X.width(),
"isExpanded": X.isExpanded
};
var aL = w.maxRelative.offset();
X.css({
"top": aL.top,
"left": aL.left
});
X.max();
w.onMaxed(X, true);
} else {
X.maxed = false;
W.removeClass()
.addClass("max");
X.css({
"top": X.lastPosition.top,
"left": X.lastPosition.left
});
if (X.isExpanded != X.lastSize.isExpanded) {
if (X.lastSize.isExpanded) {
X.expand();
} else {
X.collapse();
}
}
X.resize(X.lastSize.height, X.lastSize.width);
w.onMaxed(X, false);
}
y.scrollTop(y.get(0)
.scrollHeight);
R.blur();
R.focus();
}
W.bind("click", aE);
aF.bind("dblclick", aE);
X.bind("mousedown", function() {
X.css("z-index", __zIndex++);
w.onFocus(X);
});
var i, al;
function M() {
if (document.selection) {
i = document.selection.createRange();
} else {
if (window.getSelection) {
al = window.getSelection()
.getRangeAt(0);
}
}
}
var az = Math.ceil(parseFloat(R.css("line-height")));
R.bind("keydown", function(aN) {
aN = window.event || aN;
var aM = aN.keyCode || aN.charCode;
function aO() {
return (aM == 13 && aN.ctrlKey) || (aM == 13 && aN.shiftKey) || (aM == 13 && aN.altKey);
}
function aL() {
return aM == 13;
}
M();
if (aO()) {
if (i) {
i.text = "\r\n";
i.select();
} else {
if (al) {
replaceSelection(al, "<br>");
replaceSelection(al, " ");
R.scrollTop(R.scrollTop() + az);
}
}
if (aN.preventDefault) {
aN.preventDefault();
} else {
aN.returnValue = false;
}
} else {
if (aL()) {
if (aN.preventDefault) {
aN.preventDefault();
} else {
aN.returnValue = false;
}
P.click();
}
}
})
.bind("keypress", M)
.bind("keyup", M)
.bind("mousedown", M)
.bind("mouseup", M)
.bind("click", M);
R.bind("keydown", X.recalWordCount);
R.bind("keyup", X.recalWordCount);
R.bind("paste", function(aP) {
aP = window.event || aP;
if (window.clipboardData) {
var aS = window.clipboardData.getData("Text");
window.clipboardData.setData("Text", aS);
} else {
if (!g.browser.mozilla) {
if (aP.preventDefault) {
aP.preventDefault();
} else {
aP.returnValue = false;
}
var aR = R.get(0);
aR.focus();
var aN = window.getSelection();
var aM = aN.getRangeAt(0);
var aQ = "";
aQ = aP.clipboardData.getData("Text");
var aS = new String(aQ);
aM.deleteContents();
var aL = aM.createContextualFragment(aS);
var aO = aL.lastChild;
aM.insertNode(aL);
aM.setEndAfter(aO);
aM.collapse(false);
aN.removeAllRanges();
aN.addRange(aM);
aM.detach();
aM = null;
}
}
if (g.browser.mozilla) {
setTimeout(function() {
var aT = R.get(0)
.textContent;
R.get(0)
.innerHTML = "";
R.append(aT);
}, 10);
}
X.recalWordCount();
});
P.bind("mousedown", ag)
.bind("click", function() {
var aP = X.getSendMessagePlainText();
if (aP == "") {
return;
}
if (C.attr("checked")) {
var aT = "rgb(255,204,204)";
if (aP.length > 180) {
var aO = R.get(0);
var aS = 0;
var aM = 0;
var aN = 0;
var aR = function() {
aO.style.backgroundColor = aT;
aS = setTimeout(aQ, 100);
aL();
++aN;
};
var aQ = function() {
aO.style.backgroundColor = "";
aM = setTimeout(aR, 100);
aL();
++aN;
};
var aL = function() {
if (aN > 3) {
clearTimeout(aS);
clearTimeout(aM);
aO.style.backgroundColor = "";
}
};
aR();
return;
}
}
aP = htmlDecode(aP);
aP = htmlEncode(aP);
if (!g.browser.msie) {
aP = aP.replace(/\\u000a/gi, "\u000a");
}
aP = aP.replace(/\\u000d\\u000a/gi, "\u000d\u000a");
if (C.attr("checked")) {
U = true;
n = false;
} else {
U = false;
}
w.onSendMessage(X, w.buddy.uid, aP, U, n);
R.blur();
R.focus();
X.recalWordCount();
});
j.bind("mousedown", ag)
.bind("mouseover", function() {
j.addClass("btn_hover");
})
.bind("mouseout", function() {
j.removeClass("btn_hover");
})
.bind("click", function(aL) {
j.toggleClass("btn_fechove");
if (H.css("display") == "none") {
H.css("display", "");
} else {
H.css("display", "none");
}
stopPropagation(aL);
});
X.setInput = function(aL) {
R.get(0)
.innerHTML = EmoticonReplace(aL);
if (g.browser.mozilla) {
R.append("<br>");
}
};
setTimeout(function() {
H.fillImgs();
H.bindItemClick(function(aL, aM) {
stopPropagation(aM);
setTimeout(function() {
var aO = g(aL)
.children("img");
var aQ = EntityReplace(aO.attr("pattern"));
var aP = EmoticonReplace(aQ);
if (i && i.parentElement && i.parentElement()
.id == ao) {
replaceSelection(i, aP);
} else {
if ((al && al.startContainer && al.startContainer.id == ao) || (al && al.startContainer && al.startContainer.parentNode && al.startContainer.parentNode.id == ao)) {
replaceSelection(al, aP);
if (al) {
R.blur();
R.focus();
}
} else {
var aN = R.get(0)
.innerHTML;
if (g.browser.mozilla) {
aN = aN.replace(/<br[ ]*[\/]?>$/i, aP + "<br>");
} else {
aN += aP;
}
R.get(0)
.innerHTML = aN;
}
}
j.toggleClass("btn_fechove");
}, 50);
});
}, 1000);
X.fixPosition = function() {
var aL = {
"top": X.css("top"),
"left": X.css("left")
};
X.css({
"top": "-1000px",
"left": "-1000px"
});
window.setTimeout(function() {
X.css({
"top": aL.top,
"left": aL.left
});
}, 300);
};
return X;
}
});
function b(n) {
var o = n.data;
var m = o.win;
var l = o.mOffsetX;
var j = o.mOffsetY;
var k = o.viewH - m.outerHeight();
var i = o.viewW - m.outerWidth();
k = (k < 0 ? 0 : k);
i = (i < 0 ? 0 : i);
var q = window.event || n;
if (q.button < 2) {
var p = parseInt(q.clientY) - parseInt(j);
var r = parseInt(q.clientX) - parseInt(l);
p = (p < 0 ? 0 : p);
r = (r < 0 ? 0 : r);
p = (p > k ? k : p);
r = (r > i ? i : r);
m.css({
top: p + "px",
left: r + "px"
});
}
}
function h(i) {
var k = i.data;
var j = k.win;
if (j.get(0)
.releaseCapture) {
j.get(0)
.releaseCapture();
} else {
if (window.releaseEvents) {
window.releaseEvents(Event.MOUSEMOVE | Event.MOUSEUP);
}
}
g.removeMaskPage();
j.unbind("mousemove")
.unbind("mouseup");
}
function f(n) {
var o = n.data;
var m = o.win;
var j = o.originSize;
var t = o.moveDire;
var s = o.originX;
var q = o.originY;
var p = window.event || n;
if (p.clientX < 0 || p.clientY < 0 || p.clientX > o.viewW || p.clientY > o.viewH) {
return;
}
var k = j.W;
var i = j.H;
var r = false;
var l = false;
switch (t) {
case "right":
k = j.W + (p.clientX - s);
break;
case "left":
k = j.W - (p.clientX - s);
l = true;
break;
case "top":
i = j.H - (p.clientY - q);
r = true;
break;
case "bottom":
i = j.H + (p.clientY - q);
break;
case "right_top":
k = j.W + (p.clientX - s);
i = j.H - (p.clientY - q);
r = true;
break;
case "right_bottom":
k = j.W + (p.clientX - s);
i = j.H + (p.clientY - q);
break;
case "left_top":
k = j.W - (p.clientX - s);
i = j.H - (p.clientY - q);
r = true;
l = true;
break;
case "left_bottom":
k = j.W - (p.clientX - s);
i = j.H + (p.clientY - q);
l = true;
break;
}
if (k >= 468 && l) {
m.css("left", p.clientX);
}
if (i >= 365 && r) {
m.css("top", p.clientY);
}
k = (k < 468 ? 468 : k);
i = (i < 365 ? 365 : i);
m.resize(i, k);
}
function d(i) {
var k = i.data;
var j = k.win;
if (j.get(0)
.releaseCapture) {
j.get(0)
.releaseCapture();
} else {
if (window.releaseEvents) {
window.releaseEvents(Event.MOUSEMOVE | Event.MOUSEUP);
}
}
g.removeMaskPage();
j.unbind("mousemove")
.unbind("mouseup");
}
})(jQuery);
(function(a) {
a.extend(a.fn, {
jContactTree: function(c) {
var g = a.extend({
target: a(document.body),
enable: true,
isSinglePattern: true,
user: {},
onBuddyListExpand: function() {},
onBuddyItemDbClick: function() {},
onBuddyItemClick: function() {},
onBuddyItemMouseOver: function() {},
onBuddyItemMouseOut: function() {},
onBuddyItemRightClick: function() {}
}, c);
g.target = ((typeof g.target == "string") ? a("#" + g.target) : g.target);
var f = a("<div id='friends_list'><dl /></div>")
.addClass("friends_list");
if (g.isSinglePattern) {
f.addClass("friends_list_1");
}
g.target.append(f);
f.adjustHeight = function(i) {
if (typeof i == "undefined") {
i = g.target.innerHeight() - a("#search_friends")
.outerHeight(true) - a("#add_friend")
.outerHeight(true) - 46;
}
f.height(i);
};
f.adjustHeight();
f.setPattern = function(h) {
g.isSinglePattern = h;
};
f.createBuddyList = function(n, j) {
var h = new Object();
var o = "";
var l = "";
var i = htmlEncode(n.n);
if (j) {
o = "<dt id='" + "buddyList_" + n.id + "' title='" + i + "' class='open'><b>" + i + "</b><em>(0/0)</em></dt>";
l = "<dd>";
} else {
o = "<dt id='" + "buddyList_" + n.id + "' title='" + i + "'><b>" + i + "</b><em>(0/0)</em></dt>";
l = "<dd style='display:none'>";
}
if (g.isSinglePattern) {
l += "<ul class='friends_list_small'>";
} else {
l += "<ul>";
}
var m = "</ul></dd>";
var k = new Array();
h.pushContent = function(p) {
k.push(p);
};
h.toHtmlString = function() {
k.sort(function(u, t) {
return buddyComparator(u.buddyObj, t.buddyObj);
});
var s = "";
s += l;
var p = 0;
var r = k.length;
for (var q = 0; q < r; q++) {
s += k[q].strContent;
if (k[q].buddyObj.currIsOc) {
p++;
}
}
s += m;
o = o.replace("<em>(0/0)</em>", "<em>(" + p + "/" + r + ")</em>");
s = o + s;
return s;
};
return h;
};
f.createBuddyItem = function(n) {
var i = new Object();
var o = "buddyitem_" + n.uid;
var m = n.statusClass;
var h = EmotionNonhtmlReplace(n.displayName, - 1, true);
var k = cnSubstr((!n.i || n.ct == 1) ? "" : EmotionNonhtmlReplace(n.i, - 1, true), 22 - h.length, true);
var j = "";
if (n.isVip) {
j = " style='color:red;'";
}
i.buddyObj = n;
var l = "";
var p = portrait.fetion_16;
if (g.isSinglePattern) {
l = getContactPresDesc(n);
i.strContent = "<li id='" + o + "' on='' user='" + n.uid + "'>" + "<div class=friends_info><h5><strong class=BuddyList_Container><img src='" + p + "'><em class='" + m + "'></em></strong>" + "<label " + j + ">" + h + "</label> <span>" + k + "</span><em> " + l + "</em></h5></div>" + "<div class=friend_control></div></li>";
} else {
var l = n.pd ? cnSubstr(n.pd.trim(), 6) : getStatusDesc(n);
l = htmlEncode(l);
i.strContent = "<li id='" + o + "' user='" + n.uid + "'>" + "<div class=friends_photo_box><img class=friends_photo alt='' src='" + p + "' complete='complete' /></div>" + "<div class=friends_info><h5><i class='" + m + "'></i><label " + j + ">" + h + "</label> <em> " + l + "</em></h5><p>" + k + "</p></div>" + "<div class=friend_control></div></li>";
}
return i;
};
f.firstTop = 0;
f.h = 0;
f.portraitFlag = false;
f.bind("mousedown", function() {
var h = parseInt(f.css("height"));
if (f.firstTop == 0) {
f.firstTop = f.find("dt:first")
.offset()
.top;
}
f.h = h + f.firstTop;
})
.bind("scroll", function() {
var k, j;
j = f.find("dt[class='open']");
if (j.size() <= 0) {
return;
}
k = j.next();
var i = k.find("ul > li[on!='1']");
if (i.size() > 0 && i.first()
.offset()
.top <= f.h) {
var h;
i.each(function(l, m) {
a(m)
.attr("on", "1");
var o = a(m)
.attr("id")
.substring(10);
if (__contactMap.containsKey(o)) {
h = __contactMap.get(o);
var n = buddyPor(h, h.statusClass, 1);
a(m)
.find(".BuddyList_Container > img")
.attr("src", n);
}
if (l >= 29) {
if (!a(m)
.next()
.attr("id") || a(m)
.next()
.offset()
.top > f.h) {
return false;
}
}
});
}
});
f.bindEventToList = function() {
f.find("dt")
.bind("click", function() {
var k = {
expanded: false
};
var i = a(this);
var j = i.next();
if (j.css("display") == "none") {
k.expanded = true;
i.addClass("open");
j.css("display", "");
if (__contactMap.size() > 10 && j.find("ul > li[on='1']")
.size() <= 0) {
var h;
j.find("ul > li")
.each(function(l, m) {
a(m)
.attr("on", "1");
var o = a(m)
.attr("id")
.substring(10);
if (__contactMap.containsKey(o)) {
h = __contactMap.get(o);
var n = buddyPor(h, h.statusClass, 1);
a(m)
.find(".BuddyList_Container > img")
.attr("src", n);
}
if (l >= 29) {
if (!a(m)
.next()
.attr("id") || a(m)
.next()
.offset()
.top > f.h) {
return false;
}
}
});
}
} else {
k.expanded = false;
i.removeAttr("class");
j.css("display", "none");
}
return false;
});
};
f.bindEventToItem = function() {
var h = f.find("li");
h.bind("mouseover", function(i) {
if (isMouseOver(this, i)) {
this.className = "hover";
g.onBuddyItemMouseOver(this, a(this)
.attr("user"));
}
})
.bind("mouseout", function(i) {
if (isMouseOut(this, i)) {
this.className = "";
g.onBuddyItemMouseOut(this, a(this)
.attr("user"));
}
})
.bind("dblclick", function() {
g.onBuddyItemDbClick(this, a(this)
.attr("user"));
})
.bind("click", function() {
g.onBuddyItemClick(this, a(this)
.attr("user"));
});
h.each(function(l) {
var m = a(this);
var k = a(this)
.attr("user");
var j;
if (g.isSinglePattern) {
j = m.children()
.eq(1);
} else {
j = m.children()
.eq(2);
}
j.bind("click", function() {
g.onBuddyItemRightClick(this, k);
this.className = "friend_control friend_control_down";
});
});
};
f.fixSpecialList = function(k) {
for (var j = 0, l = k.length; j < l; j++) {
var h = __contactTree.getBuddyList(k[j]);
var m = h.eq(1)
.find("ul > li:first");
if (m.length <= 0) {
h.eq(0)
.css("display", "none");
} else {
h.eq(0)
.css("display", "");
}
}
};
f.setInnerHtml = function(h) {
f.children()
.get(0)
.innerHTML = h;
f.bindEventToList();
f.bindEventToItem();
f.fixSpecialList(["0", "-1"]);
};
f.insertBuddyList = function(m, l) {
var p = f;
var n = a("<dt><b /><em /></dt><dd><ul /></dd>");
var k = n.eq(0)
.attr("id", "buddyList_" + m.id)
.attr("title", m.n);
var h = k.find("b")
.text(m.n);
var j = k.find("em")
.text("(0/0)");
var i = n.eq(1)
.css("display", "none");
k.bind("click", function() {
var q = {
expanded: false
};
if (i.css("display") == "none") {
q.expanded = true;
k.addClass("open");
i.css("display", "");
} else {
q.expanded = false;
k.removeClass("open");
i.css("display", "none");
}
return false;
});
var o = p.find("dt");
if (o.length <= 0) {
p.children()
.eq(0)
.append(n);
} else {
if (typeof l == "number" && l >= 0 && l < o.length) {
o.eq(l)
.before(n);
} else {
p.children()
.eq(0)
.append(n);
}
}
return n;
};
function e(i) {
var h = i.attr("user");
return __contactMap.get(h);
}
function d(n, m) {
var j = n.size();
if (j <= 0) {
return -1;
} else {
var r = e(n.eq(0));
if (buddyComparator(m, r) <= 0) {
return 0;
}
var l = e(n.eq(j - 1));
if (buddyComparator(m, l) > 0) {
return j;
}
var i = 0;
var k = j - 1;
var p = 0;
while (k - i > 1) {
var p = Math.floor((i + k) / 2);
var q = e(n.eq(p));
var h = buddyComparator(m, q);
if (h <= 0) {
k = p;
} else {
if (h > 0) {
i = p;
}
}
}
var o = e(n.eq(i));
if (buddyComparator(m, o) == 0) {
return i;
} else {
return k;
}
}
}
f.getBuddyList = function(j) {
var h = f;
var i = null;
if (typeof j != "undefined" && j != null) {
var k = h.find("#buddyList_" + j)
.next();
i = k.prev()
.andSelf();
}
return i;
};
f.isBuddyListOpen = function(h) {
var i = f.getBuddyList(h);
if (i == null || i.size() == 0) {
return false;
} else {
return "none" != i.eq(1)
.css("display");
}
};
f.insertBuddyItem = function(u, i) {
var x = f.getBuddyList(i);
if (x.size() == 0) {
return;
}
var q = "buddyitem_" + u.uid;
var s, m;
if (g.isSinglePattern) {
s = a("<li><div /><div /></li>")
.attr("id", q);
var v = s.children();
var o = buddyPor(u, u.statusClass, 1);
var z = a('<strong class="BuddyList_Container"><img src="' + o + '"><em class="' + u.statusClass + '"></em></strong>');
var w = a("<label />");
var p = a("<span />");
var l = a("<em />");
w.text(u.displayName);
l.text(" " + getContactPresDesc(u));
var r = a("<h5 />")
.append(z)
.append(w)
.append(" ")
.append(p)
.append(l);
v.eq(0)
.addClass("friends_info")
.append(r);
m = v.eq(1);
} else {
s = a("<li><div /><div /><div /></li>")
.attr("id", q);
var j = a("<img complete='complete' alt=''/>")
.addClass("friends_photo");
j.attr("src", getUserPortraitUrl(u, "3"));
var v = s.children();
v.eq(0)
.addClass("friends_photo_box")
.append(j);
var z = a("<i />")
.addClass(u.statusClass);
var h = a("<em />");
var w = a("<label />");
var y = u.pd ? cnSubstr(u.pd.trim(), 6) : getStatusDesc(u);
h.text(" " + y);
w.text(u.displayName);
var r = a("<h5 />")
.append(z)
.append(w)
.append(h);
var p = a("<p />");
v.eq(1)
.addClass("friends_info")
.append(r)
.append(p);
m = v.eq(2);
}
m.addClass("friend_control");
m.bind("click", function() {
g.onBuddyItemRightClick(s, u.uid.toString());
this.className = "friend_control friend_control_down";
});
s.bind("mouseover", function() {
this.className = "hover";
g.onBuddyItemMouseOver(this, u.uid.toString());
})
.bind("mouseout", function() {
this.className = "";
g.onBuddyItemMouseOut(this, u.uid.toString());
})
.bind("dblclick", function() {
g.onBuddyItemDbClick(this, u.uid.toString());
})
.bind("click", function() {
g.onBuddyItemClick(this, u.uid.toString());
});
var t = x.eq(1)
.find("ul > li[id!='" + q + "']");
var k = t.size();
var n = d(t, u);
if (n < 0 || n >= k) {
x.eq(1)
.find("ul")
.append(s);
} else {
t.eq(n)
.before(s);
}
if (u.currIsOc) {
f.updateBuddyStat(i, 1, 1);
} else {
f.updateBuddyStat(i, 0, 1);
}
if (i == "0" || i == "-1") {
f.fixSpecialList([i]);
}
};
var b = /^\(([\d]+)\/([\d]+)\)$/ig;
f.updateBuddyStat = function(j, i, h) {
var l = f.getBuddyList(j);
if (l.size() == 0) {
return;
}
var m = l.eq(0)
.children("em:first");
var k = m.text()
.trim();
k = k.replace(b, function(o, n, p) {
return "(" + (parseInt(n) + i) + "/" + (parseInt(p) + h) + ")";
});
m.text(k);
};
f.deleteBuddyItem = function(i, j) {
var l = f.getBuddyList(i);
if (l.size() == 0) {
return null;
}
var k = l.eq(1)
.find("#buddyitem_" + j);
if (k.size() == 0) {
return null;
}
k.remove();
var h = __contactMap.get(j);
if (h && h.currIsOc) {
f.updateBuddyStat(i, - 1, - 1);
} else {
f.updateBuddyStat(i, 0, - 1);
}
if (i == "0" || i == "-1") {
f.fixSpecialList([i]);
}
return k;
};
f.getBuddyItem = function(h, i) {
var j = f.getBuddyList(h);
return j.eq(1)
.find("#buddyitem_" + i);
};
f.updateBuddyItem = function(h, v) {
var x = f.getBuddyList(h);
var y = f.getBuddyItem(h, v.uid);
var r = "buddyitem_" + v.uid;
if (y.size() == 0) {
return;
}
var s, p, i;
if (g.isSinglePattern) {
s = y.find("div:nth-child(1) > h5 > span:first");
p = y.find("div:nth-child(1) > h5 > strong> em:first");
i = y.find("div:nth-child(1) > h5 > label:first");
var o = y.find("div:nth-child(1) > h5 > strong> img:first");
var j = v.statusClass;
var m = buddyPor(v, j, 1);
o.attr("src", m);
var l = y.find("div:nth-child(1) > h5 > em:first");
l.text(" " + getContactPresDesc(v));
} else {
s = y.find("div:nth-child(2) > p:first");
p = y.find("div:nth-child(2) > h5 > i:first");
i = y.find("div:nth-child(2) > h5 > label:first");
var o = y.find("div:first-child > img:first");
var l = y.find("div:nth-child(2) > h5 > em:first");
o.attr("src", getUserPortraitUrl(v, "3"));
var z = v.pd ? cnSubstr(v.pd.trim(), 6) : getStatusDesc(v);
l.text(" " + z);
}
p.removeClass()
.addClass(v.statusClass);
i.get(0)
.innerHTML = EmotionNonhtmlReplace(v.displayName, - 1, true);
var w = i.text()
.length;
s.get(0)
.innerHTML = cnSubstr(!v.i || v.ct == 1 ? "" : EmotionNonhtmlReplace(v.i, - 1, true), 22 - w, true);
if (v.isVip) {
i.css("color", "red");
}
var t = x.eq(1)
.find("ul > li[id!='" + r + "']");
var k = t.size();
var n = d(t, v);
if (n < 0 || n >= k) {
x.eq(1)
.find("ul")
.append(y);
} else {
t.eq(n)
.before(y);
}
var u = v.lastIsOc;
var q = v.currIsOc;
if (u != q) {
if (u && !q) {
f.updateBuddyStat(h, - 1, 0);
} else {
f.updateBuddyStat(h, 1, 0);
}
}
};
return f;
}
});
})(jQuery);
(function(b) {
var a = 0;
b.extend(b.fn, {
jTabWindow: function(d) {
var g = b.extend({
target: "",
id: ""
}, d);
g.target = ((typeof g.target == "string") ? b("#" + g.target) : g.target);
var c = b("<div />")
.attr("id", g.id)
.addClass("main_cont");
var f = b("<div />")
.addClass("top_tab");
var e = b("<div />")
.addClass("content");
c.append(f)
.append(e);
g.target.append(c);
c.adjustContentHeight = function(j) {
if (typeof j == "undefined") {
j = g.target.height() - f.height();
}
var l = e.find("iframe");
l.each(function(h) {
b(this)
.height(0);
});
e.height(j);
var m = j;
if ((!b.browser.msie) && getViewportWidth() < 1000) {
var k = getScrollBarWidth();
var i = k.horizontal;
m = j - i;
}
l.each(function(h) {
b(this)
.height(m);
});
};
c.adjustContentHeight();
f.append("<p>网页版飞信无法保存您的聊天记录,更多功能请下载<a id='topTabDownload' href=\"" + __downloadUrl + '" title="" target="_blank">飞信客户端</a></p>');
f.append("<ul />");
c.createTab = function(q, h, j) {
var n = a++,
r;
switch (q.length) {
case 3:
r = 60;
break;
case 4:
r = 72;
break;
case 5:
r = 84;
break;
default:
break;
}
var i = b("<li style='width:" + r + "px;' w='" + r + "px' title='" + q + "' />")
.attr("id", "tab_" + n),
o = f.find("ul"),
l = o.width();
i.append("<span></span>" + q);
o.append(i);
var m = o.find("li")
.length;
if ((l + r + 28) >= 490) {
o.find("li")
.css({
"width": (490 / m - 28) + "px"
});
}
var k = b("<div />")
.attr("id", "content_" + n);
if (h.indexOf("?") < 0) {
h += "?tabIndex=" + n;
} else {
h += "&tabIndex=" + n;
}
k.append(b("<iframe frameborder=0 />")
.attr("src", h)
.css({
"height": "100%",
"width": "100%",
"scrolling": "auto"
}));
e.append(k);
i.bind("click", function() {
f.find("li")
.each(function() {
var s = b(this);
if (s.attr("id") == "tab_" + n) {
s.removeClass()
.addClass("on");
} else {
s.removeClass();
}
});
e.children("div")
.each(function() {
var s = b(this);
if (s.attr("id") == "content_" + n) {
s.css("display", "block");
} else {
s.css("display", "none");
}
});
return false;
});
if (j) {
var p = b("<em />");
i.append(p);
p.bind("click", function() {
i.remove();
i = null;
o.find("li")
.css({
"width": ""
});
var t = o.find("li")
.length;
if (t < 5) {
o.find("li")
.each(function(w, u) {
b(u)
.css({
"width": b(u)
.attr("w")
});
});
} else {
o.find("li")
.css({
"width": (490 / t - 28) + "px"
});
}
k.remove();
k = null;
var s = f.find("li");
if (s.length > 0) {
s.eq(0)
.click();
}
return false;
});
}
c.adjustContentHeight();
i.click();
};
c.removeTab = function(k) {
c.find("#tab_" + k)
.remove();
c.find("#content_" + k)
.remove();
var j = f.find("ul");
j.find("li")
.css({
"width": ""
});
var l = j.find("li")
.length;
if (l < 5) {
j.find("li")
.each(function(m, i) {
b(i)
.css({
"width": b(i)
.attr("w")
});
});
} else {
j.find("li")
.css({
"width": (490 / l - 28) + "px"
});
}
var h = f.find("li");
if (h.length > 0) {
h.eq(0)
.click();
}
};
c.getTabByUrl = function(i) {
var h = null;
e.find("iframe")
.each(function(k) {
var j = this.src.substr(0, this.src.lastIndexOf("&"));
if (this.src.indexOf("&") < 0) {
j = this.src.substr(0, this.src.lastIndexOf("?"));
}
if (j.endsWith(i)) {
h = new Object();
h.topTab = f.children("ul")
.eq(0)
.children()
.eq(k);
h.content = e.children()
.eq(k);
return h;
}
});
return h;
};
return c;
}
});
})(jQuery);
(function(c) {
var d = c("<div style='position:absolute;top:0;left:0;z-index:-1' /> ");
d.append('<iframe style="FILTER:Alpha(opacity=3);width:100%;height:100%" onclick="alert()" />');
c.extend(c.fn, {
fetionHintWindow: function(i) {
var e = c.extend({
modal: true
}, i);
var g = c("<div />")
.addClass("hint")
.css({
"display": "none",
"z-index": "-1"
});
g.appendTo(document.body);
var m = c("<h3><span /><i /><b /></h3>");
var k = c("<div />")
.addClass("hint_cont");
var f = c("<div />")
.addClass("hint_cont_left");
var h = c("<p />");
var n = c("<div />")
.addClass("hint_btn");
var j = c("<button type=button />")
.text("确定");
var l = c("<button type=button />")
.addClass("btn_cancel")
.text("取消");
n.append(j)
.append(l);
k.append(f)
.append(h)
.append(n);
g.append(m)
.append(k);
g.show = function(v, w, t, o, u, x) {
m.children()
.eq(2)
.text(w);
h.get(0)
.innerHTML = v;
var r = m.children()
.eq(0);
if (typeof t == "string" && t == "OK") {
l.css("display", "none");
j.css("display", "");
if (x) {
f.append(c("<img class='user_head_52' alt='' complete='complete'/>")
.attr("src", x));
} else {
f.addClass("hcl_bg_confirm");
}
j.bind("click", function() {
if (typeof o == "function") {
o();
}
g.close();
});
r.bind("click", function(p) {
stopPropagation(p);
if (typeof o == "function") {
o();
}
g.close();
});
} else {
if (typeof t == "string" && t == "OKCancel") {
l.css("display", "");
j.css("display", "");
if (x) {
f.append(c("<img class='user_head_52' alt='' complete='complete'/>")
.attr("src", x));
} else {
f.addClass("hcl_bg_tips");
}
j.bind("click", function() {
if (typeof o == "function") {
o();
}
g.close();
});
l.bind("click", function() {
if (typeof u == "function") {
u();
}
g.close();
});
r.bind("click", function(p) {
stopPropagation(p);
if (typeof o == "function") {
u();
}
g.close();
});
}
}
var s = getViewportCenter();
var q = {
"top": s.y - g.height() / 2,
"left": s.x - g.width() / 2
};
if (q.top < 50) {
q.top = 50;
}
if (q.left < 50) {
q.left = 50;
}
g.css({
"top": q.top + "px",
"left": q.left + "px"
});
g.css({
"display": "",
"z-index": "1000000"
});
if (e.modal) {
c.appendMaskPage();
}
};
g.close = function() {
g.css("display", "none");
g.css("z-index", - 1);
if (e.modal) {
c.removeMaskPage();
}
g.remove();
};
m.bind("mousedown", function(o) {
o = window.event || o;
if (g.get(0)
.setCapture) {
g.get(0)
.setCapture();
} else {
if (window.captureEvents) {
window.captureEvents(Event.MOUSEMOVE | Event.MOUSEUP);
}
}
var q = g.offset();
var r = {
win: g,
mOffsetX: o.clientX - q.left,
mOffsetY: o.clientY - q.top,
maskPage: !e.modal
};
if (!e.modal) {
c.appendMaskPage(99);
}
g.bind("mousemove", r, b)
.bind("mouseup", r, a);
});
return g;
}
});
c.extend({
initMaskPage: function() {
d.css({
"width": (getViewportWidth() - 4) + "px",
"height": getViewportHeight() + "px"
});
d.appendTo(document.body);
},
appendMaskPage: function(e) {
if (typeof e != "number") {
e = 99999;
}
d.css("z-index", "" + e);
},
removeMaskPage: function() {
d.css("z-index", "-1");
}
});
function b(k) {
var l = k.data;
var g = l.win;
var f = l.mOffsetX;
var m = l.mOffsetY;
var j = window.event || k;
if (j.button == 1) {
var h = parseInt(j.clientY) - parseInt(m);
var i = parseInt(j.clientX) - parseInt(f);
h = (h < -10 ? 0 : h);
i = (i < -10 ? 0 : i);
g.css({
"top": h + "px",
"left": i + "px"
});
}
}
function a(g) {
var h = g.data;
var f = h.win;
if (f.get(0)
.releaseCapture) {
f.get(0)
.releaseCapture();
} else {
if (window.releaseEvents) {
window.releaseEvents(Event.MOUSEMOVE | Event.MOUSEUP);
}
}
if (h.maskPage) {
c.removeMaskPage();
}
f.unbind("mousemove")
.unbind("mouseup");
}
})(jQuery);
(function(b) {
b.extend(b.fn, {
friendInviteWindow: function(t) {
var n = b.extend({
initPostion: {
top: 100,
left: 200
},
buddy: {},
inviteType: 0,
onConfirm: function() {},
onCancel: function() {}
}, t);
var f = b("<div id='" + "invited_" + n.buddy.uid + "'></div>")
.addClass("hint friend_invite")
.css({
"width": "408px",
"top": n.initPostion.top + "px",
"left": n.initPostion.left + "px"
});
f.appendTo(document.body);
var w = b("<h3><span /><i /><b>提示</b></h3>");
f.append(w);
var o = b("<div />")
.addClass("hint_cont");
f.append(o);
var p = b("<div class='invite_top'><div class='invite_top_inside'></div></div>");
var d = b("<img alt='' />")
.attr("src", portrait.defaultIcon);
var g = b("<p />");
p.children()
.eq(0)
.append(d)
.append(g);
o.append(p);
var j = ' style="display:none"';
if (1 == n.inviteType) {
j = "";
}
var m = "agreeradio" + n.buddy.uid,
h = "agree" + n.buddy.uid,
e = "disagree" + n.buddy.uid,
r = "refuse_select" + n.buddy.uid;
var i = b('<div class="invite_main"><h4>回应</h4><p' + j + '>提示:对方是通过您的手机号码添加您,同意后将会公开您的手机号和姓名。</p><table border="0" cellspacing="0" cellpadding="0"><tbody><tr><td width="142"><input id="' + h + '" value="1" checked type="radio" name="' + m + '"><label for="' + h + '"> 同意,设置显示名称</label></td><td><input id="LocalName" maxlength="64" class="text_150" name="">(可选)</td></tr><tr><td align="right">添加到该分组 </td><td><select id="test09" class="group" name=""></select><font size="+0">网页版飞信无法新增好友分组</font></td></tr><tr><td colspan="2"><input id="' + e + '" value="0" type="radio" name="' + m + '"><label for="' + e + '"> 不同意</label><div class="refuse"><input id="' + r + '" value="" type="checkbox" name="" disabled="disabled"><label for="' + r + '">拒绝此人再和我联系</label></div></td><td> </td></tr></tbody></table></div>');
o.append(i);
var v = o.find("#" + e);
var u = o.find("#" + r);
o.find("input[name='" + m + "']")
.bind("click", function() {
if (v.attr("checked")) {
u.removeAttr("disabled");
} else {
u.attr("disabled", "disabled")
.removeAttr("checked");
}
});
var q = b("<button>确定</button>")
.bind("click", function() {
var x = new Object();
x.data = {
"Buddy": n.buddy,
"Result": o.find("input[name='" + m + "']:checked")
.val(),
"LocalName": o.find("#LocalName")
.val(),
"BuddyList": o.find(".group")
.val(),
"Blocked": o.find("#" + r)
.attr("checked") ? 1 : 0
};
f.remove();
n.onConfirm(x);
return false;
});
var l = b("<button>取消</button>")
.addClass("btn_cancel")
.bind("click", function() {
f.remove();
n.onCancel();
return false;
});
var s = b("<div />")
.addClass("hint_btn")
.append(q)
.append(l);
o.append(s);
w.bind("mousedown", function(z) {
z = window.event || z;
if (f.get(0)
.setCapture) {
f.get(0)
.setCapture();
} else {
if (window.captureEvents) {
window.captureEvents(Event.MOUSEMOVE | Event.MOUSEUP);
}
}
var A = f.offset();
var x = getViewportHeight();
var y = getViewportWidth();
var B = {
win: f,
mOffsetX: z.clientX - A.left,
mOffsetY: z.clientY - A.top,
viewH: x,
viewW: y
};
f.bind("mousemove", B, a)
.bind("mouseup", B, c);
});
w.children("span:first")
.bind("click", function(x) {
f.css("display", "none");
f.css("z-index", - 1);
stopPropagation(x);
});
var k = o.find(".group");
f.insertBuddyList = function(z, y) {
var x = b("<option value='" + z + "'></option>");
x.text(y);
k.append(x);
};
f.insertDesc = function(x) {
g.text(x);
};
return f;
},
setSmsWindow: function(g) {
var d = b.extend({
onConfirm: function() {},
onCancel: function() {}
}, g);
var h = b("<div />")
.addClass("hint set_message")
.css({
"top": "-1000px",
"left": "-1000px"
});
h.appendTo(document.body);
var l = b("<h3><span /><i /><b>设置</b></h3>");
h.append(l);
var j = b("<div />")
.addClass("hint_cont");
h.append(j);
var e = b("<p />");
e.append("您在这里可以设置不接收短信/彩信,并且能够定制一个时间期限。在这期间,您不会收到来自飞信的短信,但不影响您登录飞信的客户端接收消息<br><span>您希望这段时间是:</span><br>");
e.append('<input value="1" type="radio" name="sms_time" checked="checked"> <label for="time_1">24小时</label><br>');
e.append('<input value="2" type="radio" name="sms_time"> <label for="time_2">3天</label><br>');
e.append('<input value="3" type="radio" name="sms_time"> <label for="time_3">1周</label><br>');
e.append('<input value="4" type="radio" name="sms_time"> <label for="time_4">永远</label>');
j.append(e);
var f = b("<button>确定</button>")
.bind("click", function() {
h.css({
"display": "none",
"z-index": "-1"
});
d.onConfirm(h, e.find("input[checked]")
.val());
return false;
});
var i = b("<button>取消</button>")
.addClass("btn_cancel")
.bind("click", function() {
h.css({
"display": "none",
"z-index": "-1"
});
d.onCancel(h);
return false;
});
var k = b("<div />")
.addClass("hint_btn")
.append(f)
.append(i);
j.append(k);
l.bind("mousedown", function(o) {
o = window.event || o;
if (h.get(0)
.setCapture) {
h.get(0)
.setCapture();
} else {
if (window.captureEvents) {
window.captureEvents(Event.MOUSEMOVE | Event.MOUSEUP);
}
}
var q = h.offset();
var m = getViewportHeight();
var n = getViewportWidth();
var r = {
win: h,
mOffsetX: o.clientX - q.left,
mOffsetY: o.clientY - q.top,
viewH: m,
viewW: n
};
h.bind("mousemove", r, a)
.bind("mouseup", r, c);
});
l.children("span:first")
.bind("click", function(m) {
stopPropagation(m);
h.css({
"display": "none",
"z-index": "-1"
});
d.onCancel(h);
});
h.show = function() {
var n = getViewportCenter();
var m = {
"top": n.y - 171,
"left": n.x - 108
};
if (m.top < 50) {
m.top = 50;
}
if (m.left < 50) {
m.left = 50;
}
h.css({
"top": m.top + "px",
"left": m.left + "px"
});
h.css({
"display": "",
"z-index": "8888"
});
};
return h;
}
});
function a(k) {
var l = k.data;
var h = l.win;
var j = l.mOffsetX;
var g = l.mOffsetY;
var i = l.viewH - h.outerHeight();
var f = l.viewW - h.outerWidth();
i = (i < 0 ? 0 : i);
f = (f < 0 ? 0 : f);
var n = window.event || k;
if (n.button < 2) {
var m = parseInt(n.clientY) - parseInt(g);
var o = parseInt(n.clientX) - parseInt(j);
m = (m < 0 ? 0 : m);
o = (o < 0 ? 0 : o);
m = (m > i ? i : m);
o = (o > f ? f : o);
h.css({
"top": m + "px",
"left": o + "px"
});
}
}
function c(g) {
var h = g.data;
var f = h.win;
if (f.get(0)
.releaseCapture) {
f.get(0)
.releaseCapture();
} else {
if (window.releaseEvents) {
window.releaseEvents(Event.MOUSEMOVE | Event.MOUSEUP);
}
}
b.removeMaskPage();
f.unbind("mousemove")
.unbind("mouseup");
}
})(jQuery);
(function(a) {
a.extend(a.fn, {
jRemindMsgList: function(e) {
var b = a.extend({
target: a(document.body),
relative: "msg_remind",
maxHold: 5,
onClearAll: function() {}
}, e);
b.target = ((typeof b.target == "string") ? a("#" + b.target) : b.target);
b.relative = ((typeof b.relative == "string") ? a("#" + b.relative) : b.relative);
var c = a("<div />")
.attr("id", "Main_BuddyMsgList")
.addClass("pop_box pop_msg_all")
.css({
"z-index": "999",
"width": "129",
"background": "#fff"
});
c.isShow = false;
c.appendTo(b.target);
var i = a("<div />")
.addClass("pop_box_inside");
c.append(i);
var g = a("<div />")
.addClass("clear_all");
var d = a("<a />")
.attr("href", "#")
.attr("title", "清空")
.text("全部清空")
.bind("click", function() {
j.find("li")
.remove();
c.hide();
b.onClearAll(c);
});
i.append(a("<div />")
.addClass("clear_all")
.append(d));
i.append(a("<div />")
.addClass("line"));
var j = a("<ul />")
.addClass("friends_list_small");
i.append(j);
i.append(a("<div />")
.addClass("line"));
var f = a("<ul />")
.addClass("up_down_control");
var k = a("<li />")
.append(a("<em />"))
.bind("mouseover", function() {
k.addClass("active");
})
.bind("mouseout", function() {
k.removeClass("active");
});
var l = a("<li>")
.addClass("septation");
var h = a("<li />")
.bind("mouseover", function() {
h.addClass("active");
})
.bind("mouseout", function() {
h.removeClass("active");
})
.append(a("<em />")
.addClass("down"));
f.append(k)
.append(l)
.append(h);
i.append(f);
c.hide = function() {
c.css("display", "none");
c.isShow = false;
};
c.show = function() {
var m = j.find("li");
var o = m.size();
m.each(function(p) {
if (p < o - b.maxHold) {
a(this)
.css("display", "none");
} else {
a(this)
.css("display", "block");
}
});
c.css("display", "block");
c.isShow = true;
var n = b.relative.offset();
c.css({
"top": n.top - c.height(),
"left": 0
});
};
c.moveItems = function(o) {
var m = j.find("li");
var n = m.length;
if (n <= b.maxHold) {
m.each(function() {
a(this)
.css("display", "block");
});
return;
}
var p = 0;
m.each(function(q) {
if (a(this)
.css("display") != "none") {
p = q;
return false;
}
});
if (o == "up") {
p--;
} else {
p++;
}
if (p < 0) {
p = 0;
} else {
if (p + b.maxHold >= n) {
p = n - b.maxHold;
}
}
m.each(function(q) {
if (q >= p && q < p + b.maxHold) {
a(this)
.css("display", "block");
} else {
a(this)
.css("display", "none");
}
});
};
c.addItem = function(m) {
j.prepend(m);
if (j.find("li")
.size() <= b.maxHold) {
m.css("display", "block");
} else {
m.css("display", "none");
}
};
c.bind("mouseout", function(m) {
if (isMouseOut(this, m)) {
c.hide();
}
})
.bind("mouseover", function() {
clearTimeout(__hideRemindMsgTimer);
});
return c;
},
jRemindMsgItem: function(d, b, h) {
var g = a("<i class='Buddy_photo'/>")
.attr("id", "remindmsg_" + d.uid)
.append("<img src='" + h + "'>");
var f = a("<b />")
.text(cnSubstr(d.displayName, 8, true));
var c = a("<strong />")
.text("1");
var e = a("<li />");
e.append(g)
.append(f)
.append(" (")
.append(c)
.append(") ");
e.bind("click", function() {
if (!b.isActived) {
b.active();
var i = getChatWinPosition();
b.show(i.top, i.left);
} else {
if (!b.hasShown) {
var i = getChatWinPosition();
b.show(i.top, i.left);
} else {
b.show();
}
}
__remindMsgDiv.hide();
})
.bind("mouseover", function() {
this.className = "hover";
})
.bind("mouseout", function() {
this.className = "";
});
e.msgCount = function(i) {
if (!i) {
return parseInt(c.text());
} else {
c.text(i);
}
};
e.updateItem = function(i, j) {
if (j) {
g.find("img")
.attr("src", j);
}
f.text(cnSubstr(i.displayName, 8, true));
};
return e;
}
});
})(jQuery);
(function(a) {
a.extend(a.fn, {
jMoreMsgLists: function(c) {
var b = a.extend({
target: a(document.body),
maxHold: 5,
relative: "msg_more"
}, c);
b.target = ((typeof b.target == "string") ? a("#" + b.target) : b.target);
b.relative = ((typeof b.relative == "string") ? a("#" + b.relative) : b.relative);
var k = a("<div />")
.attr("id", "Main_MoreBuddyMsgs")
.addClass("pop_box pop_chat_win")
.css({
"z-index": "999",
"width": "102px",
"background": "#fff"
});
var g = a("<div />")
.addClass("pop_box_inside");
var h = a("<ul />")
.attr("id", "more_buddy_list")
.addClass("msg_list");
var d = a("<div />")
.addClass("line");
var e = a("<ul />")
.addClass("up_down_control");
var i = a("<li />")
.append(a("<em />"))
.bind("mouseover", function() {
a(this)
.addClass("active");
})
.bind("mouseout", function() {
a(this)
.removeClass();
})
.bind("click", function() {
k.moveItems("up");
})
.bind("dblclick", function() {
k.moveItems("up");
});
var j = a("<li>")
.addClass("septation");
var f = a("<li />")
.bind("mouseover", function() {
a(this)
.addClass("active");
})
.bind("mouseout", function() {
a(this)
.removeClass();
})
.append(a("<em />")
.addClass("down"))
.bind("click", function() {
k.moveItems("down");
})
.bind("dblclick", function() {
k.moveItems("down");
});
e.append(i)
.append(j)
.append(f);
g.append(h)
.append(d)
.append(e);
k.append(g);
k.appendTo(b.target);
k.hide = function() {
k.css("display", "none");
k.isShow = false;
};
k.show = function() {
var l = h.find("li");
var n = l.size();
l.each(function(o) {
if (o < n - b.maxHold) {
a(this)
.css("display", "none");
} else {
a(this)
.css("display", "block");
}
});
k.css("display", "block");
k.isShow = true;
var m = b.relative.offset();
k.css({
"top": m.top - k.height(),
"left": m.left - k.width() + b.relative.width()
});
};
k.moveItems = function(n) {
var l = h.find("li");
var m = l.length;
if (m <= b.maxHold) {
l.each(function() {
a(this)
.css("display", "block");
});
return;
}
var o = 0;
l.each(function(p) {
if (a(this)
.css("display") != "none") {
o = p;
return false;
}
});
if (n == "up") {
o--;
} else {
o++;
}
if (o < 0) {
o = 0;
} else {
if (o + b.maxHold >= m) {
o = m - b.maxHold;
}
}
l.each(function(p) {
if (p >= o && p < o + b.maxHold) {
a(this)
.css("display", "block");
} else {
a(this)
.css("display", "none");
}
});
};
k.addItem = function(l) {
h.prepend(l);
if (h.find("li")
.size() <= b.maxHold) {
l.css("display", "block");
} else {
l.css("display", "none");
}
};
k.getItems = function() {
return h.find("li");
};
k.bind("mouseout", function(l) {
if (isMouseOut(this, l)) {
k.hide();
}
})
.bind("mouseover", function() {
clearTimeout(__hideMoreMsgListTimer);
});
return k;
},
jFooterItem: function(d, c, h) {
var e = a("<li></li>")
.attr("id", "footer_" + d.uid)
.bind("click", function(k) {
if (c.isShow && c.isOnFocus()) {
c.hide();
} else {
if (!c.hasShown) {
var j = getChatWinPosition();
c.show(j.top, j.left);
} else {
c.show();
}
c.css("display", "");
}
})
.bind("mouseover", function() {
if (this.className != "call") {
this.className = "hover";
}
})
.bind("mouseout", function() {
if (this.className != "call") {
this.className = "";
}
});
var i = a("<em />")
.bind("click", function(j) {
stopPropagation(j);
c.close();
e.remove();
reInitialFooter();
});
e.append(i);
var g = a('<i class="Buddy_photo"><img src=' + h + "></i>");
e.append(g);
var b = cnSubstr(d.displayName, 8, true);
var f = a("<lable />")
.addClass("tit_name")
.text(b);
e.append(f);
e.updateItem = function(j, k) {
g.find("img")
.attr("src", k);
b = cnSubstr(j.displayName, 8, true);
f.text(b);
};
e.isInMoreMsgList = function() {
if (e.inMore) {
return true;
} else {
return e.parent()
.attr("id") == "more_buddy_list";
}
};
return e;
}
});
})(jQuery);
var loginUrl = "WebIM/Login.aspx";
var getPicCodeUrl = "WebIM/GetPicCode.aspx?Type={0}&{1}";
var getBannerPicUrl = "httpHandler/GetBannerPicHttpHandler.ashx?s={0}";
var mainPageUrl = "main.aspx";
var loginPageUrl = "login.aspx";
var loadingPanel;
var objPar = objects(window.location.search);
(function($) {
$(function() {
if ( !! ($.API) && $.API.app_360.is360DeskTop()) {
Bridge.setup("6cb571fc8b72ccc8e7705e5bde0ee4b5");
if (!$.openPlatLogin.hasLogin()) {
$.API.app_360.fetionLogin();
}
}
if ($.openPlatLogin.isOpenPlatLogin()) {
$.openPlatLogin.login(function() {
window.location.href = mainPageUrl;
});
return;
}
initUrls();
initNavigation();
getBanner();
loginIncreaseCounter();
var usernameInput = $("#login_username");
usernameInput.bind("focus", function() {
if (!numberReg.test(usernameInput.val())) {
usernameInput.val("")
.removeClass("co_b6");
}
})
.bind("blur", function() {
if (usernameInput.val() == "") {
usernameInput.val("请输入手机号、飞信号或邮箱")
.addClass("co_b6");
}
})
.bind("mouseover", function(e) {
usernameInput.addClass("on");
})
.bind("mouseout", function(e) {
usernameInput.removeClass("on");
});
$("#login_pass1")
.bind("focus", function(e) {
$(this)
.addClass("none");
$("#login_pass")
.removeClass("none");
$("#login_pass")
.focus();
});
$("#login_pass")
.bind("blur", function(e) {
if ($(this)
.val() == "") {
$(this)
.addClass("none");
$("#login_pass1")
.removeClass("none");
}
})
.bind("keydown", function(e) {
e = window.event || e;
if (e.keyCode == 13) {
$("#btnlogin")
.click();
}
});
if (__isProxyIp == 1) {
createCcpUI();
}
var historyLoginStatus = getCookie("webim_login_status");
if (historyLoginStatus == 1) {
$("#login_chk_1")
.attr("checked", true);
} else {
$("#login_chk_1")
.attr("checked", false);
}
var historyLoginUserName = getCookie("webim_login_username");
if (historyLoginUserName) {
usernameInput.val(historyLoginUserName)
.removeClass("co_b6");
$("#login_chk_2")
.attr("checked", true);
} else {
usernameInput.val("请输入手机号、飞信号或邮箱")
.addClass("co_b6");
}
$("#btnlogin")
.bind("click", function() {
if (!checkCondition()) {
return false;
}
$("#error_info")
.css("display", "none");
login();
return false;
});
loadingPanel = $.fn.loadingPanel({
target: "login_area"
});
});
function createCcpUI() {
if ($("#tr_code")
.find("td")
.length > 0) {
resetCcp();
return;
}
var td = $('<td class="h54"><input id="login_code" type="text" class="input2 co_b6" name="" value="验证码不区分大小写" style="ime-mode: disabled" tabindex="3" ' + 'maxlength="4" /><img id="ccpimg" class="ln_code" alt="" src="images/login20120903/ccploading.png" />' + '<a id="change_link" class="ln_change_code" title="" href="javascript:;">换一张</a></td>');
$("#tr_code")
.append(td);
$("#login_code")
.bind("focus", function() {
if ($(this)
.val() == "验证码不区分大小写") {
$(this)
.val("")
.removeClass("co_b6");
}
})
.bind("blur", function() {
if ($(this)
.val() == "") {
$(this)
.val("验证码不区分大小写")
.addClass("co_b6");
}
})
.bind("mouseover", function(e) {
$(this)
.addClass("on2");
})
.bind("mouseout", function(e) {
$(this)
.removeClass("on2");
});
$("#login_code")
.bind("keydown", function(e) {
e = window.event || e;
if (e.keyCode == 13) {
$("#btnlogin")
.click();
}
});
$("#change_link")
.bind("click", function() {
resetCcp();
return false;
});
setTimeout(function() {
resetCcp();
}, 500);
}
function initUrls() {
mainPageUrl = __baseUrl + mainPageUrl;
loginPageUrl = __baseUrl + loginPageUrl;
}
function initNavigation() {
$("#feedback_link")
.attr("href", __feedbackUrl);
$("#help_link")
.attr("href", __helpUrl);
$("#findpwd_link")
.attr("href", __findPwdUrl);
$("#download_link")
.attr("href", __downloadUrl);
$("#pc_download_link")
.attr("href", __downloadUrl);
$("#mac_download_link")
.attr("href", __macDownloadUrl);
$("#download_link")
.bind("click", function() {
$.increaseCounter(500500002);
});
$("#pc_download_link")
.bind("click", function() {
$.increaseCounter(500500001);
});
$("#mac_download_link")
.bind("click", function() {
$.increaseCounter(500500003);
});
var url = location.href;
if (url.indexOf("?") != -1) {
var paraString = url.substring(url.indexOf("?"), url.length);
__registerUrl += paraString;
}
$("#register_link")
.attr("href", __registerUrl);
$("#favorite_link")
.bind("click", function() {
addFavourite(location.href, "官方网页版飞信——在网页上与飞信好友聊天、免费发短信");
return false;
});
}
function getBanner() {
if ( !! __bannerInfo) {
var jsonObject = eval("(" + __bannerInfo + ")");
if (jsonObject.length > 0) {
for (var i = 0; i < jsonObject.length; i++) {
var item = jsonObject[i];
if (item.Key == "BannerImg_login" && item.OffShelfTime == 1) {
if ($.browser.msie) {
var imgSrc = formatString(getBannerPicUrl, item.Img);
$("#banner")
.attr("src", imgSrc)
.attr("alt", item.Title);
} else {
$("#banner")
.attr("src", item.Img)
.attr("alt", item.Title);
}
if ( !! item.Link) {
$("#bannerLink")
.css({
"cursor": "pointer"
})
.attr("target", item.Target)
.attr("title", item.Title);
$("#bannerLink")
.bind("mousedown", function(e) {
$.increaseCounter(500900002);
})
.bind("click", function(e) {
$("#bannerLink")
.attr("href", item.Link);
});
}
break;
}
}
}
}
}
function loginIncreaseCounter() {
var cookieValue = getCookie("webim_loginCounter");
if (cookieValue == null || cookieValue == "") {
var expireDate = new Date();
expireDate.setHours(expireDate.getHours() + 1);
setCookie("webim_loginCounter", expireDate.getTime(), expireDate.toGMTString(), "/");
$.increaseCounter(500800001);
}
}
function checkCondition() {
var username = $("#login_username")
.val()
.trim();
if (username == "") {
showErrMsg("请输入手机号、飞信号或邮箱");
return false;
}
if (!isMobileNoReg.test(username) && !isValidSid.test(username) && !emailReg.test(username)) {
showErrMsg("请输入正确的手机号、飞信号或邮箱。");
return false;
}
if ($("#login_pass")
.val()
.trim() == "") {
showErrMsg("请输入密码!");
return false;
}
if ($("#tr_code")
.find("td")
.length > 0) {
if ($("#login_code")
.val()
.trim() == "" || $("#login_code")
.val()
.trim() == "验证码不区分大小写") {
showErrMsg("请输入验证码。");
return false;
}
}
return true;
}
function saveLoginStatus() {
var status = 0;
if ($("#login_chk_1")
.attr("checked")) {
status = 1;
} else {
status = 0;
}
var expireDate = new Date(2033, 1, 1);
setCookie("webim_login_status", status, expireDate.toGMTString(), "/");
}
function saveLoginInfo(userName) {
if (userName) {
var expireDate = new Date(2033, 1, 1);
setCookie("webim_login_username", escape(userName), expireDate.toGMTString(), "/");
} else {
deleteCookie("webim_login_username", "/");
}
}
var __loginTimes = 1;
function login() {
var loginParams = new Object();
loginParams.success = loginSuccess;
loginParams.error = loginError;
if (__calluser) {
loginParams.url = loginUrl + "?calluser=" + __calluser;
} else {
loginParams.url = loginUrl;
var url = location.href;
if (url.indexOf("?") != -1) {
var paraString = url.substring(url.indexOf("?"), url.length);
loginParams.url += paraString;
}
}
loginParams.type = "POST";
var loginStatus = 0;
if (!$("#login_chk_1")
.attr("checked")) {
loginStatus = 400;
}
var userName = $("#login_username")
.val()
.trim();
var accountType = 0;
if (isValidSid.test(userName)) {
accountType = 0;
} else {
if (isMobileNoReg.test(userName)) {
accountType = 1;
} else {
if (emailReg.test(userName)) {
accountType = 2;
}
}
}
loginParams.data = {
"UserName": userName,
"Pwd": $("#login_pass")
.val(),
"OnlineStatus": loginStatus,
"AccountType": accountType
};
if (emailReg.test(userName)) {
$.increaseCounter(500500004);
}
if ($("#tr_code")
.find("td")
.length > 0) {
loginParams.data["Ccp"] = $("#login_code")
.val();
}
loginParams.dataType = "json";
loadingPanel.show();
$.ajax(loginParams);
}
function loginSuccess(data, textStatus) {
loadingPanel.hide();
if (data.rc == 200) {
saveLoginStatus();
if ($("#login_chk_2")
.attr("checked")) {
saveLoginInfo($("#login_username")
.val());
} else {
saveLoginInfo(null);
}
var source = (!objPar["source"]) ? "" : objPar["source"];
$.increaseCounter(osType() + "," + getScreen() + "," + "500800002", source);
window.location.href = mainPageUrl;
} else {
if (data.rc == 999) {
createCcpUI();
} else {
if (data.rc == 9311) {
window.location.reload();
} else {
if (__loginTimes >= 3) {
createCcpUI();
} else {
resetCcp();
}
__loginTimes++;
showErrMsg(data.rc);
}
}
}
}
function loginError(XMLHttpRequest, textStatus, errorThrown) {
loadingPanel.hide();
if (__loginTimes >= 3) {
createCcpUI();
} else {
resetCcp();
}
__loginTimes++;
showErrMsg("连接服务器失败,请您检查网络连接是否正常。");
}
function resetCcp() {
$("#ccpimg")
.attr("src", formatString(getPicCodeUrl, "ccpsession", Math.random()));
return false;
}
function showErrMsg(errInfo) {
var errorDiv = $("#error_info");
if (typeof errInfo == "string") {
errorDiv.css("display", "block")
.html(errInfo);
} else {
if (typeof errInfo == "number") {
var errMsg = "";
switch (errInfo) {
case 311:
errMsg = "请输入正确的手机号、飞信号和邮箱。";
break;
case 312:
$("#login_code")
.select();
errMsg = "您输入的验证码有误,请重新输入。";
break;
case 404:
case 403:
case 430:
case 435:
errMsg = "您尚未开通飞信服务,请注册开通飞信。";
break;
case 405:
case 504:
errMsg = "您已主动申请停用飞信业务或您的账号有异常行为,您的飞信账号已被禁用。";
break;
case 321:
errMsg = "您输入密码错误,请重新输入。";
break;
case 507:
errMsg = "目前仅限中国大陆用户使用。";
break;
case 406:
errMsg = "您的帐号因在近期多次出现异常而被锁定,暂时无法登录,<a href='" + __unlockUrl + "' target='_blank'>点击此处解决。</a>";
break;
case 500:
default:
errMsg = "服务器内部发生错误,请重试。";
break;
}
errorDiv.css("display", "block")
.html(errMsg);
}
}
}
})(jQuery);
(function(c) {
var e = "WebIM/Login.aspx";
var f = __baseUrl + "login.aspx";
var b = __baseUrl + "main.aspx";
var a = "m161.com.cn";
var d = objects(window.location.search);
c.extend({
openPlatLogin: {
flag: 0,
hasLogin: function() {
var g = getCookie("webim_sessionid");
if ( !! g) {
return true;
}
return false;
},
isOpenPlatLogin: function() {
if ( !! d["c"]) {
c.openPlatLogin.flag = 0;
return true;
} else {
if ( !! d["token"] || !! d["code"]) {
c.openPlatLogin.flag = 1;
return true;
}
}
return false;
},
login: function(g) {
switch (c.openPlatLogin.flag) {
case 0:
c.openPlatLogin.loginBySsic(g);
break;
case 1:
c.openPlatLogin.loginFor360(g);
break;
default:
break;
}
},
loginFor360: function(k, i) {
var j = new Object();
j.url = e;
var g = location.href;
if (g.indexOf("?") != -1) {
var h = g.substring(g.indexOf("?"), g.length);
j.url += h;
}
j.type = "POST";
if ( !! i) {
j.data = {
"token": i
};
} else {
if ( !! d["token"]) {
j.data = {
"token": d["token"]
};
} else {
if ( !! d["code"]) {
j.data = {
"code": d["code"]
};
}
}
}
j.dataType = "json";
j.success = function(l, m) {
if (l.rc == 200) {
c.increaseCounter(osType() + "," + getScreen() + "," + "500800002", d["source"]);
if ( !! k) {
k();
}
if ( !! i) {
window.location.href = b;
}
} else {
window.location.href = f + "?source=" + d["source"];
}
};
j.error = function(l, n, m) {
window.location.href = f + "?source=" + d["source"];
};
c.ajax(j);
},
loginBySsic: function(j) {
var i = new Object();
i.url = e;
var g = location.href;
if (g.indexOf("?") != -1) {
var h = g.substring(g.indexOf("?"), g.length);
i.url += h;
}
i.type = "POST";
i.data = {
"ssic": d["c"],
"domain": a
};
if ( !! d["domain"]) {
i.data.domain = d["domain"];
}
i.dataType = "json";
i.success = function(l, m) {
if (l.rc == 200) {
c.increaseCounter(osType() + "," + getScreen() + "," + "500800002", d["source"]);
if ( !! j) {
j();
}
} else {
if (l.rc == 404) {
var k = __registerUrl;
if (__registerUrl.indexOf("?") > -1) {
k = __registerUrl.substring(0, __registerUrl.indexOf("?"));
}
window.location.href = k;
} else {
window.location.href = f;
}
}
};
i.error = function(k, m, l) {
window.location.href = f;
};
c.ajax(i);
}
},
API: {
app_360: {
is360DeskTop: function() {
return (typeof Bridge != "undefined" && !! Bridge.connect && !! Bridge.connect.tryLogin);
},
is360Logon: function() {
return Bridge.support.hasLogin();
},
fetionLogin: function() {
Bridge.connect.fetionLogin(function(g) {
if (g) {
var h = g.oauth.access_token;
c.openPlatLogin.loginFor360(function() {}, h);
} else {
Bridge.oauth2.getAuthCode({
"redirect_uri": __redirectUri
});
}
});
}
}
}
});
})(jQuery);
var mainPageUrl = "main.aspx";
var loginPageUrl = "login.aspx";
var addBuddyUrl = "WebIM/AddBuddy.aspx?Version={0}";
var getConnectUrl = "WebIM/GetConnect.aspx?Version={0}";
var getContactInfoUrl = "WebIM/GetContactInfo.aspx?UserType={0}&UserValue={1}&Version={2}";
var getContactListUrl = "WebIM/GetContactList.aspx?Version={0}";
var getGroupListUrl = "WebIM/GetGroupList.aspx?Version={0}";
var getGroupPortraitUrl = "WebIM/GetGroupPortrait.aspx?Uri={0}&Size={1}&Crc={2}&mid={3}";
var opInviteJoinUrl = "WebIM/PGHandleInviteJoinGroup.aspx?Version={0}";
var PGHandleApplicationUrl = "WebIM/PGHandleApplication.aspx?Version={0}";
var getGroupMemUrl = "WebIM/GetGroupMembers.aspx?Version={0}";
var SendGroupMsgUrl = "WebIM/SendGroupMsg.aspx?Version={0}";
var getGroupPerInfoUrl = "WebIM/PGGetPersonalInfo.aspx?Version={0}";
var approveInviteUrl = "WebIM/ApproveInviteJoin.aspx?Version={0}";
var GroupSubscribeUrl = "WebIM/GroupSubscribe.aspx?Version={0}";
var getPersonalInfoUrl = "WebIM/GetPersonalInfo.aspx?Version={0}";
var handleAddBuddyUrl = "WebIM/HandleAddBuddy.aspx?Version={0}";
var logoutUrl = "WebIM/Logout.aspx?Version={0}";
var opBuddyUrl = "WebIM/OpBuddy.aspx?Version={0}";
var sendMessageUrl = "WebIM/SendMsg.aspx?Version={0}";
var setPersonalInfoUrl = "WebIM/SetPersonalInfo.aspx?Version={0}";
var setContactInfoUrl = "WebIM/SetContactInfo.aspx?Version={0}";
var setPresenceUrl = "WebIM/SetPresence.aspx?Version={0}";
var setSmsOnlineUrl = "WebIM/SetSmsOnline.aspx?Version={0}";
var setScheduleSmsUrl = "WebIM/SetScheduleSms.aspx?Version={0}&Type={1}";
var sendSMSUrl = "WebIM/SendSMS.aspx?Version={0}";
var addChatFriendUrl = "WebIM/AddChatFriend.aspx?Version={0}";
var getCredUrl = "WebIM/GetCred.aspx?Version={0}";
var registerUrl = "WebIM/Register.aspx?Version={0}";
var registerValidateUrl = "WebIM/RegisterValidate.aspx?Version={0}";
var SetMessageReadUrl = "WebIM/SetMessageReadHttpHandler.aspx?Version={0}";
var SendDirectSMSUrl = "WebIM/SendDirectSMSHttpHandler.aspx?Version={0}";
var getBannerPicUrl = "httpHandler/GetBannerPicHttpHandler.ashx?s={0}";
var getPcRecommendBuddyListV2Url = "WebIM/GetPcRecommendBuddyListV2Handler.aspx?Version={0}";
var AddRecommendBuddyNotifyUrl = "WebIM/AddRecommendBuddyNotifyHttpHandler.aspx?Version={0}";
var getPortraitUrl = "WebIM/GetPortrait.aspx?did={0}&Size={1}&Crc={2}&mid={3}";
var getPicCodeUrl = "WebIM/GetPicCode.aspx?Type={0}&{1}";
var ValidatePicCodeUrl = "WebIM/ValidatePicCodeHttpHandler.aspx?Version={0}";
var GetSmsCodeCodeUrl = "WebIM/GetSmsCodeHttpHandler.aspx?Version={0}";
var getALInfoUrl = "WebIM/GetALInfoHandler.aspx?Version={0}";
var addALInfoOneUrl = "WebIM/AddALInfoOneHandler.aspx?Version={0}";
var updateALInfoOneUrl = "WebIM/UpdateALInfoOneHandler.aspx?Version={0}";
var deleteALInfoOneUrl = "WebIM/DeleteALInfoOneHandler.aspx?Version={0}";
var portrait = {
defaultIcon: "images/portraits/fetion.jpg",
group: "images/fetion.jpg",
groupMsg: "images/groupSysMsg.png",
groupList: "images/fetion(29).jpg",
mobile: "images/portraits/mobile_user_head.jpg",
offline_16: "images/status16/offline_16.jpg",
offline_32: "images/status32/offline_32.jpg",
robot_online_16: "images/status16/robot.jpg",
robot_online_32: "images/status32/robot.jpg",
robot_offline_16: "images/status16/robot_offline.jpg",
robot_offline_32: "images/status32/robot_offline.jpg",
verify: "images/status16/waiting.jpg",
close: "images/status16/Closed.jpg",
refuse: "images/status16/block.jpg",
fetion_16: "images/status16/fetion_16.jpg",
fetion_32: "images/status32/fetion_32.jpg"
};
var __version = 0;
var __user = new UserDefault();
var __contactMap = new jHashMap();
var __groupMap = new jHashMap();
var __groupMsgMap = new jHashMap();
var __buddyList;
var __mainTabWindow;
var __contactTree;
var __moreMsgListDiv;
var __remindMsgDiv;
var __chatWindowMap = new jHashMap();
var __chatFooterItemMap = new jHashMap();
var __remindMsgItemMap = new jHashMap();
var __chatWinInitPosition = {
top: 102,
left: 474
};
var __chatWinTopOffset = 26;
var __chatWinLeftOffset = 26;
var __lastPos = {
top: 102,
left: 0
};
var __isLeft = true;
var __chatWinDefaultHeight = 365;
var __chatWinDefaultWidth = 468;
var __groupTree;
var __groupChatWinDefaultHeight = 365;
var __groupChatWinDefaultWidth = 480;
var __group_mem = new jHashMap();
var __phoneMap = new jHashMap();
var __maxMsgListOnTaskbar = 0;
var __isNormalLogout = false;
var __hideUserStatusSetterTimer = 0;
var __hideContactInfoTimer = 0;
var __showContactInfoTimer = 0;
var __initContactInfoTimer = 0;
var __hideOperateInfoTimer = 0;
var __tmpTimer = 0;
var __hideMoreMsgListTimer = 0;
var __hideRemindMsgTimer = 0;
var __setSmsWindow = null;
var __sessionId = "";
var __loginProcess = 0;
var __msgBeforeUnload = "此操作将退出网页版飞信,您确认要继续吗?";
var __searchPrompt = "查找好友...";
var __isFirstSearch = true;
var __isOnfocus = true;
var __staticTitle = "官方网页版飞信——在网页上与飞信好友聊天、免费发短信";
var __msgcomingTitle = "新消息";
var __callmeTitle = "新会话";
var __readmsgTitle = "未读消息";
var __flashTitleArray = new Array();
var __titleflashInterval = 0;
var __isOpenSound = true;
var __isOkGroupList = false;
var __isOkBuddyList = false;
var __leftSmsCount = 10000;
var isRefreshRecommendBuddyList = false;
var currentPageNum = 0;
var loadingPanel;
var divMask = $("#divMask");
function swfinfo(a) {
sendToSwfJD(0);
}
function thisMovie(a) {
if (navigator.appName.indexOf("Microsoft") != -1) {
return window[a];
} else {
return document[a];
}
}
function sendToSwfJD(b) {
if (__loginProcess <= b) {
__loginProcess = b;
}
if ($("#logging")
.css("display") != "none") {
var a = thisMovie("onlogin");
if (a && a.setpercent) {
a.setpercent(__loginProcess);
}
}
}
function sendToSwfTxt(b) {
var a = thisMovie("onlogin");
if ($("#logging")
.css("display") != "none") {
if (a && a.setmessage) {
a.setmessage(b);
}
}
}(function(c) {
c(window)
.bind("load", function() {
if (c.openPlatLogin.isOpenPlatLogin()) {
c.openPlatLogin.login(b);
} else {
b();
}
})
.bind("focus", function() {
if (!c.browser.msie) {
a();
}
})
.bind("blur", function() {
if (!c.browser.msie) {
__isOnfocus = false;
}
});
if (c.browser.msie) {
c("input:checkbox")
.click(function() {
this.blur();
this.focus();
});
}
c(document)
.bind("focusout", function() {
__isOnfocus = false;
})
.bind("focusin", function() {
a();
});
function b() {
__sessionId = getCookie("webim_sessionid");
deleteCookie("webim_sessionid", "/");
if (!__sessionId) {
c("#logging")
.css("display", "none");
c("#maincontent")
.css("display", "none");
window.location.href = loginPageUrl;
} else {
c("#logging")
.css("display", "");
c(initialize);
c.cacheImages();
}
}
function a() {
if (typeof __titleflashInterval != "undefined") {
window.clearInterval(__titleflashInterval);
}
__flashTitleArray = new Array();
__isOnfocus = true;
if (document.title != __staticTitle) {
document.title = __staticTitle;
}
var d = __chatWindowMap.values();
var f = d.length;
for (var e = 0; e < f; e++) {
if (d[e].isOnFocus()) {
d[e].focus();
break;
}
}
}
})(jQuery);
function initialize() {
initUrls();
$.initMaskPage();
initNavigation();
initMainTabWindow();
initContentHeight();
initUserStatusDiv();
initContactCard();
initOperateCard();
initi__searchInput();
initChatFooter();
bindWindowEvent();
sendToSwfJD(10);
getPersonalInfo();
IMSound.ajaxInit();
getCred();
setInterval("getCred()", 300000);
getBanner();
}
function bindWindowEvent() {
window.onbeforeunload = function(a) {
a = window.event || a;
if (!__isNormalLogout) {
if (window.event) {
a.returnValue = __msgBeforeUnload;
}
return (__msgBeforeUnload);
}
};
$(window)
.bind("unload", function(a) {
if (!__isNormalLogout) {
logout(false);
}
deleteRemindMsgCookie(__user.sid);
});
$(window)
.bind("resize", onWindowResize);
}
function onWindowResize(f) {
$.initMaskPage();
initContentHeight();
initGroupListHeight();
var a = __chatWindowMap.values();
var c = a.length;
for (var b = 0; b < c; b++) {
if (a[b].maxed) {
a[b].max();
}
}
var d = getMaxMsglistCount();
if (__maxMsgListOnTaskbar != d) {
__maxMsgListOnTaskbar = d;
reInitialFooter();
__moreMsgListDiv.hide();
}
$("#search_result")
.css("display", "none");
}
function initUrls() {
loginPageUrl = __baseSSLUrl + loginPageUrl;
}
function initContentHeight() {
var a = getViewportHeight() - $("#frame_top")
.outerHeight() - $("#personal_info")
.outerHeight() - $("#taskbar")
.outerHeight();
$("#main_window")
.height(a);
if (__mainTabWindow) {
__mainTabWindow.adjustContentHeight();
}
if (__contactTree) {
__contactTree.adjustHeight(0);
}
$("#main_contact_list")
.height(a);
if (__contactTree) {
__contactTree.adjustHeight();
}
}
function initMainTabWindow() {
__mainTabWindow = $.fn.jTabWindow({
target: "main_window",
id: "main_content"
});
$("#addbuddy_link")
.bind("click", function() {
createAddBuddyTab();
return false;
});
loadingPanel = $("#loadDiv");
$("#btnRefreshRecommend")
.bind("click", function(b) {
var a = $("#side")
.find(".text_box");
if (a.hasClass("none")) {
loadingPanel.removeClass("none");
currentPageNum++;
isRefreshRecommendBuddyList = true;
GetPcRecommendBuddyListV2(8);
}
stopPropagation(b);
preventDefault(b);
});
$("#topTabDownload")
.bind("click", function() {
$.increaseCounters("500400003");
});
$(".phone_list")
.find(".phone_new > a")
.bind("click", function(a) {
$.increaseCounter(500400014);
createAddTXLTab();
stopPropagation(a);
preventDefault(a);
});
initTXLlist();
}
function createAddBuddyTab(c, d) {
var b = "content/addBuddy.htm";
if (c) {
b += "?username=" + c;
if (d) {
b += "&addtype=" + d;
}
}
var a = __mainTabWindow.getTabByUrl(b);
if (!a) {
__mainTabWindow.createTab("添加好友", b, true);
} else {
a.topTab.click();
}
hideAllChatWindow();
}
function createAddBuddyBatchTab(c) {
var b = "content/addBuddyBatch.htm";
if (c) {
b += "?username=" + c;
}
var a = __mainTabWindow.getTabByUrl(b);
if (!a) {
__mainTabWindow.createTab("添加好友", b, true);
} else {
a.topTab.click();
}
hideAllChatWindow();
}
function createAddTXLTab(c) {
var b = "content/addAndEditTXL.htm",
d = "新建联系人";
if ( !! c) {
b += "?guid=" + c;
d = "编辑联系人";
}
var a = __mainTabWindow.getTabByUrl(b);
if (!a) {
__mainTabWindow.createTab(d, b, true);
} else {
a.topTab.click();
}
hideAllChatWindow();
}
function createFreeSMSTab(c, d, e) {
var b = "content/freeSms.htm?guid=" + c + "&uid=" + d + "&mn=" + e;
var a = __mainTabWindow.getTabByUrl(b);
if (!a) {
__mainTabWindow.createTab("发短信", b, true);
} else {
a.topTab.click();
}
hideAllChatWindow();
}
function createCustomPresTab() {
var a = __mainTabWindow.getTabByUrl("content/customPresence.htm");
if (!a) {
__mainTabWindow.createTab("设置自定义状态", "content/customPresence.htm", true);
} else {
a.topTab.click();
}
hideAllChatWindow();
}
function hideAllChatWindow() {
var a = __chatWindowMap.values();
var c = a.length;
for (var b = 0; b < c; b++) {
if (a[b].isShow) {
a[b].hide();
}
}
}
function openChatWindow(c, b) {
var f = __contactMap.get(b);
var d = f.status;
if (d == ContactStatus.Verify || d == ContactStatus.Verify_Bklist) {
$.fn.fetionHintWindow({
modal: false
})
.show("待验证好友,无法与之会话", "提示", "OK");
return;
}
if (d == ContactStatus.Refuse || d == ContactStatus.Refuse_Bklist) {
$.fn.fetionHintWindow({
modal: false
})
.show("对方尚未成为您的好友,不能与之会话", "提示", "OK");
return;
}
if ((d & ContactStatus.CloseService) == ContactStatus.CloseService || (d & ContactStatus.CloseService_Bklist) == ContactStatus.CloseService_Bklist) {
$.fn.fetionHintWindow({
modal: false
})
.show("对方已关闭飞信服务,您将无法与他/她进行任何会话。", "提示", "OK");
return;
}
if (getContactType(f) == ContactType.Robot) {
inviteRobot(b);
}
var a = getChatWindow(b);
if (!a.isActived) {
a.active();
var e = getChatWinPosition();
a.show(e.top, e.left);
} else {
if (!a.hasShown) {
var e = getChatWinPosition();
a.show(e.top, e.left);
} else {
a.show();
}
}
if (typeof __isIE6 != "undefined" && __isIE6) {
a.fixPosition();
}
}
function getChatWindow(b) {
var a;
if (!__chatWindowMap.containsKey(b)) {
a = $.fn.jChatWindow({
maxRelative: "main_content",
user: __user,
buddy: __contactMap.get(b),
defaultHeight: __chatWinDefaultHeight,
defaultWidth: __chatWinDefaultWidth,
onActive: onActiveChatWindow,
onClosed: onCloseChatWindow,
onFocus: onFocusChatWindow,
onSendMessage: onSendMsg
});
__chatWindowMap.put(b, a);
} else {
a = __chatWindowMap.get(b);
}
return a;
}
function getChatWinPosition() {
var b = new Object();
b.top = __chatWinInitPosition.top;
b.left = __chatWinInitPosition.left;
var e = true;
var a = __chatWindowMap.values();
var d = a.length;
while (e) {
e = false;
for (var c = 0; c < d; c++) {
if (a[c].isShow && !a[c].maxed) {
if (isLapOver(b, {
"top": parseInt(a[c].css("top")),
"left": parseInt(a[c].css("left"))
})) {
b = adjustPosition(b);
if (__lastPos.left < b.left) {
__lastPos.left = b.left;
} else {
if (__lastPos.top > b.top) {
__lastPos.top = b.top;
}
}
e = true;
break;
}
}
}
}
b.left -= parseInt($(".side")
.css("width"));
return b;
}
function adjustPosition(a) {
if ((a.top + __chatWinTopOffset < __chatWinInitPosition.top - Math.abs(__chatWinTopOffset)) || (a.top + __chatWinTopOffset + 50 > getViewportHeight() - __chatWinDefaultHeight)) {
a.top = __lastPos.top - 6;
a.left = __lastPos.left + __chatWinLeftOffset;
__chatWinInitPosition = a;
if (getViewportWidth() - a.left - 450 < 230 && __isLeft) {
__chatWinInitPosition.left = __chatWinInitPosition.left == 48 ? __chatWinInitPosition.left + 6 : 48;
__isLeft = false;
}
} else {
a.top += __chatWinTopOffset;
a.left += __chatWinLeftOffset;
}
return a;
}
function isLapOver(b, a) {
return (Math.abs(b.top - a.top) < 5) && (Math.abs(b.left - a.left) < 5);
}
function onActiveChatWindow(a) {
if (!__chatFooterItemMap.containsKey(this.buddy.uid)) {
var c = getUserPortraitUrl(this.buddy, "5");
var b = $.fn.jFooterItem(this.buddy, a, c);
__chatFooterItemMap.put(this.buddy.uid, b);
reInitialFooter(b);
}
}
function onCloseChatWindow(a) {
if (__chatFooterItemMap.containsKey(this.buddy.uid)) {
__chatFooterItemMap.get(this.buddy.uid)
.remove();
__chatFooterItemMap.remove(this.buddy.uid);
reInitialFooter();
}
}
function onFocusChatWindow(a) {
if (__chatFooterItemMap.containsKey(this.buddy.uid)) {
__chatFooterItemMap.get(this.buddy.uid)
.removeClass("call");
}
if (__remindMsgItemMap.containsKey(this.buddy.uid)) {
__remindMsgItemMap.get(this.buddy.uid)
.remove();
__remindMsgItemMap.remove(this.buddy.uid);
setRemindCountTotal();
}
}
function onActiveGroupChatWindow(a) {
if (!__chatFooterItemMap.containsKey("group_" + this.group.id)) {
this.group.uid = this.group.id;
this.group.statusClass = "af-group";
this.group.displayName = this.group.n;
var c = getGroupItemPortraitUrl(this.group, "1");
var b = $.fn.jFooterItem(this.group, a, c);
__chatFooterItemMap.put("group_" + this.group.id, b);
reInitialFooter(b);
}
}
function onFocusGroupChatWindow(a) {
if (__chatFooterItemMap.containsKey("group_" + this.group.id)) {
__chatFooterItemMap.get("group_" + this.group.id)
.removeClass("call");
}
if (__remindMsgItemMap.containsKey("group_" + this.group.id)) {
__remindMsgItemMap.get("group_" + this.group.id)
.remove();
__remindMsgItemMap.remove("group_" + this.group.id);
setRemindCountTotal();
}
}
function onCloseGroupChatWindow(a) {
if (__chatFooterItemMap.containsKey("group_" + this.group.id)) {
__chatFooterItemMap.get("group_" + this.group.id)
.remove();
__chatFooterItemMap.remove("group_" + this.group.id);
reInitialFooter();
}
}
function onActiveGroupSysChatWindow(a) {
if (!__chatFooterItemMap.containsKey("group_sys_" + a.attr("id"))) {
this.group.uid = "group_sys_" + a.attr("id");
this.group.statusClass = "af-groupSysMsg";
this.group.displayName = a.find("h3")
.text();
var b = $.fn.jFooterItem(this.group, a, portrait.groupMsg);
b.removeClass()
.addClass("call");
__chatFooterItemMap.put("group_sys_" + a.attr("id"), b);
reInitialFooter(b);
}
}
function onFocusGroupSysChatWindow(a) {
if (__chatFooterItemMap.containsKey("group_sys_" + a.attr("id"))) {
__chatFooterItemMap.get("group_sys_" + a.attr("id"))
.removeClass("call");
}
}
function onCloseGroupSysChatWindow(b) {
if (__chatFooterItemMap.containsKey("group_sys_" + b.attr("id"))) {
__chatFooterItemMap.get("group_sys_" + b.attr("id"))
.remove();
__chatFooterItemMap.remove("group_sys_" + b.attr("id"));
reInitialFooter();
var a = b.html();
if (__groupMsgMap.containsKey(a)) {
__groupMsgMap.remove(a);
}
if ($("#" + b.attr("id"))
.attr("id")) {
$("#" + b.attr("id"))
.remove();
}
}
}
function getPersonalInfo() {
var a = new Object();
a.success = getPersonalInfoSuccess;
a.error = getPersonalInfoError;
a.url = formatString(getPersonalInfoUrl, __version++);
a.type = "POST";
a.data = {
"ssid": __sessionId
};
a.dataType = "json";
a.cache = false;
$.ajax(a);
}
var __gpiRetry = 0;
function getPersonalInfoSuccess(b, c) {
var a = b;
if (typeof a.rc == "number" && a.rc == 200) {
__gpiRetry = 0;
$.extend(__user, a.rv);
extendUser();
getGroupList();
initUserInfo();
sendToSwfJD(30);
setRemindMsgCookie(__user.sid, __user.displayName, 0, __sessionId);
getContactList();
GetPcRecommendBuddyListV2(8);
} else {
if (typeof a.rc == "number" && a.rc == 310) {
redirectLogin();
} else {
if (__gpiRetry < 3) {
__gpiRetry++;
window.setTimeout("getPersonalInfo()", 500);
} else {
__gpiRetry = 0;
alert(formatString("获取用户个人信息失败,请重新登录。错误代码:{0}", typeof a.rc == "number" ? a.rc : 500));
redirectLogin();
}
}
}
}
function getPersonalInfoError(a, c, b) {
if (__gpiRetry < 3) {
__gpiRetry++;
window.setTimeout("getPersonalInfo()", 500);
} else {
__gpiRetry = 0;
alert(formatString("获取用户个人信息失败,请重新登录。错误原因:{0}", c));
redirectLogin();
}
}
function getBanner() {
if (__bannerInfo == "") {
$("#banner_list")
.css("display", "none");
} else {
var jsonObject = eval("(" + __bannerInfo + ")");
if (jsonObject.length > 0) {
$("#banner_list")
.css("display", "block");
var fragment = "";
var interval = 3000;
var imgNum = 0;
if (__isMsie) {
for (var i = 0; i < jsonObject.length; i++) {
if (jsonObject[i].Key == "BannerImg_login") {
continue;
}
interval = jsonObject[0].Interval;
if (jsonObject[i].OffShelfTime == 1) {
var imgSrc = formatString(getBannerPicUrl, jsonObject[i].Img);
fragment += '<a href="' + jsonObject[i].Link + '" target="' + jsonObject[i].Target + '"><img src="' + imgSrc + '" width="360" height="60" alt="' + jsonObject[i].Title + '" title="' + jsonObject[i].Title + '" /></a>';
imgNum++;
}
}
} else {
for (var i = 0; i < jsonObject.length; i++) {
if (jsonObject[i].Key == "BannerImg_login") {
continue;
}
interval = jsonObject[0].Interval;
if (jsonObject[i].OffShelfTime == 1) {
fragment += '<a href="' + jsonObject[i].Link + '" target="' + jsonObject[i].Target + '"><img src="' + jsonObject[i].Img + '" width="360" height="60" alt="' + jsonObject[i].Title + '" title="' + jsonObject[i].Title + '" /></a>';
imgNum++;
}
}
}
fragment += '<div id="banner_info"></div>';
$("#banner_list")
.html(fragment);
imageCarousel.scroll(imgNum, "banner_list", interval, "banner_info");
} else {
$("#banner_list")
.css("display", "none");
}
}
}
function getContactList() {
var a = new Object();
a.success = getContactListSuccess;
a.error = getContactListError;
a.url = formatString(getContactListUrl, __version++);
a.type = "POST";
a.data = {
"ssid": __sessionId
};
a.dataType = "json";
a.cache = false;
$.ajax(a);
}
var __gclRetry = 0;
function getContactListSuccess(e, g) {
__contactTree = $.fn.jContactTree({
target: "main_contact_list",
isSinglePattern: true,
user: __user,
onBuddyItemDbClick: openChatWindow,
onBuddyItemMouseOver: showContactCard,
onBuddyItemMouseOut: hideContactCard,
onBuddyItemRightClick: showOperateCard
});
sendToSwfJD(60);
var b = e;
if (typeof b.rc == "number" && b.rc == 200) {
__gclRetry = 0;
var c = b.rv.bds;
c = c || (new Array());
var f = c.length;
for (var d = 0; d < f; d++) {
var a = new ContactDefault();
$.extend(a, c[d]);
extendContact(a);
__contactMap.put(c[d].uid.toString(), a);
}
__buddyList = b.rv.bl;
__buddyList = __buddyList || (new Array());
__buddyList.push({
"id": 0,
"n": "未分组好友"
});
__buddyList.push({
"id": -1,
"n": "陌生人"
});
initContactList();
} else {
if (typeof b.rc == "number" && b.rc == 310) {
redirectLogin();
} else {
if (__gclRetry < 3) {
__gclRetry++;
window.setTimeout("getContactList();", 500);
} else {
__gclRetry = 0;
alert("由于网络原因,获取好友列表失败,请重新登录。");
redirectLogin();
}
}
}
}
function getContactListError(a, c, b) {
if (__gclRetry < 3) {
__gclRetry++;
window.setTimeout("getContactList();", 500);
} else {
__gclRetry = 0;
alert("由于网络原因,获取好友列表失败,请重新登录。");
redirectLogin();
}
}
function getRecommendReason(a) {
var d = "你可能认识的人";
if ( !! a) {
var e = a.split(";");
var g = 0;
for (var c = 0, b = e.length; c < b; c++) {
var f = e[c].split(":");
switch (f[0]) {
case "want-to-meet":
g = 5;
d = "你的通讯录好友";
break;
case "recent-contact":
if (g < 5) {
g = 4;
d = "你最近联系过的人";
}
break;
case "have-same-friend":
if (g < 4) {
g = 3;
d = f[1] + "位共同好友";
}
break;
case "near":
if (g < 3) {
g = 2;
d = "你附近的好友";
}
break;
case "robot":
if (g < 2) {
g = 1;
d = "有缘人";
}
break;
default:
d = "你可能认识的人";
break;
}
}
}
return d;
}
function GetPcRecommendBuddyListV2(a) {
var b = {};
b.url = formatString(getPcRecommendBuddyListV2Url, __version++);
b.type = "POST";
b.dataType = "json";
b.data = {
"ssid": __sessionId,
"c": a,
"isIP": 1,
page: currentPageNum
};
b.cache = false;
b.success = GetPcRecommendBuddyListV2Success;
b.error = GetPcRecommendBuddyListV2Error;
$.ajax(b);
}
function GetPcRecommendBuddyListV2Success(e, b) {
if (e.rc == 200 && ( !! e.rv)) {
var k = $(".side"),
h, m;
if (isRefreshRecommendBuddyList) {
k.find("ul")
.remove();
isRefreshRecommendBuddyList = false;
}
h = k.find("ul");
var g = h.length;
if (g <= 0) {
h = $('<ul class="List"></ul>');
}
for (var f = 0, d = e.rv.length; f < d; f++) {
var n = e.rv[f];
var c = formatString(getPortraitUrl, n.UserId, 3, 0, __user.uid);
var a = "";
if (f >= 4 || g > 0) {
a = "none";
}
m = $('<li class="' + a + '" uid="' + n.UserId + '" sid="' + n.FetionId + '"><div class="image"><img src="' + c + '" alt="' + n.NickName + '" title="' + n.NickName + '" /></div>' + "<dl><dt>" + cnSubstr(n.NickName, 20, false) + "</dt><dd>" + getRecommendReason(n.Reason) + '</dd><dd><a href="javascript:;">加好友</a><a href="javascript:;">打招呼</a></dd></dl></li>');
h.append(m);
var l = m.find("dl > dd:last");
l.find("a:first")
.bind("click", function(j) {
$.increaseCounter(501900002);
var i = $(this)
.parent()
.parent();
AddBuddy({
t: "1",
a: 0,
u: i.parent()
.attr("sid"),
p: 0,
d: __user.displayName.substr(0, 5),
l: i.find("dt")
.text(),
b: 1,
s: 0,
c: "",
cid: "",
successCallback: function() {
i.find("dd:last")
.html("")
.html('<span style="color:#000;">请求已发送</span>');
var o = i.parent()
.attr("uid");
AddRecommendBuddyNotify(o);
setTimeout(function() {
var q = $(".side > ul");
$(i.parent())
.remove();
q.find("li[class='none']:first")
.removeClass("none");
var p = q.find("li[class='none']")
.length;
if (p <= 1) {
GetPcRecommendBuddyListV2(3);
}
}, 3000);
}
});
stopPropagation(j);
preventDefault(j);
});
l.find("a:last")
.bind("click", function(i) {
$.increaseCounter(501900001);
var o = $(this)
.parent()
.parent()
.parent();
var j = __contactMap.get(o.attr("uid"));
if ( !! j) {
openChatWindow(this, j.uid);
} else {
addChatFriendV2(2, o.attr("sid"), function(q, s) {
if (typeof q.rc == "number" && q.rc == 200) {
var r = q.rv;
var p = new ContactDefault();
if (!buddyListContains("-1")) {
__buddyList.push({
"id": -1,
"n": "陌生人"
});
__contactTree.insertBuddyList({
"id": -1,
"n": "陌生人"
});
}
p.uid = r.uid;
p.uri = r.uri;
p.bl = "-1";
p.ct = 2;
extendContact(p);
__contactMap.put(p.uid, p);
__contactTree.insertBuddyItem(p, p.bl);
openChatWindow(this, p.uid);
}
});
}
stopPropagation(i);
preventDefault(i);
});
}
if (g <= 0) {
if (e.rv.length <= 0) {
k.find(".text_box")
.removeClass("none");
} else {
k.find(".text_box")
.addClass("none");
k.append(h);
}
} else {
if (h.find("li")
.length <= 0) {
k.find(".text_box")
.removeClass("none");
}
}
} else {
var k = $(".side");
if (k.find("ul")
.length <= 0 || k.find("ul>li")
.length <= 0) {
k.find(".text_box")
.removeClass("none");
}
}
loadingPanel.addClass("none");
}
function GetPcRecommendBuddyListV2Error(b, d, c) {
var a = $(".side");
if (a.find("ul")
.length <= 0 || a.find("ul>li")
.length <= 0) {
a.find(".text_box")
.removeClass("none");
}
loadingPanel.addClass("none");
isRefreshRecommendBuddyList = false;
}
function AddRecommendBuddyNotify(a) {
var b = {};
b.url = formatString(AddRecommendBuddyNotifyUrl, __version++);
b.type = "post";
b.dataType = "json";
b.data = {
"uid": __user.uid,
"duid": a,
"ssid": __sessionId
};
b.cache = false;
b.success = function(c, d) {};
b.error = function(c, e, d) {};
$.ajax(b);
}
function getConnect() {
var a = new Object();
a.success = getConnectSuccess;
a.error = getConnectError;
a.url = formatString(getConnectUrl, __version++);
a.type = "POST";
a.data = {
"ssid": __sessionId,
"reported": getReportedData()
};
a.dataType = "json";
a.cache = false;
$.ajax(a);
}
var __getConnErrorTimes = 0;
var __getCoonTimes = 0;
function getConnectSuccess(e, d) {
var j = e;
__getCoonTimes++;
if (__getCoonTimes % 3 == 0) {
activeRemindMsgCookie();
}
if (typeof j.rc == "number" && j.rc == 200) {
__getConnErrorTimes = 0;
var h = j.rv;
var c = h.length;
var a = false;
if (c < 10) {
a = false;
} else {
var b = 0;
for (var f = 0; f < c; f++) {
if (h[f].DataType == 2 || h[f].DataType == 6) {
b++;
}
if (b >= 10) {
a = true;
break;
}
}
}
function g(B) {
if (B >= c) {
if (a) {
insertBuddyToList(__contactMap.values(), function() {
window.setTimeout(getConnect, 100);
});
} else {
window.setTimeout(getConnect, 100);
}
return;
}
switch (h[B].DataType) {
case 1:
updatePersonalInfo(h[B].Data);
break;
case 2:
if (h[B].Data.uid == __user.uid) {
updatePersonalInfo(h[B].Data);
} else {
updateContactInfo(h[B].Data, !a);
}
break;
case 3:
if (h[B].Data.msgType == 2) {
receiveMsgs(h[B].Data);
startSound("newmessage");
} else {
if (h[B].Data.msgType == 3 || h[B].Data.msgType == 4) {
sendMsgFailed(h[B].Data);
}
}
break;
case 4:
if (h[B].Data.ec == 900) {
logout(false);
startSound("sys");
$.fn.fetionHintWindow()
.show("您已经从其他终端登录!", "提示", "OK", function() {
__isNormalLogout = true;
window.location.href = __officialSiteUrl + "/account/loginout?ul=" + loginPageUrl;
});
} else {
if (h[B].Data.ec >= 902 && h[B].Data.ec <= 905) {
logout(false);
$.fn.fetionHintWindow()
.show("您已退出网页版飞信。<br/>单击确定后返回登录页面。", "提示", "OK", function() {
redirectLogin();
});
}
}
return;
break;
case 5:
receiveInvite(h[B].Data);
startSound("sys");
break;
case 6:
if (h[B].Data.ba == 1) {
addBuddyWithReply(h[B].Data, !a);
} else {
if (h[B].Data.ba == 2) {
removeBuddyWithReply(h[B].Data, !a);
} else {
if (h[B].Data.ba == 3) {
updateBuddyWithReply(h[B].Data, !a);
}
}
}
break;
case 7:
if (h[B].Data.InfoType == 1) {
dealWithCallme(h[B].Data.Info);
}
break;
case 8:
if (h[B].Data.length > 0) {
var m = h[B].Data;
m.sort(sort_by("n", false));
for (var y = 0; y < m.length; y++) {
var z = m[y].GData;
switch (m[y].GDataType) {
case 1:
var n = z;
n.crc = "1234";
$.popWinMsg({
gName: n.gN,
fName: n.iNn,
group: n,
msgN: "msg4",
isLink: true,
handleEntity: n,
consent: handleInviteGroup,
isClose: false
});
break;
case 2:
var x = z;
exitGroup(x.gUri, x);
break;
case 3:
var s = z;
apvResult(s);
break;
case 4:
var C = z;
var t = jGroupUriToId(C.GroupUri);
$.popWinMsg({
gName: C.GroupName,
group: __groupMap.get(t),
msgN: "msg6"
});
removeGroupUi(t, 2);
break;
case 5:
var D = z.DeleteMemberEntity;
for (var A = 0; A < D.length; A++) {
deleteGroupMember(D[A]);
}
break;
case 6:
var v = z.ApplyGroupEntity[0];
$.popWinMsg({
gName: v.n,
fName: v.ApplyGroupUserEntity[0].Nickname,
group: v,
iR: v.ApplyGroupUserEntity[0].Note == null ? "" : v.ApplyGroupUserEntity[0].Note,
msgN: "msg13",
handleEntity: v,
consent: handleApplication,
isClose: false
});
break;
case 7:
var u = z;
var l = new GroupMemDefault();
l.MemberUri = u.MemberUri;
l.minn = u.minn;
l.i = 3;
initGroupMemList(u.gUri, l);
var t = jGroupUriToId(u.gUri);
var r = __groupMap.get(t);
var p = jMemUriToId(u.MemberUri);
if (p != __user.sid) {
$.popWinMsg({
gName: u.n,
fName: l.minn,
group: r,
msgN: "msg5"
});
}
break;
case 9:
updateGroupInfo(z, true);
if (z.members) {
for (var E = 0; E < z.members.length; E++) {
initGroupMemList(z.gUri, z.members[E]);
}
}
break;
case 10:
var q = z.PermissionChangedGroupEntity;
groupMemPriChange(q);
break;
case 14:
var w = z;
w.crc = "1234";
$.popWinMsg({
gName: w.n,
fName: w.iNn,
group: w,
msgN: "msg10",
iR: w.iR,
joinItems: w.JoinItem,
handleEntity: w,
consent: approveInviteGroup,
isClose: false
});
break;
case 16:
var o = z;
var t = jGroupUriToId(o.gUri);
var r = __groupMap.get(t);
$.popWinMsg({
gName: r.n,
fName: o.iNn,
group: r,
msgN: "msg5"
});
break;
case 17:
updateGroupInfo(z, false, true);
break;
case 21:
receiveGroupMsgs(z);
break;
default:
break;
}
}
}
break;
case 9:
break;
default:
break;
}
B++;
window.setTimeout(function() {
g(B);
}, 20);
}
g(0);
} else {
if (typeof j.rc == "number" && j.rc == 310) {
redirectLogin();
} else {
if (typeof j.rc == "number" && j.rc == 304) {
window.setTimeout(getConnect, 1000);
} else {
window.setTimeout(getConnect, 1000);
}
}
}
}
function getConnectError(a, c, b) {
if (__getConnErrorTimes <= 60) {
__getConnErrorTimes++;
window.setTimeout(getConnect, 1000);
} else {
alert("网络连接已断开,单击确定后返回登录页面。");
redirectLogin();
}
}
function getReportedData() {
var c = __dataReportMap;
if (__user && !! c && c.size() > 0) {
var a = __user.uid + "|" + "default";
var b = c.keys();
$.each(b, function(e, d) {
a += "|" + d + "_" + c.get(d);
});
c.clear();
return a;
} else {
return "";
}
}
function getGroupList() {
var a = new Object();
a.success = getGroupListSuccess;
a.error = getGroupListError;
a.url = formatString(getGroupListUrl, __version++);
a.type = "POST";
a.data = {
"ssid": __sessionId
};
a.dataType = "json";
a.cache = false;
$.ajax(a);
__groupTree = $.fn.jGroupTree({
target: "main_contact_list",
isSinglePattern: true,
onBuddyItemDbClick: openGroupChatWindow,
onBuddyItemClick: function() {},
onBuddyItemMouseOver: function() {}
});
}
var __gglRetry = 0;
function getGroupListSuccess(c, a) {
var j = c;
if (typeof j.rc == "number" && j.rc == 200) {
__gglRetry = 0;
if (c.rv.GroupListInfo != null) {
var g = "";
for (var d = 0; d < c.rv.GroupListInfo.length; d++) {
var b = c.rv.GroupListInfo[d].GroupUri;
g += b + ",";
}
getGroupPerInfo(g);
startGroupSubscribe(g);
var e = j.rv.GroupListInfo;
e = e || (new Array());
var f = e.length;
for (var d = 0; d < f; d++) {
var h = new GroupDefault();
h.gUri = e[d].GroupUri;
h.i = e[d].Identity;
extendGroupItem(h);
__groupMap.put(h.id, h);
}
}
initGroupList();
} else {
if (typeof j.rc == "number" && j.rc == 310) {
redirectLogin();
} else {
if (__gglRetry < 3) {
__gglRetry++;
window.setTimeout("getGroupList();", 500);
} else {
__gglRetry = 0;
alert(formatString("由于网络原因,获取群组列表失败,请重新登录。错误代码:{0}", j.rc));
redirectLogin();
}
}
}
}
function getGroupListError(a, c, b) {
if (__gglRetry < 3) {
__gglRetry++;
window.setTimeout("getGroupList();", 500);
} else {
__gglRetry = 0;
alert(formatString("由于网络原因,获取群组列表失败,请重新登录。错误原因:{0}", c));
redirectLogin();
}
}
function initGroupListHeight() {
if (__groupTree) {
__groupTree.adjustHeight();
}
}
function initGroupList() {
var a = __groupMap.values();
insertGroupToList(a, initMainUi);
}
function insertGroupToList(c, h) {
var g = new Object();
if (c.length == 0) {
g[0] = __groupTree.createBuddyList(false);
} else {
g[0] = __groupTree.createBuddyList(true);
}
var d = c.length;
var e = g[0];
for (var b = 0; b < d; b++) {
var j = __groupTree.createGroupItem(c[b]);
e.pushContent(j);
}
var f = "";
var a = g[0];
f += a.toHtmlString();
__groupTree.setInnerHtml(f);
__isOkGroupList = true;
if (typeof h == "function") {
if (__isOkBuddyList && __isOkGroupList) {
h();
}
}
f = null;
}
var __spRetry = 0;
function setPersonalInfo(b) {
var a = new Object();
a.url = formatString(setPersonalInfoUrl, __version++);
a.type = "POST";
a.data = {
"Impresa": b,
"ssid": __sessionId
};
a.dataType = "json";
a.cache = false;
a.success = function(d, e) {
var c = d;
if (c.rc && c.rc == 200) {
__spRetry = 0;
$("#user_impresa")
.text(!b ? "请输入心情短语..." : cnSubstr(b, 40, false));
__user.i = b;
} else {
retrySetPersonInfo(b, c.rc);
}
};
a.error = function(c, e, d) {
retrySetPersonInfo(b, e);
};
$.ajax(a);
}
function updateLocalName(a) {
$.ajax({
type: "POST",
url: formatString(setContactInfoUrl, __version++),
data: {
"ssid": __sessionId,
"UserId": a,
"localName": "testss" + __version
},
success: function(b) {
var c = __contactMap.get(a);
updateContactInfo(c);
}
});
}
function retrySetPersonInfo(a, b) {
if (__spRetry < 3) {
__spRetry++;
var c = this.data;
window.setTimeout(function() {
setPersonalInfo(a);
}, 500);
} else {
__spRetry = 0;
alert("设置个人资料失败,错误原因:" + b);
}
}
function setSmsOnline(b) {
var a = new Object();
a.success = setSmsOnlineSuccess;
a.error = setSmsOnlineError;
a.url = formatString(setSmsOnlineUrl, __version++);
a.type = "POST";
a.data = b;
a.dataType = "json";
a.cache = false;
$.ajax(a);
}
function setSmsOnlineSuccess(b, c) {
var a = b;
if (typeof a.rc == "number" && a.rc == 200) {} else {}
}
function setSmsOnlineError(a, c, b) {}
var __setPresRetry = 0;
function setPresence(c, b) {
var a = new Object();
a.url = formatString(setPresenceUrl, __version++);
a.type = "POST";
a.data = c;
a.dataType = "json";
a.cache = false;
a.success = function(e, g) {
var d = e;
if (typeof d.rc == "number" && d.rc == 200) {
__setPresRetry = 0;
updateStatusDesc(b);
} else {
if (__setPresRetry < 3) {
__setPresRetry++;
var f = objects(this.data);
window.setTimeout(function() {
setPresence(f, b);
}, 500);
} else {
__setPresRetry = 0;
alert("设置状态失败, 错误原因:" + d.rc);
}
}
};
a.error = function(d, g, f) {
if (__setPresRetry < 3) {
__setPresRetry++;
var e = objects(this.data);
window.setTimeout(function() {
setPresence(e, b);
}, 500);
} else {
__setPresRetry = 0;
alert("设置状态失败, 错误原因:" + g);
}
};
$.ajax(a);
}
function sendDirectSMS(d, c, a) {
var b = new Object();
b.type = "POST";
b.dataType = "json";
b.cache = false;
b.data = {
"UserName": __user.uid,
"msg": c,
"receivers": a,
"ssid": __sessionId
};
b.url = formatString(SendDirectSMSUrl, __version++);
b.success = function(e, f) {
if ( !! e && typeof e.rc == "number") {
switch (e.rc) {
case 280:
break;
case 401:
d.logErrorInfo("没有给对方发送短信的授权");
break;
case 403:
d.logErrorInfo("服务器关闭直接短信功能");
break;
case 405:
d.logErrorInfo("目的用户不接受");
break;
case 406:
d.logErrorInfo("消息内容包含敏感词");
break;
case 422:
d.logErrorInfo("未开通直接短信服务");
break;
case 486:
d.logErrorInfo("您暂时无法发送短信,请稍后再试。");
break;
case 488:
d.logErrorInfo("用户停机");
break;
case 494:
d.logErrorInfo("您的飞信账号处于系统保护状态,限制了该功能的使用。请手机发送短信U到12520解除限制后重新登录。");
break;
default:
d.logErrorInfo("消息发送失败: " + cnSubstr(c, 18));
break;
}
}
};
b.error = function() {
d.logErrorInfo("消息发送失败: " + cnSubstr(c, 18));
};
$.ajax(b);
}
function sendSMS(d, c, a) {
var b = new Object();
b.type = "POST";
b.dataType = "json";
b.cache = false;
b.data = {
"UserName": __user.uid,
"Message": c,
"Receivers": a,
"ssid": __sessionId
};
b.url = formatString(sendSMSUrl, __version++);
b.success = function(e, f) {
if (typeof e.rc == "number") {
switch (e.rc) {
case 200:
break;
case 310:
d.logErrorInfo("Session会话过期!");
break;
case 311:
d.logErrorInfo("客户端请求参数错误!");
break;
case 400:
d.logErrorInfo("信令参数错误!");
break;
case 406:
d.logErrorInfo("消息有敏感词!");
break;
case 422:
d.logErrorInfo("没有开通直接短信!");
break;
case 486:
__leftSmsCount = e.rv.day;
if (!__user.isCM) {
d.logErrorInfo("您的短信配额已用完,暂时无法发送短信。");
} else {
d.logErrorInfo("对不起,今日您发送短信数量已达上限,请明天再发");
}
break;
case 4861:
__leftSmsCount = e.rv.day;
if (!__user.isCM) {
d.logErrorInfo("您的短信配额已用完,暂时无法发送短信。");
} else {
d.logErrorInfo("对不起,今日您发送短信数量已达上限,请明天再发");
}
break;
case 4862:
__leftSmsCount = e.rv.month;
if (!__user.isCM) {
d.logErrorInfo("您的短信配额已用完,暂时无法发送短信。");
} else {
d.logErrorInfo("对不起,本月您发送短信数量已达上限,请下月再发");
}
break;
case 4863:
d.logErrorInfo("超过未发送限制!");
break;
case 4864:
d.logErrorInfo("接收人数限制!");
break;
case 4865:
d.logErrorInfo("发送时间限制!");
break;
case 494:
d.logErrorInfo("您的飞信账号处于系统保护状态,限制了该功能的使用。请手机发送短信U到12520解除限制后重新登录。");
break;
default:
d.logErrorInfo("消息发送失败: " + cnSubstr(c, 18));
break;
}
}
};
b.error = function(e, g, f) {
d.logErrorInfo("消息发送失败: " + cnSubstr(c, 18));
};
$.ajax(b);
}
function sendMessage(g, b, f, a, e) {
var d = __contactMap.get(b);
if (__user.isCM && (d.isCT || d.isCU) && a) {
sendDirectSMS(g, f, b);
return;
}
if ((__user.isCT || __user.isCU) && d.isCM && a) {
sendSMS(g, f, b);
return;
}
var c = new Object();
c.success = function(i, j) {
var h = i;
if (typeof h.rc == "number" && h.rc >= 200 && h.rc < 300) {} else {
if (typeof h.rc == "number" && h.rc == 420) {
g.logErrorInfo("对方版本过旧,您无法向其发起陌生人消息。");
g.inputPermission = 420;
g.enableInput(false);
} else {
if (typeof h.rc == "number" && h.rc == 486) {
if (!__user.isCM) {
g.logErrorInfo("您的短信配额已用完,暂时无法发送短信。");
} else {
g.logErrorInfo("您暂时无法发送短信,请稍后再试。");
}
} else {
if (typeof h.rc == "number" && h.rc == 494) {
g.logErrorInfo("您的飞信账号处于系统保护状态,限制了该功能的使用。请手机发送短信U到12520解除限制后重新登录。");
} else {
if (typeof h.rc == "number" && h.rc == 405) {} else {
g.logErrorInfo("消息发送失败: " + cnSubstr(f, 18));
}
}
}
}
}
};
c.error = function(h, j, i) {
g.logErrorInfo("消息发送失败: " + cnSubstr(f, 18));
};
c.url = formatString(sendMessageUrl, __version++);
c.type = "POST";
c.data = {
"To": b,
"IsSendSms": a ? "1" : "0",
"msg": f,
"ssid": __sessionId
};
c.dataType = "json";
c.cache = false;
$.ajax(c);
}
function inviteRobot(b) {
var a = new Object();
a.url = formatString(sendMessageUrl, __version++);
a.type = "POST";
a.data = {
"To": b,
"IsSendSms": "0",
"msg": "WEB",
"ssid": __sessionId
};
a.dataType = "json";
a.cache = false;
$.ajax(a);
}
function OpBuddy(c, b, e, d) {
var a = new Object();
a.success = function(g, k) {
var f = g;
if (typeof f.rc == "number" && f.rc == 200) {
var i = __contactMap.get(c);
if (b == "0") {
__contactMap.remove(c);
extendContact(i);
eachBuddyList(i, function(l) {
__contactTree.deleteBuddyItem(parseInt(l), i.uid);
});
} else {
if (i) {
i.isBk = (b == "2" ? 0 : 1);
extendContact(i);
eachBuddyList(i, function(l) {
__contactTree.updateBuddyItem(parseInt(l), i);
});
var h = getUserPortraitUrl(i, "5");
if (__chatFooterItemMap.containsKey(i.uid)) {
__chatFooterItemMap.get(i.uid)
.updateItem(i, h);
}
if (__remindMsgItemMap.containsKey(i.uid)) {
__remindMsgItemMap.get(i.uid)
.updateItem(i, h);
}
if (__chatWindowMap.containsKey(i.uid)) {
__chatWindowMap.get(i.uid)
.setBuddyStatus(i);
}
} else {
if (b == "1") {
var j = new ContactDefault();
j.uid = parseInt(c);
j.isBk = 1;
j.ct = -1;
__contactMap.put(c, j);
}
}
}
if (typeof e == "function") {
e(g, k);
}
}
};
a.error = function(f, h, g) {
if (typeof d == "function") {
d(f, h, g);
}
};
a.url = formatString(opBuddyUrl, __version++);
a.type = "POST";
a.data = {
"To": c,
"Op": b,
"ssid": __sessionId
};
a.dataType = "json";
a.cache = false;
$.ajax(a);
}
function handleAddBuddy(c, a) {
if (typeof a == "undefined" || a == null) {
a = 0;
}
var b = new Object();
b.success = function(e, f) {
var d = e;
if (typeof d.rc == "number" && d.rc == 200 && c.data.Result == 1) {
$.extend(d.rv, c.data.Buddy);
addBuddySuccess(d.rv);
}
if (c.data.Blocked == 1 && c.data.Result == 0) {
OpBuddy(c.data.Buddy.uid, "1");
}
};
b.error = function(d, f, e) {
if (a < 3) {
a++;
handleAddBuddy(c, a);
}
};
b.url = formatString(handleAddBuddyUrl, __version++);
b.type = "POST";
b.data = {
"BuddyId": c.data.Buddy.uid,
"Result": c.data.Result,
"LocalName": c.data.LocalName,
"BuddyList": c.data.BuddyList,
"ssid": __sessionId
};
b.dataType = "json";
b.cache = false;
$.ajax(b);
}
function addChatFriend(c, d, b) {
var a = new Object();
if (typeof d == "function") {
a.success = d;
}
if (typeof b == "function") {
a.error = b;
}
a.url = formatString(addChatFriendUrl, __version++);
a.type = "POST";
a.data = {
"Uri": c,
"ssid": __sessionId
};
a.dataType = "json";
a.cache = false;
$.ajax(a);
}
function addChatFriendV2(a, e, d, b) {
var c = {};
c.url = formatString(addChatFriendUrl, __version++);
c.type = "post";
c.dataType = "json";
c.data = {
"addType": a,
"userValue": e,
"ssid": __sessionId
};
c.cache = false;
if (typeof d == "function") {
c.success = d;
}
if (typeof b == "function") {
c.error = b;
}
$.ajax(c);
}
function AddBuddy(b) {
var c = $.extend({
t: 0,
a: 0,
u: "",
p: 0,
d: __user.displayName.substr(0, 5),
l: "",
b: 1,
s: 0,
c: "",
cid: "",
successCallback: function() {},
failCallback: function() {},
successCallback2: function(d) {}
}, b);
var a = new Object();
a.url = formatString(addBuddyUrl, __version++);
a.type = "POST";
a.dataType = "json";
a.cache = false;
a.data = {
"type": c.t,
"UserName": c.u,
"AddType": c.a,
"PhraseId": c.p,
"Desc": c.d,
"LocalName": c.l,
"BuddyLists": c.b,
"SubscribeFlag": c.s,
"Ccp": c.c,
"CcpId": c.cid,
"ssid": __sessionId
};
a.success = function(d, e) {
c.successCallback2(d);
if (typeof d.rc == "number" && d.rc == 200) {
addBuddySuccess(d.rv);
c.successCallback();
} else {
if (typeof d.rc == "number" && d.rc == 520) {
alert("您的好友数已达上限。");
} else {
if (typeof d.rc == "number" && d.rc == 521) {
alert(c.u + "已在您的好友列表中。");
} else {
if (typeof d.rc == "number" && d.rc == 522) {
alert("对不起,您是飞信互联网用户(未绑定手机号),不能添加未开通移动业务的移动手机号为好友。");
} else {
if (typeof d.rc == "number" && d.rc == 523) {
alert("不能将自己添加为好友。");
} else {
if (typeof d.rc == "number" && d.rc == 312) {
alert("您输入的验证码有误,请重新输入。");
$("#addBuddy_ccps")
.select();
} else {
if (typeof d.rc == "number" && d.rc == 404) {
alert("您所输入的号码不存在。");
} else {
if (typeof d.rc == "number" && d.rc == 486) {
alert("您添加好友的请求过于频繁,请稍后再试。");
} else {
if (typeof d.rc == "number" && d.rc == 495) {
alert("对不起,您权限不足,不能添加此好友。");
} else {
if (typeof d.rc == "number" && d.rc == 494) {
alert("您的飞信账号处于系统保护状态,限制了该功能的使用。请手机发送短信U到12520解除限制后重新登录。");
} else {
if (typeof d.rc == "number" && d.rc == 400) {
alert("添加好友失败,请您检查对方的手机号或者飞信号是否填写正确。");
} else {
alert("添加好友失败,请重试。错误代码:800000" + d.rc);
}
}
}
}
}
}
}
}
}
}
}
};
a.error = function(d, f, e) {
c.failCallback();
alert("添加好友失败,请重试。错误原因:" + f);
};
$.ajax(a);
}
function logout(b) {
__isNormalLogout = true;
var a = new Object();
a.url = formatString(logoutUrl, __version++);
a.type = "POST";
a.data = {
"ssid": __sessionId
};
a.dataType = "json";
a.cache = false;
if (b) {
window.setTimeout("window.location.href = '" + loginPageUrl + "'", 500);
}
$.ajax(a);
}
function initUserInfo() {
var a = cnSubstr(__user.displayName, 18);
$("#welcome_name")
.text(a);
$("#user_name")
.text(a);
$("#user_sid")
.text(__user.sid);
$("#user_impresa")
.text(cnSubstr(__user.i, 40, false) || "请输入心情短语...");
$("#user_portrait")
.attr("src", getUserPortraitUrl(__user, "3"));
if (__user.isCM && __user.cas == "0") {
if (__isSmsOnline.test(__user.sms)) {
$("#input_rec_msg")
.removeAttr("disabled")
.attr("checked", "true");
} else {
$("#input_rec_msg")
.removeAttr("disabled")
.removeAttr("checked");
}
} else {
if (__user.isCT || __user.isCU) {
$("#input_rec_msg")
.css({
"display": "none"
});
$("#input_rec_msg")
.next()
.css({
"display": "none"
});
$("#input_rec_msg")
.parent()
.prev()
.addClass("none");
} else {
$("#input_rec_msg")
.removeAttr("checked")
.attr("disabled", "disabled");
}
}
if (__user.ca.toLowerCase() == "cmcc") {
if (!$("#vip_icon")
.attr("id")) {
$(".service_icon")
.append('<li><a id="vip_icon" href="' + __vipUrl + '" title="会员" class="sicon-vip" target="_blank"></a></li>');
}
}
}
function initUserStatusDiv() {
var b = $("#user_impresa");
var i = $("#user_impresa_input");
var e = i.find("input:first");
var f = $("#user_status");
var d = $("#set_user_status");
var c = getCookie("webim_usersid");
$("#welcome_name")
.text(c);
$("#user_name")
.text(c);
$("#user_sid")
.text(c);
var a = getCookie("webim_userstatus");
switch (a) {
case "0":
f.find("em")
.text("( 隐身 )");
break;
case "100":
f.find("em")
.text("( 离开 )");
break;
case "400":
f.find("em")
.text("( 在线 )");
break;
case "600":
f.find("em")
.text("( 忙碌 )");
break;
default:
f.find("em")
.text("( 在线 )");
break;
}
b.text("请输入心情短语...");
b.bind("click", function() {
b.css("display", "none");
i.css("display", "");
e.focus();
})
.bind("mouseover", function() {
b.removeClass()
.addClass("sword_chg");
})
.bind("mouseout", function() {
b.removeClass();
});
e.bind("focus", function() {
e.val(__user.i)
.select();
})
.bind("blur", function() {
var j = e.val()
.trim();
if (j != __user.i) {
setPersonalInfo(j);
}
b.css("display", "");
i.css("display", "none");
})
.bind("keydown", function(k) {
k = window.event || k;
if (k.keyCode == 13) {
var j = e.val()
.trim();
if (j != __user.i) {
setPersonalInfo(j);
}
b.css("display", "");
i.css("display", "none");
}
});
f.bind("mouseover", function() {
if (this.className != "focus") {
this.className = "hover";
}
})
.bind("mouseout", function() {
if (this.className != "focus") {
this.className = "";
} else {
__hideUserStatusSetterTimer = setTimeout(function() {
f.removeClass();
d.css("display", "none");
}, 500);
}
})
.bind("click", function() {
if (this.className != "focus") {
this.className = "focus";
var j = $(this)
.offset();
d.css({
"display": "block",
"top": "61px",
"left": (j.left + 3) + "px"
});
} else {
this.className = "hover";
d.css("display", "none");
}
});
d.bind("mouseover", function(j) {
clearTimeout(__hideUserStatusSetterTimer);
})
.bind("mouseout", function(j) {
if (isMouseOut(this, j)) {
f.removeClass();
d.css("display", "none");
}
});
(d.find("li"))
.bind("mouseover", function() {
this.className = "hover";
})
.bind("mouseout", function() {
this.className = "";
})
.bind("click", function() {
f.removeClass();
d.css("display", "none");
if (this.id == "userdefined_status") {
createCustomPresTab();
} else {
setPresence({
"Presence": $(this)
.attr("status"),
"Custom": $(this)
.text(),
"ssid": __sessionId
}, $(this)
.text());
}
});
var g = $("#input_rec_msg");
g.removeAttr("checked")
.attr("disabled", "disabled");
g.bind("click", function() {
d.css({
"display": "none"
});
if (!this.checked) {
this.checked = "";
if (!__setSmsWindow) {
__setSmsWindow = $.fn.setSmsWindow({
onConfirm: function(j, l) {
var k = "1.00:00:00";
switch (l) {
case "1":
k = "1.00:00:00";
break;
case "2":
k = "3.00:00:00";
break;
case "3":
k = "7.00:00:00";
break;
case "4":
k = "36500.00:00:00";
break;
default:
break;
}
setSmsOnline({
"ReceiveSms": "0",
"Time": k,
"ssid": __sessionId
});
},
onCancel: function() {
g.attr("checked", "true");
}
});
__setSmsWindow.show();
} else {
__setSmsWindow.show();
}
} else {
this.checked = "checked";
setSmsOnline({
"ReceiveSms": "0",
"ssid": __sessionId
});
}
});
var h = $("#input_rec_sound");
h.click(function() {
if (h.attr("checked") == true) {
__isOpenSound = true;
} else {
__isOpenSound = false;
}
});
}
function initContactList() {
var a = __contactMap.values();
insertBuddyToList(a, initMainUi);
}
function initMainUi() {
$("#logging")
.css("display", "none");
getConnect();
var a;
if (__user.creds && __user.creds.length > 0) {
a = formatString(__activityUrl, encodeURIComponent(__user.creds[0].c));
} else {
a = formatString(__activityUrl, "");
}
__mainTabWindow.createTab("发短信", "content/freeSms.htm", false);
$("#tab_1")
.click();
$("#tab_1")
.click(function() {
$.increaseCounters("500400001");
});
initContentHeight();
initGroupListHeight();
setTimeout(function() {
getALInfo();
}, 1000);
}
function insertBuddyToList(e, m) {
__buddyList.sort(buddyListComparator);
var k = new Object();
var j = __buddyList.length;
for (var d = 0; d < j; d++) {
var c = __contactTree.isBuddyListOpen(__buddyList[d].id);
k[__buddyList[d].id] = __contactTree.createBuddyList(__buddyList[d], c);
}
var f = e.length;
var h = new Array();
var g = 50;
var b = Math.floor((f - 1) / g) + 1;
for (var d = 0; d < b; d++) {
h.push(false);
}
function a() {
var n = 0;
var i = window.setInterval(function() {
if (n >= f) {
window.clearInterval(i);
return;
}
var o = Math.min(f, n + g);
for (var p = n; p < o; p++) {
if (e[p].isBk == 1 && e[p].ct == -1) {
continue;
} else {
eachBuddyList(e[p], function(s) {
var r = k[s];
if (r) {
var q = __contactTree.createBuddyItem(e[p]);
r.pushContent(q);
}
});
}
}
sendToSwfJD(__loginProcess + Math.round(30 * (o - n) / f));
h[n / g] = true;
n += g;
}, 50);
}
a();
var l = window.setInterval(function() {
var p = 0;
var o = b - 1;
while (p <= o) {
if (!h[p] || !h[o]) {
break;
}
p++;
o--;
}
if (p > o) {
window.clearInterval(l);
var r = "";
for (var q = 0; q < j; q++) {
var n = k[__buddyList[q].id];
r += n.toHtmlString();
}
__contactTree.setInnerHtml(r);
__isOkBuddyList = true;
if (typeof m == "function") {
if (__isOkBuddyList && __isOkGroupList) {
m();
}
}
r = null;
}
}, 1000);
}
function updatePersonalInfo(d) {
$.extend(__user, d);
extendUser();
setRemindMsgCookie(__user.sid, __user.displayName, null, __sessionId);
initUserInfo();
var a = __chatWindowMap.values();
var c = a.length;
for (var b = 0; b < c; b++) {
if (a[b].setUserInfo) {
a[b].setUserInfo(__user);
}
}
}
function addBuddyWithReply(e, b) {
var a = null;
if (__contactMap.containsKey(e.uid)) {
a = __contactMap.get(e.uid);
var d = (a.isBk == 1 && a.ct == -1);
$.extend(a, e);
switch (e.ut) {
case 1:
a.ct = 0;
break;
case 2:
a.ct = 2;
break;
case 3:
a.isBk = 1;
break;
default:
break;
}
extendContact(a);
if (b) {
eachBuddyList(a, function(c) {
if (!(a.isBk == 1 && a.ct == -1)) {
if (d) {
__contactTree.insertBuddyItem(a, parseInt(c));
} else {
__contactTree.updateBuddyItem(parseInt(c), a);
}
}
});
}
} else {
a = new ContactDefault();
$.extend(a, e);
switch (e.ut) {
case 1:
a.ct = 0;
break;
case 2:
a.ct = 2;
break;
case 3:
a.isBk = 1;
a.ct == -1;
break;
default:
break;
}
extendContact(a);
__contactMap.put(a.uid, a);
if (b) {
eachBuddyList(a, function(c) {
__contactTree.insertBuddyItem(a, parseInt(c));
});
}
}
}
function removeBuddyWithReply(g, d) {
var b = __contactMap.get(g.uid) || g;
if (!b) {
return;
}
if (1 == g.ut) {
if (1 == b.isBk) {
var a = new ContactDefault();
a.uid = g.uid;
a.isBk = 1;
a.ct = -1;
__contactMap.remove(g.uid);
__contactMap.put(a.uid, a);
} else {
for (var e = 0, f = __buddyList.length; e < f; e++) {
__contactTree.deleteBuddyItem(parseInt(__buddyList[e].id), g.uid);
}
__contactMap.remove(g.uid);
}
if (d) {
for (var e = 0, f = __buddyList.length; e < f; e++) {
__contactTree.deleteBuddyItem(parseInt(__buddyList[e].id), g.uid);
}
}
} else {
if (2 == g.ut) {
if (2 == b.ct) {
if (1 == b.isBk) {
var a = new ContactDefault();
a.uid = g.uid;
a.isBk = 1;
a.ct = -1;
__contactMap.remove(g.uid);
__contactMap.put(a.uid, a);
} else {
__contactMap.remove(g.uid);
}
}
if (d) {
__contactTree.deleteBuddyItem(-1, g.uid);
}
} else {
if (3 == g.ut) {
if (-1 == b.ct && 1 == b.isBk) {
__contactMap.remove(g.uid);
} else {
b.isBk = 0;
extendContact(b);
if (d) {
eachBuddyList(b, function(c) {
__contactTree.updateBuddyItem(parseInt(c), b);
});
}
}
}
}
}
}
function updateBuddyWithReply(e, b) {
var a = __contactMap.get(e.uid);
if (!a) {
return;
}
var d = "";
if (a.ln) {
d = a.ln;
} else {
if (a.mn && a.sid) {
d = a.mn + "(" + a.sid + ")";
} else {
if (a.mn) {
d = a.mn;
} else {
if (a.sid) {
d = a.sid;
} else {
if (a.uri) {
d = (new jCompactUri(a.uri))
.mobileNoOrSid;
}
}
}
}
}
if (typeof e.rs == "number" && e.rs == 1) {
a.ct = a.bss == 0 ? 1 : 0;
updateContactInfo(e, b);
$.fn.fetionHintWindow({
modal: false
})
.show("(" + d + ")同意添加为好友。 ", "提示", "OK");
} else {
if (typeof e.rs == "number" && e.rs == 2) {
updateContactInfo(e, b);
$.fn.fetionHintWindow({
modal: false
})
.show("(" + d + ")拒绝添加为好友。 ", "提示", "OK");
} else {
updateContactInfo(e, b);
}
}
}
function updateContactInfo(f, b) {
var a = __contactMap.get(f.uid);
if (!a) {
return;
}
$.extend(a, f);
extendContact(a);
if (b) {
eachBuddyList(a, function(c) {
__contactTree.updateBuddyItem(parseInt(c), a);
});
}
var e = getUserPortraitUrl(f, "5");
if (__chatFooterItemMap.containsKey(f.uid)) {
__chatFooterItemMap.get(f.uid)
.updateItem(a, e);
}
if (__remindMsgItemMap.containsKey(f.uid)) {
__remindMsgItemMap.get(f.uid)
.updateItem(a, e);
}
var d = __chatWindowMap.get(f.uid);
if (d) {
d.setBuddyInfo(a);
d.setBuddyStatus(a);
}
}
var __searchKeyword = "";
function initi__searchInput() {
$("#inputSearchFriends")
.bind("focus", searchFocus)
.bind("blur", searchBlur)
.bind("keydown", searchKeydown)
.bind("keyup", searchKeyup);
$("#btnSearchClear")
.bind("click", function(a) {
clearSearch();
this.style.display = "";
stopPropagation(a);
return false;
});
}
function searchFocus() {
this.value = "";
$("#search_result")
.css("display", "none");
$("#btnSearchClear")
.css("display", "block");
}
function searchBlur() {
this.className = "";
if (this.value == "") {
this.value = __searchPrompt;
$("#search_result")
.css("display", "none");
$("#btnSearchClear")
.css({
"display": "none"
});
}
}
function searchKeydown(a) {
a = window.event || a;
switch (a.keyCode) {
case 38:
moveSelectedContact("up");
break;
case 40:
moveSelectedContact("down");
break;
case 13:
if (__searchKeyword == this.value) {
openSelectedContact(this, a);
} else {
searchContact(this, a);
}
break;
default:
searchContact(this, a);
break;
}
}
function searchKeyup(a) {
a = window.event || a;
switch (a.keyCode) {
case 38:
case 40:
break;
case 13:
if (__searchKeyword == this.value) {
openSelectedContact(this, a);
} else {
searchContact(this, a);
}
break;
default:
searchContact(this, a);
break;
}
}
function moveSelectedContact(e) {
var c = $("#search_result")
.find("div > ul");
var b = c.find("li");
var d = b.length;
var g = 0;
if (e == "up") {
g = -1;
} else {
if (e == "down") {
g = 1;
}
}
for (var a = 0; a < d; a++) {
if (b.eq(a)
.attr("class") == "hover") {
b.eq(a)
.removeClass("hover");
a += g;
break;
}
}
var f = (a + d) % d;
b.eq(f)
.addClass("hover");
c.scrollTop(Math.floor(f / 4) * 4 * b.eq(0)
.height());
}
function openSelectedContact(a, b) {
a.blur();
setTimeout(function() {
var c = $("#search_result")
.find("div > ul > .hover:first");
if (c) {
c.click();
}
}, 300);
}
function searchContact(a, p) {
if (__searchKeyword == a.value) {
return;
}
var k = $("#search_result");
k.find("div > ul > li")
.remove();
__searchKeyword = a.value;
if (a.value == "") {
k.css("display", "none");
$("#btnSearchClear")
.css({
"display": "none"
});
return;
}
__searchKeyword = a.value;
var o = __contactMap.values();
var b = o.length;
var n = new Array();
if (__isFirstSearch) {
for (var m = 0; m < b; m++) {
var j = searchHelper.MakeSpellCodeAsWordsAll(o[m].is);
o[m].is = j.bodyContent;
}
__isFirstSearch = false;
}
for (var m = 0; m < b; m++) {
var r = __searchKeyword.toLowerCase();
var d = new RegExp("[*]+", "gi");
var g = __searchKeyword.toLowerCase()
.replace(d, "");
var f = "";
var c = "";
try {
f = searchHelper.MakeSpellCodeAsWordsAll(o[m].is)
.bodyContent;
c = searchHelper.MakeSpellCodeAsWordsAll(o[m].pis)
.bodyContent;
} catch (p) {}
if ((o[m].nn && o[m].nn.toLowerCase()
.indexOf(r) >= 0) || (o[m].ln && o[m].ln.toLowerCase()
.indexOf(r) >= 0) || (o[m].mn && o[m].mn.toLowerCase()
.indexOf(r) >= 0) || (f && f.toLowerCase()
.indexOf(g) >= 0) || (c && c.toLowerCase()
.indexOf(g) >= 0)) {
n.push(o[m]);
}
}
var h = n.length;
if (h <= 0) {
k.find("div > ul:first")
.append("<li>没找到匹配的联系人</li>");
}
n.sort(buddyComparator);
for (var m = 0; m < h; m++) {
var q;
var t = htmlEncode(n[m].displayName);
if (m == 0) {
q = $("<li class='hover'><i class='" + n[m].statusClass + "' /><b>" + t + "</b> <em>" + getStatusDesc(n[m]) + "</em> </li>");
k.find("div > ul:first")
.append(q);
} else {
q = $("<li><i class='" + n[m].statusClass + "' /><b>" + t + "</b> <em>" + getStatusDesc(n[m]) + "</em> </li>");
k.find("div > ul:first")
.append(q);
}
q.bind("mouseover", function() {
$("#search_result")
.find("div > ul > .hover")
.removeClass("hover");
$(this)
.removeClass()
.addClass("hover");
})
.bind("click", {
buddyId: n[m].uid
}, function(i) {
openChatWindow(this, i.data.buddyId);
clearSearch();
$("#btnSearchClear")
.css({
"display": "none"
});
});
}
var l = $(a);
var s = l.offset();
k.css("display", "block")
.css({
"top": s.top + l.innerHeight(),
"left": s.left - 26
});
$("#btnSearchClear")
.css({
"display": "block"
});
}
function clearSearch() {
var b = $("#search_result");
b.css("display", "none");
b.find("div > ul > li")
.remove();
var a = $("#inputSearchFriends");
if (a.val() != __searchPrompt) {
a.val(__searchPrompt);
}
__searchKeyword = "";
}
function initContactCard() {
$("#contact_info")
.bind("mouseover", function(a) {
clearTimeout(__hideContactInfoTimer);
if (isMouseOver(this, a)) {
this.style.display = "block";
}
})
.bind("mouseout", function(a) {
if (isMouseOut(this, a)) {
this.style.display = "none";
}
});
}
function showContactCard(b, a) {
clearTimeout(__hideContactInfoTimer);
var c = __contactMap.get(a);
if (!c) {
return;
}
__initContactInfoTimer = window.setTimeout(function() {
var h = $("#contact_info");
h.css("display", "none");
var q = h.find("#contact_portrait");
var e = h.find("#contact_status");
var j = h.find("#contact_name");
q.attr("src", getDefaultPortraitUrl(c));
var o = getUserPortraitUrl(c, "3");
cacheUerPortrait(c, o, function(p, r) {
if (c == r) {
q.attr("src", o);
}
});
j.get(0)
.innerHTML = EmotionNonhtmlReplace(c.displayName, 18, true);
if (c.isVip) {
j.css("color", "red");
} else {
j.css("color", "");
}
var l = "";
if (c.ct == 1) {
l = "尚未开通飞信";
} else {
var k = new jCompactUri(c.uri);
l = c.sid || (!k.isMobileNo ? k.mobileNoOrSid : "");
}
h.find("#contact_id")
.text(l);
e.attr("class", c.statusClass);
if (c.uid) {
h.find("#contact_space")
.attr("href", formatString(__contactSpaceUrl, c.uid))
.css("display", "")
.click(function() {
if (__user.c) {
var p = formatString(__contactSpaceUrl, c.uid, __user.c);
$(this)
.attr("href", p);
}
});
} else {
h.find("#contact_space")
.attr("href", "#")
.css("display", "none");
}
if (!c.i || c.ct == 1) {
h.find("#contact_impresa")
.text("")
.css("display", "none");
h.find("#contact_impresa_line")
.css("display", "none");
} else {
var m = EmotionNonhtmlReplace(c.i, 106, true);
var d = h.find("#contact_impresa");
d.get(0)
.innerHTML = m;
d.css("display", "");
h.find("#contact_impresa_line")
.css("display", "");
}
if (c.bl == "0") {
h.find("#contact_list")
.text("未分组");
} else {
if (c.bl == "-1") {
h.find("#contact_list")
.text("陌生人");
} else {
var g = "";
var n = __buddyList.length;
eachBuddyList(c, function(r) {
for (var p = 0; p < n; p++) {
if (__buddyList[p].id.toString() == r) {
g += __buddyList[p].n + ";";
}
}
});
g = g.trim(";");
h.find("#contact_list")
.text(g);
}
}
try {
var f = $(b)
.offset();
if (f.top + h.height() > getViewportHeight() - 20) {
f.top = f.top - h.height() + $(b)
.innerHeight();
}
} catch (i) {}
__showContactInfoTimer = window.setTimeout(function() {
h.css({
"display": "block",
"top": f.top,
"left": f.left - h.outerWidth()
});
}, 300);
}, 500);
}
function hideContactCard(b, a) {
clearTimeout(__initContactInfoTimer);
clearTimeout(__showContactInfoTimer);
__hideContactInfoTimer = setTimeout(function() {
var c = $("#contact_info");
c.css({
"display": "none"
});
}, 200);
}
function initOperateCard() {
var a = $("#operate_info");
a.bind("mouseover", function(b) {
clearTimeout(__hideOperateInfoTimer);
this.style.display = "block";
})
.bind("mouseout", function(b) {
if (isMouseOut(this, b)) {
this.style.display = "none";
}
});
a.find("div>ul>li")
.bind("mouseover", function() {
this.className = "hover";
})
.bind("mouseout", function() {
this.className = "";
});
}
function showOperateCard(e, k) {
var a = __contactMap.get(k);
var c = $("#operate_info");
var f = $("#operate_items");
f.find("#operate_msg")
.unbind()
.bind("click", function() {
openChatWindow(e, k);
c.css({
"display": "none"
});
return false;
});
f.find("#operate_block")
.unbind()
.text(a.isBk == 1 ? "移出黑名单" : "加入黑名单")
.bind("click", function() {
c.css({
"display": "none"
});
OpBuddy(a.uid, a.isBk == 1 ? "2" : "1");
__group_mem.containsKey("");
return false;
});
f.find("#operate_updateLocalName")
.unbind()
.bind("click", function() {
c.css({
"display": "none"
});
updateLocalName(a.uid);
return false;
});
var j = f.find("#operate_add");
j.unbind();
var d = a.status;
if (a.ct == 2 || d == ContactStatus.Verify || d == ContactStatus.Verify_Bklist || d == ContactStatus.Refuse_Bklist || d == ContactStatus.Refuse) {
var b = (a.ct == 2 ? "添加好友" : "重新添加好友");
j.parent()
.css("display", "");
j.text(b)
.bind("click", function() {
if (a.sid) {
createAddBuddyTab(a.sid);
} else {
if (a.mn) {
createAddBuddyTab(a.mn, "1");
} else {
if (a.uri) {
var l = new jCompactUri(a.uri);
createAddBuddyTab(l.mobileNoOrSid, l.isMobileNo ? "1" : "0");
} else {
createAddBuddyTab();
}
}
}
return false;
});
} else {
j.parent()
.css("display", "none");
}
var h = f.find("#operate_space");
h.unbind();
if (a.sid) {
h.attr("href", formatString(__contactSpaceUrl, a.uid));
h.parent()
.css("display", "");
h.bind("click", function() {
c.css({
"display": "none"
});
if (__user.c) {
var l = formatString(__contactSpaceUrl, a.uid, __user.c);
$(this)
.attr("href", l);
}
});
} else {
h.parent()
.css("display", "none");
}
var g = $(e);
var i = g.offset();
if (i.top + c.height() > getViewportHeight() - 20) {
i.top = i.top - c.height();
}
c.css({
"display": "block",
"top": i.top + g.height(),
"left": i.left - (c.outerWidth() - g.width())
});
__hideOperateInfoTimer = setTimeout(function() {
c.css({
"display": "none"
});
}, 2000);
}
function updateStatusDesc(b) {
b = b || "";
b = cnSubstr2(b.trim(), 6);
var a = "";
if (cnLength2(b) < 8) {
a = "( " + b + " )";
} else {
a = "(" + b + ")";
}
$("#user_status > em")
.text(a);
}
function initChatFooter() {
__maxMsgListOnTaskbar = getMaxMsglistCount();
__moreMsgListDiv = $.fn.jMoreMsgLists({
target: $(document.body),
maxHold: 5
});
__moreMsgListDiv.hide();
$("#msg_more")
.bind("click", function() {
this.className = "msg_more hover_msg";
if (__chatFooterItemMap.size() > __maxMsgListOnTaskbar) {
if (__moreMsgListDiv.isShow) {
__moreMsgListDiv.hide();
} else {
__moreMsgListDiv.show();
}
}
})
.bind("mouseout", function(a) {
this.className = "msg_more";
if (__moreMsgListDiv.isShow && isMouseOut(this, a)) {
__hideMoreMsgListTimer = setTimeout(function() {
__moreMsgListDiv.hide();
}, 500);
}
})
.bind("mouseover", function() {
this.className = "msg_more hover";
});
__remindMsgDiv = $.fn.jRemindMsgList({
target: $(document.body),
onClearAll: clearAllRemindMsg
});
__remindMsgDiv.hide();
$("#msg_remind")
.bind("click", function(a) {
$.increaseCounters("500400002");
if (!__remindMsgDiv.isShow && __remindMsgItemMap.size() > 0) {
__remindMsgDiv.show();
} else {
__remindMsgDiv.hide();
}
stopPropagation(a);
return false;
})
.bind("mouseout", function(a) {
if (__remindMsgDiv.isShow && isMouseOut(this, a)) {
__hideRemindMsgTimer = setTimeout(function() {
__remindMsgDiv.hide();
}, 500);
}
})
.bind("mousedown", function() {
this.className = "msg_remind active";
})
.bind("mouseup", function() {
this.className = "msg_remind";
});
}
function getMaxMsglistCount() {
var a = $("#taskbar")
.width() - $("#cm_logo")
.width() - $("#msg_remind")
.width() - $("#msg_more")
.width();
return Math.floor(a / 96);
}
function reInitialFooter(a) {
var d = $("#msg_list");
$("#msg_more")
.css("display", "none");
if (a) {
if (__moreMsgListDiv.getItems()
.size() == 0 && d.find("li")
.size() < __maxMsgListOnTaskbar) {
d.append(a);
} else {
$("#msg_more")
.css("display", "");
__moreMsgListDiv.addItem(a);
}
return;
}
var f = new Array();
d.find("li")
.each(function() {
f.push($(this));
});
var b = __moreMsgListDiv.getItems();
for (var e = b.size() - 1; e >= 0; e--) {
f.push(b.eq(e));
}
var g = f.length;
for (var c = 0; c < g; c++) {
f[c].css("display", "block");
if (c < __maxMsgListOnTaskbar) {
f[c].inMore = false;
d.append(f[c]);
} else {
f[c].inMore = true;
$("#msg_more")
.css("display", "");
__moreMsgListDiv.addItem(f[c]);
__moreMsgListDiv.hide();
}
}
}
function clearAllRemindMsg() {
__remindMsgItemMap.clear();
var b = __chatFooterItemMap.values();
for (var a = b.length - 1; a >= 0; a--) {
b[a].removeClass("call");
}
setRemindCountTotal();
}
function receiveMsgs(i) {
var a = __contactMap.get(i.fromUid);
if (!a || a.ct == 2) {
if (getUserPermission(__user.gp, "contact") != 1) {
return;
}
}
if (!a) {
addChatFriend(i.fromUri, function(d, n) {
var c = d;
if (typeof c.rc == "number" && c.rc == 200) {
var b = new ContactDefault();
if (!buddyListContains("-1")) {
__buddyList.push({
"id": -1,
"n": "陌生人"
});
__contactTree.insertBuddyList({
"id": -1,
"n": "陌生人"
});
}
b.uid = i.fromUid;
b.uri = i.fromUri;
b.bl = "-1";
b.ct = 2;
extendContact(b);
__contactMap.put(b.uid, b);
__contactTree.insertBuddyItem(b, b.bl);
receiveMsgs(i);
}
});
return;
}
var g = getChatWindow(i.fromUid);
if (!g.isOnFocus() || !__isOnfocus) {
if (__remindMsgItemMap.containsKey(i.fromUid)) {
var e = __remindMsgItemMap.get(i.fromUid);
e.msgCount(e.msgCount() + 1);
e.updateItem(__contactMap.get(i.fromUid));
} else {
var l = __contactMap.get(i.fromUid);
var k = __chatWindowMap.get(l.uid);
var m = getUserPortraitUrl(l, "5");
var e = $.fn.jRemindMsgItem(l, k, m);
__remindMsgItemMap.put(i.fromUid, e);
__remindMsgDiv.addItem(e);
}
setRemindCountTotal();
}
if (!g.isActived) {
g.active();
var f = __chatFooterItemMap.get(i.fromUid);
f.removeClass()
.addClass("call");
if (f.isInMoreMsgList()) {
$("#msg_more")
.removeClass()
.addClass("msg_more hover_msg");
}
} else {
if (!g.isOnFocus()) {
var f = __chatFooterItemMap.get(i.fromUid);
f.removeClass()
.addClass("call");
if (f.isInMoreMsgList()) {
$("#msg_more")
.removeClass()
.addClass("msg_more hover_msg");
}
}
}
g.logFriendMsg(i.msg);
if (g.inputPermission == 420 && !g.enablechatInput) {
g.enableInput(true);
}
if (!__isOnfocus) {
if (typeof __titleflashInterval != "undefined") {
window.clearInterval(__titleflashInterval);
}
__flashTitleArray.push(__msgcomingTitle);
__flashTitleArray.push("【" + __msgcomingTitle + "】");
var j = __flashTitleArray.length;
var h = j - 1;
__titleflashInterval = window.setInterval(function() {
var b = __flashTitleArray[h];
document.title = b;
h = (h + 1) % j;
}, 1000);
}
}
function sendMsgFailed(b) {
var a = getChatWindow(b.fromUid);
if (a) {
a.logErrorInfo("消息发送失败: " + b.msg);
}
}
function receiveInvite(f) {
var e = "你好,我是" + f.desc + ",";
switch (f.phrid) {
case 0:
e += "正在用中国移动飞信业务,想加你为好友。";
break;
case 1:
e += "想加你为飞信好友,方便咱们联系。";
break;
case 2:
e += "飞信挺好用的,想加你为好友。";
break;
case 3:
e += "希望你成为我的飞信好友,常联系。";
break;
case 4:
e += "成为我的飞信好友,能免费给你发短信。";
break;
default:
break;
}
var a = $("#invited_" + f.uid);
if (a.size() > 0) {
a.remove();
a = null;
}
a = $.fn.friendInviteWindow({
buddy: f,
inviteType: f.t,
onConfirm: processorFriendInvite
});
var c = __buddyList.length;
if (c > 0) {
__buddyList.sort(buddyListComparator);
for (var b = 0; b < c; b++) {
if (parseInt(__buddyList[b].id) > 0) {
a.insertBuddyList(__buddyList[b].id, __buddyList[b].n);
}
}
}
a.insertDesc(e);
}
function setRemindCountTotal() {
var c = 0;
var b = __remindMsgItemMap.values();
for (var a = b.length - 1; a >= 0; a--) {
if (b[a].find("i")
.attr("class") == "ff-pc-group") {
c += 1;
} else {
c += b[a].msgCount();
}
}
setRemindMsgCookie(__user.sid, null, c, __sessionId);
if (c > 0) {
$("#msg_remind")
.removeClass("none");
} else {
$("#msg_remind")
.addClass("none");
}
$("#msg_remind")
.find("b:first")
.text(c.toString());
}
function onSendMsg(g, d, f, b, e) {
var c = f.length;
var a = (b || e);
if (a && c > 180) {
alert("温馨提示:长短信不能超过180个字符。");
} else {
if (c > 400) {
alert("温馨提示:消息不能超过400个字符。");
} else {
g.logSelfMsg(f);
sendMessage(g, d, f, b, e);
}
}
}
function processorFriendInvite(a) {
handleAddBuddy(a, 0);
}
function redirectLogin() {
__isNormalLogout = true;
window.location.href = loginPageUrl;
}
function startSound(a) {
if (__isOpenSound) {
if (a == "newmessage") {
IMSound.playSound(a);
} else {
if (a == "sys") {
IMSound.playSound(a);
}
}
}
}
function showPanel(a) {
$("#group_func")
.find("li")
.removeClass("on");
$("#friends_list")
.addClass("none");
$("#group_box")
.addClass("none");
$("#phone_list")
.addClass("none");
if (a == "group") {
$("#li_group")
.addClass("on");
$("#group_box")
.removeClass("none");
} else {
if (a == "buddy") {
$("#li_buddy")
.addClass("on");
$("#friends_list")
.removeClass("none");
} else {
if (a == "gountxun") {
$("#li_gountxun")
.addClass("on");
$("#phone_list")
.removeClass("none");
}
}
}
}
function addBuddySuccess(b) {
var a;
if (__contactMap.containsKey(b.uid)) {
a = __contactMap.get(b.uid);
if (a.isBk == 1 && a.ct == -1) {} else {
if (1 != a.rs || 2 == a.ct) {
__contactMap.remove(a.uid.toString());
eachBuddyList(a, function(c) {
__contactTree.deleteBuddyItem(parseInt(c), a.uid);
}, true);
if (2 == a.ct) {
a.ct = 0;
}
} else {
alert("对方已经是你好友。");
return;
}
}
} else {
a = new ContactDefault();
a.ln = b.ln;
a.ct = 0;
}
$.extend(a, b);
extendContact(a);
__contactMap.put(a.uid, a);
eachBuddyList(a, function(c) {
__contactTree.insertBuddyItem(a, parseInt(c));
});
}
function initNavigation() {
$("#quitIm")
.attr("href", __officialSiteUrl + "/account/loginout?ul=" + loginPageUrl);
$("#officalsite")
.attr("href", __officialSiteUrl);
$("#myspace")
.attr("href", __mySpaceUrl);
$("#downloadpc")
.attr("href", __downloadUrl);
$("#myspace_icon")
.attr("href", __mySpaceUrl);
$("#feedback")
.attr("href", __feedbackUrl);
$("#downloadpc")
.bind("click", function() {
$.increaseCounters(500400004);
});
$("#rt_img_link")
.click(function() {
addFavourite(location.href, "官方网页版飞信——在网页上与飞信好友聊天、免费发短信");
});
$("#quitIm")
.bind("click", function() {
__isNormalLogout = true;
logout(__isNormalLogout);
});
}
function buddyListContains(b) {
for (var a = 0; a < __buddyList.length; a++) {
if (__buddyList[a].id.toString() == b) {
return true;
}
}
return false;
}
function dealWithCallme(f) {
var b = "";
if (f.toUid && f.toUri) {
if (f.toUid == __user.uid) {
return;
}
b = __callmeTitle;
if (!__contactMap.containsKey(f.toUid)) {
addChatFriend(f.toUri, function(i, j) {
var h = i;
if (typeof h.rc == "number" && h.rc == 200) {
var g = new ContactDefault();
if (!buddyListContains("-1")) {
__buddyList.push({
"id": -1,
"n": "陌生人"
});
__contactTree.insertBuddyList({
"id": -1,
"n": "陌生人"
});
}
g.uid = f.toUid;
g.uri = f.toUri;
g.bl = "-1";
g.ct = 2;
extendContact(g);
__contactMap.put(g.uid.toString(), g);
__contactTree.insertBuddyItem(g, g.bl);
dealWithCallme(f);
}
});
return;
}
var a = getChatWindow(f.toUid);
if (!a.isActived) {
a.active();
var e = getChatWinPosition();
a.show(e.top, e.left);
} else {
if (!a.hasShown) {
var e = getChatWinPosition();
a.show(e.top, e.left);
} else {
a.show();
}
}
} else {
b = __readmsgTitle;
}
if (!__isOnfocus) {
if (typeof __titleflashInterval != "undefined") {
window.clearInterval(__titleflashInterval);
}
__flashTitleArray.push(b);
__flashTitleArray.push("【" + b + "】");
var d = __flashTitleArray.length;
var c = d - 1;
__titleflashInterval = window.setInterval(function() {
var g = __flashTitleArray[c];
document.title = g;
c = (c + 1) % d;
}, 1000);
}
}
function updateGroupInfo(i, b, f) {
if (i == null) {
return;
}
var h = jGroupUriToId(i.gUri);
var d = __groupMap.get(h);
if (!d) {
return;
}
if (d.members && i.members && i.members.length < d.members.length) {
if (i.members.length == 1) {
var e = jMemUriToId(i.members[0].MemberUri);
if (e == __user.sid) {
return;
}
}
}
$.extend(d, i);
extendGroupItem(d);
if (f && (d.i > 3 || d.msgRecv > 1)) {
__groupTree.updateGroupItem(d);
return;
}
if (b) {
__groupTree.updateGroupItem(d);
var a = __chatWindowMap.get("group_" + d.id);
if (a) {
a.setGroupInfo(d);
}
if (d.n) {
d.displayName = d.n;
var g = getGroupItemPortraitUrl(d, "1");
if (__chatFooterItemMap.containsKey("group_" + h)) {
__chatFooterItemMap.get("group_" + h)
.updateItem(d, g);
}
if (__remindMsgItemMap.containsKey("group_" + h)) {
__remindMsgItemMap.get("group_" + h)
.updateItem(d, g);
}
}
}
}
function deleteGroupMember(d) {
var c = jGroupUriToId(d.GroupUri);
var b = jMemUriToId(d.MemberUri);
if (b == jMemUriToId(__user.uri)) {
var a = __groupMap.get(c);
$.popWinMsg({
gName: d.GroupName,
group: a,
msgN: "msg1"
});
removeGroupUi(c, 1);
} else {
chatWinDelMem(c, b);
}
}
function removeGroupUi(c, b) {
__groupTree.deleteGroupItem(c);
var a = __chatWindowMap.get("group_" + c);
if (a) {
a.enableInput(false);
a.logSuggetInfo(b);
a.isUsable = false;
}
if (__chatFooterItemMap.containsKey("group_" + c)) {
__chatFooterItemMap.get("group_" + c)
.remove();
__chatFooterItemMap.remove("group_" + c);
reInitialFooter();
}
}
function openGroupChatWindow(d, c) {
var b = __groupMap.get(c);
if (b.i > 3) {
return;
}
var a = getGroupChatWindow(c);
if (!a.isActived) {
a.active();
var e = getChatWinPosition();
a.show(e.top, e.left);
} else {
if (!a.hasShown) {
var e = getChatWinPosition();
a.show(e.top, e.left);
} else {
a.show();
}
}
if (typeof __isIE6 != "undefined" && __isIE6) {
a.fixPosition();
}
if (b.msgRecv == 2) {
__groupTree.clearGroupMsgCount(b);
}
}
function getGroupChatWindow(c) {
var a;
var b = __groupMap.get(c);
if (!__chatWindowMap.containsKey("group_" + c)) {
a = createGroupWin(b, c);
} else {
a = __chatWindowMap.get("group_" + c);
if (!a.isUsable) {
__chatWindowMap.remove("group_" + c);
a.remove();
a = null;
a = createGroupWin(b, c);
}
}
return a;
}
function createGroupWin(b, c) {
var a;
a = $.fn.jGroupChatWindow({
maxRelative: "main_content",
user: __user,
group: b,
groupMap: __groupMap,
defaultHeight: __groupChatWinDefaultHeight,
defaultWidth: __groupChatWinDefaultWidth,
onActive: onActiveGroupChatWindow,
onClosed: onCloseGroupChatWindow,
onFocus: onFocusGroupChatWindow,
onSendMessage: onSendGroupMsg
});
getGroupMemList(b, a.memMap, a);
__chatWindowMap.put("group_" + c, a);
return a;
}
function getGroupMemList(c, a, b) {
var d = new Object();
d.success = function(f, e) {
getGroupMemListSuccess(f, e, c, a, b);
};
d.error = function(e, g, f) {
getGroupMemListError(e, g, f, c, a, b);
};
d.url = formatString(getGroupMemUrl, __version++);
d.type = "POST";
d.data = {
"ssid": __sessionId,
"Uri": c.gUri
};
d.dataType = "json";
d.cache = false;
$.ajax(d);
}
var __gmlRetry = 0;
function getGroupMemListSuccess(j, c, p, e, g) {
var m;
m = $.fn.jGroupMemTree({
isSinglePattern: true,
user: __user,
group: p,
onBuddyItemDbClick: openChatWindow,
onBuddyItemMouseOver: showContactCard,
onBuddyItemMouseOut: hideContactCard,
onBuddyItemRightClick: showOperateCard
});
g.groupMemTree = m;
var r = j;
if (typeof r.rc == "number" && r.rc == 200) {
__gmlRetry = 0;
var k = r.rv.GroupMembersInfo;
k = k || (new Array());
var l = k.length;
var f = jGroupUriToId(r.rv.gUri);
for (var h = 0; h < l; h++) {
var a = jMemUriToId(k[h].MemberUri);
var q = __group_mem.get(f + "_" + a);
if (q == null) {
q = new GroupMemDefault();
}
$.extend(q, k[h]);
extendMemItem(q);
e.put(q.id, q);
}
g.memMap = e;
var n = insertGroupMemToList(e, m, p);
if (g.isLogShowNumber) {
var b = g.find("dt:first> span")
.eq(0);
var d = b.text();
var o = e.get(d)
.displayName;
b.text(o);
}
} else {
if (typeof r.rc == "number" && r.rc == 310) {
redirectLogin();
} else {
if (typeof r.rc == "number" && r.rc == 403) {} else {
if (__gmlRetry < 3) {
__gmlRetry++;
window.setTimeout(function() {
getGroupMemList(p, e, g);
}, 500);
} else {
__gmlRetry = 0;
alert(formatString("由于网络原因,获取群成员列表失败,请重新登录。错误代码:{0}", typeof r.rc == "number" ? r.rc : 500));
}
}
}
}
}
function getGroupMemListError(d, f, e, c, a, b) {
if (__gmlRetry < 3) {
__gclRetry++;
window.setTimeout(function() {
getGroupMemList(c, a, b);
}, 500);
} else {
__gmlRetry = 0;
alert(formatString("由于网络原因,获取群成员列表失败,请重新登录。错误原因:{0}", f));
}
}
function getGroupMemPortrait(e, b) {
var i = e.find(".pop_group_list");
var g = parseInt(i.css("height")),
d = i.find("li:first")
.offset()
.top,
c = d + g,
a = false;
if (i.find("li[on=1]")
.size() <= 0) {
var h = i.find("li");
var f;
h.each(function(j, k) {
$(k)
.attr("on", "1");
var m = $(k)
.attr("id")
.substring(10);
if (b.containsKey(m)) {
f = b.get(m);
var l = buddyPor(f, f.statusClass, 1);
$(k)
.find("img")
.attr("src", l);
}
if (j >= 19) {
return false;
}
});
}
i.bind("scroll", function() {
var k = $(this)
.find("li[on!=1]");
if (k.size() > 0 && k.first()
.offset()
.top <= c) {
var j;
k.each(function(l, m) {
$(m)
.attr("on", "1");
var o = $(m)
.attr("id")
.substring(10);
if (b.containsKey(o)) {
j = b.get(o);
var n = buddyPor(j, j.statusClass, 1);
$(m)
.find("img")
.attr("src", n);
}
if (l >= 19) {
if (!$(m)
.next()
.attr("id") || $(m)
.next()
.offset()
.top > c) {
return false;
}
}
});
}
});
}
function insertGroupMemToList(b, d, j) {
var h = b.values();
var k = new Object();
k[0] = d.createBuddyList(j);
var e = h.length;
var f = k[0];
for (var c = 0; c < e; c++) {
var m = d.createBuddyItem(h[c], c);
f.pushContent(m);
}
var g = "";
var a = k[0];
g += a.toHtmlString();
d.setInnerHtml(g);
getGroupMemPortrait(d, b);
if (typeof callback == "function") {
callback();
}
g = null;
}
function onSendGroupMsg(d, b, c) {
var a = c.length;
if (a > 400) {
alert("温馨提示:消息不能超过400个字符。");
} else {
d.logSelfMsg(c);
sendGroupMessage(d, b, c);
}
}
function sendGroupMessage(d, b, c) {
var a = new Object();
a.url = formatString(SendGroupMsgUrl, __version++);
a.type = "POST";
a.dataType = "json";
a.cache = false;
a.data = {
"Uri": b,
"msg": c,
"ssid": __sessionId
};
a.success = function(f, g) {
var e = f;
if (typeof e.rc == "number" && e.rc >= 200 && e.rc < 300) {} else {
if (typeof e.rc == "number" && e.rc == 420) {
d.logErrorInfo("对方版本过旧,您无法向其发起陌生人消息。");
d.inputPermission = 420;
d.enableInput(false);
} else {
if (typeof e.rc == "number" && e.rc == 486) {
d.logErrorInfo("您暂时无法发送短信,请稍后再试。");
} else {
if (typeof e.rc == "number" && e.rc == 494) {
d.logErrorInfo("您的飞信账号处于系统保护状态,限制了该功能的使用。请手机发送短信U到12520解除限制后重新登录。");
} else {
if (typeof e.rc == "number" && e.rc == 405) {} else {
d.logErrorInfo("消息发送失败: " + cnSubstr(c, 18));
}
}
}
}
}
};
a.error = function(e, g, f) {
d.logErrorInfo("消息发送失败: " + cnSubstr(c, 18));
};
$.ajax(a);
}
function receiveGroupMsgs(l) {
l.id = jGroupUriToId(l.FromGroupUri);
var h = __groupMap.get(l.id);
if (h == null) {
return;
}
var i = getGroupChatWindow(l.id);
if (h.msgRecv == "2") {
var p = __chatFooterItemMap.containsKey("group_" + l.id);
if (p && !i.isOnFocus()) {
var f = __chatFooterItemMap.get("group_" + l.id);
f.removeClass()
.addClass("call");
if (f.isInMoreMsgList()) {
$("#msg_more")
.removeClass()
.addClass("msg_more hover_msg");
}
} else {
if (!p) {
__groupTree.updateGroupMsgCount(h);
}
}
} else {
if (!i.isOnFocus() || !__isOnfocus) {
if (__remindMsgItemMap.containsKey("group_" + l.id)) {
var e = __remindMsgItemMap.get("group_" + l.id);
var g;
var a = e.msgCount();
if (a + 1 > 99) {
g = ">99";
} else {
g = a + 1;
}
e.msgCount(g);
var o = __groupMap.get(l.id);
o.uid = o.id;
o.statusClass = "ff-pc-group";
o.displayName = o.n;
var q = getGroupItemPortraitUrl(o, "1");
e.updateItem(o, q);
} else {
var o = __groupMap.get(l.id);
o.uid = o.id;
o.statusClass = "ff-pc-group";
o.displayName = o.n;
var n = __chatWindowMap.get("group_" + l.id);
var q = getGroupItemPortraitUrl(o, "1");
var e = $.fn.jRemindMsgItem(o, n, q);
var k = jGroupUriToId(l.FromGroupUri);
__remindMsgItemMap.put("group_" + k, e);
__remindMsgDiv.addItem(e);
setRemindCountTotal();
}
}
if (!__chatFooterItemMap.containsKey("group_" + l.id)) {
startSound("newmessage");
}
if (!i.isActived) {
i.active();
var f = __chatFooterItemMap.get("group_" + l.id);
f.removeClass()
.addClass("call");
if (f.isInMoreMsgList()) {
$("#msg_more")
.removeClass()
.addClass("msg_more hover_msg");
}
} else {
if (!i.isOnFocus()) {
var f = __chatFooterItemMap.get("group_" + l.id);
f.removeClass()
.addClass("call");
if (f.isInMoreMsgList()) {
$("#msg_more")
.removeClass()
.addClass("msg_more hover_msg");
}
}
}
}
if (l.StatusCode == 433) {
i.logErrorInfo("消息”" + cnSubstr(l.Message, 18) + "“发送失败:您说话太快了,请休息一下吧。");
} else {
i.logFriendMsg(l);
}
if (i.inputPermission == 420 && !i.enablechatInput) {
i.enableInput(true);
}
if (!__isOnfocus && h.msgRecv != "2") {
if (typeof __titleflashInterval != "undefined") {
window.clearInterval(__titleflashInterval);
}
__flashTitleArray.push(__msgcomingTitle);
__flashTitleArray.push("【" + __msgcomingTitle + "】");
var m = __flashTitleArray.length;
var j = m - 1;
__titleflashInterval = window.setInterval(function() {
var b = __flashTitleArray[j];
document.title = b;
j = (j + 1) % m;
}, 1000);
}
}
function groupMemPriChange(h) {
for (var b = 0; b < h.length; b++) {
var e = jGroupUriToId(h[b].GroupUri);
var d = h[b].GroupUri;
var i = __groupMap.get(e);
var k;
var g = h[b].PermissionChangedMemberEntity;
for (var j = 0; j < g.length; j++) {
var f = g[j].Identity;
var a = jMemUriToId(g[j].MemberUri);
var k = new Object();
k.i = g[j].Identity;
k.MemberUri = g[j].MemberUri;
if (jMemUriToId(g[j].MemberUri) == __user.sid) {
if (f == 1) {
$.popWinMsg({
gName: i.n,
group: i,
msgN: "msg3"
});
} else {
if (f == 2) {
$.popWinMsg({
gName: i.n,
group: i,
msgN: "msg2"
});
} else {
if (f == 3) {
$.popWinMsg({
gName: i.n,
group: i,
msgN: "msg7"
});
}
}
}
var c = __groupMap.get(e);
c.i = k.i;
extendGroupItem(c);
__groupTree.updateGroupItem(c);
}
initGroupMemList(d, k);
}
}
}
function exitGroup(c, e) {
var b = jGroupUriToId(c);
var a = jMemUriToId(e.MemberUri);
var d = b + "_" + a;
__group_mem.remove(d);
var a = jMemUriToId(e.MemberUri);
chatWinDelMem(b, a);
}
function apvResult(d) {
var c = jGroupUriToId(d.gUri);
var a = __groupMap.get(c);
if (a) {
a.apvRs = d.r;
extendGroupItem(a);
__groupTree.updateGroupItem(a);
}
if (d.r == 1) {
__groupTree.updateGroupItem(a);
} else {
if (d.r == 2) {}
}
var e = c + "_" + b;
__group_mem.remove(e);
var b = jMemUriToId(memItem.MemberUri);
chatWinDelMem(c, b);
}
function chatWinDelMem(d, c) {
var b = __chatWindowMap.get("group_" + d);
if (b) {
var a = b.groupMemTree;
memItem = b.memMap.get(c);
a.deleteBuddyItem(d, memItem);
}
}
function initGroupMemList(e, j) {
var f = jGroupUriToId(e);
var c = jMemUriToId(j.MemberUri);
var b = f + "_" + c;
var i = __group_mem.get(b);
if (i == null) {
i = new GroupMemDefault();
$.extend(i, j);
extendMemItem(i);
__group_mem.put(b, i);
} else {
$.extend(i, j);
extendMemItem(i);
}
var g = __chatWindowMap.get("group_" + f);
if (g) {
var h = g.groupMemTree;
var a = g.memMap.get(j.id);
if (a) {
$.extend(i, a);
a = i;
} else {
g.memMap.put(i.id, i);
}
var d = h.getBuddyItem(f, i.id);
if (d.size() > 0) {
h.updateBuddyItem(f, i);
} else {
h.insertBuddyItem(i, f);
}
}
}
function handleInviteGroup(b) {
var a = new Object();
a.success = function(c, d) {
handleInviteGroupSuccess(c, d, b);
};
a.error = function(c, d) {
handleInviteGroupError(c, d, b);
};
a.url = formatString(opInviteJoinUrl, __version++);
a.type = "POST";
a.data = {
"ssid": __sessionId,
"inteeNn": __user.nn,
"gUri": b.gUri,
"iUri": b.iUri,
"interNn": b.iNn
};
a.dataType = "json";
a.cache = false;
$.ajax(a);
}
function handleInviteGroupSuccess(b, d, c) {
var a = b;
if (typeof a.rc == "number" && a.rc == 200) {
startGroupSubscribe(c.gUri, function() {
var f = new GroupDefault();
f.id = jGroupUriToId(c.gUri);
f.n = c.gN;
f.gUri = c.gUri;
f.crc = "1234";
f.i = 3;
extendGroupItem(f);
if (__groupMap.containsKey(f.id)) {
__groupMap.remove(f.id);
__groupTree.deleteGroupItem(f.id);
}
__groupMap.put(f.id, f);
__groupTree.insertGroupItem(f);
$.popWinMsg({
gName: f.n,
group: f,
msgN: "msg8",
openWin: openGroupChatWindow
});
var e = __chatWindowMap.get("group_" + f.id);
if (e && e.isShow) {
openGroupChatWindow(this, f.id);
}
});
} else {
if (typeof a.rc == "number" && a.rc == 437) {
if (__user.isVip) {
$.popWinMsg({
msgN: "msg11"
});
} else {
$.popWinMsg({
msgN: "msg12",
isClose: false
});
}
}
}
}
var __higRetry = 0;
function handleInviteGroupError(a, c, b) {
if (__higRetry < 3) {
__higRetry++;
window.setTimeout(function() {
handleInviteGroup(b);
}, 500);
} else {
__higRetry = 0;
alert("处理加入群失败,请重新登录");
}
}
function approveInviteGroup(e, c) {
var b = new Object();
var a = "";
for (var d = 0; d < e.JoinItem.length; d++) {
a += e.JoinItem[d].Uri + "-" + e.JoinItem[d].nn + "|";
}
b.success = function(f, g) {
approveInviteGroupSuccess(f, g, e);
};
b.error = handleInviteGroupError;
b.url = formatString(approveInviteUrl, __version++);
b.type = "POST";
b.data = {
"ssid": __sessionId,
"appAd": c,
"gUri": e.gUri,
"iNn": e.iNn,
"iR": e.iR,
"iUri": e.iUri,
"joinItem": a
};
b.dataType = "json";
b.cache = false;
$.ajax(b);
}
function approveInviteGroupSuccess(a, c, b) {}
function approveInviteGroupError(a, c, b) {}
function handleApplication(c, a) {
var b = {};
b.success = function(d, e) {
handleApplicationSuccess(d, e, c);
};
b.error = handleApplicationError;
b.url = formatString(PGHandleApplicationUrl, __version++);
b.type = "POST";
b.data = {
"ssid": __sessionId,
"appAd": a,
"gUri": c.GroupUri,
"note": "",
"userUri": c.ApplyGroupUserEntity[0].Uri
};
b.dataType = "json";
b.cache = false;
$.ajax(b);
}
function handleApplicationSuccess(a, c, b) {
if (typeof a.rc == "number" && a.rc == 432) {
$.popWinMsg({
msgN: "msg14",
isClose: false
});
}
}
function handleApplicationError(a, c, b) {}
function getGroupPerInfo(a) {
var b = new Object();
b.success = getGroupPerInfoSuccess;
b.error = getGroupPerInfoError;
b.url = formatString(getGroupPerInfoUrl, __version++);
b.type = "POST";
b.data = {
"ssid": __sessionId,
"gUri": a
};
b.dataType = "json";
b.cache = false;
$.ajax(b);
}
var __gpiRetry = 0;
function getGroupPerInfoSuccess(d, f) {
var a = d;
if (typeof a.rc == "number" && a.rc == 200) {
var e = a.rv;
for (var c = 0; c < e.length; c++) {
var b = e[c];
updateGroupInfo(b.rv, false, true);
}
} else {
if (typeof a.rc == "number" && a.rc == 310) {
redirectLogin();
} else {
if (__gpiRetry < 3) {
__gpiRetry++;
} else {
__gpiRetry = 0;
alert(formatString("获取群组个人信息失败,请重新登录。错误代码:{0}", typeof a.rc == "number" ? a.rc : 500));
redirectLogin();
}
}
}
}
function getGroupPerInfoError(a, c, b) {
if (__gpiRetry < 3) {
__gpiRetry++;
} else {
__gpiRetry = 0;
alert(formatString("获取用户群组个人信息失败,请重新登录。错误原因:{0}", c));
redirectLogin();
}
}
function startGroupSubscribe(b, c) {
var a = new Object();
a.success = function(d, e) {
startGroupSubscribeSuccess(c, b, d, e);
};
a.error = function(d, f, e) {
startGroupSubscribeError(d, f, e, b);
};
a.url = formatString(GroupSubscribeUrl, __version++);
a.type = "POST";
a.data = {
"ssid": __sessionId,
"GroupUris": b,
"Type": 1
};
a.dataType = "json";
a.cache = false;
$.ajax(a);
}
var __sgssRetry = 0;
function startGroupSubscribeSuccess(e, c, b, d) {
var a = b;
if (typeof a.rc == "number" && a.rc == 200) {
if (typeof e == "function") {
e();
}
} else {
if (typeof a.rc == "number" && a.rc == 310) {
redirectLogin();
} else {
if (__sgssRetry < 3) {
__sgssRetry++;
window.setTimeout(function() {
startGroupSubscribe(c);
}, 500);
} else {
__sgssRetry = 0;
alert(formatString("由于网络原因,订阅群组失败,请重新登录。错误代码:{0}", typeof a.rc == "number" ? a.rc : 500));
redirectLogin();
}
}
}
}
function startGroupSubscribeError(a, d, b, c) {
if (__sgssRetry < 3) {
__sgssRetry++;
window.setTimeout(function() {
startGroupSubscribe(c);
}, 500);
} else {
__sgssRetry = 0;
alert(formatString("订阅群组失败,请重新登录。错误原因:{0}", d));
redirectLogin();
}
}
function getCred() {
var a = new Object();
a.success = getCredSuccess;
a.error = getCredError;
a.url = formatString(getCredUrl, __version++);
a.type = "POST";
a.data = {
"ssid": __sessionId
};
a.dataType = "json";
a.cache = false;
$.ajax(a);
}
var __gcRetry = 0,
__gcRetry1 = 0;
function getCredSuccess(c, d) {
var a = c;
if ( !! a && typeof a.rc == "number" && a.rc == 200) {
__user.c = a.rv.c;
__user.c = encodeURIComponent(__user.c);
if (__user.c) {
var b = formatString(__mySpaceUrl, __user.c);
$("#myspace_icon")
.attr("href", b);
$("#myspace")
.attr("href", b);
}
__gcRetry1 = 0;
} else {
if (__gcRetry1 < 3) {
__gcRetry1++;
getCred();
}
}
__gcRetry = 0;
}
function getCredError(a, c, b) {
if (__gcRetry < 3) {
__gcRetry++;
getCred();
}
}
var code_LoadingPanel = null;
var codeImgFlag = true;
function createCcpUI(j, d) {
divMask.removeClass("none");
if ($("#codeDiv")
.length > 0) {
$("#codeDiv")
.removeClass("none");
$("#txtCode")
.focus();
return;
}
var k = $('<div id="codeDiv" class="hint" style="top: 10px;z-index: 10002;">');
var f = $("<h3><span></span><i></i><b>输入验证码</b></h3>");
var b = $('<div class="hint_btn_new1"><a href="" class="mr5">确 定</a></div>');
var g = $('<div class="hint_cont_new1 pb8"></div>');
var e = $('<div class="modify_new2"><label for="textfield">' + d + "</label><br /></div>");
if (j == 0) {
e.append($('<div class="input_text_c"><input type="text" name="txtCode" id="txtCode" class="frame_246-24 w125" maxlength="4" />' + '<img id="ccpimg"title="如果您无法识别验证码,点击图片更换" src="images/login20120903/ccploading.png" /><a id="change_link"' + 'href="#">看不清,换一张</a><p id="error" class="none">输入的验证码有误,请重新输入</p></div>'));
} else {
if (j == 1) {
e.append($('<div class="input_text_c"><input type="text" name="txtCode" id="txtCode" class="frame_246-24 w125" maxlength="4" />' + '<p id="error" class="none">输入的验证码有误,请重新输入</p></div>'));
}
}
g.append(e)
.append(b);
k.append(f)
.append(g);
k.appendTo(document.body);
code_LoadingPanel = $.fn.loadingPanel({
target: "codeDiv"
});
var i = getViewportCenter();
var a = {
"top": i.y - k.height() / 2,
"left": i.x - k.width() / 2
};
if (a.top < 50) {
a.top = 50;
}
if (a.left < 50) {
a.left = 50;
}
k.css({
"top": a.top + "px",
"left": a.left + "px"
});
b.find("a")
.bind("click", function(c) {
if (j == 0) {
validateCode();
} else {
if (j == 1) {}
}
return false;
});
f.find("span")
.bind("click", function(c) {
$("#codeDiv")
.addClass("none");
divMask.addClass("none");
});
if (j == 0) {
$("#change_link")
.bind("click", function() {
resetCcp();
return false;
});
setTimeout(function() {
resetCcp();
}, 500);
}
}
function resetCcp() {
$("#ccpimg")
.attr("src", formatString(getPicCodeUrl, "ccpsession", Math.random()));
return false;
}
function validateCode() {
code_LoadingPanel.show();
var a = {};
a.type = "POST";
a.dataType = "json";
a.url = formatString(ValidatePicCodeUrl, __version++);
a.data = {
"Ccp": $("#txtCode")
.val()
};
a.cache = false;
a.success = function(b) {
code_LoadingPanel.hide();
if (b.rc == 200) {
$("#codeDiv")
.addClass("none");
divMask.addClass("none");
codeImgFlag = false;
} else {
$("#error")
.removeClass("none");
resetCcp();
}
$("#txtCode")
.val("");
};
a.error = function() {
code_LoadingPanel.hide();
$("#txtCode")
.val("")
.focus();
$("#error")
.removeClass("none");
resetCcp();
};
$.ajax(a);
}
function sendSmsCode() {
var a = {};
a.type = "POST";
a.dataType = "json";
a.url = formatString(GetSmsCodeCodeUrl, __version++);
a.data = {
"mn": __user.mn
};
a.cache = false;
a.success = function(b) {
if (b.rc == 0) {} else {}
};
a.error = function() {};
$.ajax(a);
}
var tryGetALInfoTimes = 0;
function getALInfo() {
var a = {};
a.url = formatString(getALInfoUrl, __version++);
a.type = "POST";
a.dataType = "json";
a.data = {
"ssid": __sessionId
};
a.cache = false;
a.success = getALInfoSuccess;
a.error = getALInfoError;
$.ajax(a);
}
function getALInfoSuccess(f) {
if ( !! f && f.rc == 200) {
tryGetALInfoTimes = 0;
var e = f.rv;
var d = $("#phone_list_content"),
a;
$(".phone_leisure")
.addClass("none");
d.removeClass("none");
for (var c = 0, b = e.length; c < b; c++) {
a = createItem(e[c]);
d.append(a);
}
} else {
if (tryGetALInfoTimes < 3) {
getALInfo();
tryGetALInfoTimes++;
}
}
}
function getALInfoError() {
if (tryGetALInfoTimes < 3) {
getALInfo();
tryGetALInfoTimes++;
}
}
function initTXLlist() {
var a = $("#phone_list_content");
a.bind("mouseover", function(d) {
d = window.event || d;
var c = d.target || d.srcElement;
var b = $(c)
.closest("li");
b.addClass("hover");
stopPropagation(d);
preventDefault(d);
})
.bind("mouseout", function(d) {
d = window.event || d;
var c = d.target || d.srcElement;
var b = $(c)
.closest("li");
b.removeClass("hover");
stopPropagation(d);
preventDefault(d);
})
.bind("click", function(h) {
h = window.event || h;
var g = h.target || h.srcElement;
var b = $(g)
.closest("li");
var c = b.attr("guid");
var d = b.attr("uid");
var f = b.attr("mn");
if (g.className.toLowerCase() == "friend_control") {
$.increaseCounter(500400026);
createPopForTXL(b, c);
} else {
if (g.className.toLowerCase() == "friend_add") {
$.increaseCounter(500400024);
AddBuddy({
a: "1",
u: f,
successCallback2: function(e) {
if (typeof e.rc == "number" && (e.rc == 521 || e.rc == 200)) {
$.increaseCounter(500400025);
$(g)
.remove();
}
}
});
} else {
if (g.className.toLowerCase() == "friend_news") {
$.increaseCounter(500400023);
createFreeSMSTab(c, d, f);
}
}
}
stopPropagation(h);
preventDefault(h);
})
.bind("dblclick", function(i) {
i = window.event || i;
var h = i.target || i.srcElement;
var c = $(h)
.closest("h5");
if (c.length > 0) {
var b = $(h)
.closest("li");
var d = b.attr("guid");
var f = b.attr("uid");
var g = b.attr("mn");
if (!isMobileNoReg.test(g) || __user.ca.toLowerCase() != "cmcc") {
createAddTXLTab(d);
} else {
createFreeSMSTab(d, f, g);
}
}
stopPropagation(i);
preventDefault(i);
});
}
function createItem(i) {
var d = new PhoneDefault();
$.extend(d, i);
__phoneMap.put(d.GUID.toString(), d);
var a = isMobileNoRegForTXL.test(d.HMobile) ? d.HMobile : (isMobileNoRegForTXL.test(d.OMobile) ? d.OMobile : ((isMobileNoRegForTXL.test(d.OPhone) ? d.OPhone : ((isMobileNoRegForTXL.test(d.HPhone) ? d.HPhone : (d.HMobile || d.OMobile || d.OPhone || d.HPhone))))));
var h = d.FN.length;
var f = h > 8 ? cnSubstr(a, 11, false) : cnSubstr(a, 21 - h, false);
var g = $('<li guid="' + d.GUID + '" uid="" mn="' + a + '" class="" style="cursor:default;"><div class="friends_info"><h5><strong class="BuddyList_Container"><b>●</b></strong>' + cnSubstr(d.FN, 8, false) + "<span>" + f + "</span></h5></div>" + '<div class="friend_control"></div></li>');
if (isMobileNoRegForTXL.test(a)) {
if (a.indexOf("+") == 0) {
a = a.substr(3);
g.find(".friends_info span")
.text(a);
g.attr("mn", a);
}
if (__user.ca.toLowerCase() == "cmcc") {
d.tel = {
"uid": "",
"mn": a
};
g.append('<div class="friend_news" title="联系对方">');
}
}
d.arr = [], len = 0;
if (isMobileNoReg.test(a)) {
var c, e = false;
function b(j) {
if (isMobileNoRegForTXL.test(j)) {
if (j.indexOf("+") == 0) {
j = j.substr(3);
}
c = isBuddy(j);
if (!e && !! c) {
if (g.attr("mn") != j) {
d.arr[len++] = "|" + g.attr("mn");
g.find(".friends_info span")
.text(j);
g.attr("mn", j);
}
g.attr("uid", c);
if ( !! d.tel) {
d.tel.uid = c;
d.tel.mn = j;
}
e = true;
} else {
if (g.attr("mn") != j) {
d.arr[len++] = c + "|" + j;
}
}
}
}
b(d.HMobile);
b(d.OMobile);
b(d.OPhone);
b(d.HPhone);
if (!e) {
g.append('<div class="friend_add" title="加为好友"></div>');
}
}
return g;
}
function delAlinfo(a) {
var c = $("#phone_list_content");
var b = {};
b.type = "POST";
b.dataType = "json";
b.data = {
"ssid": __sessionId,
"guid": a
};
b.url = formatString(deleteALInfoOneUrl, __version++);
b.cache = false;
b.success = function(d) {
c.find('li[guid="' + a + '"]')
.remove();
if (c.find("li")
.length <= 0) {
c.addClass("none");
c.prev()
.removeClass("none");
}
};
b.error = function() {};
$.ajax(b);
}
function isBuddy(e) {
var c = "",
d = __contactMap.values();
if (e == __user.mn) {
c = __user.uid;
}
for (var b = 0, a = d.length; b < a; b++) {
var f = d[b];
if (e == f.mn) {
c = f.uid;
break;
}
}
return c;
}
var PopForTXLFlag = false;
function createPopForTXL(b, g) {
var k = $("#popForTongXunLu"),
e = k.find("ul");
k.removeClass("none");
e.attr("guid", g);
e.find('li[t=""]')
.remove();
var f = __phoneMap.get(g);
if (f.arr.length > 0) {
var d, l;
for (var c = 0, a = f.arr.length; c < a; c++) {
d = f.arr[c].split("|");
l = $('<li t="" uid="' + d[0] + '" mn="' + d[1] + '"><a class="icon_contact" href="javascript:;">' + d[1] + "</a></li>");
k.find("ul")
.prepend(l);
}
}
e.find("li")
.bind("mouseover", function() {
this.className = "hover";
})
.bind("mouseout", function() {
this.className = "";
});
if (!PopForTXLFlag) {
PopForTXLFlag = true;
k.bind("mouseover", function(i) {
clearTimeout(__tmpTimer);
k.removeClass("none");
})
.bind("mouseout", function(i) {
if (isMouseOut(this, i)) {
clearTimeout(__tmpTimer);
k.addClass("none");
}
});
e.bind("click", function(o) {
o = window.event || o;
var n = o.target || o.srcElement;
var i = $(n)
.closest("li");
var j = $(this)
.attr("guid");
var p = __phoneMap.get(j);
switch (i.attr("t")
.trim()) {
case "del":
$.increaseCounter(500400020);
$.fn.fetionHintWindow({
modal: true
})
.show('你确定要删除"' + p.FN + '"吗', "删除联系人", "OKCancel", function() {
$.increaseCounter(500400021);
delAlinfo(j);
}, function() {
$.increaseCounter(500400022);
}, "images/icon_wenhao.png");
break;
case "edit":
$.increaseCounter(500400017);
createAddTXLTab(j);
break;
default:
createFreeSMSTab(j, i.attr("uid")
.trim(), i.attr("mn")
.trim());
break;
}
k.addClass("none");
stopPropagation(o);
preventDefault(o);
});
}
var h = $(b);
var m = h.offset();
if (m.top + k.height() > getViewportHeight() - 20) {
m.top = m.top - k.height();
}
k.css({
"top": m.top + h.height(),
"left": m.left - (k.outerWidth() - h.width())
});
clearTimeout(__tmpTimer);
__tmpTimer = setTimeout(function() {
k.addClass("none");
clearTimeout(__tmpTimer);
}, 2000);
}
var imageCarousel = function() {
function d(f, j, h) {
if (f.forEach) {
f.forEach(j, h);
} else {
for (var g = 0, e = f.length; g < e; g++) {
j.call(h, f[g], g, f);
}
}
}
function a(f) {
b(f, 0);
for (var e = 0; e < 20; e++) {
(function() {
var g = e * 5;
setTimeout(function() {
b(f, g);
}, e * 25);
})(e);
}
}
function c(f) {
for (var e = 0; e <= 20; e++) {
(function() {
var g = 100 - e * 5;
setTimeout(function() {
b(f, g);
}, e * 25);
})(e);
}
}
function b(e, f) {
if (e.filters) {
e.style.filter = "alpha(opacity=" + f + ")";
} else {
e.style.opacity = f / 100;
}
}
return {
scroll: function(j, i, g, l) {
var f = this;
var k = 0;
var h = 0;
this.info = $("#banner_info");
this.img = document.getElementById(i)
.getElementsByTagName("a");
d(this.img, function(o, n, m) {
if (n != 0) {
b(o, 0);
}
});
var e = setInterval(function() {
if (k < j - 1) {
k++;
} else {
k = 0;
}
f.fade(k, h);
h = k;
}, g);
document.getElementById(i)
.onmouseover = function() {
clearInterval(e);
};
document.getElementById(i)
.onmouseout = function() {
e = setInterval(function() {
if (k < j - 1) {
k++;
} else {
k = 0;
}
f.fade(k, h);
h = k;
}, g);
};
},
fade: function(e, g) {
if (e == g) {
return;
}
var f = this;
c(f.img[g]);
a(f.img[e]);
this.info.html('<a href="' + f.img[e].href + '" target="' + f.img[e].target + '"><img src="' + f.img[e].firstChild.src + '" title="' + f.img[e].firstChild.title + '" alt="' + f.img[e].firstChild.title + '" /></a>');
$("#banner_info > a")
.bind("click", function() {
$.increaseCounter(500900001);
});
}
};
}();
var __isSmsOnline = /^0+.0+:0+:0+$/;
function jCompactUri(d) {
this.mobileNoOrSid = 0;
this.isRobot = false;
this.logicalPool = -1;
this.isMobileNo = false;
if (!d) {
return;
}
if (d.startsWith("tel:")) {
this.mobileNoOrSid = parseMobileNo(d.substring(4));
this.isMobileNo = true;
} else {
if (d.startsWith("sip:")) {
var a = d.indexOf("@");
var f = d.indexOf(";p=");
if (a < 0) {
this.mobileNoOrSid = parseInt(d.substring(4));
} else {
this.mobileNoOrSid = parseInt(d.substr(4, a - 4));
if (f > 0) {
var b = d.substring(f + 3);
var e = b.indexOf(";");
var c;
if (e < 0) {
c = b;
} else {
c = b.substr(0, e);
if (b.toLowerCase()
.indexOf("t=robot") >= 0) {
this.isRobot = true;
}
}
this.logicalPool = parseInt(c);
} else {
_logicalPool = -1;
}
}
}
}
}
function jGroupUriToId(b) {
var a = b.replace("sip:PG", "");
return a.substr(0, a.indexOf("@"));
}
function jMemUriToId(b) {
var a = b.replace("sip:", "");
return a.substr(0, a.indexOf("@"));
}
function parseMobileNo(b) {
var a = 0;
if (b.startsWith("-")) {
throw new Error("Unexcepted MobileNo: " + b);
}
if (b.startsWith("+86")) {
a = parseInt(b.substring(3));
} else {
if (b.startsWith("0086")) {
a = parseInt(b.substring(4));
} else {
if (b.startsWith("86")) {
a = parseInt(b.substring(2));
} else {
if (b.startsWith("852")) {
a = parseInt("-900" + b);
} else {
if (b.startsWith("00")) {
a = parseInt("-9" + b);
} else {
if (b.startsWith("65")) {
a = parseInt("-900" + b);
} else {
a = parseInt(b);
}
}
}
}
}
}
return a;
}
function getBuddyOrder(a) {
if (!a) {
return -1;
}
var c = 0;
var b = parseInt(a.pb);
if (a.rs == 1) {
if (b == 0) {
if ((a.isCM && __isSmsOnline.test(a.sms) || (a.isCT || a.isCU))) {
if (a.isVip) {
c = 7;
} else {
c = (a.ct == 1) ? 9 : 8;
}
} else {
if (a.isVip) {
c = 10;
} else {
c = (a.ct == 1) ? 9 : 11;
}
}
} else {
if (b > 0) {
c = (a.isVip ? 1 : 2);
}
}
} else {
if (a.rs == 2) {
if (a.ct == 1) {
c = 19;
} else {
c = (a.isVip) ? 17 : 18;
}
} else {
if (a.rs == 0) {
if (a.ct == 2) {
if (b > 0) {
c = a.isVip ? 12 : 13;
} else {
c = a.isVip ? 23 : 24;
}
} else {
if (a.ct == 1) {
c = 16;
} else {
c = a.isVip ? 14 : 15;
}
}
} else {
if (b > 0) {
c = a.isVip ? 12 : 13;
} else {
c = a.isVip ? 23 : 24;
}
}
}
}
if (a.bss == "0" && a.ct != 1) {
c = 25;
}
return c;
}
function buddyComparator(e, d) {
if (!e && !d) {
return 0;
}
if (e && !d) {
return 1;
}
if (!e && d) {
return -1;
}
var c, b;
if (e.orderNo) {
c = e.orderNo;
} else {
c = getBuddyOrder(e);
}
if (d.orderNo) {
b = d.orderNo;
} else {
b = getBuddyOrder(d);
}
if (c == b) {
var a = (e.displayName)
.localeCompare(d.displayName);
if (a == 0 && e.uri && d.uri) {
return (e.uri)
.localeCompare(d.uri);
}
return a;
}
return c - b;
}
function buddyListComparator(b, d) {
if (b.id == d.id) {
return 0;
}
if (b.id == 0) {
return -1;
}
if (d.id == 0) {
return 1;
}
if (b.id == -1) {
return 1;
}
if (d.id == -1) {
return -1;
}
var a = b.n;
var c = d.n;
return a.localeCompare(c);
}
var ContactType = {
Unknown: 0,
FetionBuddy: 1,
MobileBuddy: 2,
ChatFriend: 4,
Robot: 8
};
function getContactType(a) {
var b = ContactType.Unknown;
switch (a.ct) {
case -1:
b = ContactType.Unknown;
break;
case 0:
b = ContactType.FetionBuddy;
break;
case 1:
b = ContactType.MobileBuddy;
break;
case 2:
b = ContactType.ChatFriend;
break;
default:
break;
}
if (a.ca && a.ca.toLocaleUpperCase() == "ROBOT") {
b = ContactType.Robot;
}
return b;
}
var ContactStatus = {
Unknown: 0,
Online: 1,
SmsOnline: 2,
Offline: 4,
BlockList: 8,
Busy: 16,
Away: 32,
PC: 64,
Mobile: 128,
Verify: 256,
Refuse: 512,
CloseService: 1024,
PCOnline: 64 | 1,
PCBusy: 64 | 16,
PCAway: 64 | 32,
MobileOnline: 128 | 1,
MobileBusy: 128 | 16,
MobileAway: 128 | 32,
PCOnline_Bklist: 64 | 1 | 8,
PCBusy_Bklist: 64 | 16 | 8,
PCAway_Bklist: 64 | 32 | 8,
MobileOnline_Bklist: 128 | 1 | 8,
MobileBusy_Bklist: 128 | 16 | 8,
MobileAway_Bklist: 128 | 32 | 8,
SmsOnline_Bklist: 2 | 8,
Offline_Bklist: 4 | 8,
Verify_Bklist: 256 | 8,
Refuse_Bklist: 512 | 8,
CloseService_Bklist: 1024 | 8
};
function isOnlineContact(a) {
var b = a.status;
if ((b & ContactStatus.Online) > 0 || (b & ContactStatus.Busy) > 0 || (b & ContactStatus.Away) > 0) {
return true;
}
return false;
}
function getContactStatus(b) {
if (!b) {
return ContactStatus.Unknown;
}
var c = ContactStatus.Unknown;
if (b.rs == 1 && b.ct == 0) {
if (b.bss == "0" && !b.mn) {
c = ContactStatus.CloseService;
if (b.isBk == 1) {
c |= ContactStatus.BlockList;
}
} else {
var a = parseInt(b.pb);
if (a == 0) {
if (__isSmsOnline.test(b.sms)) {
if (b.isBk == 1) {
c = ContactStatus.SmsOnline_Bklist;
} else {
c = ContactStatus.SmsOnline;
}
} else {
if (b.isBk == 1) {
c = ContactStatus.Offline_Bklist;
} else {
c = ContactStatus.Offline;
if (b.ca.toLowerCase() == "ct" || b.ca.toLowerCase() == "cucc") {
c = ContactStatus.SmsOnline;
}
}
}
} else {
if (a > 0) {
if (a >= 400 && a < 500) {
c = ContactStatus.Online;
} else {
if (a < 400) {
c = ContactStatus.Away;
} else {
if (a >= 500) {
c = ContactStatus.Busy;
}
}
}
if (b.isBk == 1) {
c |= ContactStatus.BlockList;
}
if (b.dt == "PC" || b.dt == "WEB" || b.dt == "Robot") {
c |= ContactStatus.PC;
} else {
c |= ContactStatus.Mobile;
}
}
}
}
} else {
if (b.rs == 1 && b.ct == 1) {
if (b.isBk == 1) {
c = ContactStatus.SmsOnline_Bklist;
} else {
if (b.cas == 2) {
c = ContactStatus.Offline;
} else {
c = ContactStatus.SmsOnline;
}
}
} else {
if (b.rs == 0 && b.ct != 2) {
if (b.isBk == 1) {
c = ContactStatus.Verify_Bklist;
} else {
c = ContactStatus.Verify;
}
} else {
if (b.rs == 2 && b.ct != 2) {
if (b.isBk == 1) {
c = ContactStatus.Refuse_Bklist;
} else {
c = ContactStatus.Refuse;
}
} else {
if (b.ct == 2) {
var a = parseInt(b.pb);
if (a > 0) {
c = ContactStatus.Online;
} else {
c = ContactStatus.Offline;
}
if (b.isBk == 1) {
c |= ContactStatus.BlockList;
}
if (b.bss == "0") {
c |= ContactStatus.CloseService;
}
}
}
}
}
}
return c;
}
var ClassNameSuffixes = new jHashMap();
ClassNameSuffixes.put(ContactStatus.Unknown, "offline");
ClassNameSuffixes.put(ContactStatus.Online, "pc-online");
ClassNameSuffixes.put(ContactStatus.SmsOnline, "msg-online");
ClassNameSuffixes.put(ContactStatus.Offline, "offline");
ClassNameSuffixes.put(ContactStatus.BlockList, "pc-bklist");
ClassNameSuffixes.put(ContactStatus.Busy, "pc-busy");
ClassNameSuffixes.put(ContactStatus.Away, "pc-away");
ClassNameSuffixes.put(ContactStatus.Verify, "verify");
ClassNameSuffixes.put(ContactStatus.Verify_Bklist, "verify_bklist");
ClassNameSuffixes.put(ContactStatus.Refuse, "refuse");
ClassNameSuffixes.put(ContactStatus.Refuse_Bklist, "refuse_bklist");
ClassNameSuffixes.put(ContactStatus.CloseService, "close");
ClassNameSuffixes.put(ContactStatus.CloseService_Bklist, "close_bklist");
ClassNameSuffixes.put(ContactStatus.PCOnline, "pc-online");
ClassNameSuffixes.put(ContactStatus.PCBusy, "pc-busy");
ClassNameSuffixes.put(ContactStatus.PCAway, "pc-away");
ClassNameSuffixes.put(ContactStatus.MobileOnline, "mb-online");
ClassNameSuffixes.put(ContactStatus.MobileBusy, "mb-busy");
ClassNameSuffixes.put(ContactStatus.MobileAway, "mb-away");
ClassNameSuffixes.put(ContactStatus.PCOnline_Bklist, "pc-bklist");
ClassNameSuffixes.put(ContactStatus.PCBusy_Bklist, "pc-bklist");
ClassNameSuffixes.put(ContactStatus.PCAway_Bklist, "pc-bklist");
ClassNameSuffixes.put(ContactStatus.MobileOnline_Bklist, "mb-bklist");
ClassNameSuffixes.put(ContactStatus.MobileBusy_Bklist, "mb-bklist");
ClassNameSuffixes.put(ContactStatus.MobileAway_Bklist, "mb-bklist");
ClassNameSuffixes.put(ContactStatus.SmsOnline_Bklist, "msg-bklist");
ClassNameSuffixes.put(ContactStatus.Offline_Bklist, "offline-bklist");
var StatusDescriptions = new jHashMap();
function getContactClassName(a) {
var d = a.type,
b = a.status;
if (d == ContactType.ChatFriend) {
if ((b & ContactStatus.BlockList) == ContactStatus.BlockList) {
return "st-pc-bklist";
} else {
if ((b & ContactStatus.CloseService) == ContactStatus.CloseService || (b & ContactStatus.Offline) == ContactStatus.Offline) {
return "offline";
} else {
return "st-pc-online";
}
}
}
if (d != ContactType.ChatFriend && (b & ContactStatus.CloseService) == ContactStatus.CloseService) {
if ((b & ContactStatus.BlockList) == ContactStatus.BlockList) {
return "offline-bklist";
} else {
return "close";
}
}
var e = ClassNameSuffixes.get(b);
if (!e) {
return "offline";
}
if (b == ContactStatus.Unknown || b == ContactStatus.Verify || b == ContactStatus.Verify_Bklist || b == ContactStatus.Refuse || b == ContactStatus.Refuse_Bklist || (b & ContactStatus.Offline) == ContactStatus.Offline) {
if (d != ContactType.Robot) {
return e;
}
}
var c = "";
switch (d) {
case ContactType.FetionBuddy:
if (a.isMobile) {
c = "ff-" + e;
} else {
c = "ncm-" + e;
}
break;
case ContactType.MobileBuddy:
if (a.isMobile) {
c = "mf-" + e;
} else {
c = "ncm-" + e;
}
break;
case ContactType.ChatFriend:
c = "st-" + e;
break;
case ContactType.Robot:
c = "rb-" + e;
break;
}
return c;
}
function getStatusDesc(a) {
var c = a.type,
b = a.status;
if (c == ContactType.ChatFriend) {
return "";
}
if ((b & ContactStatus.Online) == ContactStatus.Online) {
return "在线";
}
if ((b & ContactStatus.SmsOnline) == ContactStatus.SmsOnline) {
return "短信在线";
}
if ((b & ContactStatus.Offline) == ContactStatus.Offline) {
return "离线";
}
if ((b & ContactStatus.Busy) == ContactStatus.Busy) {
return "忙碌";
}
if ((b & ContactStatus.Away) == ContactStatus.Away) {
return "离开";
}
if ((b & ContactStatus.Verify) == ContactStatus.Verify || (b & ContactStatus.Verify_Bklist) == ContactStatus.Verify_Bklist) {
return "(等待对方同意添加为好友)";
}
if ((b & ContactStatus.Refuse) == ContactStatus.Refuse || (b & ContactStatus.Refuse_Bklist) == ContactStatus.Verify_Bklist) {
return "(对方拒绝)";
}
if ((b & ContactStatus.CloseService) == ContactStatus.CloseService) {
return "飞信服务已关闭";
}
return "";
}
var __entityList = new Array();
__entityList["<"] = "<";
__entityList[">"] = ">";
__entityList["&"] = "&";
function EntityReplace(g) {
var b = "";
if (g != null) {
var a = g.length;
var d = 0;
while (d < a) {
var c = d;
var f = __entityList[g.charAt(c)];
while (c < a && null == f) {
c++;
f = __entityList[g.charAt(c)];
}
b += g.substr(d, c - d);
if (f != null) {
b += f;
c++;
}
d = c;
}
}
return b;
}
function EmoticonInfo(f, d, c, b, a, e) {
this.IsLeaf = true;
this.EmoticonToHtml = function(g) {
var h = "";
if (!g) {
h = "images/emoticons/" + f + "." + e;
} else {
h = "images/emoticons/" + f + "." + a;
}
return "<img src='" + h + "' alt='' />";
};
this.Length = function() {
return c;
};
}
function Emoticons() {
var g = new Array();
var a = new Object();
function f(j, n, l, k) {
var m = l.charAt(k);
if (k < l.length - 1) {
if (j[m] == null) {
j[m] = new Array();
}
f(j[m], n, l, k + 1);
} else {
j[m] = n;
}
}
function b(k, j) {
if (k in a) {
return;
}
a[k] = j;
}
function c(l, r) {
var j = arguments[0];
var q = arguments[1];
var p = arguments[2];
var o = arguments[3];
var k = arguments[4];
var m = EntityReplace(q);
var n = new EmoticonInfo(j, q, m.length, p, o, k);
f(g, n, m, 0);
b(j, m);
}
function e() {
c("cake", "(^)", "", "png", "gif");
c("cat", "(@)", "", "png", "gif");
c("cat", "(@)", "", "png", "gif");
c("cat", "(@)", "", "png", "gif");
c("clock", "(o)", "", "png", "gif");
c("clock", "(O)", "", "png", "gif");
c("clock", "(0)", "", "png", "gif");
c("clock", "(o)", "", "png", "gif");
c("clock", "(o)", "", "png", "gif");
c("clock", "(O)", "", "png", "gif");
c("clock", "(O)", "", "png", "gif");
c("clock", "(0)", "", "png", "gif");
c("clock", "(0)", "", "png", "gif");
c("clock", "(0)", "", "png", "gif");
c("cloud_rain", "(st)", "", "png", "gif");
c("cloud_rain", "(ST)", "", "png", "gif");
c("cloud_rain", "(st)", "", "png", "gif");
c("cloud_rain", "(st)", "", "png", "gif");
c("cloud_rain", "(ST)", "", "png", "gif");
c("cloud_rain", "(ST)", "", "png", "gif");
c("drink", ")-|", "", "png", "gif");
c("coffee", "(c)", "", "png", "gif");
c("coffee", "(c)", "", "png", "gif");
c("coffee", "(c)", "", "png", "gif");
c("coffee", "(c)", "", "png", "gif");
c("coffee", "(C)", "", "png", "gif");
c("coffee", "(c)", "", "png", "gif");
c("computer", "(co)", "", "png", "gif");
c("computer", "(CO)", "", "png", "gif");
c("computer", "(co)", "", "png", "gif");
c("computer", "(co)", "", "png", "gif");
c("computer", "(CO)", "", "png", "gif");
c("computer", "(CO)", "", "png", "gif");
c("dog", "(&)", "", "png", "gif");
c("dog", "(&)", "", "png", "gif");
c("dog", "(&)", "", "png", "gif");
c("heart", "(L)", "", "png", "gif");
c("heart", "(l)", "", "png", "gif");
c("heart", "(l)", "", "png", "gif");
c("heart", "(l)", "", "png", "gif");
c("heart", "(L)", "", "png", "gif");
c("heart", "(L)", "", "png", "gif");
c("heart_broken", "(U)", "", "png", "gif");
c("heart_broken", "(u)", "", "png", "gif");
c("heart_broken", "(u)", "", "png", "gif");
c("heart_broken", "(u)", "", "png", "gif");
c("heart_broken", "(U)", "", "png", "gif");
c("heart_broken", "(U)", "", "png", "gif");
c("hug_dude", "(})", "", "png", "gif");
c("hug_dude", "(})", "", "png", "gif");
c("hug_dude", "(})", "", "png", "gif");
c("hug_girl", "({)", "", "png", "gif");
c("hug_girl", "({)", "", "png", "gif");
c("hug_girl", "({)", "", "png", "gif");
c("kiss", "(k)", "", "png", "gif");
c("kiss", "(K)", "", "png", "gif");
c("kiss", "(k)", "", "png", "gif");
c("kiss", "(k)", "", "png", "gif");
c("kiss", "(K)", "", "png", "gif");
c("kiss", "(K)", "", "png", "gif");
c("lightbulb", "(i)", "", "png", "gif");
c("lightbulb", "(I)", "", "png", "gif");
c("lightbulb", "(i)", "", "png", "gif");
c("lightbulb", "(i)", "", "png", "gif");
c("lightbulb", "(I)", "", "png", "gif");
c("lightbulb", "(I)", "", "png", "gif");
c("martini", "(d)", "", "png", "gif");
c("martini", "(D)", "", "png", "gif");
c("martini", "(d)", "", "png", "gif");
c("martini", "(d)", "", "png", "gif");
c("martini", "(D)", "", "png", "gif");
c("martini", "(D)", "", "png", "gif");
c("mobile", "(mp)", "", "png", "gif");
c("mobile", "(MP)", "", "png", "gif");
c("mobile", "(mp)", "", "png", "gif");
c("mobile", "(mp)", "", "png", "gif");
c("mobile", "(MP)", "", "png", "gif");
c("mobile", "(MP)", "", "png", "gif");
c("moon", "(S)", "", "png", "gif");
c("moon", "(s)", "", "png", "gif");
c("moon", "(s)", "", "png", "gif");
c("moon", "(s)", "", "png", "gif");
c("moon", "(S)", "", "png", "gif");
c("moon", "(S)", "", "png", "gif");
c("music_note", "(8)", "", "png", "gif");
c("music_note", "-8", "", "png", "gif");
c("music_note", "(8)", "", "png", "gif");
c("music_note", "(8)", "", "png", "gif");
c("present", "(g)", "", "png", "gif");
c("present", "(G)", "", "png", "gif");
c("present", "(g)", "", "png", "gif");
c("present", "(g)", "", "png", "gif");
c("present", "(G)", "", "png", "gif");
c("present", "(G)", "", "png", "gif");
c("rainbow", "(r)", "", "png", "gif");
c("rainbow", "(R)", "", "png", "gif");
c("rainbow", "(r)", "", "png", "gif");
c("rainbow", "(r)", "", "png", "gif");
c("rainbow", "(R)", "", "png", "gif");
c("rainbow", "(R)", "", "png", "gif");
c("rose", "(f)", "", "png", "gif");
c("rose", "(F)", "", "png", "gif");
c("rose", "(f)", "", "png", "gif");
c("rose", "(f)", "", "png", "gif");
c("rose", "(F)", "", "png", "gif");
c("rose", "(F)", "", "png", "gif");
c("rose_wilted", "(w)", "", "png", "gif");
c("rose_wilted", "(W)", "", "png", "gif");
c("smile_angry", ":@", "", "png", "gif");
c("smile_angry", ":-@", "", "png", "gif");
c("smile_baringteeth", "8o|", "", "png", "gif");
c("smile_baringteeth", "8O", "", "png", "gif");
c("smile_cry", ":’(", "", "png", "gif");
c("smile_cry", ":'(", "", "png", "gif");
c("smile_embaressed", ':">', "尴尬", "png", "gif");
c("smile_embaressed", ":$", "", "png", "gif");
c("smile_embaressed", ":-$", "", "png", "gif");
c("smile_embaressed", ':"-)', "", "png", "gif");
c("smile_eyeroll", "8-)", "", "png", "gif");
c("smile_omg", ":-O", "", "png", "gif");
c("smile_omg", ":-o", "", "png", "gif");
c("smile_omg", ":O", "", "png", "gif");
c("smile_omg", ":o", "", "png", "gif");
c("smile_regular", ":)", "", "png", "gif");
c("smile_regular", ":-)", "", "png", "gif");
c("smile_sad", ":(", "", "png", "gif");
c("smile_sad", ":-(", "", "png", "gif");
c("smile_sad", ":<", "", "png", "gif");
c("smile_sad", ":-<", "", "png", "gif");
c("smile_sarcastic", "^o)", "", "png", "gif");
c("smile_shades", "(h)", "", "png", "gif");
c("smile_shades", "(H)", "", "png", "gif");
c("smile_sick", "+o(", "", "png", "gif");
c("smile_sick", ":&", "", "png", "gif");
c("smile_sick", "+&", "", "png", "gif");
c("smile_teeth", ":D", "", "png", "gif");
c("smile_teeth", ":-D", "", "png", "gif");
c("smile_teeth", ":d", "", "png", "gif");
c("smile_teeth", ":-d", "", "png", "gif");
c("smile_tongue", ":p", "", "png", "gif");
c("smile_tongue", ":-p", "", "png", "gif");
c("smile_tongue", ":P", "", "png", "gif");
c("smile_tongue", ":-P", "", "png", "gif");
c("smile_whatchutalkingabout", ":|", "", "png", "gif");
c("smile_whatchutalkingabout", ":-|", "", "png", "gif");
c("smile_wink", ";-)", "", "png", "gif");
c("smile_wink", ";)", "", "png", "gif");
c("smile_yawn", "|-)", "", "png", "gif");
c("smile_yawn", "|o", "", "png", "gif");
c("smile_yawn", "|O", "", "png", "gif");
c("smile_zipit", ":-#", "", "png", "gif");
c("snail", "(sn)", "", "png", "gif");
c("snail", "(SN)", "", "png", "gif");
c("star", "(*)", "", "png", "gif");
c("sun", "(#)", "", "png", "gif");
c("thumbs_up", "(y)", "", "png", "gif");
c("thumbs_up", "(Y)", "", "png", "gif");
c("umbrella", "(um)", "", "png", "gif");
c("umbrella", "(UM)", "", "png", "gif");
c("smile_puzzle", ":-/", "", "png", "gif");
c("smile_worried", ":-S", "", "png", "gif");
c("smile_worried", ":-s", "", "png", "gif");
c("smile_thinking", ":-?", "", "png", "gif");
c("smile_quitSmile", "*-:)", "", "png", "gif");
c("smile_bigSmile", "B)", "", "png", "gif");
c("smile_bigSmile", "b)", "", "png", "gif");
c("smile_angle", "o:)", "", "png", "gif");
c("smile_angle", "O:)", "", "png", "gif");
c("smile_angle", "0:)", "", "png", "gif");
c("smile_fool", ":-B", "", "png", "gif");
c("smile_fool", ":-b", "", "png", "gif");
c("smile_archness", ">:)", "", "png", "gif");
c("smile_idea", "*-:)", "", "png", "gif");
c("smile_idea", "*:)", "", "png", "gif");
c("smile_confused", ":-/", "", "png", "gif");
c("smile_confused", ":/", "", "png", "gif");
c("smile_worried", ":s", "", "png", "gif");
c("smile_worried", ":S", "", "png", "gif");
c("smile_drink", ")-|", "", "png", "gif");
c("smile_drink", ")-|", "", "png", "gif");
c("smile_thinking", ":?", "", "png", "gif");
c("smile_thinking", ":?", "", "png", "gif");
c("smile_great", "(y)", "", "png", "gif");
c("smile_great", "(Y)", "", "png", "gif");
c("smile_naughty", ">:)", "", "png", "gif");
c("smile_naughty", "〉:)", "", "png", "gif");
c("smile_fool", ":b", "", "png", "gif");
c("smile_fool", ":B", "", "png", "gif");
c("smile_cool", "b)", "", "png", "gif");
c("smile_cool", "B)", "", "png", "gif");
c("smile_cool", "(b)", "", "png", "gif");
}
function i(k) {
if (k.charCodeAt != null && String.fromCharCode != null) {
var j = k.charCodeAt(0);
if (j >= 65281 && j < 65374) {
k = String.fromCharCode(j - 65248);
}
}
return k;
}
function d(j, m, l) {
if (j == null) {
return null;
} else {
if (j.IsLeaf) {
return j;
} else {
if (l >= m.length || l < 0) {
return null;
} else {
if (typeof j == "object") {
var k = m.charAt(l);
k = i(k);
return d(j[k], m, l + 1);
}
}
}
}
return null;
}
function h(o, l) {
if ("&" != o.charAt(l)) {
return 1;
}
var j = 0;
var n = false;
while (l < o.length && "&" == o.charAt(l)) {
n = false;
for (var m in __entityList) {
var k = __entityList[m];
if (l + k.length <= o.length && k == o.substr(l, k.length)) {
j += k.length;
l += j;
n = true;
break;
}
}
if (!n) {
return 1;
}
}
return j;
}
this.Replace = function(q, m) {
var l = "";
if (q != null) {
var o = 0;
var k = q.length;
while (o < k) {
var n = o;
var p = d(g, q, n);
while (n < k && null == p) {
n += h(q, n);
p = d(g, q, n);
}
l += q.substr(o, n - o);
if (p != null) {
l += p.EmoticonToHtml(m);
n += p.Length();
}
o = n;
}
}
return l;
};
this.GetKey = function(j) {
if (j in a) {
return a[j];
} else {
return "";
}
};
e();
}
var __globalEmoticons = new Emoticons();
function EmoticonReplace(b, a) {
return __globalEmoticons.Replace(b, a);
}
function EmotionNonhtmlReplace(b, c, a) {
if (c >= 0) {
b = cnSubstr(b, c);
}
b = htmlEncode(b);
return b;
}
function EmotionNonhtmlReplace1(b, c, a) {
if (c >= 0) {
b = cnSubstr(b, c);
}
b = htmlEncode(b);
return b;
}
function GetEmotionKey(a) {
return __globalEmoticons.GetKey(a);
}
function activeRemindMsgCookie() {
var b = getCookie("webim_remindmsgs");
if (b) {
var a = new Date();
a.setMinutes(a.getMinutes() + 2);
setCookie("webim_remindmsgs", escape(b), a.toGMTString(), "/", __callmeDomain);
}
}
function deleteRemindMsgCookie(b) {
var d = getCookie("webim_remindmsgs");
var a = new Date();
a.setMinutes(a.getMinutes() + 2);
if (d != null && d != "") {
d = "," + d;
var c = new RegExp("," + b + "-(.*?)" + "-([0-9]+)" + "-([^,]*)", "ig");
if (c.test(d)) {
d = d.replace(c, function() {
return "";
});
}
d = d.trim(",");
setCookie("webim_remindmsgs", escape(d), a.toGMTString(), "/", __callmeDomain);
}
}
function setRemindMsgCookie(b, g, e, d) {
var f = getCookie("webim_remindmsgs");
var a = new Date();
a.setMinutes(a.getMinutes() + 2);
if (f == null || f == "") {
f = b + "-" + (g != null ? g.toCodeArray()
.join("%") : "") + "-" + (e != null ? e : "0") + "-" + (d != null ? getGuidFormSessionid(d) : "");
setCookie("webim_remindmsgs", escape(f), a.toGMTString(), "/", __callmeDomain);
} else {
f = "," + f;
var c = new RegExp("," + b + "-(.*?)" + "-([0-9]+)" + "-([^,]*)", "ig");
if (c.test(f)) {
f = f.replace(c, function(i, h, k, j) {
return "," + b + "-" + (g != null ? g.toCodeArray()
.join("%") : h) + "-" + (e != null ? e : k) + "-" + (d != null ? getGuidFormSessionid(d) : "");
});
} else {
f += "," + b + "-" + (g != null ? g.toCodeArray()
.join("%") : "") + "-" + (e != null ? e : "0") + "-" + (d != null ? getGuidFormSessionid(d) : "");
}
f = f.trim(",");
setCookie("webim_remindmsgs", escape(f), a.toGMTString(), "/", __callmeDomain);
}
}
function getGuidFormSessionid(b) {
if (!b) {
return "";
} else {
var a = b.substr(b.indexOf("-") + 1)
.replace(/-/g, "");
return a;
}
}
function getUserPermission(b, c) {
b = ";" + b + ";";
var d = new RegExp(";" + c + "=([0-9]*);", "i");
var a = b.match(d);
if (a != null) {
return a[1];
}
return null;
}
function ContactDefault() {
this.uid = 0;
this.uri = "";
this.bl = "";
this.ln = "";
this.rs = -1;
this.ct = -1;
this.isBk = -1;
this.p = "";
this.sid = 0;
this.mn = "";
this.ca = "";
this.cas = "";
this.bss = "";
this.slv = "";
this.s = "";
this.nn = "";
this.i = "";
this.crc = "";
this.sms = "";
this.pb = "";
this.pd = "";
this.dt = "";
this.dc = "";
this.lastIsOc = false;
this.currIsOc = false;
this.is = "";
this.pis = "";
}
function UserDefault() {
this.c = "";
this.v = "";
this.uid = 0;
this.sid = 0;
this.mn = "";
this.em = "";
this.uri = "";
this.nn = "";
this.gd = -1;
this.i = "";
this.crc = "";
this.bd = "";
this.bdv = -1;
this.ca = "";
this.cas = "";
this.car = "";
this.ur = "";
this.prof = "";
this.bt = "";
this.oc = "";
this.pe = "";
this.we = "";
this.ebs = -1;
this.sv = "";
this.lv = "";
this.lvs = "";
this.gp = "";
this.sms = "";
this.creds = [];
this.sers = "";
}
function PhoneDefault() {
this.FN = "";
this.GUID = "";
this.HMobile = "";
this.HMobile = "";
this.OMobile = "";
this.OPhone = "";
this.Source = "";
}
function extendUser() {
__user.displayName = __user.nn || __user.sid.toString();
if (!__user.ca || __user.ca == "NIL") {
__user.isMobile = false;
} else {
__user.isMobile = true;
if (__user.ca == "CMCC") {
__user.isCM = true;
} else {
if (__user.ca == "CT") {
__user.isCT = true;
} else {
if (__user.ca == "CUCC") {
__user.isCU = true;
}
}
}
}
if (!__user.sers) {
__user.isVip = false;
} else {
var a = "," + __user.sers + ",";
__user.isVip = (a.indexOf(",50,") >= 0 || a.indexOf(",51,") >= 0 || a.indexOf(",52,") >= 0);
}
}
function extendContact(a) {
if (!a.pb) {
a.pb = "0";
}
if (!a.sms) {
a.sms == "1.1:1:1";
}
if (!a.bss) {
a.bss = "1";
}
if (a.bl) {
a.bl = a.bl.trim("; ");
}
if (!a.bl) {
a.bl = (a.ct == 2) ? "-1" : "0";
}
if (2 == a.cas) {
a.mn = "";
}
a.compactUri = a.uri ? (new jCompactUri(a.uri)) : undefined;
if (2 != a.ct && 1 == a.rs && a.compactUri) {
a.ct = a.compactUri.isMobileNo ? 1 : 0;
}
if (a.ct == 1) {
a.displayName = a.ln || a.mn;
} else {
a.displayName = "";
a.displayName = a.ln || a.nn || (a.compactUri && a.compactUri.mobileNoOrSid.toString());
}
if (!a.s) {
a.isVip = false;
} else {
var b = "," + a.s + ",";
a.isVip = (b.indexOf(",50,") >= 0 || b.indexOf(",51,") >= 0 || b.indexOf(",52,") >= 0);
}
a.isMobile = !! (a.ca && a.ca != "NIL");
a.isCM = !! (a.ca == "CMCC");
a.isCT = !! (a.ca == "CT");
a.isCU = !! (a.ca == "CUCC");
a.type = getContactType(a);
a.status = getContactStatus(a);
a.statusClass = getContactClassName(a);
a.orderNo = getBuddyOrder(a);
a.lastIsOc = a.currIsOc;
a.currIsOc = isOnlineContact(a);
}
function eachBuddyList(a, f, d) {
if (!a.bl) {
return;
}
var e = a.bl.split(";");
var b = e.length;
for (var c = 0; c < b; c++) {
if ("0" == e[c] && b > 1 && !d) {
continue;
}
if (typeof f == "function") {
if (false == f(e[c])) {
break;
}
}
}
}
function getGroupItemPortraitUrl(b, a) {
a = a || "4";
if (b == null) {
if (a == 1) {
return portrait.fetion_16;
} else {
if (a == 2) {
return portrait.fetion_32;
} else {
return portrait.defaultIcon;
}
}
} else {
if (b.crc && b.crc !== "0") {
return formatString(getGroupPortraitUrl, b.gUri, a, b.crc, __user.uid);
} else {
if (a == 1) {
return portrait.fetion_16;
} else {
if (a == 2) {
return portrait.fetion_32;
} else {
return portrait.defaultIcon;
}
}
}
}
}
function getUserPortraitUrl(a, b) {
b = b || "4";
if ((a.crc && a.crc != "0")) {
return formatString(getPortraitUrl, a.uid, b, a.crc, __user.uid);
} else {
if (b == 1 || b == 5) {
return portrait.fetion_16;
} else {
if (b == 2) {
return portrait.fetion_32;
} else {
return portrait.defaultIcon;
}
}
}
}
function getDefaultPortraitUrl(a) {
if (a.ct == 1) {
return portrait.mobile;
} else {
return portrait.defaultIcon;
}
}
var __userPortraitMap = new jHashMap();
var __userPathMap = new jHashMap();
var __portraitCacheDiv = null;
function cacheUerPortrait(c, a, e) {
if (__portraitCacheDiv == null) {
__portraitCacheDiv = $("<div style='display:none'></div>");
$(document.body)
.append(__portraitCacheDiv);
}
var b;
if (!__userPortraitMap.containsKey(c.uid)) {
b = $("<img src='" + a + "' />");
__userPortraitMap.put(c.uid, b);
__portraitCacheDiv.append(b);
b.bind("load", function() {
if (typeof e == "function") {
e(b, c);
}
});
} else {
b = __userPortraitMap.get(c.uid);
var d = b.attr("src");
if (d && !d.endsWith(a)) {
b.unbind("load");
b.remove();
b.attr("src", a);
__portraitCacheDiv.append(b);
b.bind("load", function() {
if (typeof e == "function") {
e(b, c);
}
});
} else {
if (typeof e == "function") {
e(b, c);
}
}
}
}
function getContactPresDesc(a) {
var c = a.type,
b = a.status;
if (c == ContactType.MobileBuddy) {
return "";
}
if ((b & ContactStatus.Verify) == ContactStatus.Verify || (b & ContactStatus.Verify_Bklist) == ContactStatus.Verify_Bklist) {
return "(等待对方同意添加为好友)";
}
if ((b & ContactStatus.Refuse) == ContactStatus.Refuse || (b & ContactStatus.Refuse_Bklist) == ContactStatus.Refuse_Bklist) {
return "(对方拒绝)";
}
if ((b & ContactStatus.CloseService) == ContactStatus.CloseService) {
return "(飞信服务已关闭)";
}
return "";
}
var searchHelper = {
SAFE_DEEP_DEFAULT: 4,
SEPARATOR_BETWEEN_WORDS: "",
WILDCARD_ALL: "*",
_cache: new jHashMap(),
MakeSpellCodeAsWordsAll: function(i) {
var d = new String(i);
if (searchHelper._cache.containsKey(d)) {
return searchHelper._cache.get(i.toString());
}
var a = null;
var h = null;
try {
var c = i.split(searchHelper.WILDCARD_ALL);
i = "";
for (var b = 0; b < c.length; ++b) {
a = searchHelper.MakeSpellCodeAsWords(c[b]);
i += a.bodyList.join(",") + searchHelper.WILDCARD_ALL;
}
if (a) {
h = a.safeDeep;
}
if (!h) {
h = searchHelper.SAFE_DEEP_DEFAULT;
}
var f = {
"bodyContent": i,
"safeDeep": h
};
if (!searchHelper._cache.containsKey(d)) {
searchHelper._cache.put(d, f);
}
return f;
} catch (g) {
return {
"bodyContent": i,
"safeDeep": h
};
}
},
MakeSpellCodeAsWords: function(a, g) {
var f = new Array();
if (!g) {
g = searchHelper.SAFE_DEEP_DEFAULT;
}
if (!a) {
return {
"bodyList": f,
"safeDeep": g
};
}
var h = a.split(new RegExp(/,/gi));
var b = new Array();
for (var d = 0, e = h.length; d < e; ++d) {
var c = h[d].split(" ");
b.push(c);
}
for (var d = 0, e = b.length; d < e && d < g; ++d) {
if (b[d].length > 1) {
f = searchHelper._CopyNTimes(f, b[d].length);
}
if (b[d].length > 0) {
f = searchHelper._AppendToEachItem(f, b[d]);
}
}
return {
"bodyList": f,
"safeDeep": g
};
},
_CopyNTimes: function(d, e) {
if (d.length == 0 || e == 0) {
return d;
}
var a = d.length;
var c = e;
while ((--c) > 0) {
for (var b = 0; b < a; ++b) {
d.push(d[b]);
}
}
return d;
},
_AppendToEachItem: function(e, b) {
if (e.length == 0) {
e = e.concat(b);
} else {
var g = e.length;
var h = b.length;
var f = e.length / b.length;
var a = 0;
for (var d = 0; d < h; ++d) {
for (var c = 0; c < f; ++c) {
e[a * f + c] += b[d];
}++a;
}
}
return e;
}
};
function GroupDefault() {
this.gUri = "";
this.i = 0;
this.nn = "";
this.crc = "";
this.id = 0;
this.n = "";
this.gnn = "";
this.smsRecv = 0;
this.msgRecv = 0;
this.apvRs = 0;
}
function extendGroupItem(b) {
var a = jGroupUriToId(b.gUri);
b.id = parseInt(a);
b.orderNo = getGroupOrder(b);
}
function GroupMemDefault() {
this.ct = "";
this.minn = "";
this.mnn = "";
this.ms = 0;
this.i = 0;
this.displayName = "";
this.lastIsOc = false;
this.currIsOc = false;
this.crc = "";
this.uid = 0;
}
function extendMemItem(c) {
var b = jMemUriToId(c.MemberUri);
c.id = parseInt(b);
if (!c.t6) {
c.isVip = false;
} else {
var a = "," + c.t6 + ",";
c.isVip = (a.indexOf(",50,") >= 0 || a.indexOf(",51,") >= 0 || a.indexOf(",52,") >= 0);
}
c.priName = "";
if (c.i == 1) {
c.priName = "founder";
} else {
if (c.i == 2) {
c.priName = "adminor";
} else {
if (c.i == 3) {
c.priName = "every";
}
}
}
c.displayName = c.mnn || c.minn || c.id.toString();
c.orderNo = getGroupBuddyOrder(c);
c.lastIsOc = c.currIsOc;
if (c.ms == 400) {
c.statusClass = "ff-pc-online";
c.currIsOc = true;
} else {
if (c.ms == 0) {
c.statusClass = "offline";
c.currIsOc = false;
}
}
}
function groupBuddyComparator(e, d) {
if (!e && !d) {
return 0;
}
if (e && !d) {
return 1;
}
if (!e && d) {
return -1;
}
var c, b;
if (e.orderNo) {
c = e.orderNo;
} else {
c = getGroupBuddyOrder(e);
}
if (d.orderNo) {
b = d.orderNo;
} else {
b = getGroupBuddyOrder(d);
}
if (c == b) {
var a = (e.displayName)
.localeCompare(d.displayName);
if (a == 0 && e.MemberUri && d.MemberUri) {
return (e.MemberUri)
.localeCompare(d.MemberUri);
}
return a;
}
return c - b;
}
function getGroupBuddyOrder(a) {
if (!a) {
return -1;
}
var c = 0;
var b = parseInt(a.ms);
if (b == 0) {
if (a.priName == "founder") {
c = 5;
} else {
if (a.priName == "adminor") {
c = 6;
} else {
c = a.isVip ? 7 : 8;
}
}
} else {
if (b == 400) {
if (a.priName == "founder") {
c = 1;
} else {
if (a.priName == "adminor") {
c = 2;
} else {
c = a.isVip ? 3 : 4;
}
}
}
}
return c;
}
function groupComparator(b, e) {
if (!b && !e) {
return 0;
}
if (b && !e) {
return 1;
}
if (!b && e) {
return -1;
}
var d, c;
if (b.orderNo) {
d = b.orderNo;
} else {
d = getGroupOrder(b);
}
if (e.orderNo) {
c = e.orderNo;
} else {
c = getGroupOrder(e);
}
if (d == c) {
var a = 0;
if (b.n && e.n) {
a = (b.n)
.localeCompare(e.n);
} else {
if (b.n && !e.n) {
a = -1;
} else {
if (!b.n && e.n) {
a = 1;
}
}
}
if (a == 0 && b.gUri && e.gUri) {
return (b.gUri)
.localeCompare(e.gUri);
}
return a;
}
return d - c;
}
function getGroupOrder(a) {
if (!a) {
return -1;
}
var b = 0;
b = parseInt(a.i);
return b;
}
function sort_by(b, a) {
a = (a) ? -1 : 1;
return function(e, d) {
if (e.GDataType == 9 && d.GDataType == 9) {
e = e.GData[b];
d = d.GData[b];
}
var c = 0;
if (e && d) {
c = (e.toString())
.localeCompare(d.toString());
} else {
if (e && !d) {
c = -1;
} else {
if (!e && d) {
c = 1;
}
}
}
if (c > 0) {
return a * 1;
} else {
if (c < 0) {
return a * -1;
}
}
return 0;
};
}
function buddyPor(b, a, d) {
var c = "";
if (a.indexOf("bklist") > 0 || a == "offline") {
if (d == 2) {
c = portrait.offline_32;
} else {
c = portrait.offline_16;
}
} else {
switch (a) {
case "refuse":
c = portrait.refuse;
break;
case "close":
c = portrait.close;
break;
case "refuse":
c = portrait.refuse;
break;
case "verify":
c = portrait.verify;
break;
case "rb-verify":
c = portrait.verify;
break;
case "rb-pc-online":
if (d == 2) {
c = portrait.robot_online_32;
} else {
c = portrait.robot_online_16;
}
break;
case "rb-offline":
if (d == 2) {
c = portrait.robot_offline_32;
} else {
c = portrait.robot_offline_16;
}
break;
default:
if (b) {
if (d == 1) {
c = getUserPortraitUrl(b, "5");
} else {
c = getUserPortraitUrl(b, "2");
}
}
break;
}
}
if (c == "") {
c = portrait.defaultIcon;
}
return c;
}(function(a) {
a.extend({
cacheImages: function() {
var b = a("<div style='display:none'></div>");
b.append('<img src="images/emoticons/smile_regular.png" />');
b.append('<img src="images/emoticons/smile_teeth.png" />');
b.append('<img src="images/emoticons/smile_wink.png" />');
b.append('<img src="images/emoticons/smile_omg.png" />');
b.append('<img src="images/emoticons/smile_tongue.png" />');
b.append('<img src="images/emoticons/smile_shades.png" />');
b.append('<img src="images/emoticons/smile_angry.png" />');
b.append('<img src="images/emoticons/smile_sad.png" />');
b.append('<img src="images/emoticons/smile_cry.png" />');
b.append('<img src="images/emoticons/smile_embaressed.png" />');
b.append('<img src="images/emoticons/smile_sarcastic.png" />');
b.append('<img src="images/emoticons/smile_sick.png" />');
b.append('<img src="images/emoticons/smile_baringteeth.png" />');
b.append('<img src="images/emoticons/smile_yawn.png" />');
b.append('<img src="images/emoticons/smile_zipit.png" />');
b.append('<img src="images/emoticons/smile_eyeroll.png" />');
b.append('<img src="images/emoticons/moon.png" />');
b.append('<img src="images/emoticons/cloud_rain.png" />');
b.append('<img src="images/emoticons/clock.png" />');
b.append('<img src="images/emoticons/heart.png" />');
b.append('<img src="images/emoticons/heart_broken.png" />');
b.append('<img src="images/emoticons/cat.png" />');
b.append('<img src="images/emoticons/dog.png" />');
b.append('<img src="images/emoticons/snail.png" />');
b.append('<img src="images/emoticons/star.png" />');
b.append('<img src="images/emoticons/sun.png" />');
b.append('<img src="images/emoticons/rainbow.png" />');
b.append('<img src="images/emoticons/hug_girl.png" />');
b.append('<img src="images/emoticons/hug_dude.png" />');
b.append('<img src="images/emoticons/kiss.png" />');
b.append('<img src="images/emoticons/rose.png" />');
b.append('<img src="images/emoticons/rose_wilted.png" />');
b.append('<img src="images/emoticons/present.png" />');
b.append('<img src="images/emoticons/cake.png" />');
b.append('<img src="images/emoticons/music_note.png" />');
b.append('<img src="images/emoticons/lightbulb.png" />');
b.append('<img src="images/emoticons/smile_idea.png" />');
b.append('<img src="images/emoticons/coffee.png" />');
b.append('<img src="images/emoticons/umbrella.png" />');
b.append('<img src="images/emoticons/mobile.png" />');
b.append('<img src="images/emoticons/computer.png" />');
b.append('<img src="images/emoticons/smile_whatchutalkingabout.png" />');
b.append('<img src="images/emoticons/smile_confused.png" />');
b.append('<img src="images/emoticons/smile_worried.png" />');
b.append('<img src="images/emoticons/smile_drink.png" />');
b.append('<img src="images/emoticons/martini.png" />');
b.append('<img src="images/emoticons/smile_angle.png" />');
b.append('<img src="images/emoticons/smile_thinking.png" />');
b.append('<img src="images/emoticons/smile_great.png" />');
b.append('<img src="images/emoticons/smile_naughty.png" />');
b.append('<img src="images/emoticons/smile_fool.png" />');
b.append('<img src="images/emoticons/smile_cool.png" />');
a(document.body)
.append(b);
}
});
})(jQuery);
var __zIndex = 100;
var __hrefReg = /(http:\/\/|https:\/\/|ftp:\/\/|www\.){1}[\w-]+(\.[\w-]+)*(:[\d]+)?(\/[\w-\.\/?&=]*)?/ig;
function jChatWindowPopMessage(a) {
var c = $.extend({
target: "",
canClose: true,
className: "pop_blacklist",
onClose: function() {}
}, a);
c.target = ((typeof c.target == "string") ? $("#" + c.target) : c.target);
var b = $("<div />")
.addClass(c.className);
c.target.prepend(b);
if (c.canClose) {
var d = $("<i class='close'>关闭</i>");
b.append(d);
d.bind("click", function(f) {
b.css("display", "none");
c.onClose();
stopPropagation(f);
preventDefault(f);
});
}
b.setInnerHtml = function(e) {
b.prepend(e);
var f = $(b)
.find("div");
var g = f.find("div");
f.removeClass("chat_append_sec")
.addClass("chat_append");
g.removeClass("chat_append_tip1");
};
b.buddyStatus = c.buddyStatus;
return b;
}
function jChatWindowPopExpression(b) {
var a = $("<div />")
.addClass("pop_expression facial_new1");
var d = $('<div class="facial_icon_new1"><img class="icon_facial_new1" alt="" src="images/face_btn.png" /></div>');
var f = $("<div class=expression_tit><ul><li class=center>飞信表情 </li></ul></div>");
var e = $("<div />")
.addClass("layer_face");
var c = $("<ul />");
a.fillImgs = function() {
c.append('<li><a href="#"><img title="微笑 :)" pattern=":)" src="images/emoticons/smile_regular.png" /></a>');
c.append('<li><a href="#"><img title="大笑 :d" pattern=":d" src="images/emoticons/smile_teeth.png" /></a>');
c.append('<li><a href="#"><img title="眨眼 ;)" pattern=";)" src="images/emoticons/smile_wink.png" /></a>');
c.append('<li><a href="#"><img title="惊讶 :-o" pattern=":-o" src="images/emoticons/smile_omg.png" /></a>');
c.append('<li><a href="#"><img title="吐舌笑脸 :p" pattern=":p" src="images/emoticons/smile_tongue.png" /></a>');
c.append('<li><a href="#"><img title="热烈的笑脸 (h)" pattern="(h)" src="images/emoticons/smile_shades.png" /></a>');
c.append('<li><a href="#"><img title="生气 :@" pattern=":@" src="images/emoticons/smile_angry.png" /></a>');
c.append('<li><a href="#"><img title="悲伤 :(" pattern=":(" src="images/emoticons/smile_sad.png" /></a>');
c.append('<li><a href="#"><img title="哭泣 :’(" pattern=":’(" src="images/emoticons/smile_cry.png" /></a>');
c.append('<li><a href="#"><img title="尴尬 :">" pattern=":">" src="images/emoticons/smile_embaressed.png" /></a>');
c.append('<li><a href="#"><img title="讽刺 ^o)" pattern="^o)" src="images/emoticons/smile_sarcastic.png" /></a>');
c.append('<li><a href="#"><img title="生病 :&" pattern=":&" src="images/emoticons/smile_sick.png" /></a>');
c.append('<li><a href="#"><img title="咬牙切齿 8o|" pattern="8o|" src="images/emoticons/smile_baringteeth.png" /></a>');
c.append('<li><a href="#"><img title="困 |o" pattern="|o" src="images/emoticons/smile_yawn.png" /></a>');
c.append('<li><a href="#"><img title="保密 :-#" pattern=":-#" src="images/emoticons/smile_zipit.png" /></a>');
c.append('<li><a href="#"><img title="转动的眼睛 8-)" pattern="8-)" src="images/emoticons/smile_eyeroll.png" /></a>');
c.append('<li><a href="#"><img title="沉睡的弯月 (s)" pattern="(s)" src="images/emoticons/moon.png" /></a>');
c.append('<li><a href="#"><img title="下雨 (st)" pattern="(st)" src="images/emoticons/cloud_rain.png" /></a>');
c.append('<li><a href="#"><img title="时钟 (o)" pattern="(o)" src="images/emoticons/clock.png" /></a>');
c.append('<li><a href="#"><img title="红心 (l)" pattern="(l)" src="images/emoticons/heart.png" /></a>');
c.append('<li><a href="#"><img title="破碎的心 (u)" pattern="(u)" src="images/emoticons/heart_broken.png" /></a>');
c.append('<li><a href="#"><img title="猫脸 (@)" pattern="(@)" src="images/emoticons/cat.png" /></a>');
c.append('<li><a href="#"><img title="狗脸 (&)" pattern="(&)" src="images/emoticons/dog.png" /></a>');
c.append('<li><a href="#"><img title="蜗牛 (sn)" pattern="(sn)" src="images/emoticons/snail.png" /></a>');
c.append('<li><a href="#"><img title="星星 (*)" pattern="(*)" src="images/emoticons/star.png" /></a>');
c.append('<li><a href="#"><img title="太阳 (#)" pattern="(#)" src="images/emoticons/sun.png" /></a>');
c.append('<li><a href="#"><img title="彩虹 (r)" pattern="(r)" src="images/emoticons/rainbow.png" /></a>');
c.append('<li><a href="#"><img title="左侧拥抱 ({)" pattern="({)" src="images/emoticons/hug_girl.png" /></a>');
c.append('<li><a href="#"><img title="右侧拥抱 (})" pattern="(})" src="images/emoticons/hug_dude.png" /></a>');
c.append('<li><a href="#"><img title="红唇 (k)" pattern="(k)" src="images/emoticons/kiss.png" /></a>');
c.append('<li><a href="#"><img title="红玫瑰 (f)" pattern="(f)" src="images/emoticons/rose.png" /></a>');
c.append('<li><a href="#"><img title="凋谢的玫瑰 (w)" pattern="(w)" src="images/emoticons/rose_wilted.png" /></a>');
c.append('<li><a href="#"><img title="礼品盒 (g)" pattern="(g)" src="images/emoticons/present.png" /></a>');
c.append('<li><a href="#"><img title="生日蛋糕 (^)" pattern="(^)" src="images/emoticons/cake.png" /></a>');
c.append('<li><a href="#"><img title="音乐 (8)" pattern="(8)" src="images/emoticons/music_note.png" /></a>');
c.append('<li><a href="#"><img title="灯泡 (i)" pattern="(i)" src="images/emoticons/lightbulb.png" /></a>');
c.append('<li><a href="#"><img title="想法 *-:)" pattern="*-:)" src="images/emoticons/smile_idea.png" /></a>');
c.append('<li><a href="#"><img title="咖啡 (c)" pattern="(c)" src="images/emoticons/coffee.png" /></a>');
c.append('<li><a href="#"><img title="雨伞 (um)" pattern="(um)" src="images/emoticons/umbrella.png" /></a>');
c.append('<li><a href="#"><img title="手机 (mp)" pattern="(mp)" src="images/emoticons/mobile.png" /></a>');
c.append('<li><a href="#"><img title="计算机 (co)" pattern="(co)" src="images/emoticons/computer.png" /></a>');
c.append('<li><a href="#"><img title="失望 :|" pattern=":|" src="images/emoticons/smile_whatchutalkingabout.png" /></a>');
c.append('<li><a href="#"><img title="困惑 :-/" pattern=":-/" src="images/emoticons/smile_confused.png" /></a>');
c.append('<li><a href="#"><img title="担心 :s" pattern=":s" src="images/emoticons/smile_worried.png" /></a>');
c.append('<li><a href="#"><img title="饮料 )-|" pattern=")-|" src="images/emoticons/smile_drink.png" /></a>');
c.append('<li><a href="#"><img title="高脚杯 (d)" pattern="(d)" src="images/emoticons/martini.png" /></a>');
c.append('<li><a href="#"><img title="天使 o:)" pattern="o:)" src="images/emoticons/smile_angle.png" /></a>');
c.append('<li><a href="#"><img title="沉思 :?" pattern=":?" src="images/emoticons/smile_thinking.png" /></a>');
c.append('<li><a href="#"><img title="太棒了 (y)" pattern="(y)" src="images/emoticons/smile_great.png" /></a>');
c.append('<li><a href="#"><img title="淘气 >:)" pattern=">:)" src="images/emoticons/smile_naughty.png" /></a>');
c.append('<li><a href="#"><img title="笨蛋、呆子 :b" pattern=":b" src="images/emoticons/smile_fool.png" /></a>');
c.append('<li><a href="#"><img title="戴着太阳镜 b)" pattern="b)" src="images/emoticons/smile_cool.png" /></a>');
};
a.bindItemClick = function(g) {
c.find("li > a")
.bind("click", function(h) {
a.css("display", "none");
g(this, h);
});
};
a.append(d)
.append(f)
.append(e.append(c));
return a;
}
var IMSound = {
isAjaxReady: false,
ajaxInit: function() {
try {
var a = '<object codebase="//download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0"' + ' width="0" height="0" id="fetion_ajaxproxy" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000">' + '<param name="allowScriptAccess" value="always" />' + '<param name="movie" value="swf/ajaxhelper.swf" />' + '<param name="quality" value="high" />' + '<param name="bgcolor" value="#ffffff" />' + ' <embed src="swf/ajaxhelper.swf" quality="high" width="0" height="0" bgcolor="#ffffff"' + ' type="application/x-shockwave-flash" pluginspage="//www.macromedia.com/go/getflashplayer"' + ' name="fetion_ajaxproxy" swLiveConnect="true" allowScriptAccess="always">' + "</embed>" + "</object>";
$("#Sound")
.append(a);
} catch (b) {}
},
ajaxReady: function() {
this.isAjaxReady = true;
},
onAjaxInitError: function() {},
getAjaxProxy: function() {
if (navigator.appName.indexOf("Microsoft") != -1) {
if (window["fetion_ajaxproxy"].length > 0) {
return window["fetion_ajaxproxy"][0];
} else {
return window["fetion_ajaxproxy"];
}
} else {
return document["fetion_ajaxproxy"];
}
},
playSound: function(a) {
var b = this.getAjaxProxy();
if (b && b.playSound) {
b.playSound(a);
}
}
};
$(function() {
$.popWinMsg = function(K) {
var B;
var P = {
gName: "",
group: {},
fName: "",
joinItems: {},
iR: "",
msgN: "msg1",
isLink: false,
openWin: function() {},
handleEntity: {},
consent: function() {},
refuse: function() {},
zindex: 9000,
timeout: 10000,
isClose: true
};
var x = function(an) {
var al = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
for (var ak = 0, am = ""; ak < an; ak++) {
am += al.charAt(Math.floor(Math.random() * 62));
}
return am;
};
var h = $.extend(P, K);
h.isClose = true;
var C;
var F = getGroupItemPortraitUrl(h.group, "4");
h.gName = EmotionNonhtmlReplace(h.gName, 40, false);
h.fName = EmotionNonhtmlReplace(h.fName, 20, false);
var T;
switch (h.msgN) {
case "msg1":
var w = "您已被从群<strong>" + h.gName + "</strong>中删除";
T = w;
break;
case "msg2":
var u = "您被指定为群<strong>" + h.gName + "</strong>的管理员";
T = u;
break;
case "msg3":
var t = "您被指定为群<strong>" + h.gName + "</strong>的超级管理员";
T = t;
break;
case "msg4":
var q = "您的好友<strong>" + h.fName + "</strong>邀请您加入群<strong>" + h.gName + "</strong>";
T = q;
break;
case "msg5":
var ab = jGroupUriToId(h.group.gUri);
var o = __groupMap.get(ab);
var p = "<strong>" + h.fName + "</strong>加入您的群<strong>" + o.n + "</strong>";
T = p;
break;
case "msg6":
var n = "您所在的群<strong>" + h.gName + "</strong>已经被删除";
T = n;
break;
case "msg7":
var l = "您被取消群<strong>" + h.gName + "</strong>的管理员身份";
T = l;
break;
case "msg8":
var k = "欢迎您加入群<strong>" + h.gName + "</strong>";
T = k;
break;
case "msg10":
var ah = "<strong>" + h.fName + "</strong>邀请" + h.joinItems.length + "位好友加入群<strong>" + h.gName + "</strong>";
T = ah;
break;
case "msg11":
var af = "您是飞信会员,最多可以加入22个群";
T = af;
break;
case "msg12":
var ag = "http://vip.feixin.10086.cn/open/junior/code/" + __user.mn;
var ad = "普通用户最多可以加入20个群,<a href=" + ag + ' target="_blank" ><strong>开通会员立即获得加入更多群的特权</strong></a>';
T = ad;
break;
case "msg13":
var ab = jGroupUriToId(h.group.GroupUri);
var o = __groupMap.get(ab);
var ac = "<strong>" + cnSubstr(h.fName, 20, true) + "</strong>申请加入群<strong>" + cnSubstr(o.n, 36, true) + "</strong>";
T = ac;
break;
case "msg14":
var aa = "申请已经被审批";
T = aa;
break;
default:
break;
}
var Q = $('<div class="pop_group_cont fixed-bottom fixed-right" id="' + x(10) + '" ></div>')
.css("z-index", h.zindex);
var b = $('<div class="pop_group_cont_bg"></div>');
var aj = $(' <div class="pop_group_cont_tit"><a href="javascript:;" class="pop_group_close"></a><h3>群提醒</h3> </div>');
if (h.msgN == "msg10" || h.msgN == "msg13") {
aj = $(' <div class="pop_group_cont_tit"><a href="javascript:;" class="pop_group_close"></a><h3>加群申请</h3> </div>');
} else {
if (h.msgN == "msg4") {
aj = $(' <div class="pop_group_cont_tit"><a href="javascript:;" class="pop_group_close"></a><h3>加群邀请</h3> </div>');
}
}
var c = $('<div class="pop_group_cont_box"></div>');
var N = $('<div class="pop_group_tips"></div>');
var ae = $('<div class="pop_group_tips_pic"><span class="pop_group_tips_pic_bg"></span></div>');
var A = $("<img />")
.attr("src", F);
var V = $('<div class="pop_group_tips_text"></div>');
if (h.msgN == "msg10") {
Q.removeClass("pop_group_cont")
.addClass("pop_group_invite_box");
var m = $('<div class="pop_group_invite_sub"></div>');
var ai = $('<div class="pop_group_invite_info"></div>');
ae = $('<div class="pop_group_invite_info_pic"></div>');
ae.append(A);
V.removeClass()
.addClass("pop_group_invite_info_text");
V.html(T);
var H = ai.append(ae)
.append(V);
m.append(aj)
.append(H);
var z = $('<div class="pop_group_invite_cont"></div>');
var d = $('<div class="pop_group_invite_list_dec"></div>');
var O = $('<div class="pop_group_invite_list"></div>');
var S = $('<div class="pop_group_invite_list_dec"></div>');
var R = $('<div class="pop_group_invite_list_c"></div>');
for (var Z = 0; Z < h.joinItems.length; Z++) {
var Y = $("<span></span>")
.html(h.joinItems[Z].nn);
R.append(Y);
}
var M = O.append(d)
.append(R)
.append(S);
var E = $('<div class="pop_group_invite_explain">邀请说明:' + h.iR + "</div>");
var a = $('<div class="pop_group_invite_link"></div>');
var J = $('<a href="javascript:;" class="consent">批准</a>')
.bind("click", function(i) {
$.closeMessageBox(B, true);
h.consent(h.handleEntity, 1);
stopPropagation(i);
preventDefault(i);
});
var L = $('<a href="javascript:;" class="refuse">拒绝</a>')
.bind("click", function(i) {
$.closeMessageBox(B, true);
h.consent(h.handleEntity, 2);
stopPropagation(i);
preventDefault(i);
});
var U = a.append(L)
.append(J);
z.append(M)
.append(E)
.append(U);
Q.append(m)
.append(z);
} else {
if (h.msgN == "msg13") {
var ab = jGroupUriToId(h.group.GroupUri);
var g = jMemUriToId(h.group.ApplyGroupUserEntity[0].Uri);
var G = ab + "_" + g;
Q.attr("id", G);
Q.removeClass("pop_group_cont")
.addClass("pop_group_invite_box");
var m = $('<div class="pop_group_invite_sub bg">' + '<div class="pop_group_cont_tit">' + '<a href="javascript:;" class="pop_group_close"></a>' + "<h3>加群申请</h3></div>" + '<div class="pop_group_invite_info">' + '<div class="pop_group_invite_info_pic matop"></div>' + '<div class="pop_group_invite_info_text lh">' + T + "<p>申请说明:" + cnSubstr(h.iR, 60, false) + "</p>" + "</div></div></div>");
m.find(".pop_group_invite_info_pic")
.append(A);
var J = $('<div class="pop_group_invite_cont">' + '<div class="pop_group_invite_link2"><a href="javascript:;" class="consent">拒绝</a><a href="javascript:;" class="confirm">批准</a></div>' + "</div>");
Q.append(m)
.append(J);
J.find(".pop_group_invite_link2 > a:eq(1)")
.bind("click", function(i) {
$.closeMessageBox(B, true);
h.consent(h.handleEntity, 1);
stopPropagation(i);
preventDefault(i);
})
.addClass("hover");
J.find(".pop_group_invite_link2 > a:eq(0)")
.bind("click", function(i) {
$.closeMessageBox(B, true);
h.consent(h.handleEntity, 2);
stopPropagation(i);
preventDefault(i);
})
.bind("mouseover", function(i) {
J.find(".pop_group_invite_link2 > a:eq(1)")
.removeClass("hover");
});
if ($("#" + G)
.attr("id")) {
$("#" + G)
.find(".pop_group_invite_info_text")
.html("")
.html(T + "<p>申请说明:" + h.iR + "</p>");
} else {
Q.appendTo(document.body);
C = setTimeout(function() {
$.closeMessageBox(B, h);
}, h.timeout);
}
} else {
if (h.msgN == "msg14") {
c.addClass("pabo");
c.append($('<div class="pop_group_cont_box_icon"></div><p class="pop_group_cont_box_t">' + T + '。</p><a class="confirm" href="javascript:;">确定</a>'));
c.find("a")
.bind("click", function(i) {
Q.remove();
stopPropagation(i);
preventDefault(i);
});
} else {
if (h.msgN == "msg11" || h.msgN == "msg12") {
V.addClass("w170");
var y = "<strong>您所加入群的数量已达上限!</strong>";
var I = $("<p></p>")
.html(T);
V.append(y)
.append(I);
} else {
V.html(T);
}
}
}
}
if (h.msgN != "msg10" && h.msgN != "msg13") {
var f = ae.append(A);
var v = "";
if (h.msgN == "msg11" || h.msgN == "msg12") {
var s = $('<div class="pop_group_tips_icon"></div>');
v = N.append(s)
.append(V);
} else {
if (h.msgN != "msg14") {
v = N.append(f)
.append(V);
}
}
var D = c.append(v);
if (K.isLink) {
var a = $('<div class="pop_group_link"></div>');
var J = $('<a href="javascript:;" class="consent">同意</a>')
.bind("click", function(i) {
$.closeMessageBox(B, true);
h.consent(h.handleEntity);
stopPropagation(i);
preventDefault(i);
});
var L = $('<a href="javascript:;" class="refuse">拒绝</a>')
.bind("click", function(i) {
$.closeMessageBox(B, true);
stopPropagation(i);
preventDefault(i);
});
var U = a.append(J)
.append(L);
D.append(U);
}
if (h.msgN == "msg8") {
Q.addClass("pop_group_spe");
c.removeClass()
.addClass("pop_group_cont_box_spe");
var e = $('<div class="pop_group_tips_join"></div>');
var j = $('<a href="javascript:;" hidefocus="true">加入会话</a>')
.click(function(i) {
h.openWin(this, h.group.id);
stopPropagation(i);
preventDefault(i);
});
var W = e.append(j);
D.append(W);
}
var r = b.append(aj)
.append(D);
Q.append(r);
}
var X = Q.html();
if (h.msgN == "msg10" || h.msgN == "msg4") {
if (!__groupMsgMap.containsKey(X)) {
__groupMsgMap.put(X);
Q.appendTo(document.body);
} else {
return;
}
} else {
if (h.msgN != "msg13") {
Q.appendTo(document.body);
}
}
startSound("sys");
$(".pop_group_close")
.click(function(i) {
$.closeMessageBox(B, true);
stopPropagation(i);
preventDefault(i);
});
Q.slideDown("slow");
if (h.isClose && h.msgN != "msg13") {
C = setTimeout(function() {
$.closeMessageBox(B, h);
}, h.timeout);
}
B = {
d: Q,
i: C
};
return B;
};
$.closeMessageBox = function(c, b) {
if (c.d.attr("class")
.indexOf("fixed-bottom fixed-right") > 0) {
c.d.slideUp("slow");
}
if (b == true) {
c.d.remove();
clearTimeout(c.i);
onCloseGroupSysChatWindow(c.d);
var a = $(c.d)
.html();
if (__groupMsgMap.containsKey(a)) {
__groupMsgMap.remove(a);
}
} else {
if (b && (b.msgN == "msg10" || b.msgN == "msg4" || b.msgN == "msg13")) {
gsw = $.fn.jGroupSysMsg({
user: __user,
group: b.group,
popWin: c.d,
onActive: onActiveGroupSysChatWindow,
onClosed: onCloseGroupSysChatWindow,
onFocus: onFocusGroupSysChatWindow
});
gsw.active();
gsw.removeClass("fixed-bottom fixed-right");
if (b.msgN != "msg4") {
gsw.removeClass("pop_group_invite_box")
.addClass("pop_group_invite_box2");
}
gsw.css("display", "");
if (b.msgN == "msg13") {
if (!__chatWindowMap.get("group_sys_" + $(c.d)
.attr("id"))) {
__chatWindowMap.put("group_sys_" + $(c.d)
.attr("id"), gsw);
}
} else {
__chatWindowMap.put("group_sys_" + $(c.d)
.attr("id"), gsw);
}
} else {
c.d.remove();
clearTimeout(c.i);
var a = $(c.d)
.html();
if (__groupMsgMap.containsKey(a)) {
__groupMsgMap.remove(a);
}
}
}
};
});
String.prototype.endsWith = function(a) {
if (typeof a == "undefined" || a == "" || this.length == 0 || a.length > this.length) {
return false;
}
if (this.substring(this.length - a.length) == a) {
return true;
} else {
return false;
}
return true;
};
String.prototype.startsWith = function(a) {
if (typeof a == "undefined" || a == "" || this.length == 0 || a.length > this.length) {
return false;
}
if (this.substr(0, a.length) == a) {
return true;
} else {
return false;
}
return true;
};
String.prototype.trim = function(b) {
if (typeof b == "undefined") {
return this.replace(/^\s+|\s+$/g, "");
}
var a = new RegExp("^[" + b + "]+|[" + b + "]+$", "g");
return this.replace(a, "");
};
String.prototype.trimEnd = function(b) {
if (typeof b == "undefined") {
return this.replace(/\s+$/g, "");
}
var a = new RegExp("[" + b + "]+$", "g");
return this.replace(a, "");
};
String.prototype.toCodeArray = function() {
var b = new Array();
var a = this.length;
if (a == 0) {
return b;
}
for (var c = 0; c < a; c++) {
b.push(this.charCodeAt(c));
}
return b;
};
String.prototype.fromCodeArray = function(b) {
if (b == null) {
return null;
}
var a = b.length;
var d = "";
for (var c = 0; c < a; c++) {
d += String.fromCharCode(b[c]);
}
return d;
};
function formatString() {
if (arguments.length < 2) {
return arguments;
}
var a = arguments[0];
for (var b = 0; b < arguments.length - 1; b++) {
a = a.replace("{" + b + "}", arguments[b + 1]);
}
return a;
}
function cnLength(c) {
if (c == null) {
return null;
}
var a = 0;
for (var b = 0; b < c.length; b++) {
if (c.charCodeAt(b) > 255) {
a += 2;
} else {
a++;
}
}
return a;
}
function cnSubstr(e, a, c) {
if (e == null) {
return null;
}
if (cnLength(e) <= a + 2 && !c) {
return e;
}
var f = 0;
var d = "";
if (e != null) {
for (var b = 0; b < e.length; b++) {
if (e.charCodeAt(b) > 255) {
f += 2;
} else {
f++;
}
if (f <= a) {
d += e.charAt(b);
} else {
if (c) {
return d;
} else {
return d + "...";
}
}
}
}
return d;
}
function cnLength2(d) {
if (d == null) {
return null;
}
var a = 0;
for (var c = 0; c < d.length; c++) {
var b = d.charAt(c);
if (d.charCodeAt(c) > 255 || "@#$%^&+<>ADGHMNOQTUVWY".indexOf(b) >= 0) {
a += 2;
} else {
a++;
}
}
return a;
}
function cnSubstr2(f, a, d) {
if (f == null) {
return null;
}
if (cnLength2(f) <= a + 2 && !d) {
return f;
}
var g = 0;
var e = "";
if (f != null) {
for (var c = 0; c < f.length; c++) {
var b = f.charAt(c);
if (f.charCodeAt(c) > 255 || "@#$%^&+<>ADGHMNOQTUVWY".indexOf(b) >= 0) {
g += 2;
} else {
g++;
}
if (g <= a) {
e += b;
} else {
if (d) {
return e;
} else {
return e + "...";
}
}
}
}
return e;
}
var __htmlConverter = document.createElement("div");
function htmlEncode(b, c) {
if (!c) {
c = __htmlConverter;
}
if (c.textContent != null) {
c.textContent = b;
} else {
c.innerText = b;
}
var a = c.innerHTML;
return a;
}
function htmlDecode(b, c) {
if (!c) {
c = __htmlConverter;
}
c.innerHTML = b;
var a = "";
if (c.textContent != null) {
a = c.textContent;
} else {
a = c.innerText;
}
return a;
}
function getViewportHeight() {
var a = 0;
if (window.innerHeight) {
a = window.innerHeight;
} else {
if (document.documentElement && document.documentElement.clientHeight) {
a = document.documentElement.clientHeight;
} else {
if (document.body && document.body.clientHeight) {
a = document.body.clientHeight;
}
}
}
return a;
}
function getViewportWidth() {
var a = 0;
if (window.innerWidth) {
a = window.innerWidth;
} else {
if (document.documentElement && document.documentElement.clientWidth) {
a = document.documentElement.clientWidth;
} else {
if (document.body && document.body.clientWidth) {
a = document.body.clientWidth;
}
}
}
return a;
}
function getViewportCenter() {
var a = getViewportHeight();
var d = getViewportWidth();
var b = {
"x": d / 2,
"y": a / 2
};
return b;
}
var __isMsie = $.browser.msie;
function isMouseOver(b, d) {
d = window.event || d;
var c = d.fromElement || d.relatedTarget;
if (__isMsie && c) {
if (b && c != b && b.contains && !b.contains(c)) {
return true;
}
} else {
if (c && b && b.compareDocumentPosition) {
var a = b.compareDocumentPosition(c);
if (!(c == b || a == 20 || a == 0)) {
return true;
}
}
}
return false;
}
function isMouseOut(b, d) {
var d = window.event || d;
var c = d.toElement || d.relatedTarget;
if (__isMsie && c) {
if (b && b.contains && !b.contains(c)) {
return true;
}
} else {
if (c && b && b.compareDocumentPosition) {
var a = b.compareDocumentPosition(c);
if (!(a == 20 || a == 0)) {
return true;
}
}
}
return false;
}
function getCookie(b) {
var a = document.cookie.match(new RegExp("(^| )" + b + "=([^;]*)(;|$)"));
if (a != null) {
return unescape(a[2]);
}
return null;
}
function setCookie(b, d, a, f, c, e) {
document.cookie = b + "=" + d + ((a) ? "; expires=" + a : "") + ((f) ? "; path=" + f : "") + ((c) ? "; domain=" + c : "") + ((e) ? "; secure" : "");
}
var __expires = (new Date(1970, 1, 1, 8, 0, 1))
.toGMTString();
function deleteCookie(a, c, b) {
if (getCookie(a)) {
document.cookie = a + "=" + ((c) ? "; path=" + c : "") + ((b) ? "; domain=" + b : "") + "; expires=" + __expires;
}
}
function jHashMap() {
var a = 0;
var b = new Object();
this.put = function(c, d) {
if (!this.containsKey(c)) {
a++;
}
b[c] = d;
};
this.get = function(c) {
return this.containsKey(c) ? b[c] : null;
};
this.remove = function(c) {
if (this.containsKey(c) && (delete b[c])) {
a--;
}
};
this.containsKey = function(c) {
return (c in b);
};
this.containsValue = function(c) {
for (var d in b) {
if (b[d] == c) {
return true;
}
}
return false;
};
this.values = function() {
var c = new Array();
for (var d in b) {
c.push(b[d]);
}
return c;
};
this.keys = function() {
var c = new Array();
for (var d in b) {
c.push(d);
}
return c;
};
this.size = function() {
return a;
};
this.clear = function() {
a = 0;
b = new Object();
};
}
function getQueryString(e, b) {
var d = "";
var c = new RegExp("[?&]?" + b + "=([^&]+)", "i");
var a = e.match(c);
if (a == null || a.length < 1) {
d = "";
} else {
d = a[1];
}
return d;
}
function objects(h) {
var g = new Object();
var e = /[\?\&]?([^=^\&]+)=([^\&]+)/i;
var c = h.split("&");
for (var b = 0; b < c.length; b++) {
var a = c[b].match(e);
if (a == null) {
continue;
}
var f = a.length;
if (a != null) {
for (var d = 1; d < f; d += 2) {
if (d + 1 < f) {
g[a[d]] = a[d + 1];
} else {
g[a[d]] = "";
}
}
}
}
return g;
}
function addFavourite(url, title) {
function findKeys() {
var isMSIE =
/*@cc_on!@*/
false;
var ua = navigator.userAgent.toLowerCase(),
isMac = (ua.indexOf("mac") != -1),
isWebkit = (ua.indexOf("webkit") != -1),
str = (isMac ? "Command/Cmd" : "CTRL");
if (window.opera && (!opera.version || (opera.version() < 9))) {
str += " + T";
} else {
if (ua.indexOf("konqueror") != -1) {
str += " + B";
} else {
if (window.opera || window.home || isWebkit || isMSIE || isMac) {
str += " + D";
} else {
str += " + D";
}
}
}
return str;
}
try {
if (document.all) {
window.external.addFavorite(url, title);
} else {
if (window.sidebar) {
window.sidebar.addPanel(title, url, "");
} else {
alert("浏览器不支持自动添加收藏夹。关闭本对话框后,请您手动使用组合快捷键'" + findKeys() + "'进行添加。");
}
}
} catch (e) {
alert("浏览器不支持自动添加收藏夹。关闭本对话框后,请您手动使用组合快捷键'" + findKeys() + "'进行添加。");
}
}
function stopPropagation(a) {
a = window.event || a;
if (window.event) {
a.cancelBubble = true;
} else {
a.stopPropagation();
}
}
function preventDefault(a) {
if (a && a.preventDefault) {
a.preventDefault();
} else {
window.event.returnValue = false;
return false;
}
}
function replaceSelection(c, e) {
if (c != null) {
if (c.pasteHTML) {
c.select();
c.pasteHTML(e);
return true;
} else {
if (c.deleteContents && c.insertNode) {
var b = document.createElement("div");
b.innerHTML = e;
var a = [];
for (var d = b.childNodes.length - 1; d >= 0; d--) {
a.push(b.childNodes[d]);
}
c.deleteContents();
for (var d = 0, f = a.length; d < f; d++) {
c.insertNode(a[d]);
}
if (a.length > 0) {
c.setStartBefore(a[a.length - 1]);
c.setEndAfter(a[0]);
}
c.collapse(false);
b = null;
return true;
}
}
}
return false;
}
var __scrollBarWidth = null;
function getScrollBarWidth() {
if (__scrollBarWidth) {
return __scrollBarWidth;
}
var a = document.createElement("div");
a.style.cssText = "overflow:scroll;width:100px;height:100px;";
document.body.appendChild(a);
if (a) {
__scrollBarWidth = {
horizontal: a.offsetHeight - a.clientHeight,
vertical: a.offsetWidth - a.clientWidth
};
}
document.body.removeChild(a);
return __scrollBarWidth;
}(function(a) {
a.extend(a.fn, {
loadingPanel: function(c) {
var d = a.extend({
parent: a(document.body),
target: a(document.body),
showTime: 18 * 1000
}, c);
d.parent = ((typeof d.parent == "string") ? a("#" + d.parent) : d.parent);
d.target = ((typeof d.target == "string") ? a("#" + d.target) : d.target);
var b = a('<div class="fx_ajax" style="position:absolute;text-align:center;z-index:90000;display:none;"><div class="fxDiv"></div><div class="fxColor fxTransp"></div></div>');
d.parent.append(b);
b.hide = function() {
b.css("display", "none");
};
b.show = function() {
var e;
if (d.parent.get(0) == document.body) {
e = d.target.offset();
} else {
e = d.target.position();
}
b.css({
"top": e.top,
"left": e.left,
"height": d.target.height(),
"width": d.target.width(),
"display": ""
});
setTimeout(function() {
b.hide();
}, d.showTime);
};
return b;
}
});
})(jQuery);
function setClipboard(f) {
if (window.clipboardData) {
return (window.clipboardData.setData("Text", f));
} else {
if (window.netscape) {
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
var c = Components.classes["@mozilla.org/widget/clipboard;1"].createInstance(Components.interfaces.nsIClipboard);
if (!c) {
return;
}
var b = Components.classes["@mozilla.org/widget/transferable;1"].createInstance(Components.interfaces.nsITransferable);
if (!b) {
return;
}
b.addDataFlavor("text/unicode");
var e = new Object();
var a = new Object();
var e = Components.classes["@mozilla.org/supports-string;1"].createInstance(Components.interfaces.nsISupportsString);
var g = new String(f);
e.data = g;
b.setTransferData("text/unicode", e, g.length * 2);
var d = Components.interfaces.nsIClipboard;
if (!c) {
return false;
}
c.setData(b, null, d.kGlobalClipboard);
return true;
}
}
return false;
}
function getClipboard() {
if (window.clipboardData) {
return (window.clipboardData.getData("Text"));
} else {
if (window.netscape) {
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
var d = Components.classes["@mozilla.org/widget/clipboard;1"].createInstance(Components.interfaces.nsIClipboard);
if (!d) {
return;
}
var c = Components.classes["@mozilla.org/widget/transferable;1"].createInstance(Components.interfaces.nsITransferable);
if (!c) {
return;
}
c.addDataFlavor("text/unicode");
d.getData(c, d.kGlobalClipboard);
var e = new Object();
var a = new Object();
try {
c.getTransferData("text/unicode", e, a);
} catch (b) {
return null;
}
if (e) {
if (Components.interfaces.nsISupportsWString) {
e = e.value.QueryInterface(Components.interfaces.nsISupportsWString);
} else {
if (Components.interfaces.nsISupportsString) {
e = e.value.QueryInterface(Components.interfaces.nsISupportsString);
} else {
e = null;
}
}
}
if (e) {
return (e.data.substring(0, a.value / 2));
}
}
}
return null;
}
function osType() {
var b = (navigator.userAgent || navigator.vendor || window.opera)
.toLowerCase();
isWin7 = b.indexOf("nt 6.1") > -1;
isVista = b.indexOf("nt 6.0") > -1;
isWin2003 = b.indexOf("nt 5.2") > -1;
isWinXp = b.indexOf("nt 5.1") > -1;
isWin2000 = b.indexOf("nt 5.0") > -1;
isWinNT40 = b.indexOf("nt 4.0") > -1;
isWindows = (b.indexOf("windows") != -1 || b.indexOf("win32") != -1);
isMac = (b.indexOf("macintosh") != -1 || b.indexOf("mac os x") != -1);
isAndroid = (b.indexOf("android") != -1);
isLinux = (b.indexOf("linux") != -1);
var c = 0;
var a = "";
if (isWin7) {
c = 500300002;
} else {
if (isVista) {
c = 500300003;
} else {
if (isWinXp) {
c = 500300001;
} else {
if (isWin2003) {
c = 500300005;
} else {
if (isWin2000) {
c = 500300004;
} else {
if (isWinNT40) {
c = 500300006;
} else {
if (isMac) {
c = 500300008;
} else {
if (isLinux) {
c = 500300007;
} else {
if (isAndroid) {
c = 500300009;
} else {
if (/ip(hone|od)/i.test(b)) {
c = 500300012;
} else {
if (/symbian/i.test(b)) {
c = 500300011;
} else {
if (/windows (ce|phone)/i.test(b)) {
c = 500300010;
} else {
c = 500300013;
}
}
}
}
}
}
}
}
}
}
}
}
return c;
}
function getScreen() {
var b = screen.width + "," + screen.height;
var a = 0;
switch (b) {
case "1024,768":
a = 500200001;
break;
case "1440,900":
a = 500200002;
break;
case "800,600":
a = 500200005;
break;
case "1366,768":
a = 500200006;
break;
case "1280,800":
a = 500200007;
break;
case "1280,1024":
a = 500200008;
break;
case "1680,1050":
a = 500200009;
break;
case "1152,864":
a = 500200010;
break;
case "1280,960":
a = 500200011;
break;
case "1280,768":
a = 500200012;
break;
case "1920,1080":
a = 500200013;
break;
case "640,480":
a = 500200014;
break;
case "1360,768":
a = 500200015;
break;
default:
a = 500200016;
break;
}
return a;
}
var numberReg = /^\d{8,11}$/;
var numReg = /^\d+$/;
var htmlReg = /<([^<>]+)>/gi;
var numOrWordReg = /^(\w|[\u4e00-\u9fa5])+$/;
var emailReg = /^([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/;
var isValidSid = /^\d{1,10}$/;
var isMobileNoReg = /^(134|135|136|137|138|139|147|150|151|152|157|158|159|182|183|187|188|130|131|132|155|156|185|186|133|153|180|189)[\d]{8}$/;
var isMobileNoRegForTXL = /^(\+86)?(134|135|136|137|138|139|147|150|151|152|157|158|159|182|183|187|188|130|131|132|155|156|185|186|133|153|180|189)[\d]{8}$/;
var isChinaMobileNoReg = /^(134|135|136|137|138|139|147|150|151|152|157|158|159|182|183|187|188)[\d]{8}$/;
var isUTMoblieNoReg = /^(130|131|132|155|156|185|186|133|153|180|189)[\d]{8}$/;
var isChinaUnicomNoReg = /^(130|131|132|155|156|185|186|)[\d]{8}$/;
var isChinaTelecomNoReg = /^(133|153|180|189)[\d]{8}$/;
var __version = 0;
var __dataReportMap = new jHashMap();
(function(a) {
a.extend({
request: {
URL_SetCounter: "SetCounter.aspx?Version={0}&coutertype={1}&tag={2}&val={3}&rand={4}",
version: __version
},
increaseCounter: function(e, c, f) {
if (!c) {
c = "default";
}
if (f == undefined) {
f = 1;
}
var d = formatString(a.request.URL_SetCounter, a.request.version++, e, c, f, Math.random());
var b = new Image();
b.src = d;
},
increaseCounters: function(b, d) {
if (d == undefined) {
d = 1;
}
var e = __dataReportMap;
if (e.containsKey(b)) {
var c = e.get(b) + d;
e.put(b, c);
} else {
e.put(b, d);
}
}
});
})(jQuery);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment