diff --git a/src/components/FooterBar.vue b/src/components/FooterBar.vue index de930d1..00afa2c 100644 --- a/src/components/FooterBar.vue +++ b/src/components/FooterBar.vue @@ -1,6 +1,6 @@ @@ -14,11 +14,12 @@ import BaseButton from "@/components/BaseButton.vue"; Admin One.

-
+
+
diff --git a/src/css/main.css b/src/css/main.css index 9e11301..f59dff0 100644 --- a/src/css/main.css +++ b/src/css/main.css @@ -44,8 +44,21 @@ img { pointer-events: none; } -#particles-js { - min-width: 100vw; - min-height: 100vh; - position: absolute; -} \ No newline at end of file +@media screen and (min-width: 768px) { + #particles-js { + min-width: 100vw; + min-height: 100vh; + position: absolute; + z-index: -0.9; + } +} + +@media screen and (max-width: 768px) { + #particles-js { + min-width: 100vw; + min-height: 100vh; + position: absolute; + z-index: 0; + } +} + diff --git a/src/layouts/LayoutGuest.vue b/src/layouts/LayoutGuest.vue index 17297ad..7dc5eb8 100644 --- a/src/layouts/LayoutGuest.vue +++ b/src/layouts/LayoutGuest.vue @@ -105,4 +105,13 @@ watch( -webkit-animation-name: none !important; } } + +@media screen and (max-width: 768px) { + #particles-js { + min-width: 100vw; + min-height: 100vh; + position: absolute; + z-index: -1; + } +} diff --git a/src/stores/main.js b/src/stores/main.js index 133f132..663493c 100644 --- a/src/stores/main.js +++ b/src/stores/main.js @@ -29,6 +29,10 @@ export const useMainStore = defineStore("main", { /* User Loaded state */ userLoaded: false, + + /* Save news state */ + loadedNews: null, + loadedArticles: {}, }), actions: { setUser(payload) { @@ -143,22 +147,32 @@ export const useMainStore = defineStore("main", { }, async fetchAllNews() { - try { - const data = await this.callApi("/news"); - return data.slice(0, 2); - } catch (error) { - console.log("Error fetching news:", error); - throw error; + if (!this.loadedNews) { + try { + const data = await this.callApi("/news"); + this.loadedNews = data.slice(0, 2); + return this.loadedNews; + } catch (error) { + console.log("Error fetching news:", error); + throw error; + } + } else { + return this.loadedNews; } }, async fetchNews(newsID) { - try { - const data = await this.callApi(`/news/${newsID}`); - return data; - } catch (error) { - console.log("Error fetching news:", error); - throw error; + if (!this.loadedArticles[newsID]) { + try { + const data = await this.callApi(`/news/${newsID}`); + this.loadedArticles[newsID] = data; + return data; + } catch (error) { + console.log("Error fetching news:", error); + throw error; + } + } else { + return this.loadedArticles[newsID]; } }, diff --git a/src/views/Arcade/ArcadeView.vue b/src/views/Arcade/ArcadeView.vue index 9911722..bd9d5cf 100644 --- a/src/views/Arcade/ArcadeView.vue +++ b/src/views/Arcade/ArcadeView.vue @@ -173,7 +173,7 @@ async function exportVPN() {
- +

OpenVPN Configuration

Use this to download your VPN config.