Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
hexbee
Cloudreve
提交
4964f53d
C
Cloudreve
项目概览
hexbee
/
Cloudreve
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
C
Cloudreve
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
4964f53d
编写于
3月 09, 2018
作者:
H
HFO4
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
视频预览支持弹幕
上级
037e6ad0
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
100 addition
and
102 deletion
+100
-102
application/index/view/share/share_single.html
application/index/view/share/share_single.html
+94
-100
static/js/share_single.js
static/js/share_single.js
+6
-2
未找到文件。
application/index/view/share/share_single.html
浏览文件 @
4964f53d
{extend name="header_public" /}
{block name="title"}{$fileData.orign_name} - {$options.siteName}{/block}
{block name="content"}
<link
rel=
"stylesheet"
href=
"/static/css/share.css"
/>
<link
rel=
"stylesheet"
href=
"/static/css/photoswipe.css"
>
<link
rel=
"stylesheet"
href=
"/static/css/default-skin/default-skin.css"
>
<script
src=
"/static/js/jquery.color.js"
></script>
</head>
<body
data-ma-header=
"teal"
>
<link
rel=
"stylesheet"
href=
"/static/css/share.css"
/>
<link
rel=
"stylesheet"
href=
"/static/css/photoswipe.css"
>
<link
rel=
"stylesheet"
href=
"/static/css/default-skin/default-skin.css"
>
<script
src=
"/static/js/jquery.color.js"
></script>
</head>
<body
data-ma-header=
"teal"
>
<div
class=
"modal fade"
id=
"previewModal"
role=
"dialog"
>
<div
class=
"modal-dialog"
role=
"document"
>
<div
class=
"modal-content"
>
<div
class=
"modal-header"
>
<button
type=
"button"
class=
"close"
onclick=
"audioPause()"
data-dismiss=
"modal"
>
<span
aria-hidden=
"true"
>
×
</span>
<span
class=
"sr-only ng-binding"
>
关闭
</span>
</button>
<h4
class=
"modal-title"
>
视频预览
</h4>
</div>
<div
class=
"modal-body"
>
<div
class=
"text-center previewContent"
>
<div
class=
"modal-dialog"
role=
"document"
>
<div
class=
"modal-content"
>
<div
class=
"modal-header"
>
<button
type=
"button"
class=
"close"
onclick=
"audioPause()"
data-dismiss=
"modal"
>
<span
aria-hidden=
"true"
>
×
</span>
<span
class=
"sr-only ng-binding"
>
关闭
</span>
</button>
<h4
class=
"modal-title"
>
视频预览
</h4>
</div>
<div
class=
"modal-body"
>
<div
class=
"text-center previewContent"
>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div
class=
"pswp"
tabindex=
"-1"
role=
"dialog"
aria-hidden=
"true"
>
<!-- Background of PhotoSwipe.
It's a separate element, as animating opacity is faster than rgba(). -->
<div
class=
"pswp"
tabindex=
"-1"
role=
"dialog"
aria-hidden=
"true"
>
<!-- Background of PhotoSwipe.
It's a separate element, as animating opacity is faster than rgba(). -->
<div
class=
"pswp__bg"
></div>
<!-- Slides wrapper with overflow:hidden. -->
<div
class=
"pswp__scroll-wrap"
>
...
...
@@ -47,7 +45,6 @@
<div
class=
"pswp__top-bar"
>
<!-- Controls are self-explanatory. Order can be changed. -->
<div
class=
"pswp__counter"
></div>
<button
class=
"pswp__button pswp__button--close"
title=
"Close (Esc)"
></button>
<button
class=
"pswp__button pswp__button--fs"
title=
"Toggle fullscreen"
></button>
<button
class=
"pswp__button pswp__button--zoom"
title=
"Zoom in/out"
></button>
...
...
@@ -55,14 +52,14 @@
<!-- element will get class pswp__preloader--active when preloader is running -->
<div
class=
"pswp__preloader"
>
<div
class=
"pswp__preloader__icn"
>
<div
class=
"pswp__preloader__cut"
>
<div
class=
"pswp__preloader__donut"
></div>
</div>
<div
class=
"pswp__preloader__cut"
>
<div
class=
"pswp__preloader__donut"
></div>
</div>
</div>
</div>
</div>
<div
class=
"pswp__share-modal pswp__share-modal--hidden pswp__single-tap"
>
<div
class=
"pswp__share-tooltip"
></div>
<div
class=
"pswp__share-tooltip"
></div>
</div>
<button
class=
"pswp__button pswp__button--arrow--left"
title=
"Previous (arrow left)"
>
</button>
...
...
@@ -71,84 +68,81 @@
<div
class=
"pswp__caption"
>
<div
class=
"pswp__caption__center"
></div>
</div>
</div>
</div>
</div>
</div>
<nav
class=
"navbar navbar-inverse"
>
<div
class=
"container-fluid"
>
<div
class=
"container"
>
{include file="navbar_public" /}
<div
class=
"header-panel shadow-z-2"
>
<div
class=
"container-fluid"
>
<div
class=
"row"
>
</div>
<nav
class=
"navbar navbar-inverse"
>
<div
class=
"container-fluid"
>
<div
class=
"container"
>
{include file="navbar_public" /}
<div
class=
"header-panel shadow-z-2"
>
<div
class=
"container-fluid"
>
<div
class=
"row"
>
</div>
</div>
<div
class=
"container main"
>
<div
class=
"col-md-3"
></div>
<div
class=
"col-md-6"
>
<div
class=
"jumbotron"
>
<div
class=
"card_top"
>
<div
class=
"row top-color"
>
<div
class=
"card-top-row"
>
<div
class=
"file-sign col-xs-2"
>
<i
class=
"fa fa-file-image-o"
aria-hidden=
"true"
></i>
</div>
<div
class=
"file_title col-xs-10"
>
</div>
<div
class=
"container main"
>
<div
class=
"col-md-3"
></div>
<div
class=
"col-md-6"
>
<div
class=
"jumbotron"
>
<div
class=
"card_top"
>
<div
class=
"row top-color"
>
<div
class=
"card-top-row"
>
<div
class=
"file-sign col-xs-2"
>
<i
class=
"fa fa-file-image-o"
aria-hidden=
"true"
></i>
</div>
<div
class=
"file_title col-xs-10"
>
<div
class=
"file_title_inside str_wrap"
>
{$fileData.orign_name|htmlspecialchars=ENT_NOQUOTES}
{$fileData.orign_name|htmlspecialchars=ENT_NOQUOTES}
</div>
<div
class=
"file_info"
><span
id=
"size"
></span>
<span><i
class=
"fa fa-cloud-download"
aria-hidden=
"true"
></i>
<span
id=
"down_num"
></span></span>
<span><i
class=
"fa fa-eye"
aria-hidden=
"true"
></i>
<span
id=
"view_num"
></span></span></div>
</div>
</div>
</div>
<div
class=
"card-middle"
>
<button
class=
"btn btn-info btn-fab"
id=
"previewButton"
><i
class=
"material-icons fa fa-eye"
></i><div
class=
"ripple-container"
></div></button>
<button
class=
"btn btn-primary btn-fab"
id=
"download"
><i
class=
"material-icons fa fa-download"
></i><div
class=
"ripple-container"
></div></button>
</div>
</div>
<div
class=
"card_botom"
>
<div
class=
"row bottom-width"
>
<div
class=
"avatar "
>
<img
src=
"/Member/Avatar/{$userInfo.id}/s"
class=
"img-circle animated rotateIn"
>
<div
class=
"nick"
>
<span
class=
"nickname"
><a
class=
"notWave"
href=
"/Profile/{$userInfo.id}"
>
{$userInfo.user_nick}
</a></span>
<br>
<span
class=
"share_time"
>
分享于
<span
id=
"share_time"
></span></span>
</div>
<div
class=
"card-middle"
>
<button
class=
"btn btn-info btn-fab"
id=
"previewButton"
><i
class=
"material-icons fa fa-eye"
></i><div
class=
"ripple-container"
></div></button>
<button
class=
"btn btn-primary btn-fab"
id=
"download"
><i
class=
"material-icons fa fa-download"
></i><div
class=
"ripple-container"
></div></button>
</div>
</div>
<div
class=
"card_botom"
>
<div
class=
"row bottom-width"
>
<div
class=
"avatar "
>
<img
src=
"/Member/Avatar/{$userInfo.id}/s"
class=
"img-circle animated rotateIn"
>
<div
class=
"nick"
>
<span
class=
"nickname"
><a
class=
"notWave"
href=
"/Profile/{$userInfo.id}"
>
{$userInfo.user_nick}
</a></span>
<br>
<span
class=
"share_time"
>
分享于
<span
id=
"share_time"
></span></span>
</div>
</div>
</div>
</div>
</div>
<div
class=
"col-md-3"
></div>
</div>
</div>
</div
></div>
<
div
class=
"col-md-3"
><
/div>
</div>
</body>
<script
src=
"/static/js/jquery.liMarquee.js"
></script>
<script
type=
"text/javascript"
>
shareInfo
=
{
fileSize
:
"
{$fileData.size}
"
,
shareDate
:
"
{$shareData.share_time}
"
,
ownerUid
:
"
{$userInfo.id}
"
,
ownerNick
:
"
{$userInfo.user_nick}
"
,
downloadNum
:
"
{$shareData.download_num}
"
,
ViewNum
:
"
{$shareData.view_num}
"
,
shareId
:
"
{$shareData.share_key}
"
,
fileName
:
"
{$fileData.orign_name}
"
,
picSize
:
"
{$fileData.pic_info}
"
,
{
eq
name
=
"
$loginStatus
"
value
=
"
1
"
}
allowPreview
:
true
,
{
else
/
}
allowPreview
:{
$allowPreview
},
{
/
eq
}
};
</script>
<script
src=
"/static/js/share_single.js"
>
</script>
{$options.js_code}
{/block}
\ No newline at end of file
</div>
</body>
<script
src=
"/static/js/jquery.liMarquee.js"
></script>
<script
type=
"text/javascript"
>
shareInfo
=
{
fileSize
:
"
{$fileData.size}
"
,
shareDate
:
"
{$shareData.share_time}
"
,
ownerUid
:
"
{$userInfo.id}
"
,
ownerNick
:
"
{$userInfo.user_nick}
"
,
downloadNum
:
"
{$shareData.download_num}
"
,
ViewNum
:
"
{$shareData.view_num}
"
,
shareId
:
"
{$shareData.share_key}
"
,
fileName
:
"
{$fileData.orign_name}
"
,
picSize
:
"
{$fileData.pic_info}
"
,
{
eq
name
=
"
$loginStatus
"
value
=
"
1
"
}
allowPreview
:
true
,
{
else
/
}
allowPreview
:{
$allowPreview
},
{
/
eq
}
};
</script>
<script
src=
"/static/js/share_single.js"
>
</script>
{$options.js_code}
{/block}
\ No newline at end of file
static/js/share_single.js
浏览文件 @
4964f53d
...
...
@@ -80,6 +80,10 @@
video
:
{
url
:
url
},
danmaku
:
{
id
:
'
Cloudreve_
'
+
shareInfo
.
shareId
,
api
:
'
https://api.prprpr.me/dplayer/
'
}
});
dp
.
on
(
"
fullscreen
"
,
function
(){
$
(
"
.modal-backdrop
"
).
hide
();
...
...
@@ -133,9 +137,9 @@
$
(
"
.file-sign
"
).
html
(
'
<i class="fa fa-file-movie-o" aria-hidden="true"></i>
'
)
$
(
"
#previewButton
"
).
click
(
function
()
{
if
(
shareInfo
.
allowPreview
)
{
$
(
"
.previewContent
"
).
html
(
'
<div id="preview-target" style="width: 100%;object-fit: fill" class="preview"></div>
'
);
$
(
'
#previewModal
'
).
modal
();
$
(
"
.previewContent
"
).
html
(
'
<div id="preview-target" style="width: 100%;object-fit: fill;height:400px" class="preview"></div>
'
);
loadDPlayer
(
'
/Share/Preview/
'
+
shareInfo
.
shareId
);
$
(
'
#previewModal
'
).
modal
();
}
else
{
toastr
[
"
error
"
](
"
请先登录
"
)
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录