var MODE = '', ACTION = '', DIR = '', PROJECT = '', HOST = '', PARAMS = '', QOM = 'xinhu_', apiurl = '', token = '', device = '', CFROM = 'pc', ISDEMO = false, NOWURL = '', nwjsgui = false, apicloud = false, isapp = false; var windows = null, ismobile = 0; function initbody() { } function bodyunload() { } function globalbody() { } function initApp() { } function apiready() { apicloud = true; initApp(); } $(document).ready(function () { try { if (typeof (nw) == 'object') { nwjsgui = nw; } else { nwjsgui = require('nw.gui'); } } catch (e) { nwjsgui = false; } $(window).scroll(js.scrolla); HOST = js.gethost(); adminid = js.request('adminid'); token = js.request('token'); js.getsplit(); device = js.cookie('deviceid'); if (device == '') device = js.now('time'); js.savecookie('deviceid', device, 365); try { var winobj = js.request('winobj'); if (nwjsgui) window.focus = function () { nw.Window.get().focus() } if (winobj != '') opener.js.openarr[winobj] = window; } catch (e) { } globalbody(); initbody(); $('body').click(function (e) { js.downbody(this, e); }); $(window).unload(function () { js.onunload(); bodyunload(); }); var openfrom = js.request('openfrom', js.getoption('openfrom', '', true)); js.setoption('openfrom', openfrom, true); document.addEventListener('plusready', function () { plus.navigator.setStatusBarBackground('#1890ff'); isapp = true; plus.key.addEventListener('backbutton', function () { js.back(); }, false); initApp(); }); if (HOST == '127.0.0.1') window.addEventListener('error', function (e) { var msg = '文件:' + e.filename + '\n行:' + e.lineno + '\n错误:' + e.message + ''; js.alert(msg, 'js错误'); }); }); var js = { path: 'index', url: '', bool: false, login: {}, initdata: {}, openarr: {}, scroll: function () { } }; var isIE = true; if (!document.all) isIE = false; var get = function (id) { return document.getElementById(id) }; var isempt = function (an) { var ob = false; if (an == '' || an == null || typeof (an) == 'undefined') { ob = true; } if (typeof (an) == 'number') { ob = false; } return ob; } var strreplace = function (str) { if (isempt(str)) return ''; return str.replace(/[ ]/gi, '').replace(/\s/gi, '') } var strhtml = function (str) { if (isempt(str)) return ''; return str.replace(/\/gi, '>') } var form = function (an, fna) { if (!fna) fna = 'myform'; return document[fna][an] } var xy10 = function (s) { var s1 = '' + s + ''; if (s1.length < 2) s1 = '0' + s + ''; return s1; }; js.getarr = function (caa, bo) { var s = ''; for (var a in caa) s += ' @@ ' + a + '=>' + caa[a] + ''; if (!bo) alert(s); return s; } js.getarropen = function (caa) { jsopenararass = caa; js.open('js/array.shtml'); } if (typeof (api) == 'undefined') { var api = {}; api.systemType = 'android'; api.deviceId = ''; } js.str = function (o) { o.value = strreplace(o.value); } js.getcan = function (i, dev) { var a = PARAMS.split('-'); var val = ''; if (!dev) dev = ''; if (a[i]) val = a[i]; if (!val) val = dev; return val; } js.gethost = function () { var url = location.href, sau = ''; try { sau = url.split('//')[1].split('/')[0]; } catch (e) { } if (sau.indexOf('demo.rockoa.com') >= 0 || sau.indexOf('demo1.rockoa.com') >= 0) ISDEMO = true; var lse = url.lastIndexOf('/'); NOWURL = url.substr(0, lse + 1); QOM = NOWURL.replace(/\./g, '').replace(/\//g, '').replace(/\:/g, '') + '_'; var cfrom = this.request('cfrom', '', url); if (!cfrom) cfrom = this.getoption('CFROM'); if (cfrom) { this.setoption('CFROM', cfrom); CFROM = cfrom; } this.opentype = this.getoption('opentype'); var otype = this.request('opentype', '', url); if (otype) { this.setoption('opentype', otype); this.opentype = otype; } return sau; } function winHb() { var winH = (!isIE) ? window.innerHeight : document.documentElement.offsetHeight; return winH; } function winWb() { var winH = (!isIE) ? window.innerWidth : document.documentElement.offsetWidth; return winH; } js.scrolla = function () { var top = $(document).scrollTop(); js.scroll(top); } js.request = function (name, dev, url) { this.requestarr = {}; if (!dev) dev = ''; if (!name) return dev; if (!url) url = location.href; if (url.indexOf('\?') < 0) return dev; if (url.indexOf('#') > 0) url = url.split('#')[0]; var neurl = url.split('\?')[1]; neurl = neurl.split('&'); var value = dev, i, val; for (i = 0; i < neurl.length; i++) { val = neurl[i].split('='); this.requestarr[val[0]] = val[1]; if (val[0].toLowerCase() == name.toLowerCase()) { value = val[1]; break; } } if (!value) value = ''; return value; } js.now = function (type, sj) { if (!type) type = 'Y-m-d'; if (type == 'now') type = 'Y-m-d H:i:s'; var dt, ymd, his, weekArr, Y, m, d, w, H = 0, i = 0, s = 0, W; if (typeof (sj) == 'string') sj = sj.replace(/\//gi, '-'); if (/^[0-9]{4}-[0-9]{1,2}-[0-9]{1,2}/.test(sj)) { sj = sj.split(' '); ymd = sj[0]; his = sj[1]; if (!his) his = '00:00:00'; ymd = ymd.split('-'); his = his.split(':'); H = his[0]; if (his.length > 1) i = his[1]; if (his.length > 2) s = his[2]; dt = new Date(ymd[0], ymd[1] - 1, ymd[2], H, i, s); } else { dt = (typeof (sj) == 'number') ? new Date(sj) : new Date(); } weekArr = new Array('日', '一', '二', '三', '四', '五', '六'); Y = dt.getFullYear(); m = xy10(dt.getMonth() + 1); d = xy10(dt.getDate()); w = dt.getDay(); H = xy10(dt.getHours()); i = xy10(dt.getMinutes()); s = xy10(dt.getSeconds()); W = weekArr[w]; if (type == 'time') { return dt.getTime(); } else { return type.replace('Y', Y).replace('m', m).replace('d', d).replace('H', H).replace('i', i).replace('s', s).replace('w', w).replace('W', W); } } js.float = function (num, w) { if (isNaN(num) || num == '' || !num || num == null) num = '0'; num = parseFloat(num); if (!w && w != 0) w = 2; var m = num.toFixed(w); return m; } js.splittime = 0; js.getsplit = function () { if (!js.servernow) return false; var dt = js.now('Y-m-d H:i:s'); var d1 = js.now('time', dt); var d2 = js.now('time', js.servernow); js.splittime = d1 - d2; } js.serverdt = function (atype) { if (!atype) atype = 'Y-m-d H:i:s'; var d1 = js.now('time') - js.splittime; var dt = js.now(atype, d1); return dt; } js.open = function (url, w, h, wina, can, wjcan) { if (wina) { try { var owina = this.openarr[wina]; owina.document.body; owina.focus(); return owina; } catch (e) { } } if (!w) w = 600; if (!h) h = 500; var l = (screen.width - w) * 0.5, t = (screen.height - h) * 0.5 - 50, rnd = parseInt(Math.random() * 50); if (rnd % 2 == 0) { l = l + rnd; t = t - rnd; } else { l = l - rnd; t = t + rnd; } if (!can) can = {}; var s = 'resizable=yes,scrollbars=yes,toolbar=no,menubar=no,scrollbars=yes,resizable=yes,location=no,status=no'; var a1 = { 'left': '' + l + 'px', 'top': '' + t + 'px', 'width': '' + w + 'px', 'height': '' + h + 'px' }; a1 = js.apply(a1, can); for (var o1 in a1) s += ',' + o1 + '=' + a1[o1] + ''; var ja = (url.indexOf('?') >= 0) ? '&' : '?'; if (wina) url += '' + ja + 'winobj=' + wina + ''; if (typeof (nw) == 'undefined') { var opar = window.open(url, '', s); } else { var ocsn = js.apply({ 'frame': true, width: w, height: h, x: l, y: t, icon: 'assets/chat/images/logo.png' }, wjcan); if (url.substr(0, 4) != 'http') url = NOWURL + url; var opar = nw.Window.open(url, ocsn); } if (wina) this.openarr[wina] = opar; return false; } js.openrun = function (wina, act, ps1, ps2) { var owina = this.openarr[wina]; try { if (owina) owina[act](ps1, ps2); } catch (e) { owina = false; } return owina; } js.onunload = function () { var a = js.openarr; for (var b in a) { try { a[b].close() } catch (e) { } } try { var winobj = js.request('winobj'); if (winobj != '') opener.js.openarr[winobj] = false; } catch (e) { } } js.decode = function (str) { var arr = { length: -1 }; try { arr = new Function('return ' + str + '')(); } catch (e) { } return arr; } js.email = function (str) { if (isempt(str) || str.indexOf(' ') > -1) return false; if (str.indexOf('.') == -1 || str.indexOf('@') == -1) return false; var reg = new RegExp("[\\u4E00-\\u9FFF]+", "g"); if (reg.test(str)) return false; return true; } js.reload = function () { location.reload(); } js.move = function (id, rl) { var _left = 0, _top = 0, _x = 0, _right = 0, _y = 0; var obj = id; if (!rl) rl = 'left'; if (typeof (id) == 'string') obj = get(id); var _Down = function (e) { try { var s = '
'; $('body').prepend(s); _x = e.clientX; _y = e.clientY; _left = parseInt(obj.style.left); _top = parseInt(obj.style.top); _right = parseInt(obj.style.right); document.onselectstart = function () { return false } } catch (e1) { } } var _Move = function (e) { try { var c = get('divmovetemp').innerHTML; var x = e.clientX - _x, y = e.clientY - _y; if (rl == 'left') obj.style.left = _left + x + 'px'; if (rl == 'right') obj.style.right = _right - x + 'px'; obj.style.top = _top + y + 'px'; } catch (e1) { _Down(e) } } var _Up = function () { document.onmousemove = ''; document.onselectstart = ''; $('#divmovetemp').remove(); } document.onmousemove = _Move; document.onmouseup = _Up; } js.setdev = function (val, dev) { var cv = val; if (isempt(cv)) cv = dev; return cv; } js.upload = function (call, can, glx) { if (!call) call = ''; if (!can) can = {}; js.uploadrand = js.now('YmdHis') + parseInt(Math.random() * 999999); var url = 'index.php?m=upload&d=public&callback=' + call + '&upkey=' + js.uploadrand + ''; for (var i in can) if (i != 'title') url += '&' + i + '=' + can[i] + ''; if (glx == 'url') return url; var s = '', tit = can.title; if (!tit) tit = '上传文件'; js.tanbody('uploadwin', tit, 500, 300, { html: '
', bbar: 'none' }); winiframe.location.href = url; return false; } js.locationshow = function (sid) { var url = 'index.php?m=kaoqin&d=main&a=location&id=' + sid + ''; if (ismobile == 1) { js.location(url); return; } js.winiframe('地图位置查看', url); return false; } js.winiframemax = 45; js.winiframewidth = '900x800'; //默认的宽x高 js.winiframe = function (tit, url) { var mxw = 900, mxh = 800, tar = this.winiframewidth.split('x'); if (tar[0]) mxw = parseFloat(tar[0]); if (tar[1]) mxh = parseFloat(tar[1]); var hm = winHb() - 150; if (hm > mxh) hm = mxh; if (hm < 400) hm = 400; if (url.indexOf('wintype=max') > 0) { if (mxw < 1000) mxw = 1000; hm = winHb() - js.winiframemax; } var wi = winWb() - 150; if (wi > mxw) wi = mxw; if (wi < 700) wi = 700; js.tanbody('winiframe', tit, wi, 410, { html: '
', bbar: 'none' }); openinputiframe.location.href = url; return false; } // 下载 js.downshow = function (id, fnun, cans) { if (this.fileoptWin(id)) return; if (appobj1('openfile', id)) return; if (!isempt(fnun)) { this.fileopt(id, 1); return false; } var url = 'api.php?m=upload&id=' + id + '&a=down'; if (cans) for (var i in cans) url += '&' + i + '=' + cans[i] + ''; this.location(url); return false; } js.downupdels = function (sid, said, o1) { js.confirm('确定要删除此文件吗?', function (lx) { if (lx == 'yes') { js.downupdel(sid, said, o1); } }); } js.downupdel = function (sid, said, o1) { if (sid > 0) { $.get(js.getajaxurl('delfile', 'upload', 'public', { id: sid })); } if (o1) $(o1).parent().remove(); var o = $('#view_' + said + ''); var to = $('#count_' + said + ''); var o1 = o.find('span'), s1 = ''; for (i = 0; i < o1.length; i++)$(o1[i]).html('' + (i + 1)); to.html(''); if (i > 0) to.html('文件:' + i + ''); o1 = o.find('font'); for (i = 0; i < o1.length; i++)s1 += ',' + $(o1[i]).html(); if (s1 != '') s1 = s1.substr(1); $('#' + said + '-inputEl').val(s1); $('#fileid_' + said + '').val(s1); } js.downupshow = function (a, showid, nbj) { var s = '', i = 0, s1 = '', fis; var o = $('#view_' + showid + ''); for (i = 0; i < a.length; i++) { fis = 'assets/chat/images/fileicons/' + js.filelxext(a[i].fileext) + '.gif'; if (js.isimg(a[i].fileext) && !isempt(a[i].thumbpath)) fis = a[i].thumbpath; s = '
' + (i + 1) + '' + a[i].id + ' ' + a[i].filename + ' (' + a[i].filesizecn + ')'; s += ' 下载'; s += ' 预览'; s += ' ×'; s += '
'; o.append(s); } js.downupdel(0, showid, false); if (nbj) o.find('[temp="dela"]').remove();//禁止编辑 } js.loading = function (txt) { js.msg('wait', txt); } js.msgerror = function (txt) { js.msg('msg', txt); } js.unloading = function () { js.msg(); } // 文件操作id文件id,lx0预览,1下载,2编辑 js.fileopt = function (id, lx) { if (!lx) lx = 0; if (ismobile == 1 && lx == 1 && this.fileoptWin(id)) return; js.loading('加载中...'); var gurl = '/file/attachment/fileinfo?id=' + id + '&type=' + lx + '&ismobile=' + ismobile; $.ajax({ type: 'get', url: gurl, dataType: 'json', success: function (ret) { js.unloading(); if (ret.status) { var da = ret.data; var ext = da.fileext; var url = da.url; if (ismobile == 1) { if (da.type == 0 && !da.isview && appobj1('openfile', id)) return; //不能预览就用app打开 if (da.type == 0 && !da.isview && js.fileoptWin(id)) return; //不能预览就用app打开 if (da.type == 1 && appobj1('openfile', id)) return; //下载用app的 if (da.type == 0 && !js.isimg(ext)) { if (appobj1('openWindow', url)) return; if (js.apiopenWin(url)) return; } } // 下载直接跳转 if (da.type == 1) { js.location(url); return; } if (js.isimg(ext)) { $.imgview({ 'url': url, 'ismobile': ismobile == 1, 'downbool': false }); } else if (ext == 'rockedit') { if (ismobile == 0) { js.open(url, screen.width - 200, screen.height - 200); } else { js.location(url); } } else if (ext == 'rockoffice') { js.sendeditoffices(url); } else { url += '&wintype=max'; if (ismobile == 0) { if (!nwjsgui) { js.winiframe(da.filename, url); } else { js.open(url, 900, 500); } } else { js.location(url); } } } else { js.msgerror(ret.data); } }, error: function (e) { js.unloading(); js.msg('msg', '处理出错:' + e.responseText); } }); } js.fileoptWin = function (id) { var otype = this.opentype, ourl = 'widget://index.html'; if (otype && otype != 'nei') ourl = otype; var bstr = '{"name":"文件","fileid":"' + id + '","url":"fileopen","fileext":""}'; var url = '' + ourl + '?bstr=' + bstr + ''; return this.apiopenWin(url); } js.apiopenWin = function (url) { if (!apicloud) return false; api.openWin({ name: 'url' + js.getrand(), url: url, bounces: false, softInputBarEnabled: false, slidBackEnabled: true, vScrollBarEnabled: false, hScrollBarEnabled: false, allowEdit: false, progress: { type: '', title: '', text: '', color: '' } }); return true; } // 文件预览 js.yulanfile = function (id, ext, pts, sne, fnun, isxq) { if (!isempt(fnun)) { this.fileopt(id, 0); return false; } var url = 'index.php?m=public&a=fileviewer&id=' + id + '&wintype=max'; if (pts != '' && js.isimg(ext)) { $.imgview({ 'url': pts, 'ismobile': ismobile == 1, 'downbool': false }); $.get('api.php?m=upload&a=logs&fileid=' + id + '&type=0'); return false; } if (ismobile == 1) { var docsx = ',doc,docx,ppt,pptx,xls,xlsx,pdf,txt,html,'; if (docsx.indexOf(',' + ext + ',') == -1) if (appobj1('openfile', id)) return; if (appobj1('openWindow', url)) return; js.location(url); } else { if (!sne) sne = '文件预览'; if (isxq == 'xq') { js.open(url, screen.width - 200, screen.height - 200) } else { js.winiframe(sne, url); } } return false; } js.apiurl = function (m, a, cans) { return m; } js.getajaxurl = function (a, m, d, can) { if (!can) can = {}; if (!m) m = MODE; if (!d) d = DIR; if (d == 'null') d = ''; var jga = a.substr(0, 1); if (jga == '@') a = a.substr(1); var url = '' + this.path + '.php?a=' + a + '&m=' + m + '&d=' + d + ''; for (var c in can) url += '&' + c + '=' + can[c] + ''; if (jga != '@') url += '&ajaxbool=true'; url += '&rnd=' + parseInt(Math.random() * 999999) + ''; return url; } js.formatsize = function (size) { var arr = new Array('Byte', 'KB', 'MB', 'GB', 'TB', 'PB'); var e = Math.floor(Math.log(size) / Math.log(1024)); var fs = size / Math.pow(1024, Math.floor(e)); return js.float(fs) + ' ' + arr[e]; } js.getselectval = function (o) { var str = ''; for (var i = 0; i < o.length; i++) { if (o[i].selected) { str += ',' + o[i].value + ''; } } if (str != '') str = str.substr(1); return str; } js.setselectval = function (o, val) { var str = '', vals = ',' + val + ','; for (var i = 0; i < o.length; i++) { if (vals.indexOf(',' + o[i].value + ',') > -1) { o[i].selected = true; } } } js.getformdata = function (nas) { var da = {}, ona = '', o, type, val, na, i, obj; if (!nas) nas = 'myform'; obj = document[nas]; for (i = 0; i < obj.length; i++) { o = obj[i]; type = o.type, val = o.value, na = o.name; if (!na) continue; if (type == 'checkbox') { val = '0'; if (o.checked) val = '1'; da[na] = val; } else if (type == 'radio') { if (o.checked) da[na] = val; } else { da[na] = val; } if (na.indexOf('[]') > -1) { if (ona.indexOf(na) < 0) ona += ',' + na + ''; } } if (ona != '') { var onas = ona.split(','); for (i = 1; i < onas.length; i++) { da[onas[i].replace('[]', '')] = js.getchecked(onas[i]); } } return da; } js.getdata = function (na, da) { if (!da) da = {}; var obj = $('#' + na + ''); var inp = obj.find('input,select'); for (var i = 0; i < inp.length; i++) { var type = inp[i].type; var val = inp[i].value; if (type == 'checkbox') { val = '0'; if (inp[i].checked) val = '1'; } var ad1 = inp[i].name; if (!ad1) ad1 = inp[i].id; da[ad1] = val; } return da; } js.selall = function (o, na, bh) { var i, oi1; if (bh) { o1 = $("input[name^='" + na + "']"); } else { o1 = $("input[name='" + na + "']"); } for (i = 0; i < o1.length; i++) { if (!o1[i].disabled) o1[i].checked = o.checked; } } js.getchecked = function (na, bh) { var s = ''; var o1; if (bh) { o1 = $("input[name^='" + na + "']"); } else { o1 = $("input[name='" + na + "']"); } for (var i = 0; i < o1.length; i++) { if (o1[i].checked && !o1[i].disabled) s += ',' + o1[i].value + ''; } if (s != '') s = s.substr(1); return s; } js.cookie = function (name) { var str = document.cookie, cda, val = '', arr, i; if (str.length <= 0) return ''; arr = str.split('; '); for (i = 0; i < arr.length; i++) { cda = arr[i].split('='); if (name.toLowerCase() == cda[0].toLowerCase()) { val = cda[1]; break; } } if (!val) val = ''; return val; } js.savecookie = function (name, value, d) { var expires = new Date(); if (!d) d = 365; if (!value) d = -10; expires.setTime(expires.getTime() + d * 24 * 60 * 60 * 1000); var str = '' + name + '=' + value + ';expires=' + expires.toGMTString() + ';path=/;SameSite=Strict'; document.cookie = str; } js.backtop = function (ci) { if (!ci) ci = 0; $('body,html').animate({ scrollTop: ci }); return false; } js.backto = function (oid) { if (!get(oid)) return; var of = $('#' + oid + '').offset(); this.backtop(of.top); return false; } js.applyIf = function (a, b) { if (!a) a = {}; if (!b) b = {}; for (var c in b) if (typeof (a[c]) == 'undefined') a[c] = b[c]; return a; } js.apply = function (a, b) { if (!a) a = {}; if (!b) b = {}; for (var c in b) a[c] = b[c]; return a; } js.tanbodyindex = 90; js.tanbody = function (act, title, w, h, can1) { this.tanbodyindex++; var can = js.applyIf(can1, { html: '', msg: '', showfun: function () { }, bodystyle: '', guanact: '', titlecls: '', btn: [] }); var l = (winWb() - w - 50) * 0.5, t = (winHb() - h - 50) * 0.5; var s = ''; var mid = '' + act + '_main'; $('#' + mid + '').remove(); var posta = 'fixed'; if (js.path == 'admin') posta = 'absolute'; s += '
'; s += '
'; s += ' '; s += ' '; s += ' '; s += '
' + title + '
'; s += '
'; s += '
'; s += can.html; s += '
'; s += '
' + can.msg + ' '; for (var i = 0; i < can.btn.length; i++) { var a = can.btn[i]; s += '  '; } s += ' '; s += '
'; s += '
'; js.xpbody(act, can.mode); $('body').prepend(s); if (can.closed == 'none') { $('#' + act + '_bbar').remove(); $('#' + act + '_spancancel').parent().remove(); } if (can.bbar == 'none') $('#' + act + '_bbar').remove(); this.tanoffset(act); can.showfun(act); } js.tanoffset = function (act) { var mid = '' + act + '_main'; var lw = get(mid).offsetWidth, lh = get(mid).offsetHeight, l, t; l = (winWb() - lw) * 0.5; t = (winHb() - lh - 20) * 0.5; if (t < 0) t = 1; $('#' + mid + '').css({ 'left': '' + l + 'px', 'top': '' + t + 'px' }); } js.tanclose = function (act, guan) { if (!isempt(guan)) { var s = guan.split(','); for (var i = 0; i < s.length; i++)$('#' + s[i] + '_main').remove(); } $('#' + act + '_main').remove(); js.xpbody(act, 'none'); return false; } js.xpbodysplit = 0; js.xpbody = function (act, type) { if (type == 'none') { $("div[xpbody='" + act + "']").remove(); if (!get('xpbg_bodydds')) $('div[tanbody]').remove(); return; } if (get('xpbg_bodydds')) return false; var H = (document.body.scrollHeight < winHb()) ? winHb() - this.xpbodysplit - 5 : document.body.scrollHeight - this.xpbodysplit * 2; var W = document.documentElement.scrollWidth + document.body.scrollLeft - this.xpbodysplit * 2; var bs = ''; $('body').prepend(bs); $('#xpbg_bodydds').fadeIn(300); } js.focusval = '0'; js.number = function (obj) { val = strreplace(obj.value); if (!val) { obj.value = js.focusval; return false; } if (isNaN(val)) { js.msg('msg', '输入的不是数字'); obj.value = js.focusval; obj.focus(); } else { var o1 = $(obj); var min = o1.attr('minvalue'); if (isempt(min)) min = o1.attr('min'); if (min && parseFloat(val) < parseFloat(min)) val = min; var max = o1.attr('maxvalue'); if (isempt(max)) max = o1.attr('max'); if (max && parseFloat(val) > parseFloat(max)) val = max; obj.value = val; } } js.setmsg = function (txt, col, ids) { if (!ids) ids = 'msgview'; $('#' + ids + '').html(js.getmsg(txt, col)); } js.getmsg = function (txt, col) { if (!col) col = 'red'; var s = ''; if (!txt) txt = ''; if (txt.indexOf('...') > 0) { s = ' '; col = '#ff6600'; } s += '' + txt + ''; if (!txt) s = ''; return s; } js.setcopy = function (txt) { if (!txt) txt = ''; txt = escape(txt); js.savecookie('copy_text', txt, 1); js.msg('msg', '复制成功,仅限本站使用'); return false; } js.getcopy = function () { var txt = js.cookie('copy_text'); txt = unescape(txt); return txt; } js.chao = function (obj, shuzi, span, guo) { var cont = (guo) ? strreplace(obj.value) : obj.value; if (cont.length > shuzi) { alert("您输入的字符超过" + shuzi + "个字符\n\n将被截掉" + (cont.length - shuzi) + "个字符!"); cont = cont.substring(0, shuzi); obj.value = cont; } if (guo) obj.value = cont; if (span) get(span).innerHTML = obj.value.length; } js.debug = function (s) { if (typeof (console) != 'object') return; console.error(s); } js.alert = function (txt, tit, fun) { js.confirm(txt, fun, '', tit, 2, ''); } js.wait = function (txt, tit, fun) { js.confirm(txt, fun, '', tit, 3, ''); } js.alertclose = function () { js.tanclose('confirm'); } js.tanstyle = 0; js.confirm = function (txt, fun, tcls, tis, lx, ostr, bstr) { if (!lx) lx = 0; var h = '
', w = 320; if (lx == 1) w = 350; if (w > winWb()) w = winWb() - 10; if (lx == 1) { if (!tcls) tcls = ''; if (!ostr) ostr = ''; if (!bstr) bstr = ''; h = '
' + ostr + ''; h += '
' + txt + '
'; h += '
' + bstr + ''; } else if (lx == 3) { h += '  ' + txt + ''; } else { h += '' + txt + ''; } h += '
'; h += '
'; var yts = (this.tanstyle == 1) ? 'webbtn' : 'btn'; h += ' '; if (lx < 2) { h += '     '; } h += '
'; h += '
'; if (!tcls) tcls = 'danger'; if (lx == 1) tcls = 'info'; if (!tis) tis = ' 系统提示'; js.tanbody('confirm', tis, w, 200, { closed: 'none', bbar: 'none', html: h, titlecls: tcls }); function backl(e) { var jg = $(this).attr('sattr'), val = $('#confirm_input').val(); if (val == null) val = ''; if (typeof (fun) == 'function') { var cbo = fun(jg, val); if (cbo) return false; } js.alertclose(); return false; } $('#confirm_btn1').click(backl); if (get('confirm_btn')) { $('#confirm_btn').click(backl); get('confirm_btn').focus(); } if (lx == 1) get('confirm_input').focus(); } js.prompt = function (tit, txt, fun, msg, ostr, bstr) { js.confirm(txt, fun, msg, tit, 1, ostr, bstr); } js.msg = function (lx, txt, sj) { clearTimeout(this.msgshowtime); if (typeof (sj) == 'undefined') sj = 5; $('#msgshowdivla').remove(); if (lx == 'none' || !lx) { return; } if (lx == 'wait') { txt = ' ' + txt; sj = 60; } if (lx == 'msg') txt = '' + txt + ''; var t = 10; if (get('header_title')) t += 50; var s = '
' + txt + '
'; $('body').append(s); var w = $('#msgshowdivla').width(), l = (winWb() - w) * 0.5; $('#msgshowdivla').css('left', '' + l + 'px'); if (sj > 0) this.msgshowtime = setTimeout("$('#msgshowdivla').remove()", sj * 1000); } js.repempt = function (stt, v) { var s = stt; if (isempt(s)) s = v; return s; } js.getrand = function () { var r; r = '' + new Date().getTime() + ''; r += '_' + parseInt(Math.random() * 9999) + ''; return r; } js.arraystr = function (str) { if (!str) str = '1|是,0|否'; var s = str.split(','), d = [], i, s1, nv, vv; for (i = 0; i < s.length; i++) { s1 = s[i].split('|'); nv = s1[0]; vv = nv; if (s1.length > 1) nv = s1[1]; d.push([vv, nv]); } return d; } js._bodyclick = {}; js.downbody = function (o1, e) { this.allparent = ''; this.getparenta($(e.target), 0); var a, s = this.allparent, a1; for (a in js._bodyclick) { a1 = js._bodyclick[a]; if (s.indexOf(a) < 0) { if (a1.type == 'hide') { $('#' + a1.objid + '').hide(); } else { $('#' + a1.objid + '').remove(); } } } return true; } js.addbody = function (num, type, objid) { js._bodyclick[num] = { type: type, objid: objid }; } js.getparenta = function (o, oi) { try { if (o[0].nodeName.toUpperCase() == 'BODY') return; } catch (e) { return; } var id = o.attr('id'); if (!isempt(id)) { this.allparent += ',' + id; } this.getparenta(o.parent(), oi + 1); } js.ajaxwurbo = false; js.ajaxbool = false; js.ajax = function (url, da, fun, type, efun, tsar) { if (js.ajaxbool && !js.ajaxwurbo) return; if (!da) da = {}; if (!type) type = 'get'; if (!tsar) tsar = ''; tsar = tsar.split(','); if (typeof (fun) != 'function') fun = function () { }; if (typeof (efun) != 'function') efun = function () { }; var atyp = type.split(','), dtyp = ''; type = atyp[0]; if (atyp[1]) dtyp = atyp[1]; js.ajaxbool = true; if (tsar[0]) js.msg('wait', tsar[0]); var ajaxcan = { type: type, data: da, url: url, success: function (str) { js.ajaxbool = false; try { if (tsar[1]) js.msg('success', tsar[1]); fun(str); } catch (e) { js.msg('msg', str); js.debug(e); } }, error: function (e) { js.ajaxbool = false; js.msg('msg', '处理出错:' + e.responseText + ''); efun(e.responseText); } }; if (dtyp) ajaxcan.dataType = dtyp; $.ajax(ajaxcan); } js.setoption = function (k, v, qzb) { if (!qzb) k = QOM + k; try { if (isempt(v)) { localStorage.removeItem(k); } else { localStorage.setItem(k, escape(v)); } } catch (e) { js.savecookie(k, escape(v)); } return true; } js.getoption = function (k, dev, qzb) { var s = ''; if (!qzb) k = QOM + k; try { s = localStorage.getItem(k); } catch (e) { s = js.cookie(k); } if (s) s = unescape(s); if (isempt(dev)) dev = ''; if (isempt(s)) s = dev; return s; } js.location = function (url) { location.href = url; } js.backla = function (msg) { if (msg) if (!confirm(msg)) return; try { api.closeWin(); } catch (e) { } } js.sendevent = function (typ, na, d) { if (!d) d = {}; d.opttype = typ; if (!na) na = 'xinhuhome'; if (api.sendEvent) api.sendEvent({ name: na, extra: d }); } js.isimg = function (lx) { var ftype = '|png|jpg|bmp|gif|jpeg|'; var bo = false; if (ftype.indexOf('|' + lx + '|') > -1) bo = true; return bo; } js.changeuser_before = function (na) { } js.changeuser_after = function () { } js.changeuser = function (na, lx, tits, ocans) { var h = winHb() - 70, w = 350; if (!ocans) ocans = {}; if (h > 400) h = 400; if (!tits) tits = '请选择...'; var nibo = ((lx == 'changedeptusercheck' || lx == 'deptusercheck') && ismobile == 0); if (nibo) w = 650; var formname = ''; var can = { 'changetype': lx, 'showview': 'showuserssvie', 'titlebool': false, 'changevalue': '', 'changerange': '', //选择范围 'oncancel': function () { js.tanclose('changeaction'); }, 'onselect': function (sna, sid) { js.changeuser_after(this.formname, this, sna, sid); } }; if (na) { can.idobj = get(na + '_id'); can.nameobj = get(na); if (can.nameobj) formname = can.nameobj.name; } can.formname = formname; var bcar = js.changeuser_before(formname, 1), i; for (i in ocans) can[i] = ocans[i]; if (typeof (bcar) == 'string' && bcar) { js.msg('msg', bcar); return; } if (typeof (bcar) == 'object') for (i in bcar) can[i] = bcar[i]; js.tanbody('changeaction', tits, w, h, { html: '
', bbar: 'none' }); if (nibo) { if (can.idobj) can.changevalue = can.idobj.value; changcallback = function (sna, sid) { if (can.idobj) can.idobj.value = sid; if (can.nameobj) { can.nameobj.value = sna; can.nameobj.focus(); } js.changeuser_after(formname, can, sna, sid); js.tanclose('changeaction'); if (can.callback) can.callback(sna, sid); } var url = 'index.php?d=system&m=dept&changetype=' + lx + '&changevalue=' + can.changevalue + '&callback=changcallback&changerange=' + can.changerange + ''; winiframe.location.href = url; } else { $('#showuserssvie').chnageuser(can); } return false; } js.back = function () { if (isapp) { plus.webview.currentWebview().close('auto'); } else if (apicloud) { api.historyBack({}, function (ret) { if (!ret.status) api.closeWin(); }); } else { history.back(); } } js.changeclear = function (na) { var fne = get(na).name; var bcar = js.changeuser_before(fne, 0); if (typeof (bcar) == 'string' && bcar) { js.msg('msg', bcar); return; } get(na).value = ''; get(na + '_id').value = ''; get(na).focus(); js.changeuser_after(fne, { nameobj: get(na), idobj: get(na + '_id') }, '', ''); } js.changedate = function (o1, id, v) { if (!v) v = 'date'; $(o1).rockdatepicker({ initshow: true, view: v, inputid: id }); } js.fileall = ',aac,ace,ai,ain,amr,app,arj,asf,asp,aspx,av,avi,bin,bmp,cab,cad,cat,cdr,chm,com,css,cur,dat,db,dll,dmv,doc,docx,dot,dps,dpt,dwg,dxf,emf,eps,et,ett,exe,fla,ftp,gif,hlp,htm,html,icl,ico,img,inf,ini,iso,jpeg,jpg,js,m3u,max,mdb,mde,mht,mid,midi,mov,mp3,mp4,mpeg,mpg,msi,nrg,ocx,ogg,ogm,pdf,php,png,pot,ppt,pptx,psd,pub,qt,ra,ram,rar,rm,rmvb,rtf,swf,tar,tif,tiff,txt,url,vbs,vsd,vss,vst,wav,wave,wm,wma,wmd,wmf,wmv,wps,wpt,wz,xls,xlsx,xlt,xml,zip,'; js.filelxext = function (lx) { if (js.fileall.indexOf(',' + lx + ',') < 0) lx = 'wz'; return lx; } js.datechange = function (o1, lx) { if (!lx) lx = 'date'; $(o1).rockdatepicker({ 'view': lx, 'initshow': true }); return false; } js.selectdate = function (o1, inp, lx) { if (!lx) lx = 'date'; $(o1).rockdatepicker({ 'view': lx, 'initshow': true, 'inputid': inp }); return false; } js.importjs = function (url, fun) { var sid = jm.encrypt(url); if (!fun) fun = function () { }; if (get(sid)) { fun(); return; } var scr = document.createElement('script'); scr.src = url; scr.id = sid; if (isIE) { scr.onreadystatechange = function () { if (this.readyState == 'loaded' || this.readyState == 'complete') { fun(this); } } } else { scr.onload = function () { fun(this); } } document.getElementsByTagName('head')[0].appendChild(scr); return false; } js.replacecn = function (o1) { var val = strreplace(o1.value); val = val.replace(/[\u4e00-\u9fa5]/g, ''); o1.value = val; } js.setselectdata = function (o, data, vfs, devs) { var i, ty = data, sv; if (!data) return; if (!vfs) vfs = 'name'; if (typeof (devs) == 'undefined') devs = -1; for (i = 0; i < ty.length; i++) { o.options.add(new Option(ty[i].name, ty[i][vfs])); if (i == devs || ty[i].checked) sv = ty[i][vfs]; } if (sv) o.value = sv; } //是否app上接口 function appobj1(act, can1) { var bo = false; if (typeof (appxinhu) == 'object') { if (appxinhu[act]) { try { appxinhu[act](can1); bo = true; } catch (e) { } } } return bo; } // 向PC客户端发送命令 js.cliendsend = function (at, cans, fun, ferr) { var dk = '2829'; if (at == 'rockoffice') dk = '2827'; var url = unescape('http%3A//127.0.0.1%3A' + dk + '/%3Fatype'); if (!cans) cans = {}; if (!fun) fun = function () { }; if (!ferr) ferr = function () { return false; } url += '=' + at + '&callback=?'; var llq = navigator.userAgent.toLowerCase(); if (llq.indexOf('windows nt 5') > 0 && dk == '2829') { if (!ferr()) js.msg('msg', 'XP的系统不支持哦'); return; } var i, v, bo = typeof (jm); for (i in cans) { v = cans[i]; if (bo == 'object') v = 'base64' + jm.base64encode(v) + ''; url += '&' + i + '=' + v + ''; } var timeoout = setTimeout(function () { if (!ferr()) js.msg('msg', '无法使用,可能没有登录REIM客户端'); }, 500); $.getJSON(url, function (ret) { clearTimeout(timeoout); fun(ret); }); } //发送文档编辑 js.sendeditoffice = function (id, lx) { if (!lx) lx = '0'; this.ajax('api.php?m=upload&a=rockofficeedit', { id: id, lx: lx }, function (ret) { if (ret.success) { js.sendeditoffices(ret.data); } else { js.msg('msg', ret.msg); } }, 'get,json'); } js.sendeditoffices = function (str) { js.cliendsend('rockoffice', { paramsstr: str }, false, function () { js.msg('msg', '无法使用,可能没有安装在线编辑插件'); return true; }); } js.ontabsclicks = function () { }; js.inittabs = function () { $('.r-tabs div').click(function () { js.tabsclicks(this); }); } js.tabsclicks = function (o1) { var o = $(o1); var tid = o.parent().attr('tabid'); $('.r-tabs[tabid="' + tid + '"] div').removeClass('active'); $('[tabitem][tabid="' + tid + '"]').hide(); var ind = o.attr('index'); o.addClass('active'); var ho = $('[tabitem=' + ind + '][tabid="' + tid + '"]'); ho.show(); this.ontabsclicks(ind, tid, o, ho); } js.changdu = function (o) { var max = $(o).attr('maxlength'); if (max > 0) { var zlen = o.value.length; if (zlen > parseFloat(max)) js.alert('录入数据长度' + zlen + '超过' + max + '总长度,其余会被截取掉'); } } js.showmap = function (str) { var url = 'index.php?d=main&m=kaoqin&a=location&info=' + jm.base64encode(str) + ''; js.location(url); }