TKK_E32220429/lib/app/modules/setting/controllers/setting_controller.dart

46 lines
1.2 KiB
Dart

import 'package:get/get.dart';
import 'package:firebase_database/firebase_database.dart';
class SettingController extends GetxController {
final DatabaseReference _dbRef = FirebaseDatabase.instance.ref('pengaturan');
var jarakDekat = 0.obs;
var jarakJauh = 0.obs;
var intervalLokasi = 0.obs;
final isLoading = true.obs;
@override
void onInit() {
super.onInit();
loadSettings();
}
void loadSettings() async {
try {
final snapshot = await _dbRef.get();
if (snapshot.exists) {
jarakDekat.value = snapshot.child('jarak_dekat').value as int;
jarakJauh.value = snapshot.child('jarak_jauh').value as int;
intervalLokasi.value = snapshot.child('interval_lokasi').value as int;
}
} catch (e) {
print('Error loading settings: $e');
}
isLoading.value = false;
}
void updateSettings() async {
try {
await _dbRef.update({
'jarak_dekat': jarakDekat.value,
'jarak_jauh': jarakJauh.value,
'interval_lokasi': intervalLokasi.value,
});
Get.snackbar('Sukses', 'Pengaturan berhasil disimpan');
} catch (e) {
Get.snackbar('Error', 'Gagal menyimpan: $e');
}
}
}