PluginProbe ʕ •ᴥ•ʔ
Hostinger Tools / 3.0.72
Hostinger Tools v3.0.72
3.0.72 3.0.71 3.0.70 3.0.69 3.0.68 3.0.67 3.0.66 1.8.1 1.8.2 1.8.3 1.9.1 1.9.4 1.9.5 1.9.6 1.9.7 1.9.8 1.9.9 2.0.0 2.0.1 2.0.4 2.0.6 2.0.7 2.0.8 2.0.9 2.1.0 2.1.1 2.1.2 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 3.0.0 3.0.10 3.0.11 3.0.12 3.0.13 3.0.14 3.0.15 3.0.16 3.0.17 3.0.18 3.0.19 3.0.2 3.0.20 3.0.21 3.0.22 3.0.23 3.0.24 3.0.25 3.0.26 3.0.27 3.0.28 3.0.29 3.0.3 3.0.30 3.0.31 3.0.32 3.0.33 3.0.34 3.0.35 3.0.36 3.0.37 3.0.38 3.0.39 3.0.4 3.0.40 3.0.41 3.0.42 3.0.43 3.0.44 3.0.45 3.0.46 3.0.47 3.0.48 3.0.49 3.0.5 3.0.50 3.0.51 3.0.52 3.0.53 3.0.54 3.0.55 3.0.56 3.0.57 3.0.58 3.0.59 3.0.6 3.0.60 3.0.61 3.0.62 3.0.65 3.0.7 3.0.8 3.0.9 trunk 1.8.0
hostinger / vue-frontend / src / stores / settingsStore.ts
hostinger / vue-frontend / src / stores Last commit date
generalStoreData.ts 9 months ago index.ts 9 months ago modalStore.ts 9 months ago settingsStore.ts 9 months ago
settingsStore.ts
82 lines
1 import { defineStore } from "pinia";
2 import { ref } from "vue";
3 import { toast } from "vue3-toastify";
4
5 import { generalDataRepo } from "@/repositories";
6 import { STORE_PERSISTENT_KEYS } from "@/types/enums";
7 import { SettingsData } from "@/types/models";
8 import { translate } from "@/utils/helpers";
9
10 export const useSettingsStore = defineStore(
11 "settingsStore",
12 () => {
13 const settingsData = ref<SettingsData | null>(null);
14
15 const fetchSettingsData = async () => {
16 const [{ data }, err] = await generalDataRepo.getSettings();
17
18 if (err) return;
19
20 settingsData.value = data;
21 };
22
23 const regenerateByPassCode = async () => {
24 const [{ data }, err] =
25 await generalDataRepo.getRegenerateByPassCode();
26
27 if (err) return;
28
29 toast.success(translate("bypass_link_reset_success"));
30
31 const tempSettingsData = settingsData.value;
32
33 settingsData.value = {
34 ...data,
35 currentWpVersion: tempSettingsData?.currentWpVersion || "",
36 phpVersion: tempSettingsData?.phpVersion || "",
37 newestWpVersion: tempSettingsData?.newestWpVersion || "",
38 isEligibleWwwRedirect:
39 tempSettingsData?.isEligibleWwwRedirect || false
40 };
41 };
42
43 const updateSettingsData = async (
44 settings: SettingsData
45 ): Promise<boolean> => {
46 const [{ data }, err] =
47 await generalDataRepo.postSettings(settings);
48
49 if (err) {
50 toast.error(translate("hostinger_tools_settings_error"));
51
52 return false;
53 }
54
55 const tempSettingsData = settingsData.value;
56
57 settingsData.value = {
58 ...data,
59 currentWpVersion: tempSettingsData?.currentWpVersion || "",
60 phpVersion: tempSettingsData?.phpVersion || "",
61 newestWpVersion: tempSettingsData?.newestWpVersion || "",
62 isEligibleWwwRedirect:
63 tempSettingsData?.isEligibleWwwRedirect || false
64 };
65
66 toast.success(translate("hostinger_tools_settings_updated"));
67
68 return true;
69 };
70
71 return {
72 fetchSettingsData,
73 updateSettingsData,
74 regenerateByPassCode,
75 settingsData
76 };
77 },
78 {
79 persist: { key: STORE_PERSISTENT_KEYS.SETTINGS_STORE }
80 }
81 );
82