</a>
<i v-if="config.icon" :class="config.icon"></i>
</div>
- <div class="dashboard-title">
+ <div
+ class="dashboard-title"
+ :class="{ 'no-logo': !config.icon || !config.logo }"
+ >
<span class="headline">{{ config.subtitle }}</span>
<h1>{{ config.title }}</h1>
</div>
@network-status-update="offline = $event"
/>
- <GetStarted v-if="loaded && !services" />
+ <GetStarted v-if="configurationNeeded" />
<div v-if="!offline">
<!-- Optional messages -->
data: function () {
return {
loaded: false,
+ configNotFound: false,
config: null,
services: null,
offline: false,
showMenu: false,
};
},
+ computed: {
+ configurationNeeded: function () {
+ return (this.loaded && !this.services) || this.configNotFound;
+ },
+ },
created: async function () {
this.buildDashboard();
window.onhashchange = this.buildDashboard;
return;
}
+ if (response.status == 404) {
+ this.configNotFound = true;
+ return {};
+ }
+
if (!response.ok) {
throw Error(`${response.statusText}: ${response.body}`);
}
<p>
<a
class="button is-primary mt-5 has-text-weight-bold"
- href="https://github.com/bastienwirtz/homer/blob/main/README.md#getting-started"
+ href="https://github.com/bastienwirtz/homer/blob/main/docs/configuration.md#configuration"
target="_blank"
>
Get started
this.fetch("/System/info/public")
.then((response) => {
if (response.Id) this.status = "running";
- else throw new Error();
+ else throw new Error();
})
.catch((e) => {
console.log(e);