Skip to content
Snippets Groups Projects
Commit 8b346283 authored by Taras's avatar Taras
Browse files

Create Invite list item

parent f9b936f4
No related branches found
No related tags found
No related merge requests found
package org.futo.circles.core.mapping package org.futo.circles.core.mapping
import org.futo.circles.core.extensions.notEmptyDisplayName
import org.futo.circles.core.model.InvitedGalleryListItem
import org.futo.circles.core.model.JoinedGalleryListItem import org.futo.circles.core.model.JoinedGalleryListItem
import org.futo.circles.core.model.RoomInfo import org.futo.circles.core.model.RoomInfo
import org.futo.circles.core.model.SelectableRoomListItem import org.futo.circles.core.model.SelectableRoomListItem
import org.futo.circles.core.provider.MatrixSessionProvider
import org.matrix.android.sdk.api.session.getUserOrDefault
import org.matrix.android.sdk.api.session.room.model.RoomSummary import org.matrix.android.sdk.api.session.room.model.RoomSummary
fun RoomSummary.nameOrId() = displayName.takeIf { it.isNotEmpty() } ?: roomId fun RoomSummary.nameOrId() = displayName.takeIf { it.isNotEmpty() } ?: roomId
...@@ -25,15 +21,4 @@ fun RoomSummary.toSelectableRoomListItem(selected: Boolean = false) = Selectable ...@@ -25,15 +21,4 @@ fun RoomSummary.toSelectableRoomListItem(selected: Boolean = false) = Selectable
fun RoomSummary.toJoinedGalleryListItem() = JoinedGalleryListItem( fun RoomSummary.toJoinedGalleryListItem() = JoinedGalleryListItem(
id = roomId, id = roomId,
info = toRoomInfo() info = toRoomInfo()
) )
\ No newline at end of file
fun RoomSummary.toInvitedGalleryListItem(shouldBlurIcon: Boolean) = InvitedGalleryListItem(
id = roomId,
info = toRoomInfo(),
inviterName = getInviterName(),
shouldBlurIcon = shouldBlurIcon
)
fun RoomSummary.getInviterName() =
MatrixSessionProvider.currentSession?.getUserOrDefault(inviterId ?: "")?.notEmptyDisplayName()
?: ""
\ No newline at end of file
package org.futo.circles.core.model
import org.futo.circles.core.base.list.IdEntity
import org.futo.circles.core.extensions.notEmptyDisplayName
import org.futo.circles.core.mapping.toRoomInfo
import org.futo.circles.core.provider.MatrixSessionProvider
import org.matrix.android.sdk.api.session.getUserOrDefault
import org.matrix.android.sdk.api.session.room.model.RoomSummary
sealed class InviteListItem(
override val id: String,
open val inviteType: InviteTypeArg
) : IdEntity<String>
data class RoomInviteListItem(
val roomId: String,
override val inviteType: InviteTypeArg,
val info: RoomInfo,
val isEncrypted: Boolean,
val inviterName: String,
val shouldBlurIcon: Boolean
) : InviteListItem(roomId, inviteType)
data class FollowRequestListItem(
val user: CirclesUserSummary,
val reasonMessage: String?
) : InviteListItem(user.id, InviteTypeArg.People)
fun RoomSummary.toRoomInviteListItem(inviteType: InviteTypeArg, shouldBlurIcon: Boolean) =
RoomInviteListItem(
roomId = roomId,
info = toRoomInfo(),
inviterName = getInviterName(),
isEncrypted = isEncrypted,
shouldBlurIcon = shouldBlurIcon,
inviteType = inviteType
)
fun RoomSummary.getInviterName() =
MatrixSessionProvider.currentSession?.getUserOrDefault(inviterId ?: "")?.notEmptyDisplayName()
?: ""
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment