TF-4102 Don't display free-busy on IMIP responses (accepted, tentative, rejected)

This commit is contained in:
dab246
2025-10-15 15:17:12 +07:00
committed by Dat H. Pham
parent 51b85c8b79
commit 474a8806e2
7 changed files with 37 additions and 16 deletions
@@ -437,6 +437,17 @@ extension CalendarEventExtension on CalendarEvent {
}
}
bool isIMIPResponsesAvailable(List<String> listEmailAddressSender) {
final participationStatus = findAttendeeHasUpdatedStatus(
listEmailAddressSender,
)?.participationStatus?.value;
return method == EventMethod.reply &&
(participationStatus == acceptedParticipationStatus ||
participationStatus == tentativeParticipationStatus ||
participationStatus == declinedParticipationStatus);
}
CalendarEvent copyWith({
EventId? eventId,
String? title,
@@ -0,0 +1,9 @@
import 'package:tmail_ui_user/features/email/presentation/controller/single_email_controller.dart';
import 'package:tmail_ui_user/features/email/presentation/extensions/calendar_event_extension.dart';
extension ValidateDisplayFreeBusyMessageExtension on SingleEmailController {
bool isFreeBusyEnabled(List<String> listEmailAddressSender) {
return !isCalendarEventFree &&
calendarEvent?.isIMIPResponsesAvailable(listEmailAddressSender) != true;
}
}