Spaces:
Running
Running
<html lang="ru"> | |
<head> | |
<meta charset="UTF-8"> | |
<meta name="viewport" content="width=device-width, initial-scale=1.0"> | |
<title>Мониторинг растения</title> | |
<style> | |
body { | |
font-family: Arial, sans-serif; | |
max-width: 800px; | |
margin: 0 auto; | |
padding: 20px; | |
text-align: center; | |
} | |
h1 { | |
color: #2e7d32; | |
} | |
#plantImage { | |
max-width: 100%; | |
height: auto; | |
border: 2px solid #ddd; | |
border-radius: 8px; | |
margin-bottom: 20px; | |
} | |
.stats { | |
display: flex; | |
flex-wrap: wrap; | |
justify-content: center; | |
gap: 15px; | |
margin-top: 20px; | |
} | |
.stat-item { | |
padding: 10px 15px; | |
border-radius: 5px; | |
font-weight: bold; | |
min-width: 120px; | |
} | |
.green { | |
background-color: #e8f5e9; | |
color: #2e7d32; | |
border: 1px solid #a5d6a7; | |
} | |
.yellow { | |
background-color: #fffde7; | |
color: #f9a825; | |
border: 1px solid #fff59d; | |
} | |
.orange { | |
background-color: #fff3e0; | |
color: #ef6c00; | |
border: 1px solid #ffcc80; | |
} | |
.brown { | |
background-color: #efebe9; | |
color: #6d4c41; | |
border: 1px solid #d7ccc8; | |
} | |
.color-value { | |
font-size: 1.2em; | |
} | |
</style> | |
</head> | |
<body> | |
<h1>Текущее состояние растения</h1> | |
<img id="plantImage" src="/last_image" alt="Изображение растения"> | |
<button class="refresh-btn" onclick="updateImage()">Обновить изображение</button> | |
<script> | |
function updateImage() { | |
// Добавляем timestamp для предотвращения кеширования | |
const timestamp = new Date().getTime(); | |
const imgElement = document.getElementById("plantImage"); | |
// Показываем индикатор загрузки | |
imgElement.style.opacity = "0.9"; | |
// Обновляем источник изображения | |
imgElement.src = "/last_image?t=" + timestamp; | |
// Возвращаем нормальную прозрачность после загрузки | |
imgElement.onload = function() { | |
imgElement.style.opacity = "1"; | |
} | |
} | |
// Первичная загрузка при открытии страницы | |
document.addEventListener('DOMContentLoaded', function() { | |
updateImage(); | |
// Автоматическое обновление каждые 10 секунд | |
setInterval(updateImage, 10000); | |
}); | |
</script> | |
</body> | |
</html> | |