Files
SEONexus/code/app/home/view/videoDadi/video/getVideoPlayUrl.html
2025-07-06 23:30:12 +08:00

424 lines
18 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
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.
{extend name="base" /}
{block name="get-data"}
{video:info v_id="$Request.route.intVId" v_key="arrVideo" /}
{site:grm page_code="h5_video_info" diff="$arrVideo.v_id" num="120" g_key="arrGrm" /}
{/block}
{block name="title"}
{site:replace code="VIDEO@GETVIDEOPLAY@TITLE" diff="$Request.route.intVId" /}
{/block}
{block name="keywords"}
{site:replace code="VIDEO@GETVIDEOPLAY@KEYWORDS" diff="$Request.route.intVId"}
{/block}
{block name="description"}
{site:replace code="VIDEO@GETVIDEOPLAY@DESCRIPTION" diff="$Request.route.intVId"}
{/block}
{block name="head"}
{// Open Graph 协议用于Facebook、LinkedIn等}
<meta property="og:title" content='{site:replace code="VIDEO@GETVIDEOINFO@TITLE"}'>
<meta property="og:description" content='{site:replace code="VIDEO@GETVIDEOINFO@DESCRIPTION"}'>
{switch $arrVideo.v_parent_category_en }
{case 'dian-ying' }
<meta property="og:type" content="video.movie" />
{/case}
{case 'dian-shi-ju' }
<meta property="og:type" content="video.episode" />
{/case}
{case 'zong-yi' }
<meta property="og:type" content="video.tv_show" />
{/case}
{case 'dong-man' }
<meta property="og:type" content="video.episode" />
{/case}
{case 'duan-ju-da-quan' }
<meta property="og:type" content="video.episode" />
{/case}
{default /}
<meta property="og:type" content="video.movie" />
{/switch}
<meta property="og:url" content='https://{$DomainModel->d_domain}{site:vurl v_id="$arrVideo.v_id" v_py="$arrVideo.v_name_en"/}'>
<meta property="og:image" content="{$arrVideo.v_pic}">
<meta property="og:site_name" content="{$DomainModel->d_name}">
<meta property="og:video:type" content="video/m3u8">
{// Twitter Card用于Twitter/X}
<meta name="twitter:card" content="player">
<meta name="twitter:title" content='{site:replace code="VIDEO@GETVIDEOINFO@TITLE"}'>
<meta name="twitter:description" content='{site:replace code="VIDEO@GETVIDEOINFO@DESCRIPTION"}'>
<meta name="twitter:image" content="{$arrVideo.v_pic}">
{// 结构化数据}
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "VideoObject",
"name": "{$arrVideo.v_name}",
"description": "{$arrVideo.v_description}",
"thumbnailUrl": "{$arrVideo.v_pic}",
"uploadDate": "{:date('Y-m-d')}",
"url": 'https://{$DomainModel->d_domain}{site:vurl v_id="$arrVideo.v_id" v_py="$arrVideo.v_name_en"/}',
"inLanguage": [
{volist name='$arrVideo.v_lang' id='strVideoLang' key='index'}
"{$strVideoLang}",
{/volist}
],
"contentLocation": [
{volist name='$arrVideo.v_area' id='strVideoArea' key='index'}
{
"@type": "Place",
"name": "{$strVideoArea}"
},
{/volist}
],
"director": [
{volist name='$arrVideo.v_director' id='strVideoDirector' key='index'}
{
"@type": "Person",
"name": "{$strVideoDirector}"
}
{/volist}
],
"actor": [
{volist name='$arrVideo.v_actor' id='strVideoActor' key='index'}
{
"@type": "Person",
"name": "{$strVideoActor}"
},
{/volist}
],
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "{$arrVideo.v_score}",
},
"publisher": {
"@type": "Organization",
"name": "{$DomainModel->d_name}",
}
}
</script>
{/block}
{block name="head-css"}
<link rel="stylesheet" href="https://lf26-cdn-tos.bytecdntp.com/cdn/expire-1-M/dplayer/1.24.0/DPlayer.min.css">
<style type="text/css">
</style>
{/block}
{block name='body-class'}video-play-page{/block}
{block name="strPageCode"}
<?php $strPageCode = 'play'; ?>
{/block}
{block name="main"}
<div class="container">
<h1 class="view-title">
{site:replace code="VIDEO@GETVIDEOPLAY@H1"}
</h1>
<h4 class="view-description">{site:replace code="VIDEO@GETVIDEOPLAY@TEXT"}</h4>
<div class="row">
<div class="col-lg-wide-75 col-xs-1 padding-0">
<div class="stui-pannel stui-pannel-bg clearfix">
<div class="stui-pannel-box">
<div class="stui-pannel-bd">
<div class="stui-player col-pd">
<div class="stui-player__head">
<span class="pull-right">
<a style="color: rgb(202, 129, 28);" href="/">
<i class="iconfont icon-home"></i>
</a>
</span>
<a style="color: rgb(233, 161, 136);" href="javascript:;"
onclick="window.history.go(-1)">
<i class="iconfont icon-back"></i>
返回
</a>
</div>
<div class="dplayer-prent">
<div id="dplayer" class="dplayer" muted=“muted” style="margin-top: 5px;"></div>
</div>
<div class="stui-player__detail detail">
<ul class="more-btn">
<li>
<a style="color: rgb(204, 180, 44);" href="javascript:;" class="btn btn-default"
onclick="window.location.reload()">
刷新
<i class="icon iconfont icon-refresh hidden-xs"></i>
</a>
</li>
{//
<li>
<a style="color: rgb(14, 41, 1);" class="btn btn-default copylink"
href="javascript:;">
分享
<i class="icon iconfont icon-share hidden-xs"></i>
</a>
</li>
{if $Request.route.intPlayIndex > 1}
<li>
<a style="color: rgb(30, 99, 7);" class="btn btn-default"
href='{site:vpurl v_id="$arrVideo.v_id" v_py="$arrVideo.v_name_en" play_type="default" play_index="1" /}'>
<i class="icon iconfont icon-back hidden-xs"></i>
上一集
</a>
</li>
{/if}
{if $Request.route.intPlayIndex < 100} <li>
<a style="color: rgb(246, 155, 213);" class="btn btn-default"
href='{site:vpurl v_id="$arrVideo.v_id" v_py="$arrVideo.v_name_en" play_type="default" play_index="1" /}'>
下一集
<i class="icon iconfont icon-more hidden-xs"></i>
</a>
</li>
{/if}
}
</ul>
<h1 class="title"><a style="color: rgb(244, 139, 75);"
href='{site:vurl v_id="$arrVideo.v_id" v_py="$arrVideo.v_name_en"/}'>
《{$arrVideo.v_name}》
</a>
</h1>
<p class="data margin-0">
<span class="text-muted">类型:</span>
<a href='{site:vsurl key="$arrVideo.v_category" p="1"/}'>{$arrVideo.v_category}</a>
&nbsp;
<span class="split-line"></span>
<span class="text-muted">地区:</span>
{volist name='$arrVideo.v_actor' id='vo' key='index'}
<a style="color: rgb(240, 3, 132)" href='{site:vsurl key="$vo" p="1"/}'>{$vo}</a>
&nbsp;
{/volist}
<span class="split-line"></span>
<span class="text-muted">年份:</span>
<a style="color: rgb(102, 158, 132)"
href='{site:vclurl parent_category="all" category="all" area="all" lang="all" year="$arrVideo.v_year" order="all" page="1"/}'>{$arrVideo.v_year}</a>
&nbsp;
</p>
</div>
</div>
</div>
</div>
</div>
<div class="stui-pannel stui-pannel-bg clearfix">
<div class="stui-pannel-box b playlist mb">
<div class="stui-pannel_hd">
<div class="stui-pannel__head bottom-line active clearfix">
<span class="more text-muted pull-right">无需安装任何插件</span>
<?php $keyLineGroup = 0;?>
{foreach $arrVideo.v_play_url as $strPlayGroupName=>$arrPlayUrlType }
<?php $keyLineGroup ++ ;?>
<h3 class='title play-group-head {eq name="$keyLineGroup" value="1"}active {/eq}'
id="line_head_{$strPlayGroupName}" onclick="checkLine('{$strPlayGroupName}')">
<img src="/template/videodadi/icon/icon_30.png">
{$strPlayGroupName}
</h3>
&nbsp;
{/foreach}
</div>
</div>
<div class="stui-pannel_bd col-pd clearfix">
<?php $keyLineGroup = 0;?>
{foreach $arrVideo.v_play_url as $strPlayGroupName=>$arrPlayUrlType }
<?php $keyLineGroup ++ ;?>
<ul class='stui-content__playlist clearfix play-group-list {eq name="$keyLineGroup" value="1"}active {/eq}' id="playlist_{$strPlayGroupName}">
<?php $keyLine = 0;?>
{volist name='$arrPlayUrlType' id='arrPlayUrl' }
<?php $keyLine ++ ;?>
<li class="{if $keyLine == $Request.route.intPlayIndex}active{/if}">
<a href='{site:vpurl v_id="$arrVideo.v_id" v_py="$arrVideo.v_name_en" play_type="$strPlayGroupName" play_index="$keyLine" /}'
m3u8="{$arrPlayUrl.url}">{$arrPlayUrl.name}</a>
</li>
{/volist}
</ul>
{/foreach}
</div>
</div>
</div>
{if !empty($arrVideo.v_seo_words)}
<div class="stui-pannel stui-pannel-bg clearfix" id="desc">
<div class="stui-pannel-box">
<div class="stui-pannel_hd">
<div class="stui-pannel__head active bottom-line clearfix">
<h3 class="title">
<img src="/template/videodadi/icon/icon_30.png" />相关推荐
</h3>
</div>
</div>
<div class="stui-pannel_bd">
<p class="col-pd">
{volist name='$arrVideo.v_seo_words' key="index" id='SeoWords' }
<a
href='{site:vfurl v_id="$arrVideo.v_id" v_py="$arrVideo.v_name_en" v_fid="$index"/}'>{$SeoWords}</a>&nbsp;&nbsp;
{/volist}
</p>
</div>
</div>
</div>
{/if}
<div class="stui-pannel stui-pannel-bg clearfix" id="desc">
<div class="stui-pannel-box">
<div class="stui-pannel_hd">
<div class="stui-pannel__head active bottom-line clearfix">
<h3 class="title"><img src="/template/videodadi/icon/icon_30.png">剧情简介</h3>
</div>
</div>
<div class="stui-pannel_bd">
<h3>【{$arrVideo.v_name}】</h3>
<p class="col-pd">  
{$arrVideo.v_description|raw}
<a href="#">{}</a>&nbsp;&nbsp;
</p>
</div>
</div>
</div>
<div class="stui-pannel stui-pannel-bg clearfix">
<div class="stui-pannel-box">
<div class="stui-pannel_hd">
<div class="stui-pannel__head active bottom-line clearfix">
<h3 class="title"><img src="/template/videodadi/icon/icon_6.png">猜你喜欢</h3>
</div>
</div>
<div class="stui-pannel_bd">
<ul class="stui-vodlist__bd clearfix">
{video:list count="12"
v_category_en="$arrVideo.v_category_en"
v_lang_en="all"
v_area_en="all"
v_year="all"
sort_type="news"
d_key="d_key" d_val="Video" cache_life="3600"}
{include file="public/video-list-shu" start="0"/}
{/video:list}
</ul>
<ul class="stui-vodlist__text col-pd clearfix hidden-xs">
{video:list count="12"
v_category_en="$arrVideo.v_category_en"
v_lang_en="all"
v_area_en="all"
v_year="all"
sort_type="news"
d_key="d_key" d_val="Video" cache_life="3600"}
{include file="public/video-list-text2" start="0" /}
{/video:list}
</ul>
</div>
</div>
</div>
</div>
<div class="col-lg-wide-25 col-xs-1 stui-pannel-side hidden-sm hidden-xs">
<div class="stui-pannel stui-pannel-bg clearfix">
<div class="stui-pannel-box">
<div class="stui-pannel_hd">
<div class="stui-pannel__head active bottom-line clearfix">
<h3 class="title"><img src="/template/videodadi/icon/icon_12.png">{$arrVideo.v_parent_category}周榜单
</h3>
</div>
</div>
<div class="stui-pannel_bd">
<ul class="stui-vodlist__text col-pd clearfix">
{video:ranklist count="12"
v_parent_category_en="$arrVideo.v_parent_category_en"
sort_type="weekly"
d_key="key" d_val="Video" cache_life="3600"}
{include file="public/video-list-phb" start="0"/}
{/video:ranklist}
</ul>
</div>
</div>
</div>
<div class="stui-pannel stui-pannel-bg clearfix">
<div class="stui-pannel-box">
<div class="stui-pannel_hd">
<div class="stui-pannel__head active bottom-line clearfix">
<h3 class="title"><img src="/template/videodadi/icon/icon_12.png">{$arrVideo.v_parent_category}月榜单
</h3>
</div>
</div>
<div class="stui-pannel_bd">
<ul class="stui-vodlist__text col-pd clearfix">
{video:ranklist count="12"
v_parent_category_en="$arrVideo.v_parent_category_en"
sort_type="monthly"
d_key="key" d_val="Video" cache_life="3600"}
{include file="public/video-list-phb" start="0"/}
{/video:ranklist}
</ul>
</div>
</div>
</div>
</div>
</div>
</div>
<script>
const strMaxPlayHeight = '480px'
const strVideoId = `{$arrVideo.v_id}`;
const arrVideo = {
'v_id': `{$arrVideo['v_id']}`,
'v_name_en': `{$arrVideo['v_name_en']}`,
'v_pic': `{$arrVideo['v_pic']}`,
'v_name': `{$arrVideo['v_name']}`,
'v_description': `{$arrVideo['v_description']}`,
'v_publish_date': `{$arrVideo['v_publish_date']}`,
'v_remarks': `{$arrVideo['v_remarks']}`,
'v_category': `{$arrVideo['v_category']}`,
};
var intPlayUrlIndex = '{$Request.route.intPlayIndex}'
var strPlayType = '{$Request.route.strPlayType}'
var intJumpTimeFirst = 1;
var intJumpTimeTwoStart = 1;
var intJumpTimeTwoEnd = 1;
var arrPlayUrl = {$arrVideo.v_play_url|json_encode|raw} ;
var strPlayUrl = ""
</script>
{/block}
{block name="customize"}
{/block}
{block name="footer-js"}
<script type="text/javascript"
src="https://lf26-cdn-tos.bytecdntp.com/cdn/expire-1-M/hls.js/1.1.5-0.canary.8257/hls.min.js" defer></script>
<script type="text/javascript" src="https://lf26-cdn-tos.bytecdntp.com/cdn/expire-1-M/dplayer/1.26.0/DPlayer.min.js"
defer></script>
{/block}