add meteo home board
This commit is contained in:
34
resources/js/views/Automation/AutomaticLinksHome.vue
Normal file
34
resources/js/views/Automation/AutomaticLinksHome.vue
Normal file
@@ -0,0 +1,34 @@
|
||||
<template>
|
||||
<div>
|
||||
<div class="m-2">
|
||||
<div class="card">
|
||||
<div class="text-black m-2 p-2 flex flex-col">
|
||||
<h2>Raspberry Links</h2>
|
||||
<ul class="mt-2">
|
||||
<li><a v-for="(link, index) in links" :href="link.link" :key="index" target="_blank" class="block text-lg">{{ link.name }}</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: 'AutomaticLinksHome',
|
||||
data: function () {
|
||||
return {
|
||||
links: [
|
||||
{ name: 'Météo', link: 'http://192.168.1.32/meteo/meteo'},
|
||||
{ name: 'MotionEye', link: 'http://192.168.1.32:8765'},
|
||||
{ name: 'TT-RSS', link: 'https://tt-rss.bricooli.fr'},
|
||||
{ name: 'Pi-Hole', link: 'http://192.168.1.32/admin/index.php'},
|
||||
{ name: 'RaspAp', link: 'http://192.168.1.32/raspap'},
|
||||
{ name: 'Kodi', link: 'http://192.168.1.19:8080/'},
|
||||
{ name: 'RaspiWeb Adminer', link: 'http://192.168.1.32/adminer.php'},
|
||||
{ name: 'RaspiGate Adminer', link: 'http://192.168.1.29/adminer.php'},
|
||||
],
|
||||
}
|
||||
},
|
||||
}
|
||||
</script>
|
||||
56
resources/js/views/Automation/AutomaticMeteoHome.vue
Normal file
56
resources/js/views/Automation/AutomaticMeteoHome.vue
Normal file
@@ -0,0 +1,56 @@
|
||||
<template>
|
||||
<div>
|
||||
<div class="m-2">
|
||||
<div class="card">
|
||||
<div class="text-black m-2 p-2 flex flex-col">
|
||||
<h2>Météo Home</h2>
|
||||
<ul class="mt-2">
|
||||
<li v-for="(captor, index) in captors" :key="index" class="block mb-4">
|
||||
<div class="flex justify-between items-baseline mb-2">
|
||||
<span class="font-bold text-lg">{{ captor.device }}</span>
|
||||
<span class="text-sm">{{ captor.date_meteo }}</span>
|
||||
</div>
|
||||
<div class="flex flex-no-wrap text-sm -m-1">
|
||||
<span v-if="captor.temperature" class="mx-1">{{ floated(captor.temperature) }} <span class="font-semibold text-xs">°C</span></span>
|
||||
<span v-if="captor.humidite" class="mx-1">{{ floated(captor.humidite) }} <span class="font-semibold text-xs">%</span></span>
|
||||
<span v-if="captor.pression" class="mx-1">{{ floated(captor.pression) }} <span class="font-semibold text-xs">hPa</span></span>
|
||||
<span v-if="captor.lumiere" class="mx-1">{{ captor.lumiere }}</span>
|
||||
</div>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: 'AutomaticMeteoHome',
|
||||
data: function () {
|
||||
return {
|
||||
captors: null,
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
// eslint-disable-next-line no-undef
|
||||
axios.get('/api/automation/home')
|
||||
.then(response => {
|
||||
this.captors = response.data.data
|
||||
console.log(response.data.data)
|
||||
})
|
||||
.catch(() => {
|
||||
console.log('Unable to fetch memos.')
|
||||
})
|
||||
},
|
||||
methods: {
|
||||
floated: function (value) {
|
||||
return value.toFixed(2)
|
||||
}
|
||||
},
|
||||
}
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
|
||||
</style>
|
||||
Reference in New Issue
Block a user