Files
DzzOffice/dzz/share/template/share.htm

338 lines
15 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!--{template common/header_simple_start}-->
<link href="dzz/images/folder/folder.css?{VERHASH}" rel="stylesheet" media="all">
<link rel="stylesheet" type="text/css" href="static/lyear/js/bootstrap-lyear-select/bootstrap-lyear-select.css">
<!--{template common/header_simple_end}-->
<!--{template common/commer_header}-->
<div class="bs-container clearfix">
<div class="bs-left-container clearfix">
<!--{template left}-->
</div>
<div class="left-drager">
<div class="left-drager-op">
<div class="left-drager-sub"></div>
</div>
</div>
<div class="bs-main-container">
<!--{if $_G[adminid]==1}-->
<!--{if !$list}-->
<!--{else}-->
<div class="main-header2">
<ul class="nav nav-pills clearfix">
<li class="pull-right " style="margin:5px 0;">
<form name="search" action="{DZZSCRIPT}" class="form-inline" method="get">
<input type="hidden" name="mod" value="{MOD_NAME}" />
<input type="hidden" name="lpp" value="$lpp">
<input type="hidden" name="type" value="$type" />
<input type="hidden" name="keyword" value="$keyword" />
<input name="username" type="text" value="$username" class="form-control" style="width:90px ;display:inline-block" placeholder="{lang username}" />
<button class="btn btn-outline-info" onclick="this.parentNode.submit()"><i class="glyphicon glyphicon-search"></i></button>
<div class="pull-right">
<div class="input-group mb-3">
<span class="input-group-text">每页显示</span>
<select class="form-select" onchange="if(this.options[this.selectedIndex].value != '') {this.form.lpp.value = this.options[this.selectedIndex].value;this.form.submit(); }">
<option value="10" $checklpp[10]> 10 </option>
<option value="20" $checklpp[20]> 20 </option>
<option value="40" $checklpp[40]> 40 </option>
<option value="100" $checklpp[100]> 100 </option>
<option value="200" $checklpp[200]> 200 </option>
</select>
<span class="input-group-text">条记录</span>
</div>
</div>
</form>
</li>
</ul>
</div>
<!--{/if}-->
<!--{/if}-->
<div class="main-content clearfix">
<!--{if !$list}-->
<div style="text-align: center;">
<img src="static/image/common/no_list.png" /><br>
<span class="no-result-title">{lang no_relevant_content}</span>
</div>
<!--{else}-->
<div node-type="module" class="module-list-toolbar" style="display: none;">
<div class="bar clearfix">
<span class="text"><span node-type="chk" class="chk-box">
<span class="chk chk-ico"></span>
</span>
{lang checked}<span node-type="num">0</span>{lang file_number_type}</span>
<button class="btn btn-danger" data-key="unshare"><span>{lang del_share}</span> </button><!--{if $_G[adminid]==1}-->
<button class="btn btn-warning" data-key="forbidden"><span>{lang screen_share}</span> </button>
<button class="btn btn-success" data-key="allow"><span>{lang cancel_shielding}</span> </button><!--{/if}-->
</div>
</div>
<div node-type="module" class="module-list-view">
<div node-type="wrapper" class="list-view-home">
<div node-type="title" class="title">
<div class="item clearfix">
<!-- 第一列 -->
<div node-type="title-col" data-key="title" class="col c1">
<div class="name"> <span>{lang sharing_file}</span>
<span node-type="order-status" class="asc <!--{if $asc}-->desc<!--{/if}-->" style="visibility: <!--{if $order=='title'}-->visible<!--{else}-->hidden<!--{/if}-->;"></span> </div>
</div>
<!-- 其他列 -->
<div node-type="title-col" data-key="dateline" class="col"> {lang share_time}
<span node-type="order-status" class="asc <!--{if $asc}-->desc<!--{/if}-->" style="visibility: <!--{if $order=='dateline'}-->visible<!--{else}-->hidden<!--{/if}-->;"></span>
</div>
<div node-type="title-col" data-key="count" class="col"> {lang view_count}
<span node-type="order-status" class="asc <!--{if $asc}-->desc<!--{/if}-->" style="visibility: <!--{if $order=='count'}-->visible<!--{else}-->hidden<!--{/if}-->;"></span>
</div>
<div node-type="title-col" data-key="type" class="col"> {lang file_type}
<span node-type="order-status" class="asc <!--{if $asc}-->desc<!--{/if}-->" style="visibility: <!--{if $order=='type'}-->visible<!--{else}-->hidden<!--{/if}-->;"></span>
</div>
<!--{if $_G[adminid]==1}-->
<div node-type="title-col" data-key="username" class="col"> {lang share_user}
<span node-type="order-status" class="asc <!--{if $asc}-->desc<!--{/if}-->" style="visibility: <!--{if $order=='username'}-->visible<!--{else}-->hidden<!--{/if}-->;"></span>
</div>
<!--{/if}-->
</div>
</div>
<div node-type="list" class="list list-share">
<!--{loop $list $value}-->
<div node-type="item" data-sid="$value[id]" data-status="$value[status]" class="item clearfix">
<!-- 第一列 -->
<div node-type="name" class="col c1 name" title="$value[title]" data-name="$value[title]">
<span node-type="chk" class="chk"> <span class="chk-ico"></span></span>
<!--{if $value[img]}--><img class="icon" src="$value[img]" />
<!--{/if}-->
<!--{if $value[status]<0}--><span node-type="name-tip" style="color: red;display: inline-block;">($value[fstatus])</span><!--{/if}-->
<span class="name-text-wrapper"> <span node-type="name-text" data-href="$value[sharelink]" class="name-text enabled">$value[title]</span> </span>
<!-- 私密分享图标 -->
<!--{if $value[password]}--><span class="ico-private-share" title="{lang private_share}"></span><!--{/if}-->
</div>
<!-- 其他列 -->
<div class="col dateline" data-dateline="$value[dateline]">$value[fdateline]</div>
<div class="col count" data-count="$value[count]">$value[count]{lang degree}</div>
<div class="col type" data-type="$value[ftype]">$value[ftype]</div>
<!--{if $_G[adminid]==1}-->
<div class="col username" data-type="$value[username]">
<a href="user.php?uid=$value[uid]">$value[username]</a>
</div>
<!--{/if}-->
<!-- 复制 -->
<div node-type="copy-bar" class="copy-bar">
<!--{if $value[qrcode]}-->
<a href="javascript:;" class="qrcode glyphicon glyphicon-qrcode" title="{lang scon_code_send_mobile}" data-container="body" data-html="true" data-bs-trigger="hover" data-bs-toggle="popover" data-bs-placement="right" data-content="<p class='text-center'><img src='$value[qrcode]'></p>"></a><!--{/if}-->
{lang link}
<a href="$value[sharelink]" target="_dzz">$value[sharelink]</a>
<!--{if $value[password]}-->&nbsp;{lang extract_password}$value[password]<!--{/if}-->
&nbsp;<button class="btn btn-primary js_copy" data-clipboard-text="{eval echo $value[password]?(分享名称.':'.$value[title].'
'.分享链接.':'.$value[sharelink].'
'.提取码.':'.$value[password]):$value[sharelink];}" style="position:relative"><i class="glyphicon glyphicon-duplicate"></i>复制<span class="alert copy-success alert-success hide ">{lang copy_success_paste_need_place}</span></button>
<!--{if $value[password]}-->
<button class="btn btn-primary js_copy" data-clipboard-text="$value[password]" style="position:relative"><i class="glyphicon glyphicon-duplicate"></i>提取码<span class="alert copy-success alert-success hide ">{lang copy_success_paste_need_place}</span></button>
<!--{/if}-->
<!--{if $value[endtime]}-->&nbsp;{lang expiration_time}$value[fendtime]<!--{/if}-->
<!--{if $value[times]}-->&nbsp;{lang limited_number}$value[count] / $value[times]<!--{/if}-->
</div>
</div>
<!--{/loop}-->
<div class="page clearfix" style="padding: 20px 0">$multi</div>
</div>
</div>
</div>
<!--{/if}-->
</div>
</div>
</div>
<script type="text/javascript">
jQuery(document).ready(function(e) {
jQuery('select').lyearSelect({
width:70,
});
jQuery(document).on('mouseenter', 'div[node-type=item]', function() {
jQuery(this).addClass('item-hover');
});
jQuery(document).on('mouseleave', 'div[node-type=item]', function() {
jQuery(this).removeClass('item-hover');
});
jQuery(document).on('click', 'span[node-type=name-text]', function() {
if(top._config) {
top.OpenWindow('url', jQuery(this).data('href'), jQuery(this).html());
} else {
window.open(jQuery(this).data('href'), jQuery(this).html());
}
});
jQuery('.chk[node-type=chk-all]').on('click', function() {
jQuery(this).addClass('chked');
jQuery('.item').each(function() {
jQuery(this).addClass('item-active').find('span[node-type=chk]').addClass('chked');
});
refresh_header();
return false;
});
jQuery(document).on('click', '.item .chk', function() {
jQuery(this).toggleClass('chked');
jQuery(this).closest('.item').toggleClass('item-active');
jQuery('.copy-bar').hide();
refresh_header();
return false;
});
jQuery('.module-list-toolbar .chk').on('click', function() {
if(jQuery(this).hasClass('chked')) {
jQuery(this).removeClass('chked');
jQuery('.chk[node-type=chk-all]').removeClass('chked');
jQuery('.module-list-toolbar').hide();
jQuery('.item.item-active').each(function() {
jQuery(this).removeClass('item-active').find('span[node-type=chk]').removeClass('chked');
jQuery(this).find('.copy-bar').hide();
});
} else {
jQuery(this).addClass('chked');
jQuery('.item:not(.item-active)').each(function() {
jQuery(this).addClass('item-active').find('span[node-type=chk]').addClass('chked');
});
}
});
jQuery(document).on('click', 'div[node-type=item]', function(e) {
e = e ? e : event;
var el = jQuery(this);
var obj = e.srcElement ? e.srcElement : e.target;
if(jQuery(obj).closest('.js_copy').length) return false;
var actives = jQuery('.item-active').length;
if(e.ctrlKey) {
jQuery('.item-active').not(this).find('.copy-bar').hide();
} else {
jQuery('.item-active').not(this).each(function() {
jQuery(this).removeClass('item-active').find('span[node-type=chk]').removeClass('chked')
.end().find('.copy-bar').hide();
});
}
if(el.hasClass('item-active') && (actives == 1 || e.ctrlKey)) {
el.removeClass('item-active').find('span[node-type=chk]').removeClass('chked');
el.find('.copy-bar').hide();
} else {
el.addClass('item-active').find('span[node-type=chk]').addClass('chked');
if(parseInt(el.data('status')) > -1) el.find('.copy-bar').show();
}
refresh_header();
});
var client = new Clipboard('.js_copy');
client.on("success", function(e) {
var self = e.trigger;
jQuery(self).find('.copy-success').removeClass('hide');
window.setTimeout(function() {
jQuery(self).find('.copy-success').addClass('hide');
}, 1000);
});
jQuery('.title .item .col[node-type=title-col]').on('click', function() {
var el = jQuery(this);
el.find('.asc').css('visibility', 'visible').toggleClass('desc');
el.siblings().find('.asc').css('visibility', 'hidden');
item_sort(el.data('key'), el.find('.asc').hasClass('desc') ? 'desc' : 'asc');
});
jQuery('button[data-key=unshare]').on('click', function() {
var msg = '{lang share_stop_sharing1}';
showDialog(msg, 'confirm', '{lang affirm_stop_sharing}', share_delete, 1)
});
<!--{if $_G[adminid]==1}-->
jQuery('button[data-key=forbidden]').on('click', function() {
var msg = '{lang share_stop_sharing2}';
showDialog(msg, 'confirm', '{lang affirm_screen_share}', share_forbidden, 1)
});
jQuery('button[data-key=allow]').on('click', function() {
var msg = '{lang share_stop_sharing3}';
showDialog(msg, 'confirm', '{lang affirm_cancel_shielding}', share_allow, 1)
});
<!--{/if}-->
jQuery('[data-bs-toggle="popover"]').popover();
});
function item_sort(key, order) {
location.href = '$theurl&order=' + key + '&asc=' + (order == 'desc' ? 1 : 0);
return;
}
function share_delete() {
var sids = new Array();
jQuery('.list .item-active').each(function() {
sids.push(jQuery(this).data('sid'));
});
jQuery.post('{MOD_URL}&op=ajax&do=delete', { "sids": sids }, function(json) {
for(var o in json.msg){
if(json.msg[o]['success']){
jQuery('.list div[data-sid="'+o+'"]').remove();
}
}
refresh_header();
}, 'json');
}
<!--{if $_G[adminid]==1}-->
function share_forbidden() {
var sids = new Array();
jQuery('.list .item-active').each(function() {
sids.push(jQuery(this).data('sid'));
});
jQuery.post('{DZZSCRIPT}?mod=share&op=ajax&do=forbidden', { "sids": sids, "flag": 'forbidden' }, function(json) {
if(json.msg == 'success') {
showmessage('{lang share_screen_success}', 'success', 2000, 1);
jQuery('.list .item-active').each(function() {
jQuery(this).attr('data-status', '-4');
if(jQuery(this).find('span[node-type=name-tip]').length) {
jQuery(this).find('span[node-type=name-tip]').html('({lang been_blocked})');
} else {
jQuery('<span node-type="name-tip" style="color: red;display: inline-block;">({lang been_blocked})</span>').insertBefore('.list .item-active .name-text-wrapper');
}
});
refresh_header();
} else {
showmessage('{lang shielding_failure}', 'danger', 3000, 1);
}
}, 'json');
}
function share_allow() {
var sids = new Array();
jQuery('.list .item-active').each(function() {
if(jQuery(this).data('status') == '-4') sids.push(jQuery(this).data('sid'));
});
if(sids.length) {
jQuery.post('{DZZSCRIPT}?mod=share&op=ajax&do=forbidden', { "sids": sids, "flag": 'allow' }, function(json) {
if(json.msg == 'success') {
showmessage('{lang cancel_shielding_success}', 'success', 2000, 1);
jQuery('.list .item-active').attr('data-status', '0').find('span[node-type=name-tip]').remove();
refresh_header();
} else {
showmessage('{lang cancel_shielding_failure}', 'danger', 3000, 1);
}
}, 'json');
}
}
<!--{/if}-->
function refresh_header() {
var sum = jQuery('.list .item.item-active').length;
var tsum = jQuery('.list .item').length;
var psum = jQuery('.list .item.item-active[data-status=-4]').length;
if(sum > 0) {
jQuery('.module-list-toolbar').find('span[node-type=num]').html(sum).end().show();
if(sum == tsum) {
jQuery('.module-list-toolbar').find('.chk').addClass('chked');
} else {
jQuery('.module-list-toolbar').find('.chk').removeClass('chked');
}
if(psum == sum) {
jQuery('.module-list-toolbar .bar').find('button[data-key=forbidden]').hide();
} else {
jQuery('.module-list-toolbar .bar').find('button[data-key=forbidden]').show();
}
if(psum > 0) {
jQuery('.module-list-toolbar .bar').find('button[data-key=allow]').show();
} else {
jQuery('.module-list-toolbar .bar').find('button[data-key=allow]').hide();
}
} else {
jQuery('.module-list-toolbar').hide();
jQuery('.chk[node-type=chk-all]').removeClass('chked');
}
}
</script>
<script type="text/javascript" src="static/lyear/js/bootstrap-lyear-select/bootstrap-lyear-select.js"></script>
<script type="text/javascript" src="static/clipboard/clipboard.min.js?{VERHASH}"></script>
<!--{template common/footer_simple}-->