astro timer combined with cron

This commit is contained in:
Bogdan Pilyugin 2024-05-15 15:50:28 +02:00
parent 46c6dcaa29
commit bc3034b97c
2 changed files with 27 additions and 29 deletions

View File

@ -12,6 +12,11 @@
</div> </div>
<div><q-toggle v-model="cronrec.prev" :true-value=1 :false-value=0>Trigger <div><q-toggle v-model="cronrec.prev" :true-value=1 :false-value=0>Trigger
previous</q-toggle></div> previous</q-toggle></div>
<q-input v-model="cronrec.type" label="Timer type" />
<q-input v-model="cronrec.sun_angle" label="Sun angle" />
<q-input v-model="cronrec.name" label="Task name" /> <q-input v-model="cronrec.name" label="Task name" />
<q-input v-model="cronrec.cron" label="CRON expression" /> <q-input v-model="cronrec.cron" label="CRON expression" />
<q-input v-model="cronrec.exec" label="Execute command" /> <q-input v-model="cronrec.exec" label="Execute command" />
@ -40,39 +45,24 @@ function list_header(rec) {
return `Task ${rec.num} [${rec.name}]`; return `Task ${rec.num} [${rec.name}]`;
} }
function initrecs() {
let out = [], rec, i;
for (i = 1; i <= 16; i++) {
rec = {
num: i, del: 1, enab: 1, prev: 0, type: 0,
sun_angle: 0, name: "", cron: "", exec: "",
}
out.push(rec);
}
return out;
};
const init = { const init = {
cronrecs: [ cronrecs: initrecs()
{ num: 1, del: 1, enab: 1, prev: 0, name: "", cron: "", exec: "" },
{ num: 2, del: 1, enab: 1, prev: 0, name: "", cron: "", exec: "" },
{ num: 3, del: 1, enab: 1, prev: 0, name: "", cron: "", exec: "" },
{ num: 4, del: 1, enab: 1, prev: 0, name: "", cron: "", exec: "" },
{ num: 5, del: 1, enab: 1, prev: 0, name: "", cron: "", exec: "" },
{ num: 6, del: 1, enab: 1, prev: 0, name: "", cron: "", exec: "" },
{ num: 7, del: 1, enab: 1, prev: 0, name: "", cron: "", exec: "" },
{ num: 8, del: 1, enab: 1, prev: 0, name: "", cron: "", exec: "" },
{ num: 9, del: 1, enab: 1, prev: 0, name: "", cron: "", exec: "" },
{ num: 10, del: 1, enab: 1, prev: 0, name: "", cron: "", exec: "" },
{ num: 11, del: 1, enab: 1, prev: 0, name: "", cron: "", exec: "" },
{ num: 12, del: 1, enab: 1, prev: 0, name: "", cron: "", exec: "" },
{ num: 13, del: 1, enab: 1, prev: 0, name: "", cron: "", exec: "" },
{ num: 14, del: 1, enab: 1, prev: 0, name: "", cron: "", exec: "" },
{ num: 15, del: 1, enab: 1, prev: 0, name: "", cron: "", exec: "" },
{ num: 16, del: 1, enab: 1, prev: 0, name: "", cron: "", exec: "" }
]
} }
function ApplyCronRecord(num) { function ApplyCronRecord(num) {
PostData({ PostData(data, 1, 1, null);
cronrecs: [{
num: data.cronrecs[num - 1].num,
del: data.cronrecs[num - 1].del,
enab: data.cronrecs[num - 1].enab,
prev: data.cronrecs[num - 1].prev,
name: data.cronrecs[num - 1].name,
cron: data.cronrecs[num - 1].cron,
exec: data.cronrecs[num - 1].exec
}]
}, 1, 1, null);
} }
function DeleteCronRecord(num) { function DeleteCronRecord(num) {

View File

@ -18,6 +18,12 @@
<q-btn flat class="btn" label="Set time from system" @click="SetTimeFromSystem"></q-btn> <q-btn flat class="btn" label="Set time from system" @click="SetTimeFromSystem"></q-btn>
</div> </div>
</q-card-section> </q-card-section>
<q-card-section class="q-pt-none">
<div class="row">
<div class="q-pa-md col-6"><q-input v-model="data.lat" label="Latitude" /></div>
<div class="q-pa-md col-6"><q-input v-model="data.lon" label="Longitude" /></div>
</div>
</q-card-section>
<CardActions :senddata="data"></CardActions> <CardActions :senddata="data"></CardActions>
</q-card> </q-card>
</template> </template>
@ -38,6 +44,8 @@ const init = {
sntp_serv2: "", sntp_serv2: "",
sntp_serv3: "", sntp_serv3: "",
sntp_enab: false, sntp_enab: false,
lat: 0,
lon: 0
} }
const data = reactive(init); const data = reactive(init);