Files
Zordon/templates/index.html
2022-12-08 00:08:09 -08:00

140 lines
4.6 KiB
HTML

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Zordon Dashboard</title>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bulma@0.9.4/css/bulma.min.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
<script src="https://kit.fontawesome.com/698705d14d.js" crossorigin="anonymous"></script>
<script type="text/javascript" src="{{ url_for('static', filename = 'modals.js') }}"></script>
</head>
<body>
<nav class="navbar is-dark" role="navigation" aria-label="main navigation">
<div class="navbar-brand">
<span class="navbar-item h1">
Zordon Render Server - {{hostname}}
</span>
<a role="button" class="navbar-burger" aria-label="menu" aria-expanded="false" data-target="navbarBasicExample">
<span aria-hidden="true"></span>
<span aria-hidden="true"></span>
<span aria-hidden="true"></span>
</a>
</div>
<!-- <div id="navbarBasicExample" class="navbar-menu">-->
<!-- <div class="navbar-start">-->
<!-- <a class="navbar-item">-->
<!-- Home-->
<!-- </a>-->
<!-- <a class="navbar-item">-->
<!-- Documentation-->
<!-- </a>-->
<!-- <div class="navbar-item has-dropdown is-hoverable">-->
<!-- <a class="navbar-link">-->
<!-- More-->
<!-- </a>-->
<!-- <div class="navbar-dropdown">-->
<!-- <a class="navbar-item">-->
<!-- About-->
<!-- </a>-->
<!-- <a class="navbar-item">-->
<!-- Jobs-->
<!-- </a>-->
<!-- <a class="navbar-item">-->
<!-- Contact-->
<!-- </a>-->
<!-- <hr class="navbar-divider">-->
<!-- <a class="navbar-item">-->
<!-- Report an issue-->
<!-- </a>-->
<!-- </div>-->
<!-- </div>-->
<!-- </div>-->
<!-- <div class="navbar-end">-->
<!-- <div class="navbar-item">-->
<!-- <div class="buttons">-->
<!-- <a class="button is-primary">-->
<!-- <strong>Sign up</strong>-->
<!-- </a>-->
<!-- <a class="button is-light">-->
<!-- Log in-->
<!-- </a>-->
<!-- </div>-->
<!-- </div>-->
<!-- </div>-->
<!-- </div>-->
</nav>
<div class="table-container">
<table class="table is-bordered is-striped is-hoverable is-fullwidth">
<thead>
<tr>
<th>Preview</th>
<th>Name</th>
<th>Renderer</th>
<th>Priority</th>
<th>Status</th>
<th>Time Elapsed</th>
<th>%</th>
<th>Frame Count</th>
<th>Client</th>
<th>Last Output</th>
<th>Commands</th>
</tr>
</thead>
<!-- <tfoot>-->
<!-- <tr>-->
<!-- </tr>-->
<!-- </tfoot>-->
{% for job in all_jobs %}
<tbody>
<tr>
<td>Image Here</td>
<td>{{job.name}}</td>
<td>{{job.renderer}}-{{job.worker.renderer_version}}</td>
<td>{{job.priority}}</td>
<td>{{job.render_status().value}}</td>
<td>{{job.time_elapsed()}}</td>
<td>{{job.percent_complete()}}</td>
<td>{{job.frame_count()}}</td>
<td>{{job.client}}</td>
<td>{{job.worker.last_output}}</td>
<td>
<div class="buttons are-small">
<button class="button is-info" onclick="window.location.href='/ui/job/{{job.id}}/full_details';">
<span class="icon"><i class="fa-solid fa-info"></i></span>
</button>
<button class="button is-link" onclick="window.location.href='/api/job/{{job.id}}/logs';">
<span class="icon"><i class="fa-regular fa-file-lines"></i></span>
</button>
{% if job.render_status().value in ['running', 'scheduled', 'not_started']: %}
<button class="button is-warning is-active" onclick="window.location.href='/api/job/{{job.id}}/cancel?confirm=True';">
Cancel
</button>
{% elif job.render_status().value == 'completed': %}
<button class="button is-success" onclick="window.location.href='/api/job/{{job.id}}/download_all';">
<span class="icon"><i class="fa-solid fa-download"></i></span>
<span>{{job.file_list() | length}}</span>
</button>
{% endif %}
<button class="button is-danger" onclick="window.location.href='/api/job/{{job.id}}/delete?confirm=True'">
<span class="icon"><i class="fa-regular fa-trash-can"></i></span>
</button>
</div>
</td>
</tr>
</tbody>
{% endfor %}
</table>
</div>
</body>
</html>