import { Component, OnInit, inject, signal } from '@angular/core';
import { CommonModule } from '@angular/common';
import { FormsModule } from '@angular/forms';
import { ApiService } from '../../core/services/api.service';
import { ToastService } from '../../core/services/toast.service';
@Component({
selector: 'app-settings',
standalone: true,
imports: [CommonModule, FormsModule],
template: `
`,
})
export class SettingsComponent implements OnInit {
private apiService = inject(ApiService);
private toastService = inject(ToastService);
settings: any = {};
ngOnInit(): void {
this.loadSettings();
}
loadSettings(): void {
this.apiService.getSettings().subscribe({
next: (response) => {
if (response.success && response.data) {
this.settings = response.data;
}
},
});
}
saveSettings(): void {
// Save each setting individually
const promises = Object.entries(this.settings).map(([key, value]) =>
this.apiService.updateSetting(key, value as string).toPromise()
);
Promise.all(promises).then(() => {
this.toastService.success('Settings saved successfully');
}).catch((error) => {
this.toastService.error('Failed to save settings: ' + (error.message || 'Unknown error'));
});
}
}