function storageServices(){_this=this;this.updater=undefined;this.progress=undefined;this.requestcount=0;this.oldaction;this.oldtarget;this.oldencoding;this.formid="";this.uploadurl="";this.uploadResultAjaxUrl="";this.uploadStateAjaxUrl="";this.uploadStateEchoDivId="";this.formtargetname="";this.handleerrfunction;this.handlesucceedfunction}String.prototype.trim=function(){var t=this.replace(/(^\s*)|(\s*$)/g,"");return t.replace(/(^ *)|( *$)/g,"")};storageServices.prototype={startStatusCheck:function(){var formobj=document.getElementById(_this.formid);_this.oldaction=formobj.action;_this.oldtarget=formobj.target;_this.oldencoding=formobj.encoding;formobj.action=_this.uploadurl;formobj.target=_this.formtargetname;formobj.setAttribute("enctype","multipart/form-data");formobj.encoding="multipart/form-data";_this.updater=new storageServicesPeriodicalUpdater();_this.updater.setAjaxurl(_this.uploadResultAjaxUrl);_this.updater.setPostAsynchronous(true);_this.updater.setPostFrequency("500");_this.updater.setPostMethod("GET");_this.updater.onFailure(_this.reportError);_this.updater.onSuccess(_this.readJson);_this.updater.start();_this.progress=new storageServicesPeriodicalUpdater();_this.progress.setAjaxurl(_this.uploadStateAjaxUrl);_this.progress.setUploadState(_this.uploadStateEchoDivId);_this.progress.setPostAsynchronous(true);_this.progress.setPostFrequency("500");_this.progress.setPostMethod("GET");_this.progress.onFailure(_this.myError);_this.progress.start()},readJson:function(request){var content=request.responseText;if(content=="\r\n"){if(request.status!=200){requestcount++}if(_this.requestcount==3){alert("存储节点访问出错,请和管理员联系!");_this.stopAjax();_this.handleErrFunction();return}}else{try{var json=eval("("+content+")");if(json.status=="end"){try{eval("var _function = "+_this.handlesucceedfunction);_function(json)}catch(e){alert(e)}_this.stopAjax();setTimeout("_this.progress.stop()",500)}if(json.result=="false"){if(json.errorinfo!=""){alert(json.errorinfo);_this.stopAjax();setTimeout("_this.progress.stop()",500);_this.handleErrFunction()}}}catch(e){return}}},stopAjax:function(){setTimeout("_this.updater.stop()",100)},myError:function(request){setTimeout("_this.progress.stop()",100)},reportError:function(request){var content=request.responseText;alert("请求失败"+request.status);_this.stopAjax();_this.handleErrFunction()},handleErrFunction:function(){try{if(_this.handleerrfunction!=""){eval(_this.handleerrfunction+"()")}}catch(e){}},recoverForm:function(){var formobj=document.getElementById(_this.formid);formobj.action=_this.oldaction;formobj.target=_this.oldtarget;formobj.setAttribute("enctype",_this.oldencoding);formobj.encoding=_this.oldencoding}};function storageServicesPeriodicalUpdater(){var ajaxurl="";var uploadState="";var asynchronous=true;var frequency="500";var method="GET";var onFailure="";var onSuccess="";var isrun=false;var isstop=false;var id="";var xmlHttp;this.start=function(){if(isstop){return}if(!isrun){isrun=true}xmlHttp=createXMLHttpRequest();startRequest(ajaxurl,operationResult,xmlHttp);setTimeout(arguments.callee,frequency)};this.stop=function(){isstop=true};this.setAjaxurl=function(p1){ajaxurl=p1};this.setID=function(p1){id=p1};this.setUploadState=function(p1){uploadState=p1};this.setPostAsynchronous=function(p1){asynchronous=p1};this.setPostFrequency=function(p1){frequency=p1};this.setPostMethod=function(p1){method=p1};this.onFailure=function(p1){onFailure=p1};this.onSuccess=function(p1){onSuccess=p1};function operationResult(){if(xmlHttp.readyState==4&&xmlHttp.status==200){if(onSuccess!=""){callFunction(onSuccess,xmlHttp)}var rt=xmlHttp.responseText.trim();if(uploadState!=""&&rt!=""){document.getElementById(uploadState).innerHTML=rt}}else{if(xmlHttp.readyState==4&&xmlHttp.status!=200){try{if(onFailure!=""){callFunction(onFailure,xmlHttp)}}catch(e){}}}}function callFunction(functionname,o){eval("var _function = "+functionname);_function(o)}function startRequest(url,fun,xmlHttp){xmlHttp.onreadystatechange=fun;xmlHttp.open(method,url,asynchronous);xmlHttp.send(null)}function createXMLHttpRequest(){var xmlHttp=null;try{xmlHttp=new ActiveXObject("Microsoft.XMLHTTP")}catch(e){try{xmlHttp=new ActiveXObject("Msxml2.XMLHTTP")}catch(e){try{xmlHttp=new XMLHttpRequest()}catch(e){}}}return xmlHttp}}function storageServicesGetrelateVsl(){var ajaxurl="/system/resource/storage/service/services.jsp?actiontype=getrelatevsl";var type="";var callbackfunction="";var imagepath="";var xmlHttp;this.setType=function(p1){type=p1};this.setCallbackFunction=function(p1){callbackfunction=p1};this.setImagepath=function(p1){imagepath=p1};this.start=function(){ajaxurl+="&imagepath="+imagepath+"&type="+type;xmlHttp=createXMLHttpRequest();startRequest(ajaxurl,operationResult,xmlHttp)};function operationResult(){if(xmlHttp.readyState==4&&xmlHttp.status==200){callFunction(callbackfunction,xmlHttp.responseText)}else{}}function startRequest(url,fun,xmlHttp){xmlHttp.onreadystatechange=fun;xmlHttp.open("get",url,false);xmlHttp.send(null)}function createXMLHttpRequest(){var xmlHttp=null;try{xmlHttp=new ActiveXObject("Microsoft.XMLHTTP")}catch(e){try{xmlHttp=new ActiveXObject("Msxml2.XMLHTTP")}catch(e){try{xmlHttp=new XMLHttpRequest()}catch(e){}}}return xmlHttp}function callFunction(functionname,o){eval("var _function = "+functionname);_function(o)}};