parent
b5546b4957
commit
87f02918f8
|
@ -15,6 +15,7 @@ import kr.co.vividnext.sodalive.databinding.ItemAuditionApplicantBinding
|
||||||
|
|
||||||
class AuditionApplicantListAdapter(
|
class AuditionApplicantListAdapter(
|
||||||
private val onClickVote: (Int) -> Unit,
|
private val onClickVote: (Int) -> Unit,
|
||||||
|
private val onClickNickname: (Long) -> Unit,
|
||||||
private val onClickPlayOrPause: (Int, Long, String) -> Unit
|
private val onClickPlayOrPause: (Int, Long, String) -> Unit
|
||||||
) : ListAdapter<GetAuditionRoleApplicantItem, AuditionApplicantListAdapter.ViewHolder>(DiffCallback()) {
|
) : ListAdapter<GetAuditionRoleApplicantItem, AuditionApplicantListAdapter.ViewHolder>(DiffCallback()) {
|
||||||
|
|
||||||
|
@ -54,6 +55,8 @@ class AuditionApplicantListAdapter(
|
||||||
}
|
}
|
||||||
|
|
||||||
binding.tvNickname.text = item.nickname
|
binding.tvNickname.text = item.nickname
|
||||||
|
binding.tvNickname.setOnClickListener { onClickNickname(item.memberId) }
|
||||||
|
|
||||||
binding.tvCountVote.text = item.voteCount.toString()
|
binding.tvCountVote.text = item.voteCount.toString()
|
||||||
binding.ivProfile.load(item.profileImageUrl) {
|
binding.ivProfile.load(item.profileImageUrl) {
|
||||||
crossfade(true)
|
crossfade(true)
|
||||||
|
|
|
@ -12,6 +12,7 @@ data class GetAuditionApplicantListResponse(
|
||||||
@Keep
|
@Keep
|
||||||
data class GetAuditionRoleApplicantItem(
|
data class GetAuditionRoleApplicantItem(
|
||||||
@SerializedName("applicantId") val applicantId: Long,
|
@SerializedName("applicantId") val applicantId: Long,
|
||||||
|
@SerializedName("memberId") val memberId: Long,
|
||||||
@SerializedName("nickname") val nickname: String,
|
@SerializedName("nickname") val nickname: String,
|
||||||
@SerializedName("profileImageUrl") val profileImageUrl: String,
|
@SerializedName("profileImageUrl") val profileImageUrl: String,
|
||||||
@SerializedName("voiceUrl") val voiceUrl: String,
|
@SerializedName("voiceUrl") val voiceUrl: String,
|
||||||
|
|
|
@ -24,6 +24,7 @@ import kr.co.vividnext.sodalive.common.Constants
|
||||||
import kr.co.vividnext.sodalive.common.LoadingDialog
|
import kr.co.vividnext.sodalive.common.LoadingDialog
|
||||||
import kr.co.vividnext.sodalive.common.RealPathUtil
|
import kr.co.vividnext.sodalive.common.RealPathUtil
|
||||||
import kr.co.vividnext.sodalive.databinding.ActivityAuditionRoleDetailBinding
|
import kr.co.vividnext.sodalive.databinding.ActivityAuditionRoleDetailBinding
|
||||||
|
import kr.co.vividnext.sodalive.explorer.profile.UserProfileActivity
|
||||||
import kr.co.vividnext.sodalive.explorer.profile.creator_community.write.RecordingVoiceFragment
|
import kr.co.vividnext.sodalive.explorer.profile.creator_community.write.RecordingVoiceFragment
|
||||||
import kr.co.vividnext.sodalive.extensions.dpToPx
|
import kr.co.vividnext.sodalive.extensions.dpToPx
|
||||||
import org.koin.android.ext.android.inject
|
import org.koin.android.ext.android.inject
|
||||||
|
@ -179,6 +180,13 @@ class AuditionRoleDetailActivity : BaseActivity<ActivityAuditionRoleDetailBindin
|
||||||
onClickPlayOrPause = { position, applicantId, voiceUrl ->
|
onClickPlayOrPause = { position, applicantId, voiceUrl ->
|
||||||
mediaPlayerManager.toggleContent(position, applicantId, voiceUrl)
|
mediaPlayerManager.toggleContent(position, applicantId, voiceUrl)
|
||||||
},
|
},
|
||||||
|
onClickNickname = { memberId ->
|
||||||
|
startActivity(
|
||||||
|
Intent(applicationContext, UserProfileActivity::class.java).apply {
|
||||||
|
putExtra(Constants.EXTRA_USER_ID, memberId)
|
||||||
|
}
|
||||||
|
)
|
||||||
|
},
|
||||||
onClickVote = { applicantId ->
|
onClickVote = { applicantId ->
|
||||||
viewModel.voteApplicant(
|
viewModel.voteApplicant(
|
||||||
applicantId,
|
applicantId,
|
||||||
|
|
|
@ -26,7 +26,9 @@ data class GetCreatorProfileResponse(
|
||||||
@SerializedName("seriesList")
|
@SerializedName("seriesList")
|
||||||
val seriesList: List<GetSeriesListResponse.SeriesListItem>,
|
val seriesList: List<GetSeriesListResponse.SeriesListItem>,
|
||||||
@SerializedName("isBlock")
|
@SerializedName("isBlock")
|
||||||
val isBlock: Boolean
|
val isBlock: Boolean,
|
||||||
|
@SerializedName("isCreatorRole")
|
||||||
|
val isCreator: Boolean
|
||||||
)
|
)
|
||||||
|
|
||||||
@Keep
|
@Keep
|
||||||
|
|
|
@ -16,7 +16,9 @@ import android.view.inputmethod.InputMethodManager
|
||||||
import android.webkit.URLUtil
|
import android.webkit.URLUtil
|
||||||
import android.widget.LinearLayout
|
import android.widget.LinearLayout
|
||||||
import android.widget.Toast
|
import android.widget.Toast
|
||||||
|
import androidx.annotation.OptIn
|
||||||
import androidx.appcompat.widget.PopupMenu
|
import androidx.appcompat.widget.PopupMenu
|
||||||
|
import androidx.media3.common.util.UnstableApi
|
||||||
import androidx.recyclerview.widget.LinearLayoutManager
|
import androidx.recyclerview.widget.LinearLayoutManager
|
||||||
import androidx.recyclerview.widget.RecyclerView
|
import androidx.recyclerview.widget.RecyclerView
|
||||||
import coil.load
|
import coil.load
|
||||||
|
@ -52,11 +54,11 @@ import kr.co.vividnext.sodalive.extensions.dpToPx
|
||||||
import kr.co.vividnext.sodalive.extensions.loadUrl
|
import kr.co.vividnext.sodalive.extensions.loadUrl
|
||||||
import kr.co.vividnext.sodalive.extensions.moneyFormat
|
import kr.co.vividnext.sodalive.extensions.moneyFormat
|
||||||
import kr.co.vividnext.sodalive.live.LiveViewModel
|
import kr.co.vividnext.sodalive.live.LiveViewModel
|
||||||
import kr.co.vividnext.sodalive.live.room.menu.MenuConfigActivity
|
|
||||||
import kr.co.vividnext.sodalive.live.reservation.complete.LiveReservationCompleteActivity
|
import kr.co.vividnext.sodalive.live.reservation.complete.LiveReservationCompleteActivity
|
||||||
import kr.co.vividnext.sodalive.live.room.LiveRoomActivity
|
import kr.co.vividnext.sodalive.live.room.LiveRoomActivity
|
||||||
import kr.co.vividnext.sodalive.live.room.dialog.LivePaymentDialog
|
import kr.co.vividnext.sodalive.live.room.dialog.LivePaymentDialog
|
||||||
import kr.co.vividnext.sodalive.live.room.dialog.LiveRoomPasswordDialog
|
import kr.co.vividnext.sodalive.live.room.dialog.LiveRoomPasswordDialog
|
||||||
|
import kr.co.vividnext.sodalive.live.room.menu.MenuConfigActivity
|
||||||
import kr.co.vividnext.sodalive.live.roulette.config.RouletteConfigActivity
|
import kr.co.vividnext.sodalive.live.roulette.config.RouletteConfigActivity
|
||||||
import kr.co.vividnext.sodalive.report.CheersReportDialog
|
import kr.co.vividnext.sodalive.report.CheersReportDialog
|
||||||
import kr.co.vividnext.sodalive.report.ProfileReportDialog
|
import kr.co.vividnext.sodalive.report.ProfileReportDialog
|
||||||
|
@ -494,6 +496,7 @@ class UserProfileActivity : BaseActivity<ActivityUserProfileBinding>(
|
||||||
recyclerView.adapter = seriesAdapter
|
recyclerView.adapter = seriesAdapter
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@OptIn(UnstableApi::class)
|
||||||
private fun setupAudioContentListView() {
|
private fun setupAudioContentListView() {
|
||||||
binding.layoutUserProfileAudioContent.tvAll.setOnClickListener {
|
binding.layoutUserProfileAudioContent.tvAll.setOnClickListener {
|
||||||
val intent = Intent(applicationContext, AudioContentActivity::class.java)
|
val intent = Intent(applicationContext, AudioContentActivity::class.java)
|
||||||
|
@ -595,18 +598,23 @@ class UserProfileActivity : BaseActivity<ActivityUserProfileBinding>(
|
||||||
}
|
}
|
||||||
|
|
||||||
viewModel.creatorProfileLiveData.observe(this) {
|
viewModel.creatorProfileLiveData.observe(this) {
|
||||||
setCheers(it.cheers)
|
|
||||||
setSeriesList(it.seriesList)
|
|
||||||
setCreatorProfile(it.creator)
|
setCreatorProfile(it.creator)
|
||||||
setAudioContentList(it.contentList)
|
setCheers(it.cheers)
|
||||||
setLiveRoomList(it.liveRoomList)
|
|
||||||
setUserDonationRanking(it.userDonationRanking)
|
if (it.isCreator) {
|
||||||
setActivitySummary(it.activitySummary)
|
binding.layoutUserProfile.ivShare.visibility = View.VISIBLE
|
||||||
setCommunityPostList(it.communityPostList)
|
setSeriesList(it.seriesList)
|
||||||
|
setAudioContentList(it.contentList)
|
||||||
|
setLiveRoomList(it.liveRoomList)
|
||||||
|
setUserDonationRanking(it.userDonationRanking)
|
||||||
|
setActivitySummary(it.activitySummary)
|
||||||
|
setCommunityPostList(it.communityPostList)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun setActivitySummary(activitySummary: GetCreatorActivitySummary) {
|
private fun setActivitySummary(activitySummary: GetCreatorActivitySummary) {
|
||||||
|
binding.llActivitySummary.visibility = View.VISIBLE
|
||||||
binding.tvLiveCount.text = activitySummary.liveCount.moneyFormat()
|
binding.tvLiveCount.text = activitySummary.liveCount.moneyFormat()
|
||||||
binding.tvLiveContributorCount.text = activitySummary.liveContributorCount.moneyFormat()
|
binding.tvLiveContributorCount.text = activitySummary.liveContributorCount.moneyFormat()
|
||||||
binding.tvLiveTime.text = activitySummary.liveTime.moneyFormat()
|
binding.tvLiveTime.text = activitySummary.liveTime.moneyFormat()
|
||||||
|
|
|
@ -55,6 +55,7 @@
|
||||||
layout="@layout/layout_user_profile" />
|
layout="@layout/layout_user_profile" />
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
|
android:id="@+id/ll_activity_summary"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginHorizontal="13.3dp"
|
android:layout_marginHorizontal="13.3dp"
|
||||||
|
@ -62,7 +63,8 @@
|
||||||
android:background="@drawable/bg_round_corner_16_7_222222_3bb9f1"
|
android:background="@drawable/bg_round_corner_16_7_222222_3bb9f1"
|
||||||
android:baselineAligned="false"
|
android:baselineAligned="false"
|
||||||
android:gravity="center"
|
android:gravity="center"
|
||||||
android:padding="13.3dp">
|
android:padding="13.3dp"
|
||||||
|
android:visibility="gone">
|
||||||
|
|
||||||
<RelativeLayout
|
<RelativeLayout
|
||||||
android:layout_width="0dp"
|
android:layout_width="0dp"
|
||||||
|
@ -209,7 +211,8 @@
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginHorizontal="13.3dp"
|
android:layout_marginHorizontal="13.3dp"
|
||||||
android:layout_marginTop="26.7dp" />
|
android:layout_marginTop="26.7dp"
|
||||||
|
android:visibility="gone" />
|
||||||
|
|
||||||
<include
|
<include
|
||||||
android:id="@+id/layout_creator_channel_series"
|
android:id="@+id/layout_creator_channel_series"
|
||||||
|
@ -238,26 +241,36 @@
|
||||||
android:layout_marginTop="26.7dp"
|
android:layout_marginTop="26.7dp"
|
||||||
android:visibility="gone" />
|
android:visibility="gone" />
|
||||||
|
|
||||||
<include
|
<LinearLayout
|
||||||
android:id="@+id/layout_user_profile_introduce"
|
android:id="@+id/ll_user_profile_introduce"
|
||||||
layout="@layout/layout_user_profile_introduce"
|
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginHorizontal="13.3dp"
|
android:orientation="vertical"
|
||||||
android:layout_marginTop="26.7dp" />
|
android:visibility="gone">
|
||||||
|
|
||||||
<View
|
<include
|
||||||
android:layout_width="match_parent"
|
android:id="@+id/layout_user_profile_introduce"
|
||||||
android:layout_height="1dp"
|
layout="@layout/layout_user_profile_introduce"
|
||||||
android:layout_marginHorizontal="13.3dp"
|
android:layout_width="match_parent"
|
||||||
android:layout_marginVertical="26.7dp"
|
android:layout_height="wrap_content"
|
||||||
android:background="@color/color_88909090" />
|
android:layout_marginHorizontal="13.3dp"
|
||||||
|
android:layout_marginTop="26.7dp" />
|
||||||
|
|
||||||
|
<View
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="1dp"
|
||||||
|
android:layout_marginHorizontal="13.3dp"
|
||||||
|
android:layout_marginTop="26.7dp"
|
||||||
|
android:background="@color/color_88909090" />
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:id="@+id/ll_user_profile_donation"
|
android:id="@+id/ll_user_profile_donation"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:orientation="vertical">
|
android:layout_marginTop="26.7dp"
|
||||||
|
android:orientation="vertical"
|
||||||
|
android:visibility="gone">
|
||||||
|
|
||||||
<include
|
<include
|
||||||
android:id="@+id/layout_user_profile_donation"
|
android:id="@+id/layout_user_profile_donation"
|
||||||
|
@ -269,7 +282,7 @@
|
||||||
<View
|
<View
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="6.7dp"
|
android:layout_height="6.7dp"
|
||||||
android:layout_marginVertical="26.7dp"
|
android:layout_marginTop="26.7dp"
|
||||||
android:background="@color/color_232323" />
|
android:background="@color/color_232323" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
|
@ -277,7 +290,8 @@
|
||||||
android:id="@+id/layout_user_profile_fan_talk"
|
android:id="@+id/layout_user_profile_fan_talk"
|
||||||
layout="@layout/layout_user_profile_fan_talk"
|
layout="@layout/layout_user_profile_fan_talk"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content" />
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginTop="26.7dp" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
</androidx.core.widget.NestedScrollView>
|
</androidx.core.widget.NestedScrollView>
|
||||||
</RelativeLayout>
|
</RelativeLayout>
|
||||||
|
|
|
@ -58,7 +58,8 @@
|
||||||
android:layout_centerVertical="true"
|
android:layout_centerVertical="true"
|
||||||
android:layout_marginStart="6.7dp"
|
android:layout_marginStart="6.7dp"
|
||||||
android:contentDescription="@null"
|
android:contentDescription="@null"
|
||||||
android:src="@drawable/btn_big_share" />
|
android:src="@drawable/btn_big_share"
|
||||||
|
android:visibility="gone" />
|
||||||
</RelativeLayout>
|
</RelativeLayout>
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
|
|
Loading…
Reference in New Issue