diff --git a/src/js/admin-general-view.js b/src/js/admin-general-view.js index 380ca14..6a4e569 100644 --- a/src/js/admin-general-view.js +++ b/src/js/admin-general-view.js @@ -146,8 +146,23 @@ module.exports = { this.$dispatch("config-changed"); }, - change_date_time: function () { - console.log(this.selected_date_time); + change_date_time: async function () { + // console.log(this.selected_date_time); + if (!this.selected_date_time) { + return; + } + try { + const [date, time] = this.selected_date_time.split("T"); + + const datetime = `${date} ${time}`; + const timezone = "UTC"; + + const response = await api.put("time", { datetime, timezone }); + + console.log("Time update successful: ", response); + } catch (error) { + alert("Error updating time: ", error); + } }, }, }; diff --git a/src/pug/index.pug b/src/pug/index.pug index 13eb5f5..9035e39 100644 --- a/src/pug/index.pug +++ b/src/pug/index.pug @@ -76,7 +76,7 @@ html(lang="en") .brand img(src="/images/onefinity_logo.png") .version - div Version: v{{config.full_version}} Beta 1 + div Version: v{{config.full_version}} Alpha 2 div IP Address: {{config.ip}} div WiFi: {{config.wifiName}} a.upgrade-link(v-if="show_upgrade()", href="#admin-general") diff --git a/src/pug/templates/admin-general-view.pug b/src/pug/templates/admin-general-view.pug index c3db679..56a706c 100644 --- a/src/pug/templates/admin-general-view.pug +++ b/src/pug/templates/admin-general-view.pug @@ -65,5 +65,6 @@ script#admin-general-view-template(type="text/x-template") button.pure-button.pure-button-primary Bug Report h2 Date/Time - input(id="datetime" type="datetime-local" v-model="selected_date_time") + .pure-control-group + input(id="datetime" type="datetime-local" v-model="selected_date_time") button.pure-button.pure-button-primary(@click="change_date_time") Update Date/Time diff --git a/src/py/bbctrl/Web.py b/src/py/bbctrl/Web.py index f96b472..20d8f7d 100644 --- a/src/py/bbctrl/Web.py +++ b/src/py/bbctrl/Web.py @@ -582,8 +582,12 @@ class TimeHandler(bbctrl.APIHandler): def put_ok(self): datetime = self.json['datetime'] timezone = self.json['timezone'] - subprocess.Popen(['timedatectl', 'set-time', datetime]) - subprocess.Popen(['timedatectl', 'set-timezone', timezone]) + try: + subprocess.Popen(['timedatectl', 'set-time', datetime]) + subprocess.Popen(['timedatectl', 'set-timezone', timezone]) + self.get_log('TimeHandler').info('Time changed: datetime: {}'.format(datetime)) + except Exception as e: + self.get_log('TimeHandler').info('Error updating time or timezone: {}'.format(e)) class RemoteDiagnosticsHandler(bbctrl.APIHandler):