first commit
This commit is contained in:
56
templates/base.html
Normal file
56
templates/base.html
Normal file
@ -0,0 +1,56 @@
|
||||
<!DOCTYPE html>
|
||||
<html class="no-js" lang="">
|
||||
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<title>{% block title %}{% endblock %} - UPCT</title>
|
||||
<meta name="description" content="" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<meta name="theme-color" content="#fafafa" />
|
||||
|
||||
<link rel="manifest" href="site.webmanifest" />
|
||||
<link rel="apple-touch-icon" href="icon.png" />
|
||||
|
||||
<link rel="stylesheet" type="text/css" href="{{ url_for('static',filename='css/normalize.css') }}" />
|
||||
<link rel="stylesheet" type="text/css" href="{{ url_for('static',filename='css/main.css') }}" />
|
||||
|
||||
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css"
|
||||
integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh" crossorigin="anonymous" />
|
||||
|
||||
<script src="https://code.jquery.com/jquery-3.4.1.js"
|
||||
integrity="sha256-WpOohJOqMqqyKL9FccASB9O0KwACQJpFTUBLTYOVvVU=" crossorigin="anonymous"></script>
|
||||
<script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js"
|
||||
integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo"
|
||||
crossorigin="anonymous"></script>
|
||||
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.min.js"
|
||||
integrity="sha384-wfSDF2E50Y2D1uUdj0O3uMBJnjuUD4Ih7YwaYd1iqfktj0Uod8GCExl3Og8ifwB6"
|
||||
crossorigin="anonymous"></script>
|
||||
|
||||
<script src="{{ url_for('static',filename='js/plugins.js') }}"></script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<!--[if IE]>
|
||||
<p class="browserupgrade">
|
||||
You are using an <strong>outdated</strong> browser. Please
|
||||
<a href="https://browsehappy.com/">upgrade your browser</a> to improve
|
||||
your experience and security.
|
||||
</p>
|
||||
<![endif]-->
|
||||
|
||||
<div class="d-flex flex-column flex-md-row align-items-center p-3 px-md-4 mb-3 bg-white border-bottom shadow-sm">
|
||||
<h5 class="my-0 mr-md-auto font-weight-normal">SDC Lifecycle 0.1</h5>
|
||||
<nav class="nav-item">
|
||||
<a class="nav-link" href="https://download.med.upct.es">🗄️ Obtener Datos</a>
|
||||
</nav>
|
||||
</div>
|
||||
|
||||
<div class="alert alert-danger" role="alert">
|
||||
Tool is in heavy development.
|
||||
</div>
|
||||
|
||||
{% block content %}{% endblock %}
|
||||
|
||||
</body>
|
||||
|
||||
</html>
|
11
templates/error.html
Normal file
11
templates/error.html
Normal file
@ -0,0 +1,11 @@
|
||||
{% extends "base.html" %}
|
||||
{% block title %}ERROR{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
<div class="container">
|
||||
<div class="card-deck mb-3 text-center"></div>
|
||||
<h3>ERROR en la subida</h3>
|
||||
</div>
|
||||
|
||||
{% endblock %}
|
22
templates/regenerate.html
Normal file
22
templates/regenerate.html
Normal file
@ -0,0 +1,22 @@
|
||||
{% extends "base.html" %}
|
||||
{% block title %}DONE{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
<div class="container">
|
||||
<div class="card-deck mb-3 text-center"></div>
|
||||
<h3>Control de calidad aplicado. </h3>
|
||||
|
||||
<!-- Printing errors -->
|
||||
<table class="table">
|
||||
{% for error in error_list %}
|
||||
<tr>
|
||||
<td>{{ error[0] }}</td>
|
||||
<td>{{ error[1] }}</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</table>
|
||||
|
||||
</div>
|
||||
|
||||
{% endblock %}
|
33
templates/successful.html
Normal file
33
templates/successful.html
Normal file
@ -0,0 +1,33 @@
|
||||
{% extends "base.html" %}
|
||||
{% block title %}OK{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
<div class="container">
|
||||
<div class="card-deck mb-3 text-center">
|
||||
|
||||
<div class="card">
|
||||
<div class="alert alert-success text-center" role="alert">
|
||||
Datos subidos con exito
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<a href="/" type="button" class="btn btn-outline-success btn-block"
|
||||
style="margin-bottom: 50px">Volver</a>
|
||||
|
||||
<a href="{{ url }}" type="button" class="btn btn-outline-primary btn-block">Descargar Archivo</a>
|
||||
<a class="btn btn-outline-info btn-block" data-toggle="collapse" href="#collapseExample" role="button"
|
||||
aria-expanded="false" aria-controls="collapseExample">
|
||||
Mostrar tabla
|
||||
</a>
|
||||
<div class="collapse" id="collapseExample">
|
||||
<div class="card card-body">
|
||||
{{ tables|safe }}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div> <!-- End Card-body -->
|
||||
</div> <!-- End Card -->
|
||||
</div> <!-- End Card-deck -->
|
||||
</div> <!-- End Container-->
|
||||
|
||||
{% endblock %}
|
127
templates/upload.html
Normal file
127
templates/upload.html
Normal file
@ -0,0 +1,127 @@
|
||||
{% extends "base.html" %}
|
||||
{% block title %}Subida{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
|
||||
<!-- Row Header -->
|
||||
<div class="px-3 py-3 pt-md-5 pb-md-4 mx-auto text-center">
|
||||
<h1 class="display-4">Sensores</h1>
|
||||
</div>
|
||||
|
||||
<div class="container">
|
||||
<div class="card-deck mb-3 text-center"></div>
|
||||
|
||||
<!-- Sensors row -->
|
||||
<div class="row">
|
||||
{% for i in probes %}
|
||||
<div class="col-sm">
|
||||
<div class="card mb-4 shadow-sm">
|
||||
<div class="card-header">
|
||||
<h4 class="my-0 font-weight-normal">{{ i.sensor }}</h4>
|
||||
</div>
|
||||
|
||||
<div class="card-body">
|
||||
<div class="text-center">
|
||||
<img src="{{ url_for('static',filename='img/'+i.img) }}" class="rounded" alt="..."
|
||||
height="200px" width="200px" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<button type="button" class="btn btn-primary" data-toggle="modal" data-target="#upload{{i.sensor}}">
|
||||
Subir datos
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
{% endfor%}
|
||||
</div>
|
||||
|
||||
<!-- Setting up the modal foreach probe -->
|
||||
{% for i in probes %}
|
||||
<div class="modal fade" id="upload{{i.sensor}}" role="dialog">
|
||||
<div class="modal-dialog modal-lg">
|
||||
|
||||
<!-- Modal content-->
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">
|
||||
<h4 class="modal-title">Subir datos de {{ i.sensor }}</h4>
|
||||
|
||||
<button type="button" class="close" data-dismiss="modal">
|
||||
×
|
||||
</button>
|
||||
</div>
|
||||
|
||||
<div class="modal-body">
|
||||
|
||||
<!-- Modal header -->
|
||||
<div class="upload-header px-3 py-3 pt-md-5 pb-md-4 mx-auto text-center">
|
||||
<h2 class="display-5">{{ i.sensor }}</h2>
|
||||
</div>
|
||||
|
||||
<div class="container">
|
||||
<div class="text-center">
|
||||
|
||||
<!-- Modal form -->
|
||||
<form class="list-group list-group-flush" action="{{pagename}}/uploader" method="POST"
|
||||
enctype="multipart/form-data">
|
||||
|
||||
<!-- File input -->
|
||||
<div class="list-group-item" style="padding-left: 50px;">
|
||||
<input type="file" class="form-control-file" name="file" />
|
||||
</div>
|
||||
|
||||
<!-- Sensor select -->
|
||||
<div class="form-group required" style="padding-top: 10px;">
|
||||
<label class="form-check-label" for="activeProbe" style="padding-left: 5px;">Escoge
|
||||
el sensor utilizado</label>
|
||||
<select name="activeProbe" id="activeProbe">
|
||||
{% for j in i.active %}
|
||||
<option value="{{ j }}">{{ j }}</option>
|
||||
{% endfor %}
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<!-- Force station -->
|
||||
<div class="form-group">
|
||||
<input class="form-check-input" type="checkbox" name="forceStation{{i.sensor}}"
|
||||
id="forceStation{{i.sensor}}"
|
||||
onchange="toggleSelect('forceStation{{i.sensor}}', 'stations{{i.sensor}}')">
|
||||
<label class="form-check-label" for="forceStation{{i.sensor}}"
|
||||
style="padding-left: 5px;">
|
||||
Forzar estación
|
||||
</label>
|
||||
|
||||
<label class="form-check-label" for="stations{{i.sensor}}"
|
||||
style="padding-left: 5px;">Selecciona la estación utilizada</label>
|
||||
<select name="stations{{i.sensor}}" id="stations{{i.sensor}}" disabled>
|
||||
{% for j in i.stations %}
|
||||
<option value="{{ j }}">{{ j }}</option>
|
||||
{% endfor %}
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<!-- Apply quality control -->
|
||||
<div class="list-group-item" style="padding-bottom: 50px;">
|
||||
<input class="form-check-input" type="checkbox" id="autoSizingCheck" checked>
|
||||
<label class="form-check-label" for="autoSizingCheck" style="padding-left: 5px;">
|
||||
Aplicar control de calidad
|
||||
</label>
|
||||
</div>
|
||||
|
||||
<!-- Submit -->
|
||||
<input type="hidden" value="{{i.sensor}}" name="probe" />
|
||||
<button type="submit" class="btn btn-primary btn-lg btn-block">Subir CSV</button>
|
||||
|
||||
</form>
|
||||
|
||||
</div>
|
||||
</div> <!-- Close Modal Container Body -->
|
||||
</div> <!-- Close Modal Body -->
|
||||
</div> <!-- Close Modal Content -->
|
||||
</div> <!-- Close Modal dialog -->
|
||||
</div> <!-- Close Modal -->
|
||||
{% endfor %}
|
||||
<!-- End Sensors Modals -->
|
||||
|
||||
</div> <!-- Close container field -->
|
||||
|
||||
{% endblock %}
|
Reference in New Issue
Block a user