/**
*
* @license Guriddo jqGrid JS - v5.0.0 - 2015-08-03
* Copyright(c) 2008, Tony Tomov, tony@trirand.com
*
* License: http://guriddo.net/?page_id=103334
*/
(function( factory ) {
"use strict";
if ( typeof define === "function" && define.amd ) {
// AMD. Register as an anonymous module.
define([
"jquery"
], factory );
} else {
// Browser globals
factory( jQuery );
}
}(function( $ ) {
"use strict";
//module begin
$.jgrid = $.jgrid || {};
if(!$.jgrid.hasOwnProperty("defaults")) {
$.jgrid.defaults = {};
}
$.extend($.jgrid,{
version : "5.0.0",
htmlDecode : function(value){
if(value && (value===' ' || value===' ' || (value.length===1 && value.charCodeAt(0)===160))) { return "";}
return !value ? value : String(value).replace(/>/g, ">").replace(/</g, "<").replace(/"/g, '"').replace(/&/g, "&");
},
htmlEncode : function (value){
return !value ? value : String(value).replace(/&/g, "&").replace(/\"/g, """).replace(/</g, "<").replace(/>/g, ">");
},
template : function(format){ //jqgformat
var args = $.makeArray(arguments).slice(1), j, al = args.length;
if(format==null) { format = ""; }
return format.replace(/\{([\w\-]+)(?:\:([\w\.]*)(?:\((.*?)?\))?)?\}/g, function(m,i){
if(!isNaN(parseInt(i,10))) {
return args[parseInt(i,10)];
}
for(j=0; j < al;j++) {
if($.isArray(args[j])) {
var nmarr = args[ j ],
k = nmarr.length;
while(k--) {
if(i===nmarr[k].nm) {
return nmarr[k].v;
}
}
}
}
});
},
msie : navigator.appName === 'Microsoft Internet Explorer',
msiever : function () {
var rv = -1;
var ua = navigator.userAgent;
var re = new RegExp("MSIE ([0-9]{1,}[\.0-9]{0,})");
if (re.exec(ua) != null) {
rv = parseFloat( RegExp.$1 );
}
return rv;
},
getCellIndex : function (cell) {
var c = $(cell);
if (c.is('tr')) { return -1; }
c = (!c.is('td') && !c.is('th') ? c.closest("td,th") : c)[0];
if ($.jgrid.msie) { return $.inArray(c, c.parentNode.cells); }
return c.cellIndex;
},
stripHtml : function(v) {
v = String(v);
var regexp = /<("[^"]*"|'[^']*'|[^'">])*>/gi;
if (v) {
v = v.replace(regexp,"");
return (v && v !== ' ' && v !== ' ') ? v.replace(/\"/g,"'") : "";
}
return v;
},
stripPref : function (pref, id) {
var obj = $.type( pref );
if( obj === "string" || obj === "number") {
pref = String(pref);
id = pref !== "" ? String(id).replace(String(pref), "") : id;
}
return id;
},
parse : function(jsonString) {
var js = jsonString;
if (js.substr(0,9) === "while(1);") { js = js.substr(9); }
if (js.substr(0,2) === "/*") { js = js.substr(2,js.length-4); }
if(!js) { js = "{}"; }
return ($.jgrid.useJSON===true && typeof JSON === 'object' && typeof JSON.parse === 'function') ?
JSON.parse(js) :
eval('(' + js + ')');
},
parseDate : function(format, date, newformat, opts) {
var token = /\\.|[dDjlNSwzWFmMntLoYyaABgGhHisueIOPTZcrU]/g,
timezone = /\b(?:[PMCEA][SDP]T|(?:Pacific|Mountain|Central|Eastern|Atlantic) (?:Standard|Daylight|Prevailing) Time|(?:GMT|UTC)(?:[-+]\d{4})?)\b/g,
timezoneClip = /[^-+\dA-Z]/g,
msDateRegExp = new RegExp("^\/Date\\((([-+])?[0-9]+)(([-+])([0-9]{2})([0-9]{2}))?\\)\/$"),
msMatch = ((typeof date === 'string') ? date.match(msDateRegExp): null),
pad = function (value, length) {
value = String(value);
length = parseInt(length,10) || 2;
while (value.length < length) { value = '0' + value; }
return value;
},
ts = {m : 1, d : 1, y : 1970, h : 0, i : 0, s : 0, u:0},
timestamp=0, dM, k,hl,
h12to24 = function(ampm, h){
if (ampm === 0){ if (h === 12) { h = 0;} }
else { if (h !== 12) { h += 12; } }
return h;
},
offset =0;
if(opts === undefined) {
opts = $.jgrid.getRegional(this, "formatter.date");//$.jgrid.formatter.date;
}
// old lang files
if(opts.parseRe === undefined ) {
opts.parseRe = /[#%\\\/:_;.,\t\s-]/;
}
if( opts.masks.hasOwnProperty(format) ) { format = opts.masks[format]; }
if(date && date != null) {
if( !isNaN( date - 0 ) && String(format).toLowerCase() === "u") {
//Unix timestamp
timestamp = new Date( parseFloat(date)*1000 );
} else if(date.constructor === Date) {
timestamp = date;
// Microsoft date format support
} else if( msMatch !== null ) {
timestamp = new Date(parseInt(msMatch[1], 10));
if (msMatch[3]) {
offset = Number(msMatch[5]) * 60 + Number(msMatch[6]);
offset *= ((msMatch[4] === '-') ? 1 : -1);
offset -= timestamp.getTimezoneOffset();
timestamp.setTime(Number(Number(timestamp) + (offset * 60 * 1000)));
}
} else {
//Support ISO8601Long that have Z at the end to indicate UTC timezone
if(opts.srcformat === 'ISO8601Long' && date.charAt(date.length - 1) === 'Z') {
offset -= (new Date()).getTimezoneOffset();
}
date = String(date).replace(/\T/g,"#").replace(/\t/,"%").split(opts.parseRe);
format = format.replace(/\T/g,"#").replace(/\t/,"%").split(opts.parseRe);
// parsing for month names
for(k=0,hl=format.length;k<hl;k++){
switch ( format[k] ) {
case 'M':
dM = $.inArray(date[k],opts.monthNames);
if(dM !== -1 && dM < 12){date[k] = dM+1; ts.m = date[k];}
break;
case 'F':
dM = $.inArray(date[k],opts.monthNames,12);
if(dM !== -1 && dM > 11){date[k] = dM+1-12; ts.m = date[k];}
break;
case 'n':
format[k] = 'm';
break;
case 'j':
format[k] = 'd';
break;
case 'a':
dM = $.inArray(date[k],opts.AmPm);
if(dM !== -1 && dM < 2 && date[k] === opts.AmPm[dM]){
date[k] = dM;
ts.h = h12to24(date[k], ts.h);
}
break;
case 'A':
dM = $.inArray(date[k],opts.AmPm);
if(dM !== -1 && dM > 1 && date[k] === opts.AmPm[dM]){
date[k] = dM-2;
ts.h = h12to24(date[k], ts.h);
}
break;
case 'g':
ts.h = parseInt(date[k], 10);
break;
}
if(date[k] !== undefined) {
ts[format[k].toLowerCase()] = parseInt(date[k],10);
}
}
if(ts.f) {ts.m = ts.f;}
if( ts.m === 0 && ts.y === 0 && ts.d === 0) {
return " " ;
}
ts.m = parseInt(ts.m,10)-1;
var ty = ts.y;
if (ty >= 70 && ty <= 99) {ts.y = 1900+ts.y;}
else if (ty >=0 && ty <=69) {ts.y= 2000+ts.y;}
timestamp = new Date(ts.y, ts.m, ts.d, ts.h, ts.i, ts.s, ts.u);
//Apply offset to show date as local time.
if(offset > 0) {
timestamp.setTime(Number(Number(timestamp) + (offset * 60 * 1000)));
}
}
} else {
timestamp = new Date(ts.y, ts.m, ts.d, ts.h, ts.i, ts.s, ts.u);
}
if(opts.userLocalTime && offset === 0) {
offset -= (new Date()).getTimezoneOffset();
if( offset > 0 ) {
timestamp.setTime(Number(Number(timestamp) + (offset * 60 * 1000)));
}
}
if( newformat === undefined ) {
return timestamp;
}
if( opts.masks.hasOwnProperty(newformat) ) {
newformat = opts.masks[newformat];
} else if ( !newformat ) {
newformat = 'Y-m-d';
}
var
G = timestamp.getHours(),
i = timestamp.getMinutes(),
j = timestamp.getDate(),
n = timestamp.getMonth() + 1,
o = timestamp.getTimezoneOffset(),
s = timestamp.getSeconds(),
u = timestamp.getMilliseconds(),
w = timestamp.getDay(),
Y = timestamp.getFullYear(),
N = (w + 6) % 7 + 1,
z = (new Date(Y, n - 1, j) - new Date(Y, 0, 1)) / 86400000,
flags = {
// Day
d: pad(j),
D: opts.dayNames[w],
j: j,
l: opts.dayNames[w + 7],
N: N,
S: opts.S(j),
//j < 11 || j > 13 ? ['st', 'nd', 'rd', 'th'][Math.min((j - 1) % 10, 3)] : 'th',
w: w,
z: z,
// Week
W: N < 5 ? Math.floor((z + N - 1) / 7) + 1 : Math.floor((z + N - 1) / 7) || ((new Date(Y - 1, 0, 1).getDay() + 6) % 7 < 4 ? 53 : 52),
// Month
F: opts.monthNames[n - 1 + 12],
m: pad(n),
M: opts.monthNames[n - 1],
n: n,
t: '?',
// Year
L: '?',
o: '?',
Y: Y,
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
功能介绍 1、系统管理(坐席管理、分组管理、公司信息管理、常用回复管理) 2、访客管理(访客黑名单、访客对话) 3、日志管理 (操作日志、异常日志) 4、 系统监控 (实时监控、测试页) 三、注意事项 开发环境: VS2013 + SQL2008R2 系统实现了基本的聊天功能 1、附加webchat数据库或建立webchat数据库后手动执行创建脚本 2、修改程序config文件数据库链接 3、登录管理员账号:admin/123456 4、开始聊天:需要客服人员先登录系统,然后访客才可以点击聊天 5、网址+‘/demo/demo’,可以查看当前坐席和访客列表需要的话,也可以放在其他网站,供测试调用。
资源推荐
资源详情
资源评论
收起资源包目录
.NET即时通讯系统源码 聊天系统源码 (3280个子文件)
Global.asax 99B
Global.asax 99B
WebChat.csprojResolveAssemblyReference.cache 149KB
WebChat.csprojResolveAssemblyReference.cache 121KB
DesignTimeResolveAssemblyReferencesInput.cache 106KB
DesignTimeResolveAssemblyReferencesInput.cache 74KB
WebChat.DataAccess.csprojResolveAssemblyReference.cache 70KB
WebChat.DataAccess.csprojResolveAssemblyReference.cache 35KB
DesignTimeResolveAssemblyReferencesInput.cache 7KB
DesignTimeResolveAssemblyReferencesInput.cache 7KB
DesignTimeResolveAssemblyReferencesInput.cache 7KB
DesignTimeResolveAssemblyReferencesInput.cache 7KB
DesignTimeResolveAssemblyReferencesInput.cache 6KB
DesignTimeResolveAssemblyReferencesInput.cache 6KB
WebChat.DLL.csprojResolveAssemblyReference.cache 2KB
WebChat.Entity.csprojResolveAssemblyReference.cache 2KB
WebChat.Entity.csprojResolveAssemblyReference.cache 2KB
applicationhost.config 84KB
Web.config 2KB
Web.config 2KB
Web.config 2KB
Web.config 2KB
WebChat.dll.config 2KB
packages.config 2KB
packages.config 2KB
web.config 2KB
web.config 2KB
Web.config 1KB
Web.Release.config 1KB
Web.Debug.config 1KB
Sys_UsersDao.cs 26KB
UploadController.cs 13KB
UserController.cs 12KB
ChatHub.cs 11KB
Sys_CorpDao.cs 7KB
CommonAnswerDao.cs 7KB
Identity.cs 6KB
DeptController.cs 6KB
Sys_DeptDao.cs 6KB
DBLog.cs 6KB
Sys_LogDao.cs 6KB
AttachmentDao.cs 5KB
Sys_RolesDao.cs 5KB
Sys_UsersBean.cs 5KB
CommonAnswerController.cs 4KB
BaseDao.cs 4KB
ChatLogDao.cs 4KB
AgentController.cs 3KB
Config.cs 3KB
CorpController.cs 3KB
LoginController.cs 3KB
LogController.cs 2KB
GuestController.cs 2KB
OnLineGuestPool.cs 2KB
OnLineAgentPool.cs 2KB
ExceptionLogAttribute.cs 2KB
IdentityAuthorizeAttribute.cs 1KB
AssemblyInfo.cs 1KB
AssemblyInfo.cs 1KB
AssemblyInfo.cs 1KB
AssemblyInfo.cs 1KB
Sys_CorpBean.cs 1KB
MenuInfo.cs 1KB
TreeView.cs 1KB
Sys_LogBean.cs 1KB
Attachmentbean.cs 1KB
ChatLogBean.cs 1KB
CommonAnswerBean.cs 907B
IndexController.cs 905B
Mail.cs 805B
ChatLogController.cs 747B
Startup.cs 739B
Agent.cs 702B
RouteConfig.cs 679B
Guest.cs 613B
Sys_RolesBean.cs 605B
Global.asax.cs 579B
Sys_DeptBean.cs 541B
CorpInfo.cs 521B
JsTree.cs 464B
MonitorController.cs 439B
FilterConfig.cs 378B
LeaveMessageController.cs 346B
RoleInfo.cs 345B
UserInfo.cs 343B
DemoController.cs 328B
TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs 0B
TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs 0B
TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs 0B
TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs 0B
TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs 0B
TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs 0B
TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs 0B
TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs 0B
TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs 0B
TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs 0B
TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs 0B
TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs 0B
TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs 0B
TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs 0B
共 3280 条
- 1
- 2
- 3
- 4
- 5
- 6
- 33
资源评论
雍正爷
- 粉丝: 5
- 资源: 21
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功