getKuralOfTheDay method
Implementation
Future getKuralOfTheDay({required String? date}) async{
isKuralOfDayLoaded = false;
kuralOfDay = null;
errorMessageForKuralOfDay = '';
String validDateMessage = isDateValid(date: date);
logger.i(validDateMessage);
if(validDateMessage.isEmpty) {
try {
ApiResponse response = await ApiServices.get(
requestHeaders: {},
requestParams: {
'date': date
},
endpoint: UrlServices.GET_KURAL_OF_THE_DAY
);
logger.w(response.toJson());
if (response.status != null && response.status!) {
Map<String, dynamic> responseJson = response.response;
if(responseJson.isNotEmpty) {
kuralOfDay = Kural.fromJson(response.response);
isKuralOfDayLoaded = true;
} else{
errorMessageForKuralOfDay = response.message ?? 'No response from server.';
}
} else {
errorMessageForKuralOfDay = response.message ??
'Server error, failed to load kural of the day';
}
} catch (e, stackTrace) {
logger.e('Error while fetching kural of the day: $e, $stackTrace');
}
}else{
errorMessageForKuralOfDay = validDateMessage;
}
logger.e('Error message while fetching kural of the day: $date');
logger.e(errorMessageForKuralOfDay);
state = state.kuralOfDayCopyWith(
kuralOfTheDay: kuralOfDay,
errorMessageForKuralOfDay: errorMessageForKuralOfDay,
isKuralOfDayLoaded: isKuralOfDayLoaded
);
}