var _selectfile = {}; _selectfile = function (id, data, param) { var page = isNaN(parseInt(param.page)) ? 1 : parseInt(param.page); var total = isNaN(parseInt(param.total)) ? 1 : parseInt(param.total); this.string = "_selectfile.cons." + this.id; this.container = param.container; this.total = total; //alert('filemangeid='+id); this.bz = param.bz || ''; //标志是那个api的数据 this.perpage = param.perpage; this.totalpage = Math.ceil(this.total / this.perpage); this.totalpage = this.totalpage < 1 ? 1 : this.totalpage; this.id = id; this.string = "_selectfile.cons." + this.id; //alert(this.id); var sidarr = id.split('-'); if (sidarr[0] == 'f') this.fid = sidarr[1]; else this.fid = 0; this.subfix = sidarr[0]; //记录当前的sid前缀 f、cat等 this.winid = id; this.keyword = param.keyword; this.localsearch = param.localsearch; this.view = isNaN(parseInt(param.view)) ? _selectfile.view : parseInt(param.view); this.disp = isNaN(parseInt(param.disp)) ? _selectfile.disp : parseInt(param.disp); this.asc = param.asc; //_selectfile.asc; this.detailper = _selectfile.detailper; if (!this.data) this.data = {}; this.data = data; this.currentpage = page; this.container = param.container; this.odata = []; this.sum = 0; _selectfile.cons[this.id] = this; _selectfile.fid = this.fid; _selectfile.subfix = this.subfix; _selectfile.winid = this.id; this.pageloadding = true; this.exts = param.exts || ''; this.tags = param.tags || ''; this.before = param.before || ''; this.after = param.after || ''; this.fids = param.fids || ''; this.gid = param.gid || ''; } _selectfile.selectall = { position: {}, container: '', icos: [] }; _selectfile.saveurl = 'index.php?mod=system&op=save'; _selectfile.speed = 5; _selectfile.perpage = 100; //每页最多个数; _selectfile.cons = {}; _selectfile.view = 4; _selectfile.disp = 0; _selectfile.asc = 1; _selectfile.detailper = [47, 10, 20, 15, 8]; //依此对应:名称 大小 类型 修改时间; _selectfile.onmousemove = null; _selectfile.onmouseup = null; _selectfile.onselectstart = 1; _selectfile.stack_data = {}; _selectfile.showicosTimer = {}; _selectfile.apicacheTimer = {}; _selectfile.infoPanelUrl = ''; _selectfile.viewstyle = ['bigicon', 'middleicon', 'middlelist', 'smalllist', 'detaillist']; //获取中间高度 _selectfile.select_Scrolly = function (els) { var clientHeight = document.documentElement.clientHeight; if (!els) { els = $('.selectScroll-y'); } els.each(function () { var els = $(this); var pos = els.offset(); var height = clientHeight - pos.top - 100; if (_explorer.type > 0) { var height = clientHeight - pos.top - 140; } els.css({ 'overflow': 'auto', 'height': height, }); new PerfectScrollbar(this); }) } //iocn图标切换 _selectfile.icon = function () { //修改初始化时的排列方式指示 jQuery('.icons-thumbnail').attr('iconview', obj.view).find('.dzz').removeClass('dzz-view-module').removeClass('dzz-view-list').addClass(obj.view === 2 ? 'dzz-view-list' : 'dzz-view-module'); //jQuery('.icons-thumbnail').attr('iconview', obj.view).find('.dzz').attr('data-bs-original-title',obj.view === 2 ? __lang.deltail_lsit : __lang.medium_icons); jQuery('.icons-thumbnail').attr('folderid', obj.id); } //替换列表图和缩略图 _selectfile.get_template = function (sid, whole, disp, asc) { var obj = _selectfile.cons[sid]; var str = ''; if (whole) { switch (obj.view) { case 0: case 1: case 2: case 3: str = jQuery('#template_middleicon').html(); break; case 4: str = jQuery('#template_detaillist').html(); //替换 break; } //替换参数 str = str.replace(/\{asc_\d\}/g, obj.asc); var regx = new RegExp('\{show_' + obj.disp + '\}', 'ig'); str = str.replace(regx, 'inline-block'); str = str.replace(/\{show_\d}/ig, 'none'); } else { switch (obj.view) { case 0: case 1: case 2: case 3: str = jQuery('#template_middleicon .js-file-item-tpl').html(); break; case 4: str = jQuery('#template_detaillist .js-file-item-tpl').html(); break; } } return str; }; _selectfile.prototype.CreateIcos = function (data, flag) { var self = this; var containerid = 'filemanage-' + this.winid; if (!flag && this.data[data.rid]) { //如果已经存在 var el1 = jQuery('#' + containerid + ' .Icoblock[rid=' + data.rid + ']'); _selectfile.glow(el1); return; } this.data[data.rid] = data; var template = _selectfile.get_template(this.id); //创建图标列表 if (data.flag) { if (!data.img) { data.img = 'dzz/styles/thame/' + _explorer.thame.system.folder + '/system/' + data.flag + '.png'; } data.error = 'dzz/images/default/system/' + data.flag + '.png'; } else if (data.type === 'folder') { if (data.gid > 0) { data.icon = data.img ? data.img : data.icon; data.error = data.icon || 'dzz/images/default/system/folder-read.png'; data.img = data.icon ? data.icon.replace('dzz/images/default', 'dzz/styles/thame/' + _explorer.thame.system.folder) : 'dzz/styles/thame/' + _explorer.thame.system.folder + '/system/folder-read.png'; } else { data.icon = data.img ? data.img : data.icon; data.error = data.icon || 'dzz/images/default/system/folder.png'; data.img = data.icon ? ((data.icon).replace('dzz/images/default', 'dzz/styles/thame/' + _explorer.thame.system.folder)) : 'dzz/styles/thame/' + _explorer.thame.system.folder + '/system/folder.png'; } } else if (data.type === 'shortcut' && data.ttype === 'folder') { if (data.tdata.gid > 0) { data.error = data.tdata.img || 'dzz/images/default/system/folder-read.png'; data.img = (data.tdata.img + '').replace('dzz/images/default', 'dzz/styles/thame/' + _explorer.thame.system.folder); } else { data.error = data.tdata.img || 'dzz/images/default/system/folder.png'; data.img = data.tdata.img ? ((data.tdata.img + '').replace('dzz/images/default', 'dzz/styles/thame/' + _explorer.thame.system.folder)) : 'dzz/styles/thame/' + _explorer.thame.system.folder + '/system/folder.png'; } } else { data.error = 'dzz/images/default/icodefault.png'; } var html = template.replace(/\{name\}/g, data.name); html = html.replace(/\{rid\}/g, data.rid); html = html.replace(/tsrc=\"\{img\}\"/g, 'src="{img}"'); html = html.replace(/\{img\}/g, data.img); html = html.replace(/\{username\}/g, data.username); html = html.replace(/\{replynum\}/g, data.replynum ? data.replynum : '0'); html = html.replace(/\{zIndex\}/g, 10); html = html.replace(/\{error\}/g, data.error); html = html.replace(/\{size\}/g, ((data.type === 'folder' || data.type === 'app' || data.type === 'shortcut') ? '' : data.fsize)); html = html.replace(/\{fsize\}/g, data.fsize); html = html.replace(/\{type\}/g, data.type); html = html.replace(/\{ftype\}/g, data.ftype); html = html.replace(/\{dateline\}/g, data.dateline); html = html.replace(/\{fdateline\}/g, data.fdateline); html = html.replace(/\{flag\}/g, data.flag); html = html.replace(/\{position\}/g, data.relpath); html = html.replace(/\{dpath\}/g, data.dpath); html = html.replace(/\{from\}/g, data.from); html = html.replace(/\{delusername\}/g, data.username); html = html.replace(/\{deldateline\}/g, data.deldateline); html = html.replace(/\{finallydate\}/g, data.finallydate); html = html.replace(/\{views\}/g, data.views); html = html.replace(/\{times\}/g, data.times); html = html.replace(/\{downs\}/g, data.downs); html = html.replace(/\{expireday\}/g, data.expireday); html = html.replace(/\{sharelink\}/g, data.sharelink); html = html.replace(/dsrc=\"\{qrcode\}\"/g, 'src="{qrcode}"'); html = html.replace(/dsrc='\{qrcode\}'/g, "src='{qrcode}'"); html = html.replace(/\{qrcode\}/g, data.qrcode); html = html.replace(/\{password\}/g, data.password); html = html.replace(/\{count\}/g, data.count); if (data.status < 0) { var sharestatus = '(' + data.fstatus + ')'; } else { sharestatus = ''; } //收藏 if (data.collect) { var collectstatus = ''; } else { var collectstatus = ''; } html = html.replace(/\{collectstatus\}/g, collectstatus); html = html.replace(/\{sharestatus\}/g, sharestatus); if (data.type !== 'image') { html = html.replace(/data-start=\"image\".+?data-end=\"image\"/ig, ''); } var position_hash = ''; if (data.gid > 0) { position_hash = data.pfid > 0 ? '#group&do=file&gid=' + data.gid + '&fid=' + data.pfid : '#group&gid=' + data.gid; } else { position_hash = '#home&do=file&fid=' + data.pfid; } html = html.replace(/\{position_hash\}/g, position_hash); //处理操作按钮 //html=this.filterOPIcon(data,html); var el = null; if (flag && jQuery('.Icoblock[rid=' + data.rid + ']').length > 0) { jQuery('.Icoblock[rid=' + data.rid + ']').replaceWith(html); el = jQuery('.Icoblock[rid=' + data.rid + ']') } else { // jQuery(html).appendTo('#' + containerid + ' .js-file-item-tpl'); jQuery('#' + containerid + ' .js-file-item-tpl').prepend(html); el = jQuery('.Icoblock[rid=' + data.rid + ']'); jQuery('#shareinfo_' + data.rid).on('click', function (e) { return false; }); } /* //检查下载和分享菜单 //判断下载权限 if (!_explorer.Permission('download', data)) { el.find('.download').remove(); } //判断分享权限 if (!_explorer.Permission('share', data)) { el.find('.share').remove(); } */ if (this.view < 4) { el.on('mouseenter', function () { jQuery(this).addClass('hover'); }); el.on('mouseleave', function () { jQuery(this).removeClass('hover'); }); //处理多选框 //if(!_selectfile.fid || _explorer.Permission_Container('multiselect',this.fid)){ el.find('.icoblank_rightbottom').on('click', function () { var flag = true; var ell = jQuery(this).parent(); var rid = ell.attr('rid'); if (ell.hasClass('Icoselected')) { flag = false; } _select.SelectedStyle('filemanage-' + self.id, rid, flag, true); return false; }); //处理操作按钮 el.on('click', function (e) { var tag = e.srcElement ? e.srcElement : e.target; if (/input|textarea/i.test(tag.tagName)) { return true; } var Item = jQuery(this).closest('.Icoblock'); var rid = Item.attr('rid'); if( _explorer.sourcedata.icos[rid].type == 'folder'){ _selectfile.Open(rid); return false; } var flag = true; if ((_hotkey.ctrl && Item.hasClass('Icoselected')) || (Item.hasClass('Icoselected') && _selectfile.selectall.icos.length === 1 && _selectfile.selectall.icos[0] === rid)) { flag = false; } var multi = (_hotkey.ctrl && _explorer.mulitype) ? true : false; _select.SelectedStyle('filemanage-' + self.id, jQuery(this).attr('rid'), flag, multi); //self.createBottom(); return false; }); if (this.total == 0 && jQuery('#' + containerid).find('.emptyPage').length == 0) { jQuery(jQuery('#template_nofile_notice').html()).appendTo(jQuery('#' + containerid)); } else { jQuery('#' + containerid).find('.emptyPage').remove(); } } else { //详细列表时 el.bind('mouseenter', function () { jQuery(this).addClass('hover'); //return false; }); el.bind('mouseleave', function () { jQuery(this).removeClass('hover'); //return false; }); //点击图片和名称直接打开 el.on('click', function (e) { e = e ? e : window.event; var tag = e.srcElement ? e.srcElement : e.target; if (/input|textarea/i.test(tag.tagName)) { return true; } var Item = jQuery(this).closest('.Icoblock'); var rid = Item.attr('rid'); if(_explorer.sourcedata.icos[rid].type == 'folder'){ _selectfile.Open(rid); return false; } var flag = true; if ((_hotkey.ctrl && Item.hasClass('Icoselected')) || (Item.hasClass('Icoselected') && _selectfile.selectall.icos.length === 1 && _selectfile.selectall.icos[0] === rid)) { flag = false; } var multi = (_hotkey.ctrl && _explorer.mulitype) ? true : false; _select.SelectedStyle('filemanage-' + self.id, Item.attr('rid'), flag, multi); return false; }); } el.on('dblclick', function (e) { if (!_selectfile.fid && _selectfile.winid == 'recycle-list') return true; var tag = e.srcElement ? e.srcElement : e.target; if (/input|textarea/i.test(tag.tagName)) { return true; } _selectfile.Open(el.attr('rid')); dfire('click'); return false; }); //设置邮件菜单 el.on('contextmenu', function (e) { e = e ? e : window.event; var tag = e.srcElement ? e.srcElement : e.target; if (/input|textarea/i.test(tag.tagName)) { return true; } _contextmenu.right_ico(e, jQuery(this).attr('rid')); return false; }); //检测已选中 if (jQuery.inArray(data.rid, _selectfile.selectall.icos) > -1) { el.addClass('Icoselected'); } //处理按钮 if (!flag) { _selectfile.glow(el); this.sum++; this.total++; jQuery('#' + containerid + ' .scroll-y').scrollTop(9999999); this.currentdata['icos_' + data.rid] = data; } if (this.total == 0 && jQuery('#' + containerid).find('.emptyPage').length == 0) { jQuery(jQuery('#template_nofile_notice').html()).appendTo(jQuery('#' + containerid)); } else { jQuery('#' + containerid).find('.emptyPage').remove(); } }; _selectfile.changefileName = function(rid){ var filename = ''; if(!rid){ filename = _explorer.defaultfilename; }else{ var ico = _explorer.sourcedata.icos[rid]; filename = ico.name; } $('#savenewname').val(filename); } _selectfile.getData = function (url, callback) { jQuery.getJSON(url, function (json) { if (json.error) { alert(json.error); return false; } else { for (var id in json.data) { _explorer.sourcedata.icos[id] = json.data[id]; } for (var fid in json.folderdata) { _explorer.sourcedata.folder[fid] = json.folderdata[fid]; } _explorer.createMenuSwidth(_selectfile.fid); var obj = null; if (json.param.page > 1) { obj = _selectfile.cons[json.sid]; obj.appendIcos(json.data); obj.total = parseInt(json.total); obj.totalpage = Math.ceil(obj.total / obj.perpage); } else { obj = new _selectfile(json.sid, json.data, json.param); if (_selectfile.selectall.container !== '_selectfile-' + json.sid) { _selectfile.selectall = { position: {}, container: '', icos: [] }; } obj.showIcos(); } obj.url = url; //修改初始化时的排列方式指示 jQuery('.icons-thumbnail').attr('iconview', obj.view).find('.dzz').removeClass('dzz-view-module').removeClass('dzz-view-list').addClass(obj.view === 2 ? 'dzz-view-list' : 'dzz-view-module'); jQuery('.icons-thumbnail').attr('iconview', obj.view).find('.dzz').attr('data-bs-original-title', obj.view === 2 ? __lang.deltail_lsit : __lang.medium_icons); jQuery('.icons-thumbnail').attr('folderid', obj.id); if (typeof (callback) === 'function') { callback(obj); } } }); }; _selectfile.prototype.showIcos = function (ext) { //排序数据 var self = this; if (_selectfile.showicosTimer[this.winid]) { window.clearTimeout(_selectfile.showicosTimer[this.winid]); } var containerid = 'filemanage-' + this.winid; jQuery('#' + containerid).empty(); this.createIcosContainer(); var data_sorted = null; if (this.keyword) { data_sorted = _selectfile.Sort(_selectfile.Search(this.data, this.keyword), this.disp, this.asc); jQuery('#searchInput_' + this.id).val(this.keyword); } else { data_sorted = _selectfile.Sort(this.data, this.disp, this.asc); } if (ext) { data_sorted = _file.Searchext(data_sorted, ext); } this.currentdata = data_sorted; _selectfile.stack_data[self.id] = Array(); for (var i in data_sorted) { _selectfile.stack_data[self.id].push({ data: data_sorted[i], "obj": self }); } window.setTimeout(function () { _selectfile.stack_run(self.id); }, 1); //增加底部信息 this.pageloadding = false; }; _selectfile.prototype.Resize = function () { _selectfile.select_Scrolly(jQuery('.scroll-y')); _selectfile.searchall(); }; //监听iframe父级窗口变化大小 $(parent).resize(function(){ _selectfile.select_Scrolly(); }) /*jQuery(document).ready(function(){ _selectfile.select_Scrolly(); })*/ //文件没有可以打开的应用 _selectfile.Open = function (rid, extid, title) { var data = _explorer.sourcedata.icos[rid]; var name = data.name; // var ext =data.ext; // var type=data.type; var obj = {}; obj.type = data.type; obj.ext = data.ext; obj.id = rid; obj.text = name; obj.dpath = data.dpath; //判断打开的url中是否含有dzzjs:等特殊协议;为了安全,只有应用才可以 if (obj.type === 'link') { window.open(data.url); return; } else if (obj.type === 'dzzdoc') { obj.url = "index.php?mod=document&icoid=" + obj.id; window.open(obj.url); return; } else if (obj.type === 'folder') { var hash = ''; var fid = data.oid; if (data.gid > 0) { hash = '#group&do=file&gid=' + data.gid + (fid > 0 ? '&fid=' + fid : ''); } else { hash = '#home&do=file&fid=' + fid; } window.location.hash = hash; return false; } if (!extid) { extid = getExtOpen(data, true); } if (extid) { if (_explorer.extopen.all[extid].appid > 0 && _explorer.sourcedata.app[_explorer.extopen.all[extid].appid]['available'] < 1) { Alert(__lang.regret_app + _explorer.sourcedata.app[_explorer.extopen.all[extid].appid]['appname'] + __lang.already_close, 5, null, null, 'info'); return; } var extdata_url = extopen_replace(data, extid); //var app=_explorer.sourcedata.app[_explorer.extopen.all[extid].appid]; if (extdata_url) { extdata_url = extdata_url.replace(/{\w+}/g, ''); if (extdata_url.indexOf('dzzjs:OpenPicWin') === 0) { jQuery('img[data-original]:visible').dzzthumb(); jQuery('.Icoblock[rid=' + rid + '] img[data-original]').trigger('click'); return; } else if (extdata_url.indexOf('dzzjs:') === 0) { window.open(data.url); return; } else { window.open(extdata_url); } } } else { top.showDialog('文件没有可以打开的应用'); } }; //获取打开方式 function getExtOpen(data, isdefault) { if (data.type === 'folder' || data.type === 'user' || data.type === 'app' || data.type === 'pan' || data.type === 'storage' || data.type === 'disk') { return true; } var openarr = []; //判断特殊区域后缀 var bz = 'dzz'; if (data.bz === '' || typeof data.bz === 'undefined') { if (data.rbz) { var bzarr = data.rbz.split(':'); bz = bzarr[0]; } else { bz = 'dzz'; } } else { var bzarr = data.bz.split(':'); bz = bzarr[0]; } var ext = bz + ':' + data.ext; var i = 0; if (ext && _explorer.extopen.ext[ext]) { if (isdefault && _explorer.extopen.all[_explorer.extopen.user[ext]]) { return _explorer.extopen.user[ext]; } for (i = 0; i < _explorer.extopen.ext[ext].length; i++) { if (_explorer.extopen.all[_explorer.extopen.ext[ext][i]]) { if (isdefault && _explorer.extopen.all[_explorer.extopen.ext[ext][i]].isdefault > 0) { return _explorer.extopen.all[_explorer.extopen.ext[ext][i]].extid; } openarr.push(_explorer.extopen.all[_explorer.extopen.ext[ext][i]]); } } } if (data.ext && _explorer.extopen.ext[data.ext]) { if (isdefault && _explorer.extopen.all[_explorer.extopen.user[data.ext]]) { return _explorer.extopen.user[data.ext]; } for (i = 0; i < _explorer.extopen.ext[data.ext].length; i++) { if (_explorer.extopen.all[_explorer.extopen.ext[data.ext][i]]) { if (isdefault && _explorer.extopen.all[_explorer.extopen.ext[data.ext][i]].isdefault > 0) { return _explorer.extopen.all[_explorer.extopen.ext[data.ext][i]].extid; } openarr.push(_explorer.extopen.all[_explorer.extopen.ext[data.ext][i]]); } } } //判断type if (data.type !== data.ext && _explorer.extopen.ext[data.type]) { if (isdefault && _explorer.extopen.all[_explorer.extopen.user[data.type]]) { return _explorer.extopen.user[data.type]; } for (i = 0; i < _explorer.extopen.ext[data.type].length; i++) { if (_explorer.extopen.all[_explorer.extopen.ext[data.type][i]]) { if (isdefault && _explorer.extopen.all[_explorer.extopen.ext[data.type][i]].isdefault > 0) { return _explorer.extopen.all[_explorer.extopen.ext[data.type][i]].extid; } openarr.push(_explorer.extopen.all[_explorer.extopen.ext[data.type][i]]); } } } if (isdefault) { if (openarr.length > 0) { return openarr[0].extid; } else { return false; } } else { var appids = []; for (i in openarr) { if ($.inArray(openarr[i].appid, appids) > -1) { openarr.splice(i, 1); } else { appids.push(openarr[i].appid); } } if (openarr.length > 0) { return openarr; } else { return false; } } } //文件路径 function extopen_replace(ico, extid) { ico.icoid = ico.rid; var extdata = _explorer.extopen.all[extid]; var extdata_url = ''; if (!ico || !extdata) { return false; } for (var key in ico) { extdata_url = extdata.url.replace(/{(\w+)}/g, function ($1) { key = $1.replace(/[{}]/g, ''); if (key === 'url') { return encodeURIComponent(ico[key]); } else if (key === 'icoid') { return ico.rid; } else if (key === 'path') { return ico.dpath; } else { return ico[key]; } }); } if (extdata_url.indexOf('dzzjs:') === -1 && extdata_url.indexOf('?') !== -1 && extdata_url.indexOf('path=') === -1) { extdata_url = extdata_url + '&path=' + ico.dpath; } return extdata_url; } _selectfile.prototype._selectInfo = function () { //设置全选框信息 //设置全选按钮的文字 var sum = _selectfile.selectall.icos.length; var total = jQuery('#filemanage-' + this.id).find('.Icoblock').length; var html = jQuery('#template_file').html(); var hash = location.hash; if (sum > 0) { //有选中 jQuery('.navtopheader').css('display', 'block'); jQuery('.navtopheader').html(html); jQuery('.selectall-box').addClass('Icoselected'); jQuery('.selectall-box .select-info').html('已选中' + sum + '个文件'); jQuery('.docunment-allfile').hide(); if (sum >= total) { //全部选中 jQuery('.selectall-box').addClass('Icoselected'); } } else { //没有选中 jQuery('.navtopheader').css('display', 'none'); jQuery('.navtopheader').html(''); jQuery('.selectall-box').removeClass('Icoselected'); jQuery('.selectall-box .select-info').html(this.view < 4 ? '全选' : ''); jQuery('.docunment-allfile').show(); if (hash.indexOf('recycle') != -1) { jQuery('.recycle-option-icon').hide(); } } //this.setToolButton(); //设置头部工具菜单; return false; }; _selectfile.prototype.selectInfo = function () { var self = this; if (this.selectinfoTimer) { window.clearTimeout(this.selectinfoTimer); } this.selectinfoTimer = window.setTimeout(function () { self._selectInfo(); }, 200); }; _selectfile.prototype.appendIcos = function (data) { var self = this; if (_selectfile.showicosTimer[this.winid]) { window.clearTimeout(_selectfile.showicosTimer[this.winid]); } _selectfile.stack_data[self.winid] = Array(); for (var i in data) { //this.data[i]=data[i]; _selectfile.stack_data[self.winid].push({ data: data[i], "obj": self }); } window.setTimeout(function () { _selectfile.stack_run(self.winid); }, 1); this.pageloadding = false; }; _selectfile.prototype.createIcosContainer = function () { var self = this; var containerid = 'filemanage-' + this.id; var div = document.getElementById(containerid); if (!div) { return; } div.className = "icosContainer"; div.setAttribute('unselectable', "on"); div.setAttribute('onselectstart', "return event.srcElement.type== 'text';"); var htmlContent = ''; div.innerHTML = _selectfile.get_template(this.id, true); _selectfile.select_Scrolly(); var el = jQuery(div); el.find('.js-file-item-tpl').empty(); jQuery('.middlecenter') .on('contextmenu', function (e) { e = e ? e : window.event; var tag = e.srcElement ? e.srcElement : e.target; if (/input|textarea/i.test(tag.tagName)) { return true; } _contextmenu.right_body(e, self.fid); return false; }) .on('click', function (e) { //清空数据 e = e ? e : window.event; var tag = e.srcElement ? e.srcElement : e.target; if (/input|textarea/i.test(tag.tagName)) { return true; } if (containerid === _selectfile.selectall.container) { _selectfile.selectall.container = containerid; _selectfile.selectall.icos = []; _selectfile.selectall.position = {}; el.find('.Icoblock').removeClass('Icoselected'); el.find('.selectall-box').removeClass('Icoselected'); if(_explorer.type){ _selectfile.changefileName(''); } self.selectInfo(); } }) .end().find('.selectall-box').on('click', function () { var el = jQuery(this); var selectall = true; if (el.hasClass('Icoselected')) { el.removeClass('Icoselected'); selectall = false; _selectfile.selectall.icos = []; } else { el.addClass('Icoselected'); selectall = true; _selectfile.selectall.icos = []; } _selectfile.selectall.container = containerid; jQuery('#' + containerid).find('.Icoblock').each(function () { if (selectall) { jQuery(this).addClass('Icoselected'); _selectfile.selectall.icos.push(jQuery(this).attr('rid')); } else { jQuery(this).removeClass('Icoselected'); } }); self.selectInfo(); return false; }); if(_explorer.mulitype){ _select.init(containerid); } if (this.view < 4) { } else { jQuery('#' + containerid).find('.detail_header:not(.detail_header_select)').on('click', function () { var disp = parseInt(jQuery(this).attr('disp')); if (disp * 1 === self.disp * 1) { if (self.asc > 0) { self.asc = 0; } else { self.asc = 1; } } else { _selectfile.Disp(this, self.id, disp); self.asc = 1; } self.disp = disp; if (self.fid) { _explorer.sourcedata.folder[self.fid].disp = disp; } if (self.bz.indexOf('ALIOSS') === 0 || self.bz.indexOf('JSS') === 0) { self.showIcos(); } else { self.pageClick(1); } }); } el.closest('.scroll-srcollbars').scroll(function () { var el = jQuery(this); if (el.height() + el.scrollTop() >= el.children().first().height()) { if (self.currentpage >= self.totalpage || self.pageloadding) { return; } self.pageloadding = true; self.currentpage++; self.pageClick(self.currentpage); } }); if (this.fid) { $.getScript(MOD_PATH + '/scripts/uplodfile.js', function () { jQuery('.wangpan-upload-file').each(function () { fileupload(jQuery(this), self.fid); }); }); } if (this.total < 1 && jQuery('#' + containerid).find('.emptyPage').length == 0) { jQuery(jQuery('#template_nofile_notice').html()).appendTo(div); } else { jQuery('#' + containerid).find('.emptyPage').remove(); } } _selectfile.prototype.pageClick = function (page) { var self = this; this.pageloadding = true; if (!page) { page = 1; } var keyword = (this.keyword) ? this.keyword : jQuery('#searchval').val(); if (!keyword || keyword === __lang.search) { keyword = ''; } if(!this.exts && _explorer.defaultexttype){ this.exts = _explorer.defaultexttype; } var url = self.url .replace(/&disp\=\d/ig, '') .replace(/&asc\=\d/ig, '') .replace(/&iconview\=\d/ig, '') .replace(/&page\=\d+/ig, '') .replace(/&exts\=[\w,]*(&|$)/ig, '&') .replace(/&tags\=[\w,]*(&|$)/ig, '&') .replace(/&keyword\=\w*(&|$)/, '&') .replace(/&fid\=\w*(&|$)/, '&') .replace(/&gid\=\w*(&|$)/, '&') .replace(/&before\=\w*(&|$)/, '&') .replace(/&after\=\w*(&|$)/, '&') .replace(/&marker\=\w*(&|$)/, '&') .replace(/&t\=\d+/, ''); url = url.replace(/&+$/ig, ''); _selectfile.getData(url + '&exts=' + this.exts + '&tags=' + this.tags + '&disp=' + this.disp + '&fids=' + this.fids + '&gid=' + this.gid + '&before=' + this.before + '&after=' + this.after + '&asc=' + this.asc + '&iconview=' + this.view + '&keyword=' + encodeURI(keyword) + '&page=' + page + '&marker=' + (this.fid ? _explorer.sourcedata.folder[this.fid].nextMarker : '') + '&t=' + new Date().getTime(), function () { //self.PageInfo(); }); }; _selectfile.stack_run = function (winid) { //if(_selectfile.showicosTimer[winid]) window.clearTimeout(_selectfile.showicosTimer[winid]); if (_selectfile.stack_data[winid].length > 0) { var obj = _selectfile.stack_data[winid][0].obj; for (var i = 0; i < _selectfile.speed; i++) { if (_selectfile.stack_data[winid].length > 0) { _selectfile.stack_data[winid][0].obj.CreateIcos(_selectfile.stack_data[winid][0]['data'], 1); _selectfile.stack_data[winid].splice(0, 1); } else break; } _selectfile.showicosTimer[winid] = window.setTimeout(function () { _selectfile.stack_run(winid); }, 1); } else { jQuery(document).trigger('showIcos_done'); } }; _selectfile.prototype.tddrager_start = function (e) { this.XX = e.clientX; document.getElementById('_blank').style.cursor = 'e-resize'; jQuery('#_blank').show(); this.AttachEvent(e); eval("document.onmousemove=function(e){" + this.string + ".tddraging(e?e:window.event);};"); eval("document.onmouseup=function(e){" + this.string + ".tddraged(e?e:window.event);};"); }; _selectfile.prototype.tddraging = function () { document.body.style.cursor = 'e-resize'; }; _selectfile.prototype.tddraged = function (e) { this.DetachEvent(e); jQuery('#_blank').hide(); var xx = e.clientX - this.XX; //计算新的各个td的百分比 var right_width = _window.windows[this.winid].bodyWidth - jQuery('#jstree_area').width(); var current_width = right_width * this.detailper[this.tddrager_disp] / 100; var width = xx + current_width; if (width < 50) { width = 50; } var all_width = []; var other_width = 0; for (var i = 0; i < 4; i++) { all_width[i] = right_width * this.detailper[i] / 100; } var dx = width - current_width; if (xx > 0) { if (all_width[this.tddrager_disp + 1] - dx > 50) { all_width[this.tddrager_disp + 1] -= dx; } else { var dx1 = dx + (all_width[this.tddrager_disp + 1] - 50); all_width[this.tddrager_disp + 1] = 50; if ((this.tddrager_disp + 1 + 1) < 4) { if (all_width[this.tddrager_disp + 1 + 1] - dx1 > 50) { all_width[this.tddrager_disp + 1 + 1] -= dx; } else { var dx2 = dx1 + (all_width[this.tddrager_disp + 1 + 1] - 50); all_width[this.tddrager_disp + 1 + 1] = 50; if ((this.tddrager_disp + 1 + 1 + 1) < 4) { if (all_width[this.tddrager_disp + 1 + 1 + 1] - dx2 > 50) { all_width[this.tddrager_disp + 1 + 1 + 1] -= dx; } else { all_width[this.tddrager_disp + 1 + 1 + 1] = 50; } } } } } other_width = 0; for (i = 0; i < 4; i++) { if (i !== this.tddrager_disp) { other_width += all_width[i]; } } all_width[this.tddrager_disp] = right_width - other_width; } else { all_width[this.tddrager_disp] = width; all_width[this.tddrager_disp + 1] -= dx; } other_width = 0; for (i = 0; i < 4; i++) { if (i != this.tddrager_disp) { other_width += all_width[i]; } } all_width[this.tddrager_disp] = right_width - other_width; for (i = 0; i < 4; i++) { this.detailper[i] = Math.floor((all_width[i] / right_width) * 100); } this.showIcos(this.winid); //alert(document.getElementById('tabs_cover').offsetLeft+'========='+document.getElementById('tabs_cover').offsetWidth); }; _selectfile.prototype.DetachEvent = function () { document.onmousemove = _selectfile.onmousemove; document.onmouseup = _selectfile.onmouseup; document.onselectstart = _selectfile.onselectstart; }; _selectfile.prototype.AttachEvent = function (e) { _selectfile.onmousemove = document.onmousemove; _selectfile.onmouseup = document.onmouseup; _selectfile.onselectstart = document.onselectstart; try { document.onselectstart = function () { return false; }; if (e.preventDefault) { e.preventDefault(); } else { if (this.board.setCapture) { this.board.setCapture(); } } } catch (event) { } }; _selectfile.Search = function (data, keyword) { var data1 = {}; for (var i in data) { if (data[i].name.toLowerCase().indexOf(keyword.toLowerCase()) !== -1) { data1[i] = data[i]; } } return data1; }; _selectfile.Sort = function (data, disp, asc) { var sarr = []; if (!data) { return []; } for (var i in data) { switch (parseInt(disp)) { case 0: if (data[i].type === 'folder') { sarr[sarr.length] = ' ' + data[i].name.replace(/_/g, '') + ' ___' + i; } else { sarr[sarr.length] = data[i].name.replace(/_/g, '') + '___' + i; } break; case 1: sarr[sarr.length] = data[i].size + '___' + i; break; case 2: if (data[i].type === 'folder') { sarr[sarr.length] = ' ' + '___' + i; } else { sarr[sarr.length] = data[i].ext + data[i].type + '___' + i; } break; case 3: //asc=0; sarr[sarr.length] = (data[i].dateline) + '___' + i; break; } } if (parseInt(disp) === 1) { sarr = sarr.sort(function (a, b) { return (parseInt(a) - parseInt(b)); }); } else { sarr = sarr.sort(); } var temp = {}; var temp1 = ''; if (asc > 0) { for (i = 0; i < sarr.length; i++) { temp1 = sarr[i].split('___'); temp['icos_' + temp1[1]] = data[temp1[1]]; } } else { for (i = sarr.length - 1; i >= 0; i--) { temp1 = sarr[i].split('___'); temp['icos_' + temp1[temp1.length - 1]] = data[temp1[temp1.length - 1]]; } } return temp; }; _selectfile.get_template = function (sid, whole, disp, asc) { var obj = _selectfile.cons[sid]; var str = ''; if (whole) { switch (obj.view) { case 0: case 1: case 2: case 3: str = jQuery('#template_middleicon').html(); break; case 4: str = jQuery('#template_detaillist').html(); //替换 break; } //替换参数 str = str.replace(/\{asc_\d\}/g, obj.asc); var regx = new RegExp('\{show_' + obj.disp + '\}', 'ig'); str = str.replace(regx, 'inline-block'); str = str.replace(/\{show_\d}/ig, 'none'); } else { switch (obj.view) { case 0: case 1: case 2: case 3: str = jQuery('#template_middleicon .js-file-item-tpl').html(); break; case 4: str = jQuery('#template_detaillist .js-file-item-tpl').html(); break; } } return str; }; _selectfile.rename = function (id) { var ico = _explorer.sourcedata.icos[id]; if (!ico) { return; } var filemanage = _selectfile.cons[_selectfile.winid]; var el = jQuery('#file_text_' + id); el.css('overflow', 'visible'); el.closest('td').addClass('renaming'); jQuery('#Icoblock_middleicon_' + id).find('.IcoText_div').css('overflow', 'visible'); filemanage.oldtext = el.html(); var html = ''; if (filemanage.view > 3) { html = ""; } else { html = ""; } el.html(html); //jQuery('#content_'+filemanage.winid+' .icoblank[icoid="'+id+'"]').css('z-index',-1); var ele = jQuery('#input_' + id); ele.select(); ele.on('keyup', function (e) { e = e ? e : event; if (e.keyCode === 13) { jQuery(document).trigger('mousedown.file_text_' + id); } }); jQuery(document).on('mousedown.file_text_' + id, function (e) { e = e ? e : window.event; var obj = e.srcElement ? e.srcElement : e.target; if (jQuery(obj).closest('#file_text_' + id).length < 1) { jQuery(document).off('.file_text_' + id); var text = ele.val() || ""; var emptymatch = /^\s*$/; if (emptymatch.test(text)) { top.showDialog(__lang.name_is_must, 'error', '', function () { el.html(filemanage.oldtext); el.css('overflow', 'hidden'); el.closest('td').removeClass('renaming'); jQuery('#Icoblock_middleicon_' + id).find('.IcoText_div').css('overflow', 'hidden'); }); return false; } text = text.replace("\n", ''); if (filemanage.oldtext !== text) { _selectfile.Rename(id, text); } else { el.html(filemanage.oldtext); el.css('overflow', 'hidden'); el.closest('td').removeClass('renaming'); jQuery('#Icoblock_middleicon_' + id).find('.IcoText_div').css('overflow', 'hidden'); } //jQuery('#content_'+filemanage.winid+' .icoblank[icoid="'+id+'"]').css('z-index',10); } }); }; _selectfile.Rename = function (rid, text) { var ico = _explorer.sourcedata.icos[rid]; var filemanage = _selectfile.cons[_selectfile.winid]; jQuery.ajax({ type: 'post', url: _explorer.appUrl + '&do=dzzcp&operation=rename', data: { "text": text, "path": ico.dpath, "t": (new Date().getTime()) }, dataType: "json", success: function (json) { if (json.rid) { _explorer.sourcedata.icos[json.rid].name = json.name; filemanage.data[json.rid].name = json.name; filemanage.CreateIcos(_explorer.sourcedata.icos[json.rid], true); } else { jQuery('#file_text_' + rid).html(filemanage.oldtext); if (json.error) { top.showmessage(json.error, 'danger', 3000, 1); } } }, error: function () { jQuery('#file_text_' + rid).html(filemanage.oldtext); if (json.error) { top.showmessage(json.error, 'danger', 3000, 1); } top.showmessage(__lang.js_network_error, 'danger', 3000, 1); } }); }; _selectfile.downAttach = function (id) { if (!id) { id = _selectfile.selectall.icos[0]; } var data = _explorer.sourcedata.icos[id]; if (!data) { return false; } var url = DZZSCRIPT + '?mod=io&op=download&path=' + encodeURIComponent(data.dpath) + '&t=' + new Date().getTime(); if (BROWSER.ie) { window.open(url); } else { window.frames.hideframe.location = url; } //} return false; }; _selectfile.downThumb = function (id) { var data = _explorer.sourcedata.icos[id]; var url = data.url + '&filename=' + encodeURIComponent(data.name) + '&a=down&t=' + new Date().getTime(); if (BROWSER.ie) { window.open(url); } else { window.frames.hideframe.location = url; } //} return false; }; _selectfile.property = function (rid, isfolder) { var path = ''; if (isfolder) { var folder = _explorer.sourcedata.folder[rid]; path = encodeURIComponent('fid_' + folder.path); } else { var dpaths = []; var ico = null; if (_selectfile.selectall.icos.length > 0 && jQuery.inArray(rid, _selectfile.selectall.icos) > -1) { for (var i = 0; i < _selectfile.selectall.icos.length; i++) { ico = _explorer.sourcedata.icos[_selectfile.selectall.icos[i]]; dpaths.push(ico.dpath); } } else { ico = _explorer.sourcedata.icos[rid]; dpaths = [ico.dpath]; } path = encodeURIComponent(dpaths.join(',')); } showWindow('property', _explorer.appUrl + '&do=ajax&operation=property&paths=' + path); }; _selectfile.NewIco = function (type, fid) { if (!fid && !_selectfile.fid) { return; } if (!fid) { fid = _selectfile.fid; } if (type === 'newFolder') { // showWindow('newFolder', _explorer.appUrl + '&do=ajax&operation=' + type + '&fid=' + fid); $.post(_explorer.appUrl + '&do=ajax&operation=newFolder',{'fid':fid},function(data){ if(data.msg === 'success'){ _explorer.sourcedata.icos[data.rid] = data; _selectfile.cons['f-' + fid].CreateIcos(data); _selectfile.rename(data.rid); }else{ top.showDialog(data.error); } },'json'); } else if (type === 'newLink') { showWindow('newLink', _explorer.appUrl + '&do=ajax&operation=' + type + '&fid=' + fid); } else { $.post(_explorer.appUrl + '&do=ajax&operation=newIco&type=' + type, { 'fid': fid }, function (data) { if (data.msg === 'success') { _explorer.sourcedata.icos[data.rid] = data; _selectfile.cons['f-' + fid].CreateIcos(data); _selectfile.rename(data.rid); } else { top.showDialog(data.error); } }, 'json'); } }; _selectfile.glow = function (el) { var delay = 200; for (var i = 0; i < 4; i++) { window.setTimeout(function () { el.find('.toggleGlow').toggleClass('glow'); }, delay * i); } }; _selectfile.Arrange = function (obj, id, view) { var el = jQuery(obj); if (!id) { id = _selectfile.winid; } var filemanage = _selectfile.cons[id]; if (!view) { view = (parseInt(el.attr('iconview')) < 4 ? 4 : 2); } else { view = view * 1; } jQuery('.icons-thumbnail').attr('iconview', view).find('.dzz').removeClass('dzz-view-module').removeClass('dzz-view-list').addClass(view === 2 ? 'dzz-view-list' : 'dzz-view-module'); jQuery('.icons-thumbnail').attr('iconview', view).find('.dzz').attr('data-bs-original-title', view === 2 ? __lang.deltail_lsit : __lang.medium_icons); var fid = _selectfile.fid; if (fid > 0 && _explorer.Permission_Container('admin', fid)) { jQuery.post(_selectfile.saveurl + '&do=folder', { fid: fid, iconview: view }); _explorer.sourcedata.folder[fid]['iconview'] = view; } filemanage.view = view; filemanage.showIcos(); jQuery('#right_contextmenu .menu-icon-iconview').each(function () { if (jQuery(this).attr('view') * 1 === view * 1) { jQuery(this).removeClass('dzz-check-box-outline-blank').addClass('dzz-check-box'); } else { jQuery(this).addClass('dzz-check-box-outline-blank').removeClass('dzz-check-box'); } }); }; _selectfile.Disp = function (obj, id, disp) { var filemanage = _selectfile.cons[id]; if (filemanage.subfix === 'f') { var fid = filemanage.fid; if (fid > 0 && _explorer.Permission_Container('admin', fid)) { jQuery.post(_selectfile.saveurl + '&do=folder', { fid: fid, disp: parseInt(disp) }); } _explorer.sourcedata.folder[fid]['disp'] = parseInt(disp); } else if (filemanage.subfix === 'cat') { jQuery.post(_selectfile.saveurl + '&do=catsearch', { catid: id.replace('cat-', ''), disp: parseInt(disp) }); } if (disp * 1 === filemanage.disp * 1) { filemanage.asc = filemanage.asc > 0 ? 0 : 1; } filemanage.disp = parseInt(disp); if (filemanage.bz.indexOf('ALIOSS') === 0 || filemanage.bz.indexOf('JSS') === 0) { filemanage.showIcos(); } else { filemanage.pageClick(1); } jQuery('#right_contextmenu .menu-icon-disp').each(function () { if (jQuery(this).attr('disp') * 1 === disp * 1) { jQuery(this).removeClass('dzz-check-box-outline-blank').addClass('dzz-check-box'); jQuery(this).next().find('.caret').removeClass('asc').removeClass('desc').addClass(filemanage.asc > 0 ? 'asc' : 'desc'); } else { jQuery(this).addClass('dzz-check-box-outline-blank').removeClass('dzz-check-box'); jQuery(this).next().find('.caret').removeClass('asc').removeClass('desc'); } }); }; //文件复制 _selectfile.copy = function (rid) { if (!rid) { rid = _selectfile.selectall.icos[0]; } var icosdata = _explorer.sourcedata.icos[rid]; var path = []; var data = {}; if (_selectfile.selectall.icos.length > 0 && jQuery.inArray(rid, _selectfile.selectall.icos) > -1) { if (icosdata.bz && icosdata.bz) { for (var i in _selectfile.selectall.icos) { path.push(_explorer.sourcedata.icos[_selectfile.selectall.icos[i]].dpath); } data = { rids: path, 'bz': icosdata.bz }; } else { for (var i in _selectfile.selectall.icos) { path.push(_explorer.sourcedata.icos[_selectfile.selectall.icos[i]].dpath); } data = { rids: path }; } } else { if (icosdata.bz && icosdata.bz) { data = { rids: [icosdata.dpath], 'bz': icosdata.bz }; } else { data = { rids: [icosdata.dpath] }; } } //复制类型值为1,剪切类型值为2 data.copytype = 1; var url = _explorer.appUrl + '&do=dzzcp&operation=copyfile&t=' + new Date().getTime(); jQuery.post(url, data, function (json) { if (json.msg === 'success') { var filenames = ''; _explorer.cut.iscut = 0; _explorer.cut.icos = json.rid; for (var o in json['rid']) { jQuery('.Icoblock[rid=' + json.rid[o] + ']').removeClass('iscut'); filenames += _explorer.sourcedata.icos[json.rid[o]].name + ','; } filenames = filenames.substr(0, filenames.length - 1); top.showmessage(filenames + __lang.copy_success, 'success', 1000, 1, 'right-bottom'); } else { top.showmessage(json.msg, 'error', 3000, 1, 'right-bottom'); } }, 'json'); }; //文件剪切 _selectfile.cut = function (rid) { var filemanage = _selectfile.cons[_selectfile.winid]; var containid = 'filemanage-' + _selectfile.winid; var total = filemanage.total; if (!rid) { rid = _selectfile.selectall.icos[0]; } var icosdata = _explorer.sourcedata.icos[rid]; var path = []; var data = {}; if (_selectfile.selectall.icos.length > 0 && jQuery.inArray(rid, _selectfile.selectall.icos) > -1) { if (icosdata.bz && icosdata.bz) { for (var i in _selectfile.selectall.icos) { path.push(_explorer.sourcedata.icos[_selectfile.selectall.icos[i]].dpath); } data = { rids: path, 'bz': icosdata.bz }; } else { for (var i in _selectfile.selectall.icos) { path.push(_explorer.sourcedata.icos[_selectfile.selectall.icos[i]].dpath); } data = { rids: path }; } } else { if (icosdata.bz && icosdata.bz) { data = { rids: [icosdata.dpath], 'bz': icosdata.bz }; } else { data = { rids: [icosdata.dpath] }; } } //复制类型值为1,剪切类型值为2 data.copytype = 2; var url = _explorer.appUrl + '&do=dzzcp&operation=copyfile'; jQuery.post(url, data, function (json) { if (json.msg === 'success') { var filenames = ''; _explorer.cut.iscut = 1; _explorer.cut.icos = json.rid; jQuery('.Icoblock').removeClass('iscut'); for (var o in json.rid) { jQuery('.Icoblock[rid=' + json.rid[o] + ']').addClass('iscut'); filenames += _explorer.sourcedata.icos[json.rid[o]].name + ','; total--; } // _selectfile.showTemplatenoFile(containid, total); filenames = filenames.substr(0, filenames.length - 1); top.showmessage(filenames + __lang.cut_success, 'success', 1000, 1, 'right-bottom'); } else { top.showmessage(json.msg, 'error', 3000, 1, 'right-bottom'); } }, 'json'); }; //粘贴 _selectfile.paste = function (fid) { var folder = _explorer.sourcedata.folder[fid]; if (!folder) { return false; } var data = { 'tpath': folder.fid, 'tbz': folder.bz }; var url = _explorer.appUrl + '&do=dzzcp&operation=paste'; var i = 0; var node = null; jQuery.post(url, data, function (json) { if (fid === _selectfile.fid) { if (json.folderarr) { for (i = 0; i < json.folderarr.length; i++) { _explorer.sourcedata.folder[json.folderarr[i].fid] = json.folderarr[i]; } node = jQuery('#position').jstree(true).get_node(folder.gid > 0 ? (folder.type > 0 ? '#g_' + folder.gid : '#gid_' + folder.gid) : '#f-' + folder.pfid); jQuery('#position').jstree('refresh', node); jQuery('#position').jstree('correct_state', node); } if (json.icoarr) { var filemanage = _selectfile.cons['f-' + fid]; for (i = 0; i < json.icoarr.length; i++) { if (json.icoarr[i].pfid === filemanage.fid) { _explorer.sourcedata.icos[json.icoarr[i].rid] = json.icoarr[i]; filemanage.CreateIcos(json.icoarr[i]); } } } } else { top.showmessage('粘贴成功', 'success', 3000, 1); } }, 'json'); }; _selectfile.delIco = function (rid, noconfirm) { var filemanage = _selectfile.cons[_selectfile.winid]; var containid = 'filemanage-' + _selectfile.winid; var total = filemanage.total; if (!rid) { rid = _selectfile.selectall.icos[0]; } var icosdata = _explorer.sourcedata.icos[rid]; if (!noconfirm) { //var finallydelete = (_explorer.deletefinally == 1) ? true:false; var finallydelete = false; if (_selectfile.selectall.icos.length > 0 && jQuery.inArray(rid, _selectfile.selectall.icos) > -1) { if (_explorer.sourcedata.icos[_selectfile.selectall.icos[0]].isdelete > 0 || (_explorer.sourcedata.icos[_selectfile.selectall.icos[0]].bz && _explorer.sourcedata.icos[_selectfile.selectall.icos[0]].bz)) { top.showDialog((finallydelete) ? __lang.js_finallydelete_selectall : __lang.js_delete_selectall,'confirm','' ,function () { _selectfile.delIco(rid, 1); }); } else { top.showDialog((finallydelete) ? __lang.js_finallydelete_selectall_recycle : __lang.js_delete_selectall_recycle,'confirm','', function () { _selectfile.delIco(rid, 1); }); } return; } else if (_explorer.sourcedata.icos[rid].type === 'folder' && _explorer.sourcedata.folder[_explorer.sourcedata.icos[rid].oid] && _explorer.sourcedata.folder[_explorer.sourcedata.icos[rid].oid].iconum) { if (_explorer.sourcedata.icos[rid].isdelete > 0 || (_explorer.sourcedata.icos[rid].bz && _explorer.sourcedata.icos[rid].bz)) { top.showDialog((finallydelete) ? __lang.js_finallydelete_folder.replace('{name}', _explorer.sourcedata.icos[rid].name) : __lang.js_delete_folder.replace('{name}', _explorer.sourcedata.icos[rid].name),'confirm','', function () { _selectfile.delIco(rid, 1); }); } else { top.showDialog((finallydelete) ? __lang.js_finallydelete_folder_recycle.replace('{name}', _explorer.sourcedata.icos[rid].name) : __lang.js_delete_folder_recycle.replace('{name}', _explorer.sourcedata.icos[rid].name),'confirm','', function () { _selectfile.delIco(rid, 1); }); } return; } else { if (_explorer.sourcedata.icos[rid].isdelete > 0 || (_explorer.sourcedata.icos[rid].bz && _explorer.sourcedata.icos[rid].bz)) { top.showDialog((finallydelete) ? __lang.js_finallydelete_confirm.replace('{name}', _explorer.sourcedata.icos[rid].name) : __lang.js_delete_confirm.replace('{name}', _explorer.sourcedata.icos[rid].name),'confirm','' ,function () { _selectfile.delIco(rid, 1); }); } else { top.showDialog((finallydelete) ? __lang.js_finallydelete_confirm_recycle.replace('{name}', _explorer.sourcedata.icos[rid].name) : __lang.js_delete_confirm_recycle.replace('{name}', _explorer.sourcedata.icos[rid].name),'confirm','', function () { _selectfile.delIco(rid, 1); }); } return; } } var path = []; var data = {}; if (_selectfile.selectall.icos.length > 0 && jQuery.inArray(rid, _selectfile.selectall.icos) > -1) { if (icosdata.bz && icosdata.bz) { for (var i in _selectfile.selectall.icos) { path.push(_explorer.sourcedata.icos[_selectfile.selectall.icos[i]].dpath); } data = { rids: path, 'bz': icosdata.bz }; } else { for (var i in _selectfile.selectall.icos) { path.push(_explorer.sourcedata.icos[_selectfile.selectall.icos[i]].dpath); } data = { rids: path }; } } else { if (icosdata.bz && icosdata.bz) { data = { rids: [icosdata.dpath], 'bz': icosdata.bz }; } else { data = { rids: [icosdata.dpath] }; } } var url = _explorer.appUrl + '&do=dzzcp&operation=deleteIco&t=' + new Date().getTime(); var progress = '
'; top.showmessage('

' + __lang.deleting_not_please_close + '

' + progress, 'success', 0, 1, 'right-bottom'); jQuery.post(url, data, function (json) { var rids = []; for (var i in json.msg) { if (json.msg[i] === 'success') { top.showmessage(_explorer.sourcedata.icos[i].name + __lang.delete_success, 'success', 1000, 1, 'right-bottom'); //_selectfile.removerid(i); rids.push(i); total--; //_selectfile.showTemplatenoFile(containid, total); } else { top.showmessage(json.msg[i], 'error', 3000, 1, 'right-bottom'); } } _selectfile.removeridmore(rids); }, 'json'); }; _selectfile.removerid = function (rid) { var data = _explorer.sourcedata.icos[rid]; var containerid = 'filemanage-' + _selectfile.winid; var el = jQuery('#' + containerid + ' .Icoblock[rid=' + rid + ']'); el.remove(); if (data.type === 'folder') { var node = jQuery('#position').jstree(true).get_node(data.gid > 0 ? (data.type > 0 ? '#g_' + data.gid : '#gid_' + data.gid) : '#f-' + data.oid); jQuery('#position').jstree('refresh', node); jQuery('#position').jstree('correct_state', node); } var filemanage = _selectfile.cons[_selectfile.winid]; //删除选中列表 var i = jQuery.inArray(rid, _selectfile.selectall.icos); if (i > -1) { _selectfile.selectall.icos.splice(i, 1); } delete filemanage.data[rid]; delete filemanage.currentdata['icos_' + rid]; filemanage.sum--; filemanage.total--; filemanage.selectInfo(); _selectfile.stack_run(filemanage.winid); //删除时如果有未显示的接着显示 }; _selectfile.removeridmore = function (rids) { if (rids.length > 1) { var rid = rids[0]; var data = _explorer.sourcedata.icos[rid]; var containerid = 'filemanage-' + _selectfile.winid; var types = []; for (var o in rids) { var currentrid = rids[o]; jQuery('#' + containerid + ' .Icoblock[rid=' + currentrid + ']').remove(); var currentdata = _explorer.sourcedata.icos[currentrid]; types.push(currentdata.type); } if ($.inArray('folder', types) != -1) { var node = jQuery('#position').jstree(true).get_node(data.gid > 0 ? (data.type > 0 ? '#g_' + data.gid : '#gid_' + data.gid) : '#f-' + data.oid); jQuery('#position').jstree('refresh', node); jQuery('#position').jstree('correct_state', node); } var filemanage = _selectfile.cons[_selectfile.winid]; for (var o in rids) { var currentrid = rids[o]; //删除选中列表 var i = jQuery.inArray(currentrid, _selectfile.selectall.icos); if (i > -1) { _selectfile.selectall.icos.splice(i, 1); } delete filemanage.data[currentrid]; delete filemanage.currentdata['icos_' + currentrid]; filemanage.sum--; filemanage.total--; filemanage.selectInfo(); _selectfile.stack_run(filemanage.winid); //删除时如果有未显示的接着显示 } } else { _selectfile.removerid(rids[0]); } }