Mini.Crm/Mini.Web/Template2/message.html

855 lines
46 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>{{htmltitle}}</title>
<!--<link href="/layui-v2.5.4/css/layui.css" rel="stylesheet" />-->
<link href="static/layui-v2.5.4/css/layui.css" rel="stylesheet" />
<script src="static/Scripts/jquery-1.10.2.min.js"></script>
<link href="static/layui-v2.5.4/css/workbench.css" rel="stylesheet" />
<link href="static/layui-v2.5.4/css/common.css" rel="stylesheet" />
<script src="static/layui-v2.5.4/layui.js"></script>
<script src="static/Scripts/common.js"></script>
<script src="static/Scripts/newCommon.js"></script>
</head>
<body class="" style="overflow-y:auto;overflow-x:hidden;">
<!--确定宽度-->
<script src="static/Scripts/html5media.js"></script>
<link href="static/css/boxImg.css" rel="stylesheet" />
<script src="static/Scripts/boxImg.js"></script>
<style>
.piclink {
border: #b5b2b2 1px solid;
width: 280px;
height: 150px;
padding: 20px;
}
.piclink a {
color: #757875;
text-decoration: none;
}
.piclink a:link {
color: black;
}
/* 未被访问的链接 */
.piclink a:visited {
}
/* 已被访问的链接 */
.piclink a:hover {
color: black;
}
/* 鼠标指针移动到链接上 */
.piclink a:active {
}
/* 正在被点击的链接 */
.piclink .pictitle {
font-size: 16px;
font-weight: bold;
}
.piclink .piccontent {
font-size: 12px;
margin-top: 10px;
width: 210px;
float: left;
display: -webkit-box; /* display: -webkit-box; 必须结合的属性 ,将对象作为弹性伸缩盒子模型显示 */
-webkit-box-orient: vertical; /* -webkit-box-orient 必须结合的属性 ,设置或检索伸缩盒对象的子元素的排列方式 */
-webkit-line-clamp: 4; /* -webkit-line-clamp用来限制在一个块元素显示的文本的行数 */
overflow: hidden;
}
.piclink .picimg {
width: 60px;
height: 60px;
float: right;
object-fit: cover;
}
</style>
<style>
#wochalei {
height: 30px;
width: 100%;
background-color: #536484;
}
#wochalei ul {
padding: 0px;
font-size: 12px;
color: #FFF;
line-height: 26px;
hite-space: nowrap;
}
#wochalei li {
list-style-type: none;
}
#wochalei li span {
text-decoration: none;
font-family: Arial, Helvetica, sans-serif;
padding: 7px 5px;
width: 100%;
}
.rcontacthover {
color: #ff0;
background-color: #7E8BA3;
}
.rcontactClick {
color: #ff0;
background-color: #8988AE;
}
.isSelf {
color: #006EFE;
padding-left: 10px;
}
.isFriend {
color: #42B475;
padding-left: 10px;
}
.message {
padding-left: 20px;
}
.redColor {
color: red;
}
.displayLi {
display: none;
}
.contentTable td {
font-size: 12px;
line-height: 26px;
max-width: 500px;
}
.imageClass {
max-width: 200px;
}
.miniimageClass {
max-width: 100px;
}
.outhertable {
border: 2px solid #757875;
}
</style>
<script type="text/JavaScript" language="javascript">
var face = [{ name: "[微笑]", imgpath: "0.png" }, { name: "[撇嘴]", imgpath: "1.png" }, { name: "[色]", imgpath: "2.png" }, { name: "[发呆]", imgpath: "3.png" },
{ name: "[得意]", imgpath: "4.png" }, { name: "[流泪]", imgpath: "5.png" }, { name: "[害羞]", imgpath: "6.png" }, { name: "[闭嘴]", imgpath: "7.png" }, { name: "[睡]", imgpath: "8.png" },
{ name: "[大哭]", imgpath: "9.png" }, { name: "[尴尬]", imgpath: "10.png" }, { name: "[发怒]", imgpath: "11.png" }, { name: "[调皮]", imgpath: "12.png" },
{ name: "[呲牙]", imgpath: "13.png" }, { name: "[惊讶]", imgpath: "14.png" }, { name: "[难过]", imgpath: "15.png" }, { name: "[酷]", imgpath: "16.png" },
{ name: "[囧]", imgpath: "17.png" }, { name: "[抓狂]", imgpath: "18.png" }, { name: "[吐]", imgpath: "19.png" }, { name: "[偷笑]", imgpath: "20.png" },
{ name: "[愉快]", imgpath: "21.png" }, { name: "[白眼]", imgpath: "22.png" }, { name: "[傲慢]", imgpath: "23.png" },
{ name: "[饿]", imgpath: "24.png" }, { name: "[困]", imgpath: "25.png" }, { name: "[惊恐]", imgpath: "26.png" },
{ name: "[流汗]", imgpath: "27.png" }, { name: "[憨笑]", imgpath: "28.png" }, { name: "[悠闲]", imgpath: "29.png" }, { name: "[奋斗]", imgpath: "30.png" },
{ name: "[咒骂]", imgpath: "31.png" }, { name: "[疑问]", imgpath: "32.png" }, { name: "[嘘]", imgpath: "33.png" }, { name: "[晕]", imgpath: "34.png" },
{ name: "[疯]", imgpath: "35.png" }, { name: "[衰]", imgpath: "36.png" }, { name: "[骷髅]", imgpath: "37.png" },
{ name: "[敲打]", imgpath: "38.png" }, { name: "[再见]", imgpath: "39.png" }, { name: "[擦汗]", imgpath: "40.png" },
{ name: "[抠鼻]", imgpath: "41.png" }, { name: "[鼓掌]", imgpath: "42.png" }, { name: "[糟糕]", imgpath: "43.png" },
{ name: "[坏笑]", imgpath: "44.png" }, { name: "[左哼哼]", imgpath: "45.png" },
{ name: "[右哼哼]", imgpath: "46.png" }, { name: "[哈欠]", imgpath: "47.png" },
{ name: "[鄙视]", imgpath: "48.png" }, { name: "[委屈]", imgpath: "49.png" },
{ name: "[快哭了]", imgpath: "50.png" }, { name: "[阴险]", imgpath: "51.png" },
{ name: "[亲亲]", imgpath: "52.png" }, { name: "[吓]", imgpath: "53.png" },
{ name: "[可怜]", imgpath: "54.png" }, { name: "[菜刀]", imgpath: "55.png" },
{ name: "[西瓜]", imgpath: "56.png" }, { name: "[啤酒]", imgpath: "57.png" },
{ name: "[篮球]", imgpath: "58.png" }, { name: "[乒乓]", imgpath: "59.png" },
{ name: "[咖啡]", imgpath: "60.png" }, { name: "[美食]", imgpath: "61.png" },
{ name: "[猪头]", imgpath: "62.png" }, { name: "[玫瑰]", imgpath: "63.png" },
{ name: "[凋谢]", imgpath: "64.png" }, { name: "[嘴唇]", imgpath: "65.png" },
{ name: "[爱心]", imgpath: "66.png" }, { name: "[心碎]", imgpath: "67.png" },
{ name: "[蛋糕]", imgpath: "68.png" }, { name: "[电]", imgpath: "69.png" }, { name: "[炸弹]", imgpath: "70.gif" }, { name: "[便便]", imgpath: "71.gif" },
{ name: "[月亮]", imgpath: "72.gif" }, { name: "[太阳]", imgpath: "73.gif" }, { name: "[拥抱]", imgpath: "74.png" }, { name: "[强]", imgpath: "75.gif" }, { name: "[弱]", imgpath: "76.gif" },
{ name: "[握手]", imgpath: "77.gif" }, { name: "[胜利]", imgpath: "78.gif" }, { name: "[抱拳]", imgpath: "79.gif" }, { name: "[勾引]", imgpath: "80.gif" },
{ name: "[拳头]", imgpath: "81.gif" }, { name: "[OK]", imgpath: "82.gif" }, { name: "[跳跳]", imgpath: "83.gif" }, { name: "[发抖]", imgpath: "84.gif" },
{ name: "[怄火]", imgpath: "85.png" }, { name: "[转圈]", imgpath: "86.gif" }
];
</script>
<style>
.ly_toolBar {
left: 200px;
z-index: 99999;
display: block;
position: absolute;
top: 0;
z-index: 10;
width: 85px;
height: 39px;
line-height: 39px;
border-width: 0;
border-style: solid;
border-radius: 2px;
text-align: center;
background-color: #fff;
cursor: pointer;
color: black;
font-size: 14px;
border-color: #dcd9d9;
}
</style>
<div class="layui-tab" style="margin:0;height:calc(100% - 8px);background-color: white;">
<span class="layui-unselect ly_toolBar ly_toolBar_all" id="ly_scroll_all" title="点击最新记录在前">
<span id="ly_scroll_all_title">最新在前</span>
<i class="layui-icon layui-icon-down" id="ly_scroll_all_icon"></i>
</span>
<ul class="layui-tab-title">
<li class="layui-this">聊天记录</li>
<li>语音通话</li>
</ul>
<div class="layui-tab-content" style="height:calc(100% - 65px);width:100%;">
<div class="layui-tab-item layui-show" style="height:100%;width:100%;">
<div id="mycontent1" class="layui-side-scroll" style="width:calc(100% - 10px);">
<fieldset class="layui-elem-field layui-field-title" style="margin-top: 20px;">
<legend id="msg_title">聊天记录:</legend>
</fieldset>
<ul class="layui-timeline" id="contentBody">
<li class="layui-timeline-item">
<i class="layui-icon layui-timeline-axis"></i>
<div class="layui-timeline-content layui-text">
<h4 class="layui-timeline-title" style="color:red;">温馨提示:</h4>
<p>
请选中左边列表中的好友查看聊天记录。
</p>
</div>
</li>
</ul>
</div>
</div>
<div class="layui-tab-item" style="height:100%;width:100%;">
<div id="mycontent2" class="layui-side-scroll" style="width:calc(100% - 10px);">
<fieldset class="layui-elem-field layui-field-title" style="margin-top: 20px;">
<legend id="msg_title2">语音通话:</legend>
</fieldset>
<ul class="layui-timeline" id="recordbody">
<li class="layui-timeline-item">
<i class="layui-icon layui-timeline-axis"></i>
<div class="layui-timeline-content layui-text">
<h4 class="layui-timeline-title" style="color:red;">温馨提示:</h4>
<p>
请选中左边列表中的好友查看语音通话。
</p>
</div>
</li>
</ul>
</div>
</div>
</div>
</div>
<script src="static/Scripts/cookie.js"></script>
<script>
var isDaoXu = "0";//是否倒叙
function SetName(name) {
$("#msg_title").html("群:" + name);
}
var httpurl = "{{httpurl}}";
//var innerhttp = "http://192.168.11.86:8081/";//内网获取json必须使用内网地址
//var nowlocation = window.location.href;
//if (nowlocation.indexOf("192.168.1.") > -1 || nowlocation.indexOf("192.168.11.") > -1 || nowlocation.indexOf("localhost") > -1) {//内网无疑
// httpurl = innerhttp;
//}
var sortBy = function (filed, rev, primer) {
rev = (rev) ? -1 : 1;
return function (a, b) {
a = a[filed];
b = b[filed];
if (typeof (primer) != 'undefined') {
a = primer(a);
b = primer(b);
}
if (a < b) { return rev * -1; }
if (a > b) { return rev * 1; }
return 1;
}
};
//linux时间格式化
function getNowFormatDate(date) {
//var date = new Date();
var seperator1 = "-";
var seperator2 = ":";
var month = date.getMonth() + 1;
var strDate = date.getDate();
if (month >= 1 && month <= 9) {
month = "0" + month;
}
if (strDate >= 0 && strDate <= 9) {
strDate = "0" + strDate;
}
var currentdate = date.getFullYear() + seperator1 + month + seperator1 + strDate
+ " " + date.getHours() + seperator2 + date.getMinutes()
+ seperator2 + date.getSeconds();
return currentdate;
}
layui.use(['form', 'element', 'layedit', 'laydate'], function () {
var form = layui.form
, layer = layui.layer
, layedit = layui.layedit
, laydate = layui.laydate;
var element = layui.element;
});
var isgroup = "{{isgroup}}";
var userid = "{{userid}}";
var uname = "{{uname}}";
var corp = "{{corp}}";
var cs_username = "{{cs_username}}";
var cs_nickname = "{{cs_nickname}}";
var group = {{group}};
$(function () {
var cookiepaixu = getCookie('messageDetial_paixu');
if (cookiepaixu != null) {
isDaoXu = cookiepaixu;
}
if (isDaoXu == "1") {
$("#ly_scroll_all_title").html("最早在前");
$("#ly_scroll_all_icon").removeClass("layui-icon-down").addClass("layui-icon-up");
$("#ly_scroll_all").attr("title", "点击最早记录在前");
} else {
$("#ly_scroll_all_title").html("最新在前");
$("#ly_scroll_all_icon").removeClass("layui-icon-up").addClass("layui-icon-down");
$("#ly_scroll_all").attr("title", "点击最新记录在前");
}
$("#ly_scroll_all").click(function () {
if (isDaoXu == "1") {
$("#ly_scroll_all_title").html("最新在前");
$("#ly_scroll_all_icon").removeClass("layui-icon-up").addClass("layui-icon-down");
$("#ly_scroll_all").attr("title", "点击最新记录在前");
isDaoXu = "0";
}
else {
$("#ly_scroll_all_title").html("最早在前");
$("#ly_scroll_all_icon").removeClass("layui-icon-down").addClass("layui-icon-up");
$("#ly_scroll_all").attr("title", "点击最早记录在前");
isDaoXu = "1";
}
//console.log(isDaoXu)
setCookie("messageDetial_paixu", isDaoXu, "d300")
ShowMessage(cs_username);
});
if (cs_username != null && cs_username != '') {
$("#msg_title").html(cs_nickname);
$("#msg_title2").html(cs_nickname);
ShowMessage(cs_username);
}
$("#dataGL").click(function () {
if (cs_username == null || cs_username == '') {
layer.msg('请选择微信好友!');
} else {
ShowMessage(cs_username);
}
});
});
var loadingindex;
function ShowMessage(username) {
arrPic = new Array(); //定义一个数组
allimgindex = 0;
$("#contentBody").html("");
$("#recordbody").html("");
var nomessage = "<li class='layui-timeline-item' id='nomessage'>" +
"<i class='layui-icon layui-timeline-axis'></i >" +
"<div class='layui-timeline-content layui-text'>" +
"<h4 class='layui-timeline-title' style='color:red; '>温馨提示:</h4>" +
"<p>无聊天记录。(时间范围内无聊天记录)</p></div></li >";
//var qunfanomessage = "<li class='layui-timeline-item' id='nomessage'>" +
// "<i class='layui-icon layui-timeline-axis'></i >" +
// "<div class='layui-timeline-content layui-text'>" +
// "<h4 class='layui-timeline-title' style='color:red; '>温馨提示:</h4>" +
// "<p>无群发记录。</p></div></li >";
$("#contentBody").html(nomessage);
$("#recordbody").html(nomessage);
//$("#qunfabody").html(qunfanomessage);
GetMessageByUrl("contentBody", userid, uname, cs_nickname, isgroup);
GetRecordByUrl("recordbody", uname, cs_nickname, isgroup);
}
var selftemplete = "<li class='layui-timeline-item'>" +
"<i class='layui-icon layui-timeline-axis'></i>" +
"<div class='layui-timeline-content layui-text'> " +
"<h4 class='layui-timeline-title' style='color:#42B475;'>[title]</h4> " +
"<p>[content]</div></li>";
var outtemplete = "<li class='layui-timeline-item'>" +
"<i class='layui-icon layui-timeline-axis'></i>" +
"<div class='layui-timeline-content layui-text'> " +
"<h4 class='layui-timeline-title' style='color:#006EFE;'>[title]</h4> " +
"<p>[content]</p></div></li>";
function GetRecordByUrl(tabName, uname, customername) {
var json = {{RecordData}}
var copt = corp;
var workAccountName = uname;
//var json = JSON.parse(data);
var paixu = false;
if (isDaoXu == "1") {
paixu = true;
}
json.sort(sortBy('starttime', paixu, String));
if (json.length > 0) {
$("#" + tabName).find("#nomessage").remove();
}
$(json).each(function (i, da) {
var dataStr = da.starttime;//聊天时间
var html = "";
if (da.calltype == 0) {//客服打得电话
html = selftemplete.replace("[title]", workAccountName + " " + dataStr);
} else {//客户打得电话
html = outtemplete.replace("[title]", ReplaceMobile(customername) + " " + dataStr);
}
html = html.replace("[content]", "<a id='file_" + da.msgid + "' href=\"javascript:PalyRecord('static/file/" + da.filename + "')\" >[通话时长" + showTime(da.length) + "]<a>");
$("#" + tabName).append(html);
});
}
function GetMessageByUrl(tabName, userid, uname, customername, isqunliao) {
var json = {{MessageData}}
var copt = corp;
//var jobnickname = uname;
var workAccountName = uname;
//nowpost++;
//var json = JSON.parse(data);
var paixu = false;
if (isDaoXu == "1") {
paixu = true;
}
json.sort(sortBy('seq', paixu, parseInt));
if (json.length > 0) {
$("#" + tabName).find("#nomessage").remove();
}
$(json).each(function (i, da) {
var dataStr = da.msgtime;//聊天时间
var html = "";
if (da.from.toLowerCase() == userid.toLowerCase()) {
html = selftemplete.replace("[title]", workAccountName + " " + dataStr);
} else {
if (isqunliao == "true") {
var groupuname = da.from;
var groupSearch = null;
$(group).each(function (aa, xxxx) {
if (xxxx.userid == da.from)
groupSearch = xxxx;
});
if (groupSearch != null)
groupuname = groupSearch.name;
//if (groupuname == "") {
// groupuname = da.from;
//}
html = outtemplete.replace("[title]", groupuname + " " + dataStr);
//html += "<tr><td class=\"isFriend\">" + da.from + " " + dataStr + "</td></tr>";
} else {
html = outtemplete.replace("[title]", ReplaceMobile(customername) + " " + dataStr);
//html += "<tr><td class=\"isFriend\">" + ReplaceMobile(customername) + " " + dataStr + "</td></tr>";
}
}
//console.log(da.msgtype);
if (da.msgtype == "image" || da.msgtype == "emotion") {
var imgurl ="static/file/"+da.nfile;
arrPic[allimgindex] = imgurl;
html = html.replace("[content]", "[图片]<img modal='zoomImg' imgindex='" + allimgindex + "' style='max-width:300px' id='file_" + da.seq + "' src='" + imgurl + "' >");
allimgindex++;
$("#" + tabName).append(html);
//GetFilPath(da);
} else if (da.msgtype == "voice") {
//html += "<tr><td class=\"message\"><a id='file_" + da.id + "' href=\"javascript:PalyRecord('" + httpurl + "playamr?corpid=" + copt + "&fname=" + da.nfile + "')\" >[语音]<a></td></tr>";
html = html.replace("[content]", "<a id='file_" + da.id + "' href=\"javascript:PalyRecord('static/file/" + da.nfile.replace(".amr",".mp3") + "')\" >[语音]<a>");
$("#" + tabName).append(html);
//GetFilPath(da);
} else if (da.msgtype == "video") {
//html += "<tr><td class=\"message\"><a id='file_" + da.id + "' href='" + httpurl + "mediafile?corpid=" + copt + "&fname=" + da.nfile + "' target='_blank' >[视频]<a></td></tr>";
//html = html.replace("[content]", "<a id='file_" + da.id + "' href=\"javascript:PalyVideo('file/" + da.nfile + "')\" >[视频]<a>");
html = html.replace("[content]", "<a id='file_" + da.id + "' href=\"javascript:PalyVideo('" + httpurl + "mediafile?corpid=" + copt + "&fname=" + da.nfile + "')\" >[视频]<a>");
$("#" + tabName).append(html);
//GetFilPath(da);
} else if (da.msgtype == "file") {
//html += "<tr><td class=\"message\"><a id='file_" + da.id + "' href='" + httpurl + "mediafile?corpid=" + copt + "&fname=" + da.nfile + "' target='_blank' >[文件]<a></td></tr>";
html = html.replace("[content]", "<a id='file_" + da.id + "' href='static/file/" + da.nfile + "' target='_blank' >[文件]<a>");
$("#" + tabName).append(html);
//GetFilPath(da);
} else if (da.msgtype == "meeting_voice_call") {
var contentx = JSON.parse(da.ext);
//console.log(contentx);
html = html.replace("[content]", "<a id='file_" + da.msgid + "' href=\"javascript:PalyRecord('static/file/" + contentx.voiceid + ".mp3" + "')\" >[通话时长" + showTime(contentx.meeting_voice_call.endtime - contentx.msgtime) + "]<a>");
$("#" + tabName).append(html);
}
else if (da.msgtype == "text") {//普通文本
//html += "<tr><td class=\"message\">" + replaceFace(da.content) + "</td></tr>";
html = html.replace("[content]", ReplaceMobile(replaceFace(da.content)));
$("#" + tabName).append(html);
} else if (da.msgtype == "link") {
var extjson = JSON.parse(da.ext);
var exthtml = '<div class="piclink"> <a href="' + extjson.link.link_url + '" target="_blank"> <div class="pictitle">' + extjson.link.title + '</div> <div class="piccontent">' + extjson.link.description + '</div><img class="picimg" src="' + extjson.link.image_url + '"></a></div>';
//html += "<tr><td class=\"message\">" + exthtml + "</td></tr>";
html = html.replace("[content]", exthtml);
$("#" + tabName).append(html);
} else if (da.msgtype == "chatrecord") {//转接聊天记录
var extjson = JSON.parse(da.ext);
var titleZF = extjson.chatrecord.title;
if (titleZF.indexOf("和") == -1 && titleZF.indexOf("与") == -1) {
titleZF = "<span style='color:#ec9a31;font-weight: bold;'>" + titleZF + "</span>";
} else {
if (titleZF.indexOf("和") > -1) {
var mutitle = titleZF.split('和');
titleZF = "<span style='color:#ec9a31;font-weight: bold;'>" + mutitle[0] + "</span> 和 <span style='color:#ec9a31;font-weight: bold;'>" + mutitle[1] + "</span>";
} else if (titleZF.indexOf("与") > -1) {
var mutitle = titleZF.split('与');
titleZF = "<span style='color:#ec9a31;font-weight: bold;'>" + mutitle[0] + "</span> 与 <span style='color:#ec9a31;font-weight: bold;'>" + mutitle[1] + "</span>";
}
}
var myhtml = "[转发聊天记录]" + titleZF;
myhtml += " <table class=\"contentTable outhertable\" ><tbody>";
$(extjson.chatrecord.item).each(function (za, qq) {
var newDate = new Date();
var newlong = parseInt(qq.msgtime.toString() + "000");
newDate.setTime(newlong);
var saildstr = getNowFormatDate(newDate);
myhtml += "<tr><td class=\"isSelf\">" + saildstr + "</td></tr>";
if (qq.type == "ChatRecordText") {//普通文本
var contentx = JSON.parse(qq.content);
myhtml += "<tr><td class=\"message\">" + ReplaceMobile(replaceFace(contentx.content)) + "</td></tr>";
//$("#" + tabName).append(html);
} else if (qq.type == "ChatRecordImage") {
var contentx = JSON.parse(qq.content);
var imgurl = "static/file/" + contentx.md5sum + ".jpg";
arrPic[allimgindex] = imgurl;
myhtml += "<tr><td class=\"message\">[图片]<img modal='zoomImg' imgindex='" + allimgindex + "' style='max-width:300px' id='file_" + contentx.md5sum + "' src='static/file/" + contentx.md5sum + ".jpg' ></td></tr>";
allimgindex++;
//$("#" + tabName).append(html);
} else if (qq.type == "ChatRecordVoice") {
var contentx = JSON.parse(qq.content);
myhtml += "<tr><td class=\"message\"><a id='file_" + contentx.md5sum + "' href=\"javascript:PalyRecord('static/file/" + contentx.md5sum + ".mp3')\" >[语音]<a></td></tr>";
} else if (qq.type == "ChatRecordVideo") {
var contentx = JSON.parse(qq.content);
//myhtml += "<tr><td class=\"message\"><a id='file_" + contentx.md5sum + "' href=file/" + contentx.md5sum + ".mp4' target='_blank' >[视频]<a></td></tr>";
myhtml += "<tr><td class=\"message\"><a id='file_" + contentx.md5sum + "' href='" + httpurl + "mediafile?corpid=" + copt + "&fname=" + contentx.md5sum + ".mp4' target='_blank' >[视频]<a></td></tr>";
}
else if (qq.type == "ChatRecordFile") {
var contentx = JSON.parse(qq.content);
myhtml += "<tr><td class=\"message\"><a id='file_" + contentx.md5sum + "' href='static/file/" + contentx.md5sum + "." + contentx.fileext + "' target='_blank' >文件:[" + contentx.filename + "]<a></td></tr>";
//$("#" + tabName).append(html);
} else if (qq.type == "ChatRecordLink") {
var contentx = JSON.parse(qq.content);
var exthtml = '<div class="piclink"> <a href="' + contentx.link_url + '" target="_blank"> <div class="pictitle">' + contentx.title + '</div> <div class="piccontent">' + contentx.description + '</div><img class="picimg" src="' + contentx.image_url + '"></a></div>';
myhtml += "<tr><td class=\"message\">" + exthtml + "</td></tr>";
//$("#" + tabName).append(html);
} else {
myhtml += "<tr><td class=\"message\">" + replaceFace(qq.content) + "</td></tr>";
}
});
myhtml += "</tbody></table>";
html = html.replace("[content]", myhtml);
$("#" + tabName).append(html);
} else {
//html += "<tr><td class=\"message\">" + replaceFace(da.ext) + "</td></tr>";
html = html.replace("[content]", replaceFace(da.ext));
$("#" + tabName).append(html);
}
});
}
function GetImage(da) {
$.ajax({
url: "" + da.msgSvrId + "/" + da.type + "/" + da.createTime + "?i=" + GetGuid(),
type: "GET",
dataType: "json",
loading: true,
success: function (data) {
if (data.retmsg != null) {
var index = data.retmsg.indexOf("_");
var msgsId = data.retmsg.substring(0, index);
var path = data.retmsg.substring(index + 1, data.retmsg.length);
if (da.type == 34) {
$("#file_" + msgsId).after("<a id='file_" + msgsId + "' href='javascript:void(0);' onclick=\"PalyRecord('" + path + "');\">[语音]<a>").remove();
} else if (da.type == 43) {
$("#file_" + msgsId).after("<a id='file_" + msgsId + "' href='javascript:void(0);' onclick=\"PalyVideo('" + path + "');\">[视频]<a>").remove();
//$("#file_" + msgsId).attr("href", "javascript:void(0);").attr("onclick", "PalyVideo('" + path + "');");
} else if (da.type == 49) {
$("#file_" + msgsId).after("<a id='file_" + msgsId + "' src='" + path + "' href='" + path + "' target='_blank'>[文件]<a>").remove();
}
else {
$("#file_" + msgsId).attr("src", path);
$("#file_" + msgsId).attr("href", path);
$("#file_" + msgsId).attr("target", "_blank");
}
}
}, error: function (n) {
//console.log(n);
}
});
}
//替换表情
function replaceFace(cotent) {
var txt = cotent;
$(face).each(function (i, n) {
while (txt.indexOf(n.name) > -1) {
txt = txt.replace(n.name, "<img src=\"static/Face/" + n.imgpath + "\">");
}
});
return txt;
}
function findTxt() {
//var reg2 = new RegExp("\\" + escape(txt), "g");
}
function myBrowser() {
var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串
var isOpera = userAgent.indexOf("Opera") > -1;
if (isOpera) { //判断是否Opera浏览器
return "Opera"
}
if (userAgent.indexOf("Firefox") > -1) { //判断是否Firefox浏览器
return "Firefox";
}
if (userAgent.indexOf("Chrome") > -1) {
return "Chrome";
}
if (userAgent.indexOf("Safari") > -1) { //判断是否Safari浏览器
return "Safari";
}
if (userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1 && !isOpera) { //判断是否IE浏览器
return "IE";
}
if (userAgent.indexOf('Trident') > -1) {//IE11
return "IE";
}
if (userAgent.indexOf("Edge") > -1) {//Edge
return "IE";
}
}
function PalyRecord(url) {
//url = url + "&nguid=" + GetGuid();
var html = "";
var browser = myBrowser();
if (browser == "IE" || browser == "Firefox") {
html = '<object id="Player" width="300" height="50" classid="CLSID:22d6f312-b0f6-11d0-94ab-0080c74c7e95" codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,4,5,715" standby="Loading Microsoft Windows Media Player components..." type="application/x-oleobject"hspace="5"><param name="AutoRewind" value="1"><param name="FileName" value="' + url + '"><param name="ShowControls" value="1"><param name="ShowPositionControls" value="0"><param name="ShowAudioControls" value="1"><param name="ShowTracker" value="1"><param name="ShowDisplay" value="0"><param name="ShowStatusBar" value="0"><param name="ShowGotoBar" value="0"><param name="ShowCaptioning" value="0"><param name="AutoStart" value="1"><param name="Volume" value="5000"><param name="AnimationAtStart" value="0"><param name="TransparentAtStart" value="0"><param name="AllowChangeDisplaySize" value="0"><param name="AllowScan" value="0"><param name="EnableContextMenu" value="0"><param name="ClickToPlay" value="1"> </object>'
} else {
html = '<video src=' + url + ' controls="controls" autoplay />';
}
layui.use('layer', function () {
var layer = layui.layer;
layer.open({
title: '播放语音',
type: 1,
content: html,
area: ['300px', '200px']
});
});
//$.post("/Admin/HHUser/WeWorkAudio", { url: url
// }, function (result) {
// if (result.type == 1) {
// var data = result.data;
//$('#recordPlayerWin').window({ title: '播放录音', width: 330, height: 180, iconCls: 'icon-add', shadow: true, modal: true, closed: true, minimizable: false, maximizable: false, collapsible: false }).window('open');
//var isChrome = window.navigator.userAgent.indexOf("Chrome") !== -1;
//if (isChrome) {
// $('#recordPlayerWin').html("<video controls=\"\" src=\"" + url + "\" style=\"width:300px; height:50px;\" autoplay=\"autoplay\" />");
//} else {
// $('#recordPlayerWin').html('<object id="Player" width="300" height="50" classid="CLSID:22d6f312-b0f6-11d0-94ab-0080c74c7e95" codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,4,5,715" standby="Loading Microsoft Windows Media Player components..." type="application/x-oleobject"hspace="5"><param name="AutoRewind" value="1"><param name="FileName" value="' + url + '"><param name="ShowControls" value="1"><param name="ShowPositionControls" value="0"><param name="ShowAudioControls" value="1"><param name="ShowTracker" value="1"><param name="ShowDisplay" value="0"><param name="ShowStatusBar" value="0"><param name="ShowGotoBar" value="0"><param name="ShowCaptioning" value="0"><param name="AutoStart" value="1"><param name="Volume" value="5000"><param name="AnimationAtStart" value="0"><param name="TransparentAtStart" value="0"><param name="AllowChangeDisplaySize" value="0"><param name="AllowScan" value="0"><param name="EnableContextMenu" value="0"><param name="ClickToPlay" value="1"> </object>');
//}
// } else {
// alert(result.message);
// }
//}, "json");
}
function PalyVideo(url) {
//url = url + "&nguid=" + GetGuid();
var html = "";
var browser = myBrowser();
if (browser == "IE" || browser == "Firefox") {
//html = '<object id="Player" width="98%" height="98%" classid="CLSID:22d6f312-b0f6-11d0-94ab-0080c74c7e95" codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,4,5,715" standby="Loading Microsoft Windows Media Player components..." type="application/x-oleobject"hspace="5"><param name="AutoRewind" value="1"><param name="FileName" value="' + url + '"><param name="ShowControls" value="1"><param name="ShowPositionControls" value="0"><param name="ShowAudioControls" value="1"><param name="ShowTracker" value="1"><param name="ShowDisplay" value="0"><param name="ShowStatusBar" value="0"><param name="ShowGotoBar" value="0"><param name="ShowCaptioning" value="0"><param name="AutoStart" value="1"><param name="Volume" value="5000"><param name="AnimationAtStart" value="0"><param name="TransparentAtStart" value="0"><param name="AllowChangeDisplaySize" value="0"><param name="AllowScan" value="0"><param name="EnableContextMenu" value="0"><param name="ClickToPlay" value="1"> </object>'
window.open(url);
return;
} else {
html = '<video src=' + url + ' controls="controls" autoplay width="100%" height="100%"/>';
}
layer.open({
title: '播放视频',
type: 1,
content: html,
resize: true,
maxmin: true,
area: ['410px', '350px']
});
}
function resizeWindow() {
var height = $(window).height();
$("#leftdiv").height(height - 60);
$("#mycontent1").height(height - 120);
$("#mycontent2").height(height - 120);
}
function IsContainMobile(content) {
var txt = content;
//匹配是否有红包信息,有红包信息直接返回
if (txt.match(/(weixin:\/\/weixinhongbao)/g)) {
return false;
}
//var myreg = /(((13[0-9]{1})|(14[0-9]{1})|(15[0-9]{1})|(16[0-9]{1})|(18[0-9]{1}|(17[0-9]{1}))|(19[0-9]{1}))+\d{8})/;
//var reg = new RegExp(myreg, "g");
//if (txt.match(reg)) {
// return true;
//}
//return false;
var reg = /[1][0-9]{10}/;
return reg.test(txt);
}
</script>
<script>
function ReplaceMobile(content) {
if ("{{isShowPhone}}" == "0") {
var txt = content;
var reg = /[1][0-9]{10}/;
if (reg.test(txt)) {
var res = txt.match(reg);
var mm = res[0].replace(/(\d{3})\d{5}(\d{3})/, '$1*****$2');
txt = ReplaceMobile(txt.replace(res[0], mm));//再做一次match
}
return txt;
} else if ("{{isShowPhone}}" == "8") {
var txt = content;
var reg = /[0-9]{8,}/;
if (reg.test(txt)) {
var res = txt.match(reg);
console.log(res[0]);
if (res[0].length == 8) {
var mm = res[0].replace(/(\d{2})\d{4}(\d{2})/, '$1****$2');
txt = ReplaceMobile(txt.replace(res[0], mm));//再做一次match
} else if (res[0].length == 9) {
var mm = res[0].replace(/(\d{2})\d{5}(\d{2})/, '$1****$2');
txt = ReplaceMobile(txt.replace(res[0], mm));//再做一次match
} else if (res[0].length == 10) {
var mm = res[0].replace(/(\d{2})\d{5}(\d{3})/, '$1****$2');
txt = ReplaceMobile(txt.replace(res[0], mm));//再做一次match
} else {
var xinghao = "";
for (var i = 0; i < (res[0].length - 6); i++) {
xinghao += "*"
}
var mm = res[0].replace(/(\d{3})\d{2,}(\d{3})/, '$1' + xinghao + '$2');
txt = ReplaceMobile(txt.replace(res[0], mm));//再做一次match
}
}
//下标数字
reg = /[₁,₂,₃,₄,₅,₆,₇,₈,₉,₀]{8,}/;
if (reg.test(txt)) {
var res = txt.match(reg);
console.log(res[0]);
if (res[0].length == 8) {
var mm = res[0].replace(/([₁,₂,₃,₄,₅,₆,₇,₈,₉,₀]{2})[₁,₂,₃,₄,₅,₆,₇,₈,₉,₀]{4}([₁,₂,₃,₄,₅,₆,₇,₈,₉,₀]{2})/, '$1****$2');
txt = ReplaceMobile(txt.replace(res[0], mm));//再做一次match
} else if (res[0].length == 9) {
var mm = res[0].replace(/([₁,₂,₃,₄,₅,₆,₇,₈,₉,₀]{2})[₁,₂,₃,₄,₅,₆,₇,₈,₉,₀]{5}([₁,₂,₃,₄,₅,₆,₇,₈,₉,₀]{2})/, '$1****$2');
txt = ReplaceMobile(txt.replace(res[0], mm));//再做一次match
} else if (res[0].length == 10) {
var mm = res[0].replace(/([₁,₂,₃,₄,₅,₆,₇,₈,₉,₀]{2})[₁,₂,₃,₄,₅,₆,₇,₈,₉,₀]{5}([₁,₂,₃,₄,₅,₆,₇,₈,₉,₀]{3})/, '$1****$2');
txt = ReplaceMobile(txt.replace(res[0], mm));//再做一次match
} else {
var xinghao = "";
for (var i = 0; i < (res[0].length - 6); i++) {
xinghao += "*"
}
var mm = res[0].replace(/([₁,₂,₃,₄,₅,₆,₇,₈,₉,₀]{3})[₁,₂,₃,₄,₅,₆,₇,₈,₉,₀]{2,}([₁,₂,₃,₄,₅,₆,₇,₈,₉,₀]{3})/, '$1' + xinghao + '$2');
txt = ReplaceMobile(txt.replace(res[0], mm));//再做一次match
}
}
//上标数字
reg = /[¹,²,³,⁴,⁵,⁶,⁷,⁸,⁹,⁰]{8,}/;
if (reg.test(txt)) {
var res = txt.match(reg);
console.log(res[0]);
if (res[0].length == 8) {
var mm = res[0].replace(/([¹,²,³,⁴,⁵,⁶,⁷,⁸,⁹,⁰]{2})[¹,²,³,⁴,⁵,⁶,⁷,⁸,⁹,⁰]{4}([¹,²,³,⁴,⁵,⁶,⁷,⁸,⁹,⁰]{2})/, '$1****$2');
txt = ReplaceMobile(txt.replace(res[0], mm));//再做一次match
} else if (res[0].length == 9) {
var mm = res[0].replace(/([¹,²,³,⁴,⁵,⁶,⁷,⁸,⁹,⁰]{2})[¹,²,³,⁴,⁵,⁶,⁷,⁸,⁹,⁰]{5}([¹,²,³,⁴,⁵,⁶,⁷,⁸,⁹,⁰]{2})/, '$1****$2');
txt = ReplaceMobile(txt.replace(res[0], mm));//再做一次match
} else if (res[0].length == 10) {
var mm = res[0].replace(/([¹,²,³,⁴,⁵,⁶,⁷,⁸,⁹,⁰]{2})[¹,²,³,⁴,⁵,⁶,⁷,⁸,⁹,⁰]{5}([¹,²,³,⁴,⁵,⁶,⁷,⁸,⁹,⁰]{3})/, '$1****$2');
txt = ReplaceMobile(txt.replace(res[0], mm));//再做一次match
} else {
var xinghao = "";
for (var i = 0; i < (res[0].length - 6); i++) {
xinghao += "*"
}
var mm = res[0].replace(/([¹,²,³,⁴,⁵,⁶,⁷,⁸,⁹,⁰]{3})[¹,²,³,⁴,⁵,⁶,⁷,⁸,⁹,⁰]{2,}([¹,²,³,⁴,⁵,⁶,⁷,⁸,⁹,⁰]{3})/, '$1' + xinghao + '$2');
txt = ReplaceMobile(txt.replace(res[0], mm));//再做一次match
}
}
//全角数字
reg = /[,,,,,,,,,]{8,}/;
if (reg.test(txt)) {
var res = txt.match(reg);
console.log(res[0]);
if (res[0].length == 8) {
var mm = res[0].replace(/([,,,,,,,,,]{2})[,,,,,,,,,]{4}([,,,,,,,,,]{2})/, '$1****$2');
txt = ReplaceMobile(txt.replace(res[0], mm));//再做一次match
} else if (res[0].length == 9) {
var mm = res[0].replace(/([,,,,,,,,,]{2})[,,,,,,,,,]{5}([,,,,,,,,,]{2})/, '$1****$2');
txt = ReplaceMobile(txt.replace(res[0], mm));//再做一次match
} else if (res[0].length == 10) {
var mm = res[0].replace(/([,,,,,,,,,]{2})[,,,,,,,,,]{5}([,,,,,,,,,]{3})/, '$1****$2');
txt = ReplaceMobile(txt.replace(res[0], mm));//再做一次match
} else {
var xinghao = "";
for (var i = 0; i < (res[0].length - 6); i++) {
xinghao += "*"
}
var mm = res[0].replace(/([,,,,,,,,,]{3})[,,,,,,,,,]{2,}([,,,,,,,,,]{3})/, '$1' + xinghao + '$2');
txt = ReplaceMobile(txt.replace(res[0], mm));//再做一次match
}
}
return txt;
}
else
return content;
}
</script>
<script>
function showTime(val) {
if (val < 60) {
return "00:" + getTimeStr(val);
} else {
var min_total = Math.floor(val / 60); // 分钟
var sec = Math.floor(val % 60); // 余秒
if (min_total < 60) {
return getTimeStr(min_total) + ":" + getTimeStr(sec);
} else {
var hour_total = Math.floor(min_total / 60); // 小时数
var min = Math.floor(min_total % 60); // 余分钟
return hour_total + ":" + getTimeStr(min) + ":" + getTimeStr(sec);
}
}
}
function getTimeStr(st) {
if (st > 9) {
return String(st);
} else {
return "0" + String(st);
}
}
</script>
</body>
</html>