Send cancel information when deleting a meeting self-organized

This commit is contained in:
Christophe Deschamps 2022-09-23 00:11:58 +02:00
parent 7d9b79a9f8
commit 8894132986
4 changed files with 14 additions and 5 deletions

View file

@ -40,7 +40,7 @@ class ScheduledConferenceData {
let canEdit = MutableLiveData(false)
let isFinished : Bool
let selectedForDeletion = MutableLiveData(false)
init (conferenceInfo: ConferenceInfo, isFinished: Bool = false) {
self.conferenceInfo = conferenceInfo
@ -98,4 +98,11 @@ class ScheduledConferenceData {
func gotoAssociatedChat() {
}
func deleteConference() {
if (conferenceInfo.state != .Cancelled && canEdit.value == true) {
Log.i("[Scheduled Conferences] Cancelling conference \(conferenceInfo.subject)")
ScheduledConferencesViewModel.shared.conferenceScheduler?.cancelConference(conferenceInfo: conferenceInfo)
}
Core.get().deleteConferenceInformation(conferenceInfo: conferenceInfo)
}
}

View file

@ -33,6 +33,8 @@ class ScheduledConferencesViewModel {
var coreDelegate: CoreDelegateStub?
var showTerminated = MutableLiveData(false)
let editionEnabled = MutableLiveData(false)
let conferenceScheduler = try? Core.get().createConferenceScheduler()
init () {

View file

@ -226,7 +226,7 @@ class ScheduledConferencesCell: UITableViewCell {
}
func deleteEntry() {
Core.get().deleteConferenceInformation(conferenceInfo: self.conferenceData!.conferenceInfo)
self.conferenceData?.deleteConference()
ScheduledConferencesViewModel.shared.computeConferenceInfoList()
self.owningTableView?.reloadData()
}

View file

@ -222,10 +222,10 @@ import linphonesw
let selectedCount = ScheduledConferencesViewModel.shared.conferences.value?.filter{$0.selectedForDeletion.value == true}.count ?? 0
let delete = ButtonAttributes(text:VoipTexts.conference_info_confirm_removal_delete, action: {
ScheduledConferencesViewModel.shared.conferences.value?.forEach {
Core.get().deleteConferenceInformation(conferenceInfo: $0.conferenceInfo)
ScheduledConferencesViewModel.shared.computeConferenceInfoList()
self.conferenceListView.reloadData()
$0.deleteConference()
}
ScheduledConferencesViewModel.shared.computeConferenceInfoList()
self.conferenceListView.reloadData()
VoipDialog.toast(message: selectedCount == 1 ? VoipTexts.conference_info_removed : VoipTexts.conference_infos_removed)
ScheduledConferencesViewModel.shared.editionEnabled.value = false
}, isDestructive:false)