first commit
This commit is contained in:
@@ -0,0 +1,150 @@
|
||||
{extend name="../../base/view/common/base" /}
|
||||
{block name="style"}
|
||||
<link rel="stylesheet" href="{__METE__}/third_party/prism/prism.css?v=1"/>
|
||||
<link rel="stylesheet" href="{__STATIC__}/viewer/viewer.min.css?v=1"/>
|
||||
<link rel="stylesheet" href="{__STATIC__}/ztree/css/metroStyle/metroStyle.css" >
|
||||
<style>
|
||||
.content-chapter{width:300px; position:fixed; top:50px; left:60px; bottom:0; overflow: hidden; border-right:1px solid #e5ecf0; background-color:#F5F8FA;}
|
||||
.content-text{margin-left:300px; padding:16px 32px; /*max-width:900px;*/}
|
||||
.menu-title span{font-size:12px; font-weight:400}
|
||||
.tree-menu{height:calc(100% - 145px); overflow-y: scroll; overflow-x: hidden;}
|
||||
|
||||
.editormd-preview2{font-size:16px; line-height:1.72; background-color:#fff;}
|
||||
.editormd-html-preview code, .editormd-preview-container code {padding:2px; border-radius:2px; font-size:14px; font-family:SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;}
|
||||
.editormd-html-preview, .editormd-preview-container .code-toolbar{font-size:14px;}
|
||||
.editormd-preview2 li {list-style: initial;}
|
||||
.editormd-html-preview pre, .editormd-preview-container pre{border: 1px solid #f6f6f6; font-size:14px;}
|
||||
</style>
|
||||
{/block}
|
||||
{block name="breadcrumb"}
|
||||
<span class="layui-breadcrumb">
|
||||
<a href="http://www.meteteme.com/" target="_blank">江苏美天科技</a>
|
||||
<a href="/knowledge/index/index">知识库</a>
|
||||
<a><cite>知识详情</cite></a>
|
||||
</span>
|
||||
{/block}
|
||||
<!-- 主体 -->
|
||||
{block name="body"}
|
||||
<div class="main-content">
|
||||
{empty name="$info"}
|
||||
<div style="padding:200px 0 0; width:100%; min-height:500px; text-align:center; font-size:30px; color:#999">暂无文档内容</div>
|
||||
{else/}
|
||||
<div class="content-chapter">
|
||||
<div class="p-4">
|
||||
<h4>{$detail['title']}</h4>
|
||||
<p class="font-gray py-4">创建人:{$detail['user']}</p>
|
||||
<h5 class="menu-title">目录<span class="font-gray">({$detail['count']})</span></h5>
|
||||
</div>
|
||||
<div class="tree-menu px-4">
|
||||
<ul id="treeDemo" class="ztree"></ul>
|
||||
</div>
|
||||
</div>
|
||||
<div class="content-text">
|
||||
<!-- <div class="pb-4"><h2 id="infoTilte">{$info.title}</h2></div> -->
|
||||
<div class="editormd-preview2">
|
||||
<div class="markdown-body" id="infoContent">
|
||||
{$info.content|raw}
|
||||
</div>
|
||||
</div>
|
||||
<div class="end-tip">
|
||||
-- 内容展示完毕 --
|
||||
</div>
|
||||
</div>
|
||||
{/empty}
|
||||
</div>
|
||||
{/block}
|
||||
<!-- /主体 -->
|
||||
{block name="footer"}{/block}
|
||||
<!-- 脚本 -->
|
||||
{block name="script"}
|
||||
<script src="{__STATIC__}/ztree/js/jquery.ztree.all.min.js?v=1"></script>
|
||||
<script src="{__STATIC__}/viewer/viewer.min.js?v=1"></script>
|
||||
<script src="{__METE__}/third_party/prism/prism.js?v=1"></script>
|
||||
<script>
|
||||
var kid='{$kid}';
|
||||
var did='{$id}';
|
||||
var treeObj = null;
|
||||
var zNodes =[
|
||||
{ id:1, pId:0, name:"文档", open:true}
|
||||
];
|
||||
|
||||
const moduleInit = ['tool'];
|
||||
function gouguInit() {
|
||||
var layer = layui.layer;
|
||||
var tool = layui.tool;
|
||||
|
||||
var viewer = new Viewer(document.getElementById('infoContent'));
|
||||
var $codepre = $("code[class]");
|
||||
if($codepre.length>0){
|
||||
for(var i = 0;i<$codepre.length;i++){
|
||||
var item = $codepre.eq(i).parent();
|
||||
item.addClass("line-numbers");
|
||||
}
|
||||
}
|
||||
|
||||
var setting = {
|
||||
data: {
|
||||
simpleData: {
|
||||
enable: true
|
||||
}
|
||||
},
|
||||
callback: {
|
||||
onClick: zTreeOnClick
|
||||
}
|
||||
};
|
||||
function zTreeOnClick(event, treeId, treeNode) {
|
||||
let type=treeNode.type;
|
||||
let id=treeNode.id;
|
||||
if(type==1){
|
||||
detail(id);
|
||||
}
|
||||
if(type == 2){
|
||||
treeObj.expandNode(treeNode, !treeNode.open, false, true);
|
||||
}
|
||||
if(type == 3){
|
||||
window.open(treeNode.link);
|
||||
}
|
||||
};
|
||||
|
||||
let treeback = function(e){
|
||||
if (e.code == 0) {
|
||||
zNodes = e.data;
|
||||
treeObj = $.fn.zTree.init($("#treeDemo"), setting, zNodes);
|
||||
treeObj.expandAll(true);
|
||||
if(did>0){
|
||||
var node = treeObj.getNodeByParam("id", did, null);
|
||||
treeObj.selectNode(node);
|
||||
}
|
||||
} else {
|
||||
layer.msg(e.msg);
|
||||
}
|
||||
}
|
||||
tool.get("/api/index/get_doc_list",{kid:kid,tree:2},treeback);
|
||||
|
||||
function detail(id){
|
||||
viewer.destroy();
|
||||
let detailback = function(e){
|
||||
if (e.code == 0) {
|
||||
history.pushState({},e.data.title,window.location.protocol+'//'+window.location.host+'/knowledge/index/doc_detail/kid/'+kid+'/id/'+id+'.html');
|
||||
$('#infoTilte').html(e.data.title);
|
||||
$('#infoContent').html(e.data.content);
|
||||
document.body.scrollTop=document.documentElement.scrollTop=0
|
||||
var $codepre = $('#infoContent').find("code[class]");
|
||||
if($codepre.length>0){
|
||||
for(var i = 0;i<$codepre.length;i++){
|
||||
var item = $codepre.eq(i).parent();
|
||||
item.addClass("line-numbers").addClass('lang-javascript');
|
||||
}
|
||||
Prism.highlightAll();
|
||||
}
|
||||
viewer = new Viewer(document.getElementById('infoContent'));
|
||||
} else {
|
||||
layer.msg(e.msg);
|
||||
}
|
||||
}
|
||||
tool.get("/knowledge/index/doc_detail",{id:id},detailback);
|
||||
}
|
||||
}
|
||||
</script>
|
||||
{/block}
|
||||
<!-- /脚本 -->
|
||||
Reference in New Issue
Block a user