function rnd() { var rndL = Math.ceil(Math.random()*1000000); return rndL; } function trim(str) { return str.replace(/ +/,"").replace(/ +$/,""); } function isIE(){ return (isFirefox=navigator.userAgent.indexOf("MSIE") >= 0) ? true : false; } function isEmail(strMail) { var objReg = /^([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/; if(strMail.length==0) return false; return (objReg.test(strMail)); } function addSpace(space, bgcolor) { document.write(""); } //var g_xmlHttp; function processReqChange() { return; } function sleep(n) { var start = new Date().getTime(); while(true) if(new Date().getTime()-start>n) break; } var g_tmp_txt; var g_xmlHttp; function compressResult(url, params) { var style = ""; if (params == null || params == "") style = "GET"; else style = "POST"; if (isIE()) { var len = 0; if (params != null) len = params.length; var result; var XMLHTTP; try { XMLHTTP = new ActiveXObject("Microsoft.XMLHTTP"); if(!XMLHTTP) XMLHTTP = new ActiveXObject("MSXML2.XMLHTTP"); } catch(e) { //alert("XMLHTTPRequest(IE 7)"); return ""; } XMLHTTP.Open(style, encodeURI(url), false); XMLHTTP.setRequestHeader("Content-Length", len); XMLHTTP.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=utf-8"); XMLHTTP.Send(params); if(XMLHTTP.readyState==4) { if(document.defaultCharset=="utf-8" && navigator.userLanguage=="zh-cn") { result = unescape(XMLHTTP.responseText); } else { result = XMLHTTP.responseText; } } else { result = ""; } delete XMLHTTP; return result; } else { g_tmp_txt = ""; g_xmlHttp = new XMLHttpRequest(); g_xmlHttp.onreadystatechange = processReqChange; g_xmlHttp.open(style, url, false); g_xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=utf-8"); g_xmlHttp.send(params); if(g_xmlHttp.readyState == 4) { if(g_xmlHttp.status == 200){ g_tmp_txt = g_xmlHttp.responseText; } } delete g_xmlHttp; return g_tmp_txt; } } function parseServerIP(url) { var url2 = url.toLowerCase(); var ik = url2.indexOf("http://"); if (ik > -1) { url2 = url2.substring(ik + 7, url2.length); } for(var i = 0; i -1) { url2 = url2.substring(ik + 7, url2.length); } var x = 0; for(var i = 0; i 0) return url2.substring(x + 1, i); else return "80"; } if (url2.charAt(i) == ":") { x = i; } } if (x > 0) { return url2.substring(x + 1, url2.length); } return 80; } function getRequestUrl(url) { var x = 0; var y = url.length; for(var i = url.length - 1; i >= 0; i--) { if (url.charAt(i) == '?') y = i; if (url.charAt(i) == '/') { x = i; for(var j = x + 1; j < y; j++) { if (url.charAt(j) == '#') return url.substring(x + 1, j); } return url.substring(x + 1, y); } } return url; } function getUrlParam(url, ParamName)//得到URL里面的某个参数 { var paramPos = url.indexOf(ParamName); if (paramPos >= 0) { var startpos = paramPos + ParamName.length + 1; var endPos = url.indexOf("&", paramPos); if (endPos >= 0) { return url.substr(startpos, endPos - startpos); }else return url.substr(startpos); }else return ""; } //写cookies函数 function setCookie(name, value, days)//两个参数,一个是cookie的名子,一个是值 { var exp = new Date(); //new Date("December 31, 9998"); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString(); } function getCookie(name)//取cookies函数 { var arr = document.cookie.match(new RegExp("(^| )" + name+"=([^;]*)(;|$)")); if(arr != null) return unescape(arr[2]); return null; } function delCookie(name)//删除cookie { var exp = new Date(); exp.setTime(exp.getTime() - 1); var cval=getCookie(name); if(cval!=null) document.cookie= name + "="+cval+";expires="+exp.toGMTString(); } function getFileKeys(itemName) { var ik = 0; var fileKeys = new Array(); var file_obj = document.getElementsByName(itemName); for (i=0; i < file_obj.length; i++) { if (file_obj[i].checked == true) { fileKeys[ik] = file_obj[i].value; ik++; } } return fileKeys; } function getKeyIdTxt(fileKeys) { var txt = ""; for (i=0; i < fileKeys.length; i++) { txt = txt + fileKeys[i] + "_"; } return txt; } ///////////////////////////////////在线编辑///////////////////////////////////// function getActivexObj() { var activeObj = document.getElementById("idoc_ocx1"); try { if (activeObj == null) { var div = document.createElement("div"); document.body.appendChild(div); div.id = "_active_div_01"; div.style.display = "none"; div.innerHTML = ""; activeObj = document.getElementById("idoc_ocx1"); } if (activeObj.GetOcxEdition() < "2.3.1.1") { showActivePage(1); return null; } if (activeObj.FileAccessPower <= 1) { showActivePage(2); return null; } activeObj.ServerIp = parseServerIP(window.location.href) + "#" + parseServerPort(window.location.href); var s = compressResult("/batchfilestran?opr=ucode&rnd=" + rnd()); activeObj.SaveUsrInfo2(s); activeObj.VerUpdate(); return activeObj; } catch (e) { //showActivePage(1); return null; } } function showActivePage(mode) { var swin = new CreateSubWindow(); if (isIE()) { var s = ""; if (mode == 2) { alert("文档批量传输Activex控件没有读写文件的权限,如果您的操作系统vista/win7/win2008, 请以管理员身份运行IE(系统菜单的'开始'->'程序'->鼠标移动到IE处,单击右键->以管理员身份运行),其他操作系统请参考帮助设置控件!"); } if (mode == 1) { swin.newWinWithUrl("/batchfilestran?opr=page&mode=" + mode + "&rnd=" + rnd(), 660, 400, "文档批量传输控件安装", "", null); } if (mode == 3) { swin.newWinWithUrl("/batchfilestran?opr=page&mode=" + mode + "&rnd=" + rnd(), 640, 400, "工程文件预览控件安装", "", null); } } else { swin.newWinWithUrl("/batchfilestran?opr=page&mode=4&rnd=" + rnd(), 640, 400, "浏览器设置", "", null); } } function Edit(filekey) { var activeObj = getActivexObj(); if (activeObj != null) { activeObj.EditOnline(filekey, ""); } } function ShowMsgClient() { var activeObj = getActivexObj(); if (activeObj != null) { activeObj.ShowMsgClient(); } } function GetObject(id){ return document.getElementById(id); } function CreateObject(t){ return document.createElement(t); } //解析Ajax弹出页面的函数 function ParseAjaxFun(allTxt) { var _htmlTxt = allTxt; var _jsTxts = new Array(); var _jsCount = 0; function getScript(index, index2) { if (index2 - 8 <= 0) // return false; var s = _htmlTxt.substring(index2 - 8, index2 + 1).toLowerCase(); if (s != "") return false; index = _htmlTxt.indexOf('>', index) + 1; // for(var i = index2 - 9; i > 0; i--) { ch = _htmlTxt.charAt(i); if (ch =='>' || ch =='-' || ch =='/' || ch <= " ") continue; index2 = i + 1; break; } _jsTxts[_jsCount] = _htmlTxt.substring(index, index2); _jsCount++; return true; } function isScript(index) { if (index + 8 >=_htmlTxt.length || _htmlTxt.charAt(index + 1).toLowerCase() != 's') return false; var s = _htmlTxt.substring(index, index + 8).toLowerCase(); var ik = s.indexOf("": if (num_qm % 2 == 0 && num_qm2 % 2 == 0 && x > 0 && getScript(x, i)) x = 0; break; default: break; } } } var _funTxts = new Array(); var _funCount = 0; function getFun(txt, index, index2) { var txt = txt.substring(index, index2 + 1); var x = txt.indexOf("function"); if (x == -1) return; for(var i = 0; i < x; i++) { var ch = txt.charAt(i); if (ch == '\'' || ch == '\"') return; } _funTxts[_funCount] = txt.substring(x, index2 + 1); _funCount++; } //得到函数代码 function splitFunctionTxt(txt) { var num_b = num_e = fi = 0; var x = 0; for(var i = 0; i document.body.scrollWidth ? document.body.clientWidth: document.body.scrollWidth; else x = document.documentElement.clientWidth > document.body.scrollWidth ? document.body.documentElement: document.body.scrollWidth; var y; if (document.all) y = document.body.clientHeight > document.body.scrollHeight ? document.body.clientHeight: document.body.scrollHeight; else y = document.documentElement.clientHeight > document.body.scrollHeight ? document.documentElement.clientHeight: document.body.scrollHeight; var fdiv = null; var i = 0; var isfirst = true; for ( i = 0; ; i++) { if (document.getElementById("g_opacity_float_div_" + i)) continue; else { if (i == 1) { var obj_div = document.getElementById("g_opacity_float_div_0"); if (obj_div) { if (obj_div.offsetWidth == 0) fdiv = document.getElementById("g_opacity_float_div_0"); else { isfirst = false; fdiv = document.createElement("div"); fdiv.id = "g_opacity_float_div_" + 1; } } else { isfirst = false; fdiv = document.createElement("div"); fdiv.id = "g_opacity_float_div_" + 0; } } else { isfirst = false; fdiv = document.createElement("div"); fdiv.id = "g_opacity_float_div_" + i; } break; } } //fdiv.id = "g_opacity_float_div"; with (fdiv.style) { position = "absolute"; background = "#616161"; width = (x - 1) + "px"; height = (y - 1) + "px"; left = 0 + "px"; top = 0 + "px"; if(isIE()) filter = "alpha(opacity=50)"; else opacity = "0.5"; } if (!isfirst) document.body.appendChild(fdiv); } function createControls(objId, wi, hi, caption, btname, innerHtml, menuTxt, showOpacityDiv) { var n = new ParseAjaxFun(innerHtml); n.run(); delete n; //背景层 if (showOpacityDiv) createOpacityDiv(); var tabTxt = ""+ ""+ "" + "
 " + caption + "
"; //新建DIV层 _divObj = document.createElement("div"); //设置属性 _divObj.id = objId; //设置DIV页面内容 _divObj.innerHTML = tabTxt + "
" + innerHtml + "
" + menuTxt; with (_divObj.style) { position = "absolute"; background = "#FFFFFF"; border = "solid 1px #C1C4C4"; //padding = "2px"; //margin = "2px"; //设置DIV出现的位置 width = wi + "px"; //height = hi + "px"; left = (document.body.scrollLeft + (document.body.clientWidth - wi) / 2) + "px"; top = (document.body.scrollTop + (document.body.clientHeight) / 4) + "px"; zIndex = 20; } document.body.appendChild(_divObj); //用table实现DIV拖到 _tabObj = document.getElementById(objId + "_pop_tab"); if (_tabObj != null) { _tabObj.onmousedown = winMouseDown; _tabObj.onmousemove = winMove; _tabObj.onmouseup = winMouseUp; } //关闭窗口按钮事件 var closeImg = document.getElementById(objId + "_close_bt"); if (closeImg != null) closeImg.onclick = _self.removeDiv; } //objId = 层ID, innerHtml=弹出层HTML页面, wi=宽度,hi=高度, caption=标题, //btname=左侧按钮标题, callbackFun=按钮的回调函数, showOpacityDiv=是否显示弹出背景层 this.newWinWithInnerHtmlEx = function(objId, innerHtml, wi, hi, caption, btname, callbackFun, showOpacityDiv) { _self.divID = objId; var menuTxt = ""; if (btname != "") { menuTxt = ""+ "
"+ "" + btname + "  "+ "取消
"; } createControls(objId, wi, hi, caption, btname, innerHtml, menuTxt, showOpacityDiv); if (btname != "") { //关闭窗口按钮事件 var closeButton = document.getElementById(objId + "_no_bt"); if (closeButton != null) closeButton.onclick = _self.removeDiv; //确定按钮的回调函数 var okButton = document.getElementById(objId + "_ok_bt"); if (okButton != null) okButton.onclick = doResult; _callBackFun = callbackFun; } } this.newWinWithInnerHtml = function(innerHtml, wi, hi, caption, btname, callbackFun) { var objId = rnd(); _self.newWinWithInnerHtmlEx(objId, innerHtml, wi, hi, caption, btname, callbackFun, true); } this.newWinWithUrl = function(url, wi, hi, caption, btname, callbackFun) { var objId = rnd(); var txt = compressResult(url); _self.newWinWithInnerHtmlEx(objId, txt, wi, hi, caption, btname, callbackFun, true); } //增加参数,是否弹出背景层 this.newWinWithUrl2 = function(url, wi, hi, caption, btname, callbackFun, showOpacityDiv) { var objId = rnd(); var txt = compressResult(url); _self.newWinWithInnerHtmlEx(objId, txt, wi, hi, caption, btname, callbackFun, showOpacityDiv); } this.setCallbackFun = function(callbackFun) { _callBackFun = callbackFun; } this.hide = function() { _divObj.style.display = "none"; } //重新设置位置 this.resetPosition = function(left2, top2) { with (_divObj.style) { left = left2 + "px"; top = top2 + "px"; } } this.getHi = function() { return _divObj.offsetHeight; } } ///////////////////////////分割窗口/////////////////////////// //鼠标坐标 function Position(x, y) { this.x = x; this.y = y; } function GetPosition(obj) { var objThis = obj; var body = document.body; var xLeft = xTop = 0; while (objThis != body) { xLeft += objThis.offsetLeft; xTop += objThis.offsetTop; objThis = objThis.offsetParent; } return new Position(xLeft, xTop); } //窗口分割类 function TabSplitter() { var _splitter = null; var _middle, _left, _right, _frame; var _framePos, _middlePos; var _htmlLoaded = false; var _moveStart = false; var _padding = 0; var const_m = 6; var _callBackFun = null; /* function GetPosition(obj) { var objThis = obj; var body = document.body; var xLeft = xTop = 0; while (objThis != body) { xLeft += objThis.offsetLeft; xTop += objThis.offsetTop; objThis = objThis.offsetParent; } return new Position(xLeft, xTop); } */ this.fnInit = function(slpittDivName, tabName, leftTDName, spTDName, rightTDName) { _splitter = document.getElementById(slpittDivName); _middle = document.getElementById(spTDName); _left = document.getElementById(leftTDName); _right = document.getElementById(rightTDName); _frame = document.getElementById(tabName); _framePos = GetPosition(_frame); _splitter.style.height = _middle.offsetHeight; _splitter.style.width = _middle.offsetWidth; _htmlLoaded = true; if(document.all) const_m = _middle.offsetWidth; else const_m = _middle.offsetWidth + 4; if( document.body.clientHeight > 620) _frame.style.height = document.body.clientHeight - 120; else _frame.style.height = "500px"; _right.style.width = _frame.offsetWidth - _left.offsetWidth - const_m; _frame.onmouseup = g_Splitter.fnMouseUp; _frame.onmousemove = g_Splitter.fnMouseMove; /*if(document.all) _frame.onresize = g_Splitter.fnResize; else _frame.onresize = g_Splitter.fnResize; */ _middle.onmousedown = g_Splitter.fnMouseDown; } this.fnMouseDown = function(evt) { evt = evt || window.event; _middlePos = GetPosition(_middle); _padding = _middlePos.x - evt.clientX; _splitter.style.left = _middlePos.x; _splitter.style.top = _middlePos.y; _splitter.style.height = _frame.style.height; _splitter.style.display = "block"; _moveStart = true; } this.fnMouseUp = function(evt) { if (_splitter == null) return; evt = evt || window.event; _splitter.style.display = "none"; _moveStart = false; } this.fnMouseMove = function(evt) { if (_splitter == null) return; evt = evt || window.event; if (_splitter != null && _moveStart == true) { _splitter.style.left = evt.clientX + _padding; if (evt.clientX > _framePos.x && evt.clientX < _framePos.x + _frame.offsetWidth - _middle.offsetWidth) { if (evt.clientX - _framePos.x - const_m >0) { _left.style.width = evt.clientX - _framePos.x - const_m; _right.style.width = _frame.offsetWidth - _left.offsetWidth - const_m; if (_callBackFun != null) _callBackFun(evt.clientX - _framePos.x - const_m); } } } } this.arrange = function() { _right.style.width = (_frame.offsetWidth - _left.offsetWidth - const_m) + "px"; if( document.body.clientHeight > 620) _frame.style.height = document.body.clientHeight - 120; else _frame.style.height = "500px"; } this.fnResize = function(evt) { arrange(); } this.setCallbackFun = function(callbackFun) { _callBackFun = callbackFun; } } /////////////////////////////////右键菜单//////////////////////////////// //菜单单项 function MenuAtom(txt, img) { this.text = txt; this.imgUrl = img; this.click = null; this.subMenu = null; this.id = ""; this.pwname = ""; } function Menu(parentObj, elements, wi, bgimg, subimg) { var _self = this; var _ulObj = null; var _inMenuRng = false; var _divObj = null; var _click = new Array; var _sub = new Array; var _lastSubMenu = null; this.width = wi; var _height = 2; this.fatherMenu = null; this.parent = parentObj; //隐藏系统右键菜单 this.init = function() { document.body.oncontextmenu = function(evt) { if (isIE()) { evt = evt || window.event; evt.returnValue = false; evt.cancelBubble = true; return false; } else { evt.preventDefault(); evt.stopPropagation(); } } } function create() { //页面的点击事件 var _bodyOldFun = document.body.onmousedown; document.body.onmousedown = null; document.body.onmousedown = function() { if(!_inMenuRng) { _self.hide(); if(_bodyOldFun != null) _bodyOldFun(); } } //父控件的鼠标右键 //if (parentObj != null) // parentObj.onmousedown = _self.show; var tmpId = rnd(); _divObj = document.createElement("div"); _divObj.id = "m_div_" + tmpId; with (_divObj.style) { position = "absolute"; border = "solid 1px #C1C4C4"; padding = "0px"; background = "#EDEDED"; width = wi + "px"; //height = "200px"; display = "none"; if (parentObj == null) zIndex = "2"; else zIndex = "1"; } document.body.appendChild(_divObj); var txt = "
    "; for(var i=0; i"; _height += 2; } else { txt += "
  • "; if (elements[i].imgUrl != "") txt += ""; else txt += ""; txt += "" + elements[i].text + ""; if (elements[i].subMenu == null) txt += "
  • "; else txt += ""; _height += 22; } } txt += "
"; _divObj.innerHTML = txt; _ulObj = document.getElementById("m_ul_" + tmpId).getElementsByTagName("li"); if (_ulObj == null) return; for(var i=0; i x || evt_y <_divObj.offsetTop || evt_y > y) return false; else return true; } function click2(tr) { if (_ulObj != null) { for(var i=0; i<_ulObj.length; i++) { if (tr == _ulObj[i]) { var tmpClick = _click[i]; tmpClick(); } } } } function showSubMenu(tr, sub) { if (_ulObj != null) { for(var i=0; i<_ulObj.length; i++) { if (tr == _ulObj[i]) { var x = _divObj.offsetLeft + wi; var y = _divObj.offsetTop + tr.offsetTop; if (y > (document.body.offsetHeight + document.body.scrollTop - _sub[i].height)) { y -= (_sub[i].height - 24); } if (x + _sub[i].width > document.body.scrollLeft + document.body.clientWidth) x = x - wi - _sub[i].width + 2; else x = x - 1; _sub[i].show2(x, y); _lastSubMenu = _sub[i]; } } } } function hideSubMenu(tr, x, y) { if (_ulObj != null) { for(var i=0; i<_ulObj.length; i++) { if (tr == _ulObj[i]) { _sub[i].hide2(_sub[i], x, y); } } } } this.show = function(evt) { evt = evt || window.event; if (evt.button == 2) { var x = evt.clientX + document.body.scrollLeft; var y = evt.clientY + document.body.scrollTop; _self.show2(x, y); if (document.all) { evt.returnValue = false; evt.cancelBubble = true; return false; } else { evt.preventDefault(); evt.stopPropagation(); } } } this.hide = function() { _divObj.style.display = "none"; } this.showAll = function() { var listItems = _divObj.getElementsByTagName("li"); for (var i=0; i < listItems.length; i++) { listItems[i].style.display = "block"; } } this.hide2 = function(obj, evt_x, evt_y) { if (document.all) { evt_x = evt_x - document.body.scrollLeft; evt_y = evt_y + document.body.scrollTop; } else { evt_x = evt_x - document.documentElement.scrollLeft; evt_y = evt_y + document.documentElement.scrollTop; } var x = obj.offsetLeft + obj.clientWidth ; var y = obj.offsetTop + obj.clientHeight; if (evt_x < obj.offsetLeft - 1 || evt_x > x + 1 || evt_y y + 1) obj.style.display = "none"; } this.show2 = function(x, y) { with(_divObj.style) { if (x > (document.body.offsetWidth + document.body.scrollLeft - this.width)) { x -= this.width; } var trueHeight = 2; for (var i=0; i<_ulObj.length; i++) { if (_ulObj[i].style.display != "none") { if (_ulObj[i].id.indexOf("menu_spr_") >= 0) { trueHeight += 2; } else { trueHeight += 22; } } } if (y > (document.body.offsetHeight + document.body.scrollTop - trueHeight)) { y -= trueHeight; if (y < 0) y = 0; } left = x + "px"; top = y + "px"; display = "block"; } _self.checkself(); //_inMenuRng = true; } this.destroy = function() { document.body.removeChild(_ulObj); document.body.removeChild(_divObj); } this.hiddMenu = function(hidden_item) { for (var i=0;i < hidden_item.length;i++ ) { var t_obj = document.getElementById(hidden_item[i]); if (t_obj != null) { t_obj.style.display = "none"; } } } this.id = function() { return _divObj.id; } this.hiddMenuPw = function(pwItemsTxt) { var pwItems = pwItemsTxt.split(","); for (var i=0; i0; i--) { if (_ulObj[i].innerHTML == "") { var b = false; for (var j=i-1; j>0; j--) { if (_ulObj[j].innerHTML == "") { b = true; break; }else{ if(_ulObj[j].style.display != "none") break; } } if (b) _ulObj[i].style.display = "none"; } } //处理子菜单 _sub for (var i=0; i<_sub.length; i++) { if (_sub[i] != null) { _sub[i].hiddMenuPw(pwItemsTxt); } } } this.checkself = function() { var isHide = true; var listItems = _divObj.getElementsByTagName("li"); for (var i=0; i 文档操作导航:
如何创建文件夹?
" + "如何上传单个文件?
" + "如何批量上传文件?
" + "如何查找文档?"; if (m == 1) { return s; } else { document.write(s); } } function checkUkEx(myObject) { var isUklogin = compressResult("/login?opr=isuklogin&rnd=" + rnd()); var txt = ""; if (isUklogin.toLowerCase() == "true") { var ukLoginInfo = getCookie("Idoc_UkLoginInfo"); if (ukLoginInfo == null) ukLoginInfo = ""; if (myObject != null) txt = myObject.CheckUk(ukLoginInfo); else return false; if (txt != "ok") { alert(txt); setCookie("idoc_UserId", "", 0); setCookie("idoc_UserInfo", "", 0); window.location.href = "/user?opr=exit"; return false; } } return true; } //如果是U盘登录,检测U盘 function checkUk() { var isCheck = false; if (isCheck) { var myObject = getActivexObj(); return checkUkEx(myObject); } else return true; } function getSubStrFromCookie(allStr, fieldName) { if (allStr != null && allStr != "") { var x = allStr.indexOf("[" + fieldName + "]"); var y = allStr.indexOf("[/" + fieldName + "]"); if (y > x) { x = x + 2 + fieldName.length; return allStr.substr(x, y - x); } else { return ""; } } else return ""; } function InvertEx(val) { var obj= document.getElementsByName(val); for (var i=0;i