event deletion can now be done with predix-id too

This commit is contained in:
Vishal 2022-09-03 08:56:10 +05:30
parent d5b6c31a61
commit e21cf63d49
2 changed files with 26 additions and 4 deletions

View File

@ -409,10 +409,16 @@ Future<void> otherMenuUi(Store node) async {
case 7:
stdout.write("Enter event id to delete: ");
String? $tempEventId = stdin.readLineSync();
String eventId = $tempEventId??"";
if( eventId.length == 64) {
sendDeleteEvent(node, eventId);
} else print("Invalid Event Id entered; should be of 64 byte length. Try again.");
String userInputId = $tempEventId??"";
Set<String> eventIdToDelete = node.getEventEidFromPrefix(userInputId);
if( eventIdToDelete.length == 1) {
String toDeleteId = eventIdToDelete.first;
print("Going to send a delete event for the following event with id ${toDeleteId}");
sendDeleteEvent(node, eventIdToDelete.first);
} else {
print("Invalid Event Id(s) entered = {$eventIdToDelete}");
}
break;

View File

@ -1185,6 +1185,22 @@ class Store {
});
return deletedEventIds;
} // end processDeleteEvents
Set<String> getEventEidFromPrefix(String eventId) {
if( eventId.length > 64) {
return {};
}
Set<String> foundEventIds = {};
for( String k in allChildEventsMap.keys) {
if( k.length >= eventId.length && k.substring(0, eventId.length) == eventId) {
foundEventIds.add(k);
}
}
return foundEventIds;
}
} // end Store
void addMessageToChannel(String channelId, String messageId, Map<String, Tree> tempChildEventsMap, var chatRooms) {