elCaribe app - customization and branding

This commit is contained in:
2025-12-12 19:09:42 -04:00
parent 9e5d0d8ebf
commit ba7deac9f3
402 changed files with 31833 additions and 0 deletions

View File

@@ -0,0 +1,38 @@
import 'package:news/data/repositories/LikeAndDisLikeNews/LikeAndDisLikeNewsRepository.dart';
import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:news/data/models/NewsModel.dart';
import 'package:news/utils/api.dart';
abstract class UpdateLikeAndDisLikeStatusState {}
class UpdateLikeAndDisLikeStatusInitial extends UpdateLikeAndDisLikeStatusState {}
class UpdateLikeAndDisLikeStatusInProgress extends UpdateLikeAndDisLikeStatusState {}
class UpdateLikeAndDisLikeStatusSuccess extends UpdateLikeAndDisLikeStatusState {
final NewsModel news;
final bool wasLikeAndDisLikeNewsProcess; //to check that process of favorite done or not
UpdateLikeAndDisLikeStatusSuccess(this.news, this.wasLikeAndDisLikeNewsProcess);
}
class UpdateLikeAndDisLikeStatusFailure extends UpdateLikeAndDisLikeStatusState {
final String errorMessage;
UpdateLikeAndDisLikeStatusFailure(this.errorMessage);
}
class UpdateLikeAndDisLikeStatusCubit extends Cubit<UpdateLikeAndDisLikeStatusState> {
final LikeAndDisLikeRepository likeAndDisLikeRepository;
UpdateLikeAndDisLikeStatusCubit(this.likeAndDisLikeRepository) : super(UpdateLikeAndDisLikeStatusInitial());
void setLikeAndDisLikeNews({required NewsModel news, required String status}) {
emit(UpdateLikeAndDisLikeStatusInProgress());
likeAndDisLikeRepository.setLike(newsId: (news.newsId != null) ? news.newsId! : news.id!, status: status).then((value) {
emit(UpdateLikeAndDisLikeStatusSuccess(news, status == "1" ? true : false));
}).catchError((e) {
ApiMessageAndCodeException apiMessageAndCodeException = e;
emit(UpdateLikeAndDisLikeStatusFailure(apiMessageAndCodeException.errorMessage.toString()));
});
}
}