A simple module to try on caching external requests

This commit is contained in:
ahwelp
2023-01-24 20:39:32 +00:00
parent 5320f602f8
commit 78bd7cc06d
10 changed files with 306 additions and 0 deletions
+62
View File
@@ -0,0 +1,62 @@
{{#id}}
<form method="POST" action="/cache/{{id}}/edit">
<input type="hidden" name="id" value="{{id}}" />
<input type="hidden" name="_method" value="put" />
{{/id}}
{{^id}}
<form method="POST" action="/cache">
<input type="hidden" name="id" value="" />
{{/id}}
<div class='row'>
<div class="col-md-8 col-xs-12 g-3">
<div class="card">
<div class="card-header">Header</div>
<div class="card-body">
<div class="row g-3">
<div class="col-xs-12 col-3">
<label class="form-label">Código</label>
<input type="text" class="form-control" name='code' value="{{code}}">
</div>
<div class="col-xs-12 col-9">
<label class="form-label">Nome</label>
<input type="text" class="form-control" name='name' value="{{name}}">
</div>
</div>
<div class="row">
<div class="col-xs-12 g-3">
<label class="form-label">Descrição</label>
<textarea class="form-control" name="descricao">{{description}}</textarea>
</div>
</div>
</div>
</div>
</div>
</div>
<div class='row'>
<div class="col-md-8 col-xs-12 g-3">
<div class="card">
<div class="card-header">Header</div>
<div class="card-body">
<div class="row g-3">
<div class="col-xs-12 col-3">
<label class="form-label">Código</label>
<input type="text" class="form-control" name='code' value="{{code}}">
</div>
<div class="col-xs-12 col-9">
<label class="form-label">Nome</label>
<input type="text" class="form-control" name='name' value="{{name}}">
</div>
</div>
<div class="row">
<div class="col-xs-12 g-3">
<label class="form-label">Descrição</label>
<textarea class="form-control" name="descricao">{{description}}</textarea>
</div>
</div>
</div>
</div>
</div>
</div>
</form>
+39
View File
@@ -0,0 +1,39 @@
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/11.7.0/styles/default.min.css">
<script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/11.7.0/highlight.min.js"></script>
<style>
.highlight {
padding: 20px;
background-color: #f8f9fa;
}
</style>
<table class="table table-responsive">
{{#list}}
<tr id="{{id}}">
<td>{{id}}</td>
<td>{{key}}</td>
<td>{{type}}</td>
<td>{{format}}</td>
<td>{{created_at}}</td>
</tr>
{{/list}}
</table>
<pre>
<code id="canvas" class="language-json"></code>
</pre>
<script>
// https://highlightjs.org/download/
// https://www.tutorialspoint.com/how-to-format-json-string-in-javascript
$('tr').on('click', function (e) {
let id = $(this).attr('id');
fetch("/cache/" + id)
.then(response => response.json())
.then(function (data) {
$('#canvas').html(JSON.stringify(data, null, 4));
hljs.highlightAll();
});
});
</script>