biliob/Web/index.html
2024-11-01 18:21:57 +08:00

178 lines
5.4 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.

<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<title>DD监视器</title>
<link rel="stylesheet" href="/layui/css/layui.css">
</head>
<body>
<div id="header"></div>
<div class="layui-row layui-col-space15">
<div id="card"></div>
</div><br>
<div id="page"></div>
</body>
<script id="liveCard" type="text/html">
{{# layui.each(d.data, function(index, item){ }}
<div class="layui-col-xs3 layui-col-sm3 layui-col-md3">
<div class="layui-bg-gray" style="padding: 16px;">
<div class="layui-row layui-col-space16">
<div class="layui-card">
<div class="layui-card-header" ><img src="#" onerror="showImage('{{= item.anchorFace}}',this)" style="width: 40px; height: 40px;"/> {{= item.anchorName}}
<span style="float: right;">直播状态
{{# if(item.live){ }}
<span class="layui-badge-dot layui-bg-green"></span>
{{# } else{ }}
<span class="layui-badge-dot"></span>
{{# }; }}
</span>
</div>
<div class="layui-card-body">
<img src="#" onerror="showTmpImage('{{= item.cover}}',this)" onclick="toLive('{{= item.roomId}}')" style="width: 100%; height: 100%;"/><br>
<!-- <img src="#" onerror="showImage('{{= item.cover}}',this)" onclick="toLive('{{= item.roomId}}')" style="width: 100%; height: 100%;"/><br> -->
{{= item.title}}<br>
直播录制状态:
{{# if(item.downloadVideo){ }}
<span style="color: #16b777" onclick="clickVideo('{{= item.roomId}}',true)">录制中</span>
{{# } else{ }}
<span style="color: #FD482C" onclick="clickVideo('{{= item.roomId}}',false)">监听中</span>
{{# }; }}<br>
弹幕录制状态:
{{# if(item.danmu){ }}
<span style="color: #16b777" onclick="clickDanmu('{{= item.roomId}}',true)">录制中</span>
{{# } else{ }}
<span style="color: #FD482C" onclick="clickDanmu('{{= item.roomId}}',false)">监听中</span>
{{# }; }}<br>
</div>
</div>
</div>
</div>
</div>
{{# }); }}
</script>
<script src="/layui/layui.js"></script>
<script src="/js/jquery-3.2.1.js"></script>
<script src="/js/CommonConfig.js"></script>
<script src="/js/httpUtils.js"></script>
<script>
headerModel = 0;
$('#header').load("/html/header.html");
function toLive(roomId){
console.log(roomId)
window.open("https://live.bilibili.com/"+roomId,'_blank')
}
function clickVideo(roomId, status) {
const title = "是否" + (status ? "停止" : "启动") + "录制视频?"
layer.confirm(title, { icon: 3 }, function () {
if (status) {
stopLiveVideo(roomId)
.then(data => {
layer.msg(data.message, { icon: (data.status == 100 ? 1 : 0) }, function () {
location.reload();
});
})
} else {
startLiveVideo(roomId)
.then(data => {
layer.msg(data.message, { icon: (data.status == 100 ? 1 : 0) }, function () {
location.reload();
});
})
}
}, function () {
});
}
function clickDanmu(roomId, status) {
const title = "是否" + (status ? "停止" : "启动") + "录制弹幕?"
layer.confirm(title, { icon: 3 }, function () {
if (status) {
stopLiveDanmu(roomId)
.then(data => {
layer.msg(data.message, { icon: (data.status == 100 ? 1 : 0) }, function () {
location.reload();
});
})
} else {
startLiveDanmu(roomId)
.then(data => {
layer.msg(data.message, { icon: (data.status == 100 ? 1 : 0) }, function () {
location.reload();
});
})
}
}, function () {
layer.msg('点击取消的回调');
});
}
</script>
<script>
layui.use(['laytpl', 'laypage'], function () {
var laytpl = layui.laytpl;
var laypage = layui.laypage;
var pageIndex = 0;
var pageMax = 8;
var listCount=10;
var listMax=pageMax;
var initPage=true;
function initCard() {
var loadIndex = layer.msg('加载中', {
icon: 16,
shade: 0.4
});
getAllLive(pageIndex, pageMax)
.then(data => {
listCount=data.count;
if(initPage){
initPage=false;
initPageView();
}
var view = $("#card").get(0);
laytpl($('#liveCard').get(0).innerHTML).render(data, function (html) {
view.innerHTML = html;
layer.close(loadIndex)
});
})
}
function init() {
initCard()
}
function initPageView(){
laypage.render({
elem: 'page',
limit: 8,
curr: pageIndex + 1,
limits: [4, 8, 16, 24, 32, 40],
layout: ['prev', 'page', 'next', 'limit'],
count: listCount, // 数据总数
jump: function (obj, first) {
listMax=obj.limit
if (!first) {
pageIndex =obj.curr;
pageMax = obj.limit;
initCard()
}
}
});
}
init()
})
function onButton() {
}
</script>
<style>
</style>
</html>