Skip to content

Commit

Permalink
add HTML display/hide job logs buttons async fetch
Browse files Browse the repository at this point in the history
  • Loading branch information
fmigneault committed Feb 1, 2025
1 parent 80c6acf commit 7655327
Show file tree
Hide file tree
Showing 3 changed files with 49 additions and 15 deletions.
31 changes: 31 additions & 0 deletions weaver/wps_restapi/templates/responses/job_status.mako
Original file line number Diff line number Diff line change
Expand Up @@ -143,6 +143,37 @@
<a href="#job-logs">Logs</a>
</h3>
<!-- fill data here -->
<div>
<script>
async function fetchJobLogs(format) {
const url = "${util.get_job_link(job.id)}";
const resp = await fetch(url + "/logs?f=" + format);
const data = await resp.text();
let log = document.getElementById("job-logs-content");
toggleLogs(true);
log.innerHTML = data;
let btn_show = document.getElementById("job-logs-button-show");
btn_show.onclick = toggleLogs;
}
function toggleLogs(show) {
let log = document.getElementById("job-logs-content");
let btn_show = document.getElementById("job-logs-button-show");
let btn_hide = document.getElementById("job-logs-button-hide");
log.parentElement.style.display = show ? "unset" : "none";
btn_hide.style.display = show ? "unset" : "none";
btn_show.style.display = show ? "none" : "unset";
}
</script>
<button type="button" id="job-logs-button-show" onclick="fetchJobLogs('text')">Display Logs</button>
<button
type="button"
id="job-logs-button-hide"
onclick="toggleLogs(false)"
style="display: none"
>Hide Logs
</button>
<pre style="display: none"><code id="job-logs-content"></code></pre>
</div>
</div>

<!-- fixme: if not success : error/exception -->
Expand Down
29 changes: 16 additions & 13 deletions weaver/wps_restapi/templates/responses/util.mako
Original file line number Diff line number Diff line change
Expand Up @@ -3,32 +3,32 @@ Utilities for rendering elements in other pages.
-->


<%def name="get_provider_link(provider_id, query='')">
${weaver.wps_restapi_url}/providers/${provider_id}${f"?{query}" if query else ""}
<%def name="get_provider_link(provider_id, query='')">\
${weaver.wps_restapi_url}/providers/${provider_id}${f"?{query}" if query else ""}\
</%def>


<%def name="get_processes_link(provider_id='', query='')">
<%
_prefix = get_provider_link(provider_id) if provider_id else weaver.wps_restapi_url
%>
${_prefix}/processes${f"?{query}" if query else ""}
<%def name="get_processes_link(provider_id='', query='')">\
<%
_prefix = get_provider_link(provider_id) if provider_id else weaver.wps_restapi_url
%>
${_prefix}/processes${f"?{query}" if query else ""}\
</%def>


<%def name="get_process_link(process_id, provider_id='', query='')">
${get_processes_link(provider_id=provider_id)}/${process_id}${f"?{query}" if query else ""}
<%def name="get_process_link(process_id, provider_id='', query='')">\
${get_processes_link(provider_id=provider_id)}/${process_id}${f"?{query}" if query else ""}\
</%def>


<!--always apply 'detail' query to populate the table in one request-->
<%def name="get_jobs_link(query='')">
${weaver.wps_restapi_url}/jobs${f"?{query}&detail=true" if query else "?detail=true"}
<%def name="get_jobs_link(query='')">\
${weaver.wps_restapi_url}/jobs${f"?{query}&detail=true" if query else "?detail=true"}\
</%def>


<%def name="get_job_link(job_id, query='')">
${weaver.wps_restapi_url}/jobs/${job_id}${f"?{query}" if query else ""}
<%def name="get_job_link(job_id, query='')">\
${weaver.wps_restapi_url}/jobs/${job_id}${f"?{query}" if query else ""}\
</%def>


Expand Down Expand Up @@ -89,6 +89,9 @@ NOTE: class 'language-json' used by the 'ajax/libs/highlight.js' library inserte
<%def name="render_json(json_data, indent=2, **kwargs)">
<pre><code class="language-json">${json.dumps(json_data, indent=indent, **kwargs)}</code></pre>
</%def>
<%def name="render_yaml(yaml_data, indent=2, **kwargs)">
<pre><code class="language-yaml">${yaml.safe_dumps(yaml_data, indent=indent, **kwargs)}</code></pre>
</%def>


<%def name="render_bool(value)">
Expand Down
4 changes: 2 additions & 2 deletions weaver/wps_restapi/templates/static/style.css
Original file line number Diff line number Diff line change
Expand Up @@ -350,13 +350,13 @@ body {
.status-success,
.status-succeeded,
.status-successful {
background-color: darkgreen;
background-color: forestgreen;
}

.progress-success,
.progress-succeeded,
.progress-successful {
accent-color: darkgreen;
accent-color: forestgreen;
}

/* --- Version Footer --- */
Expand Down

0 comments on commit 7655327

Please sign in to comment.