pareto-anywhere
Version:
Open source IoT middleware suite that makes the data from just about anything usable. We believe in an open Internet of Things.
293 lines (291 loc) • 12.7 kB
HTML
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport"
content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="description"
content="Occupancy Observer web app for Pareto Anywhere by reelyActive.">
<link rel="stylesheet" href="../style/bootstrappyactive.min.css">
<script type="module" src="../js/color-modes.js"></script>
<title> Occupancy Observer </title>
</head>
<body>
<!-- Navigation -->
<nav class="navbar sticky-top navbar-expand-lg bg-body-tertiary shadow">
<div class="container-fluid">
<a class="navbar-brand" href="https://www.reelyactive.com/">
<img src="../images/reelyactive-logo-square-nav.png"
width="30" height="30" alt="reelyActive">
</a>
<a class="navbar-brand" href="../">
<img src="../images/pareto-apps-logo-nav.png" width="135" height="30"
alt="Pareto Apps">
</a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse"
data-bs-target="#navbarItems" aria-controls="navbarItems"
aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarItems">
<!-- Left-aligned navigation items -->
<ul class="navbar-nav me-auto mb-2 mb-lg-0">
</ul>
<!-- Right-aligned navigation items -->
<ul class="navbar-nav">
<li class="nav-item">
<a id="connectIcon" class="nav-link">
<i class="fas fa-cloud"></i>
</a>
</li>
<!-- Colour theme chooser -->
<li class="nav-item dropdown">
<button class="btn btn-link nav-link dropdown-toggle"
id="bd-theme" type="button" aria-expanded="false"
data-bs-toggle="dropdown" data-bs-display="static"
aria-label="Toggle theme (auto)">
<i class="fas fa-adjust"></i>
</button>
<ul class="dropdown-menu dropdown-menu-end shadow"
aria-labelledby="bd-theme-text">
<li>
<button type="button" class="dropdown-item"
data-bs-theme-value="light" aria-pressed="false">
<i class="fas fa-sun"></i> Light
</button>
</li>
<li>
<button type="button" class="dropdown-item"
data-bs-theme-value="dark" aria-pressed="false">
<i class="fas fa-moon"></i> Dark
</button>
</li>
<li>
<button type="button" class="dropdown-item active"
data-bs-theme-value="auto" aria-pressed="true">
<i class="fas fa-adjust"></i> Auto
</button>
</li>
</ul>
</li>
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" id="navbarInfoDropdown"
role="button" data-bs-toggle="dropdown" aria-haspopup="true"
aria-expanded="false">
<i class="fas fa-question-circle"></i>
</a>
<!-- Info about tracking and open source software/licenses -->
<ul class="dropdown-menu dropdown-menu-end shadow"
aria-labelledby="navbarInfoDropdown">
<li>
<a class="dropdown-item"
href="https://www.reelyactive.com/how-we-observe/#digital">
<i class="fas fa-mouse-pointer"></i>
Behaviour tracking free
<span class="badge bg-success animate-breathing">
<i class="fas fa-user-shield"></i>
</span>
</a>
</li>
<li class="dropdown-divider"></li>
<li>
<a class="dropdown-item" target="_blank"
href="https://getbootstrap.com" >
<i class="fab fa-bootstrap"></i>
Bootstrap 5
<span class="badge bg-light text-dark">
<i class="fab fa-osi"></i> MIT
</span>
</a>
</li>
<li>
<a class="dropdown-item" target="_blank"
href="https://fontawesome.com" >
<i class="fab fa-font-awesome"></i>
Font Awesome (Free)
<span class="badge bg-light text-dark">
<i class="fab fa-creative-commons"></i>
<i class="fab fa-osi"></i> MIT
</span>
</a>
</li>
<li>
<a class="dropdown-item" target="_blank"
href="https://github.com/reelyactive/web-style-guide/" >
<i class="fas fa-code"></i>
Web Style Guide
<span class="badge bg-light text-dark">
<i class="fab fa-osi"></i> MIT
</span>
</a>
</li>
<li class="dropdown-divider"></li>
<li>
<a class="dropdown-item" target="_blank"
href="https://github.com/reelyactive/cuttlefish/" >
<i class="fab fa-js"></i>
cuttlefish.js
<span class="badge bg-light text-dark">
<i class="fab fa-osi"></i> MIT
</span>
</a>
</li>
<li>
<a class="dropdown-item" target="_blank"
href="https://github.com/reelyactive/cormorant/" >
<i class="fab fa-js"></i>
cormorant.js
<span class="badge bg-light text-dark">
<i class="fab fa-osi"></i> MIT
</span>
</a>
</li>
<li>
<a class="dropdown-item" target="_blank"
href="https://socket.io/" >
<i class="fab fa-js"></i>
socket.io 4
<span class="badge bg-light text-dark">
<i class="fab fa-osi"></i> MIT
</span>
</a>
</li>
<li class="dropdown-divider"></li>
<li>
<a class="dropdown-item" target="_blank"
href="https://www.reelyactive.com/made-in-montreal/" >
<i class="fab fa-canadian-maple-leaf"></i>
Made in Montréal
<i class="fas fa-city"></i>
</a>
</li>
</ul>
</li>
</ul>
</div>
</div>
</nav>
<!-- Content -->
<div class="container-fluid">
<div class="row justify-content-center">
<div class="col-md-12 col-lg-10 col-xl-8 col-xxl-10">
<div class="alert alert-ambient alert-dismissible fade show mt-5"
role="alert" id="demoalert" hidden>
<i class="fas fa-exclamation-triangle animate-breathing me-2"></i>
Could not connect to Pareto Anywhere API,
<a href="?demo=default"
class="alert-link"> enable demo </a> instead?
<button type="button" class="btn-close" data-bs-dismiss="alert"
aria-label="Close"></button>
</div>
<div class="row justify-content-between mt-5">
<div class="col-12 col-xxl-5 mb-5 order-xxl-last">
<table class="table table-hover text-center">
<thead>
<tr>
<td id="time"
class="bg-dark bg-gradient text-white display-1"
colspan="5"> : </td>
</tr>
<tr class="text-muted">
<th> <i class="fas fa-barcode"></i> </th>
<th> <i class="fas fa-clock"></i> </th>
<th class="bg-body-secondary"> <small>-1m</small> </th>
<th> <small>-2m</small> </th>
<th> <small>-3m</small> </th>
</tr>
</thead>
<tbody id="occupancytable">
</tbody>
</table>
</div>
<div class="col-12 col-xxl-5">
<div class="card">
<div class="row g-0">
<div class="col-md-4 bg-ambient text-white text-center py-3">
<span class="display-6"> Chairs </span>
</div>
<div class="col-md-8 d-flex align-items-center">
<div class="card-body">
<div class="progress">
<div class="progress-bar bg-secondary"
id="chairsoccupied" role="progressbar"
style="width:0%;"></div>
<div class="progress-bar bg-success"
id="chairsavailable" role="progressbar"
style="width:0%;"></div>
</div>
</div>
</div>
</div>
</div>
<div class="card my-5">
<div class="row g-0">
<div class="col-md-4 bg-ambient text-white text-center py-3">
<span class="display-6"> Desks </span>
</div>
<div class="col-md-8 d-flex align-items-center">
<div class="card-body">
<div class="progress">
<div class="progress-bar bg-secondary"
id="desksoccupied" role="progressbar"
style="width:0%;"></div>
<div class="progress-bar bg-success"
id="desksavailable" role="progressbar"
style="width:0%;"></div>
</div>
</div>
</div>
</div>
</div>
<div class="card my-5">
<div class="row g-0">
<div class="col-md-4 bg-ambient text-white text-center py-3">
<span class="display-6"> Rooms </span>
</div>
<div class="col-md-8 d-flex align-items-center">
<div class="card-body">
<div class="progress">
<div class="progress-bar bg-secondary"
id="roomsoccupied" role="progressbar"
style="width:0%;"></div>
<div class="progress-bar bg-success"
id="roomsavailable" role="progressbar"
style="width:0%;"></div>
</div>
</div>
</div>
</div>
</div>
<p class="lead text-muted text-end">
<span class="badge rounded-pill bg-secondary">
<i class="fas fa-walking"></i>
</span>
Occupied
<span class="badge rounded-pill bg-success">
<i class="fas fa-times"></i>
</span>
Available
</p>
</div>
</div>
</div>
</div>
</div>
<footer class="footer bg-dark bg-gradient">
<a href="https://github.com/reelyactive/pareto-anywhere-apps">
pareto-anywhere-apps
</a>
|
<a href="https://www.reelyactive.com"> © reelyActive 2018-2026 </a>
</footer>
<!-- Optional JavaScript -->
<script defer src="../js/fontawesome-reelyactive.min.js"></script>
<script src="../js/bootstrappyactive.bundle.min.js"></script>
<script src="../js/socket.io.min.js"></script>
<script src="../js/cormorant.js"></script>
<script src="../js/cuttlefish-story.js"></script>
<script src="../js/starling.js"></script>
<script src="../js/occupancy-observer.js"></script>
</body>
</html>