Support creating rooms with a version

This commit is contained in:
Kurt Roeckx 2021-08-07 15:55:03 +02:00
parent 1cf9da26bf
commit 989a20e99c

View file

@ -65,7 +65,19 @@ pub async fn create_room_route(
let mut content = ruma::events::room::create::CreateEventContent::new(sender_user.clone());
content.federate = body.creation_content.federate;
content.predecessor = body.creation_content.predecessor.clone();
content.room_version = RoomVersionId::Version6;
content.room_version = match body.room_version.clone() {
Some(room_version) => {
if room_version == RoomVersionId::Version5 || room_version == RoomVersionId::Version6 {
room_version
} else {
return Err(Error::BadRequest(
ErrorKind::UnsupportedRoomVersion,
"This server does not support that room version.",
));
}
}
None => RoomVersionId::Version6,
};
// 1. The room create event
db.rooms.build_and_append_pdu(