elektronika/lib/app/pages/settings/sub_pages/language/controller.dart

38 lines
929 B
Dart
Raw Normal View History

2023-05-10 04:58:40 +00:00
import 'package:elektronika/app/pages/category/controller.dart';
2023-02-27 07:12:45 +00:00
import 'package:get/get.dart';
import '../../../../app.dart';
2023-05-10 04:58:40 +00:00
import '../../../home/controller.dart';
2023-02-27 07:12:45 +00:00
class LanguageController extends GetxController {
List<LanguageModel> languages = [...LocalizationService.langs];
RxInt groupValue = 1.obs;
@override
void onInit() {
getCurrentLocale();
super.onInit();
}
void onChangeLanguage(LanguageModel newValue) {
groupValue.value = newValue.id;
LocalizationService().changeLocale(newValue.code);
setLocale(newValue.code);
2023-05-10 04:58:40 +00:00
resetLocaleSavedData();
2023-02-27 07:12:45 +00:00
}
Future<void> getCurrentLocale() async {
final locale = await getLocale();
groupValue.value = locale == 'tm' ? 1 : 2;
}
2023-05-10 04:58:40 +00:00
Future<void> resetLocaleSavedData() async {
await Get.delete<SettingsController>();
SliderApi.sliders.clear();
CategoryApi.categories.clear();
CategoryApi.clearCategories();
}
2023-02-27 07:12:45 +00:00
}