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: `

Settings

Cloudflare DNS

Server

SSL / ACME

`, }) 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')); }); } }