mirror of
https://github.com/lxsang/antd-web-apps
synced 2025-07-26 02:29:47 +02:00
Add Booklet front end
This commit is contained in:
4
doc/views/default/index/index.ls
Normal file
4
doc/views/default/index/index.ls
Normal file
@ -0,0 +1,4 @@
|
||||
|
||||
<?lua
|
||||
echo(data)
|
||||
?>
|
1
doc/views/default/index/notfound.ls
Normal file
1
doc/views/default/index/notfound.ls
Normal file
@ -0,0 +1 @@
|
||||
404 not found
|
93
doc/views/default/layout.ls
Normal file
93
doc/views/default/layout.ls
Normal file
@ -0,0 +1,93 @@
|
||||
<?lua
|
||||
local tocdata = __main__:get("toc")
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<script
|
||||
type="text/javascript"
|
||||
src="<?=HTTP_ROOT?>/rst/gscripts/showdown.min.js"
|
||||
></script>
|
||||
<link
|
||||
rel="stylesheet"
|
||||
type="text/css"
|
||||
href="<?=HTTP_ROOT?>/assets/style.css" />
|
||||
<link
|
||||
rel="stylesheet"
|
||||
type="text/css"
|
||||
href="<?=HTTP_ROOT?>/rst/font-awesome.css" />
|
||||
<link
|
||||
rel="stylesheet"
|
||||
type="text/css"
|
||||
href="<?=HTTP_ROOT?>/rst/ubuntu-regular.css" />
|
||||
<title>
|
||||
<?lua
|
||||
if tocdata then
|
||||
echo(tocdata.data.name)
|
||||
else
|
||||
echo("Untitled")
|
||||
end
|
||||
?>
|
||||
</title>
|
||||
</head>
|
||||
<body>
|
||||
<div id = "top">
|
||||
<div id = "navbar">
|
||||
<div class = "doc-name">
|
||||
<?lua if tocdata then ?>
|
||||
<a href ="<?=HTTP_ROOT..'/'..tocdata.controller..'/'?>">
|
||||
<?=tocdata.data.name?>
|
||||
</a>
|
||||
<?lua end ?>
|
||||
</div>
|
||||
<input type = "text" class = "search-box"></input>
|
||||
<div class= "search-icon"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div id = "cover">
|
||||
<div id = "book">
|
||||
<div class = "doc-toc">
|
||||
<?lua
|
||||
if toc then
|
||||
toc:set("data", tocdata)
|
||||
toc:render()
|
||||
end
|
||||
?>
|
||||
</div>
|
||||
|
||||
<div class="doc-content">
|
||||
<?lua
|
||||
if __main__ then
|
||||
__main__:render()
|
||||
end
|
||||
?>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id = "bottom">
|
||||
Powered by antd server, (c) 2019 - <?=os.date("*t").year?> Xuan Sang LE
|
||||
</div>
|
||||
<script>
|
||||
window.onload = function () {
|
||||
var els = document.getElementsByClassName("doc-content");
|
||||
var converter = new showdown.Converter();
|
||||
for (var i in els) {
|
||||
var text = els[i].innerHTML;
|
||||
var html = converter.makeHtml(text);
|
||||
els[i].innerHTML = html;
|
||||
}
|
||||
// tree view events
|
||||
var toggler = document.getElementsByClassName("caret");
|
||||
var i;
|
||||
for (i = 0; i < toggler.length; i++) {
|
||||
toggler[i].addEventListener("click", function() {
|
||||
this.parentElement.querySelector(".nested").classList.toggle("active");
|
||||
this.classList.toggle("caret-down");
|
||||
});
|
||||
}
|
||||
// TODO math display
|
||||
};
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
31
doc/views/default/toc/index.ls
Normal file
31
doc/views/default/toc/index.ls
Normal file
@ -0,0 +1,31 @@
|
||||
<?lua
|
||||
gentree = function(data, controller)
|
||||
if not data then
|
||||
return ""
|
||||
end
|
||||
local caret = ''
|
||||
if data.entries then
|
||||
caret = '<span class = "caret"></span>'
|
||||
end
|
||||
local markup = '<li>'..caret..'<a href="'..HTTP_ROOT..'/'..controller..'/'..std.b64encode(data.path):gsub("=","")..'/'..data.name:gsub(" ", "_")..'.md">'..data.name.."</a>"
|
||||
if data.entries then
|
||||
markup = markup.."<ul class='nested'>"
|
||||
for k,v in pairs(data.entries) do
|
||||
markup = markup..gentree(v, controller)
|
||||
end
|
||||
markup = markup.."</ul>"
|
||||
end
|
||||
markup = markup.."</li>"
|
||||
return markup
|
||||
end
|
||||
?>
|
||||
<ul id = "toc">
|
||||
<?lua
|
||||
if data.error then
|
||||
return echo("Unable to read toc")
|
||||
end
|
||||
for k,v in pairs(data.data.entries) do
|
||||
echo(gentree(v, data.controller))
|
||||
end
|
||||
?>
|
||||
</ul>
|
Reference in New Issue
Block a user