You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
cms/templates/index.html

145 lines
5.4 KiB
HTML

<!--
(c) 2004 - 2022 Health Information Privacy Laboratory
Vanderbilt University Medical Center
This is a flask-based cms that considers the following for a website :
- header
- content
- menu
- content
- footer
-->
<!DOCTYPE html>
<html lang="en">
<head >
<title>{{layout.header.title}}</title>
<link rel="shortcut icon" href="{{system.icon}}">
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="keywords" content="quick cms, cms, python, flask, qcms">
<meta name="robots" content="/, follow, max-snippet:-1, max-image-preview:large">
<link href="{{system.context}}/static/css/default.css" rel="stylesheet" type="text/css">
<link href="{{system.context}}/static/css/menu.css" rel="stylesheet" type="text/css">
<link href="{{system.context}}/static/css/border.css" rel="stylesheet" type="text/css">
<!-- <link href="{{system.context}}/static/css/animation/_ocean.css" rel="stylesheet" type="text/css"> -->
<link href="{{system.context}}/static/css/themes/{{system.theme}}" rel="stylesheet" type="text/css">
<link href="{{system.context}}/static/css/icons.css" rel="stylesheet" type="text/css">
<script src="{{system.context}}/static/js/jx/dom.js"></script>
<script src="{{system.context}}/static/js/jx/utils.js"></script>
<script src="{{system.context}}/static/js/jx/rpc.js"></script>
<script src="{{system.context}}/static/js/jx/ext/modal.js"></script>
<script src="{{system.context}}/static/js/jquery/jquery.js"></script>
<script src="{{system.context}}/static/js/menu.js"></script>
<script src="{{system.context}}/static/js/search.js"></script>
<script src="{{system.context}}/static/js/bootup.js"></script>
<script src="{{system.context}}/static/js/fontawesome/js/all.js"></script>
</head>
<script>
sessionStorage.setItem('{{system.id}}','{{system.context|safe}}')
var _layout = {{layout|tojson}}
//
// Rendering here requires an observer design pattern because calls are asynchronous
//
/**
* @id _domURI of the pane where the output is to be written
* @uri _fileURI of the file
*/
// var CMSObserver = function(_domId,_fileURI){
// this._domId = _domId
// this._fileURI = _fileURI
// this.apply = function (_caller){
// var http = HttpClient.instance()
// http.setHeader('uri',_fileURI)
// var uri = '{{context}}/page'
// try{
// http.post(uri,function(x){
// console.log(jx.dom.exists(_domId))
// if (x.status == 200){
// // jx.dom.set.value(_domId,x.responseText)
// var _domElement = jx.dom.get.instance('div')
// _domElement.innerHTML = x.responseText
// jx.dom.append(_domId, _domElement)
// }
// _caller.notify()
// })
// }catch(error){
// _caller.notify()
// }
// }
// }
// var finalize = function(_id){
// this.apply = function(_caller){
// menu.runScript('#'+_id)
// }
// }
// if (_layout.on != null ){
// //
// // load and error are required
// // $(document).ready(function(){
// // jx.utils.keys(_layout.on.load).forEach(function(_id){
// // var observers =
// // jx.utils.patterns.visitor(_layout.on.load[_id], function(_uri){
// // return new CMSObserver(_id,_uri)
// // })
// // observers.push(new finalize(_id))
// // //
// // // At this point we can execute the observer design pattern
// // //
// // console.log(observers)
// // jx.utils.patterns.observer(observers,'apply')
// // })
// // })
// // $(document).ready(bootup.init)
// }
sessionStorage.setItem('{{system.id}}','{{system.context|safe}}')
var _layout = {{layout|tojson}}
$(document).ready( function(){
bootup.init('{{system.id}}',_layout)
})
</script>
<body>
<div class="main">
<div id="header" class="header" onclick="window.location.href='{{system.context}}/'" style="cursor:pointer">
{%include "header.html" %}
</div>
<div id="menu" class="menu">
{%include "menu.html" %}
</div>
<div id="content" class="content">
{%include "content.html" %}
</div>
<div id="pane" class="pane">
{%include "pane.html" %}
</div>
<div id="footer" class="footer">
{%include "footer.html" %}
</div>
</div>
</body>
</html>