2 lines
12 KiB
JavaScript
2 lines
12 KiB
JavaScript
![]() |
/** layuiAdmin.pro-v1.2.1 LPPL License By http://www.layui.com/admin/ */
|
||
|
;!function(){function initTabs(){for(var e=$G("tabhead").children,t=0;t<e.length;t++)domUtils.on(e[t],"click",function(e){var t=e.target||e.srcElement;setTabFocus(t.getAttribute("data-content-id"))});setTabFocus("upload")}function setTabFocus(e){if(e){var t,i,a=$G("tabhead").children;for(t=0;t<a.length;t++)i=a[t].getAttribute("data-content-id"),i==e?(domUtils.addClass(a[t],"focus"),domUtils.addClass($G(i),"focus")):(domUtils.removeClasses(a[t],"focus"),domUtils.removeClasses($G(i),"focus"));switch(e){case"upload":uploadFile=uploadFile||new UploadFile("queueList");break;case"online":onlineFile=onlineFile||new OnlineFile("fileList")}}}function initButtons(){dialog.onok=function(){for(var e,t=[],i=$G("tabhead").children,a=0;a<i.length;a++)if(domUtils.hasClass(i[a],"focus")){e=i[a].getAttribute("data-content-id");break}switch(e){case"upload":t=uploadFile.getInsertList();var s=uploadFile.getQueueCount();if(s)return $(".info","#queueList").html('<span style="color:red;">'+"还有2个未上传文件".replace(/[\d]/,s)+"</span>"),!1;break;case"online":t=onlineFile.getInsertList()}editor.execCommand("insertfile",t)}}function UploadFile(e){this.$wrap=e.constructor==String?$("#"+e):$(e),this.init()}function OnlineFile(e){this.container=utils.isString(e)?document.getElementById(e):e,this.init()}var uploadFile,onlineFile;window.onload=function(){initTabs(),initButtons()},UploadFile.prototype={init:function(){this.fileList=[],this.initContainer(),this.initUploader()},initContainer:function(){this.$queue=this.$wrap.find(".filelist")},initUploader:function(){function e(e){var t=r('<li id="'+e.id+'"><p class="title">'+e.name+'</p><p class="imgWrap"></p><p class="progress"><span></span></p></li>'),i=r('<div class="file-panel"><span class="cancel">'+lang.uploadDelete+'</span><span class="rotateRight">'+lang.uploadTurnRight+'</span><span class="rotateLeft">'+lang.uploadTurnLeft+"</span></div>").appendTo(t),a=t.find("p.progress span"),s=t.find("p.imgWrap"),l=r('<p class="error"></p>').hide().appendTo(t),o=function(e){switch(e){case"exceed_size":text=lang.errorExceedSize;break;case"interrupt":text=lang.errorInterrupt;break;case"http":text=lang.errorHttp;break;case"not_allow_type":text=lang.errorFileType;break;default:text=lang.errorUploadRetry}l.text(text).show()};"invalid"===e.getStatus()?o(e.statusText):(s.text(lang.uploadPreview),"|png|jpg|jpeg|bmp|gif|".indexOf("|"+e.ext.toLowerCase()+"|")==-1?s.empty().addClass("notimage").append('<i class="file-preview file-type-'+e.ext.toLowerCase()+'"></i><span class="file-title" title="'+e.name+'">'+e.name+"</span>"):browser.ie&&browser.version<=7?s.text(lang.uploadNoPreview):n.makeThumb(e,function(e,t){if(e||!t)s.text(lang.uploadNoPreview);else{var i=r('<img src="'+t+'">');s.empty().append(i),i.on("error",function(){s.text(lang.uploadNoPreview)})}},b,x),F[e.id]=[e.size,0],e.rotation=0,e.ext&&S.indexOf(e.ext.toLowerCase())!=-1||(o("not_allow_type"),n.removeFile(e))),e.on("statuschange",function(s,n){"progress"===n?a.hide().width(0):"queued"===n&&(t.off("mouseenter mouseleave"),i.remove()),"error"===s||"invalid"===s?(o(e.statusText),F[e.id][1]=1):"interrupt"===s?o("interrupt"):"queued"===s?F[e.id][1]=0:"progress"===s&&(l.hide(),a.css("display","block")),t.removeClass("state-"+n).addClass("state-"+s)}),t.on("mouseenter",function(){i.stop().animate({height:30})}),t.on("mouseleave",function(){i.stop().animate({height:0})}),i.on("click","span",function(){var t,i=r(this).index();switch(i){case 0:return void n.removeFile(e);case 1:e.rotation+=90;break;case 2:e.rotation-=90}U?(t="rotate("+e.rotation+"deg)",s.css({"-webkit-transform":t,"-mos-transform":t,"-o-transform":t,transform:t})):s.css("filter","progid:DXImageTransform.Microsoft.BasicImage(rotation="+~~(e.rotation/90%4+4)%4+")")}),t.insertBefore(f)}function t(e){var t=r("#"+e.id);delete F[e.id],i(),t.off().find(".file-panel").off().end().remove()}function i(){var e,t=0,i=0,a=g.children();r.each(F,function(e,a){i+=a[0],t+=a[0]*a[1]}),e=i?t/i:0,a.eq(0).text(Math.round(100*e)+"%"),a.eq(1).css("width",Math.round(100*e)+"%"),s()}function a(e,t){if(e!=w){va
|