Files
CT/src/Model/Global/settingsModel.ts
T

58 lines
1.3 KiB
TypeScript
Raw Normal View History

2024-07-20 00:22:53 +02:00
// this file is responsible for all settings.
2024-07-22 03:01:04 +02:00
import StorageModel, { filePaths } from "./storageModel";
2024-07-20 00:22:53 +02:00
export default class SettingsModel {
storageModel: StorageModel;
2024-07-22 02:23:21 +02:00
// data
2024-07-20 00:22:53 +02:00
username: string;
2024-07-22 01:13:20 +02:00
firstDayOfWeek: string;
2024-07-20 00:22:53 +02:00
2024-07-22 03:01:04 +02:00
// storage
2024-07-20 00:22:53 +02:00
setName(newValue: string): void {
this.username = newValue;
2024-07-22 03:01:04 +02:00
const path = StorageModel.getPath(
"settingsModel",
filePaths.settingsModel.username
);
2024-07-21 21:41:19 +02:00
this.storageModel.write(path, newValue);
2024-07-20 00:22:53 +02:00
}
2024-07-22 01:13:20 +02:00
setFirstDayOfWeek(newValue: string): void {
2024-07-20 00:22:53 +02:00
this.firstDayOfWeek = newValue;
2024-07-22 03:01:04 +02:00
const path = StorageModel.getPath(
"settingsModel",
filePaths.settingsModel.firstDayOfWeek
);
2024-07-22 01:13:20 +02:00
this.storageModel.write(path, newValue);
2024-07-20 00:22:53 +02:00
}
2024-07-21 21:41:19 +02:00
// load
loadUsernam(): void {
2024-07-22 03:01:04 +02:00
const path = StorageModel.getPath(
"settingsModel",
filePaths.settingsModel.username
);
2024-07-21 21:41:19 +02:00
const content = this.storageModel.read(path);
this.username = content ?? "";
2024-07-20 00:22:53 +02:00
}
2024-07-21 21:41:19 +02:00
loadFirstDayofWeek(): void {
2024-07-22 03:01:04 +02:00
const path = StorageModel.getPath(
"settingsModel",
filePaths.settingsModel.firstDayOfWeek
);
2024-07-22 01:13:20 +02:00
const content = this.storageModel.read(path);
this.firstDayOfWeek = content ?? "0";
2024-07-20 00:22:53 +02:00
}
// init
constructor(storageModel: StorageModel) {
this.storageModel = storageModel;
2024-07-21 21:41:19 +02:00
this.loadUsernam();
this.loadFirstDayofWeek();
2024-07-20 00:22:53 +02:00
}
}