문자열 리소스 참조로 화면 문구 정리
This commit is contained in:
@@ -1,11 +1,13 @@
|
|||||||
package kr.co.vividnext.sodalive.audio_content
|
package kr.co.vividnext.sodalive.audio_content
|
||||||
|
|
||||||
|
import kr.co.vividnext.sodalive.R
|
||||||
import kr.co.vividnext.sodalive.audio_content.category.CategoryApi
|
import kr.co.vividnext.sodalive.audio_content.category.CategoryApi
|
||||||
import kr.co.vividnext.sodalive.audio_content.detail.PutAudioContentLikeRequest
|
import kr.co.vividnext.sodalive.audio_content.detail.PutAudioContentLikeRequest
|
||||||
import kr.co.vividnext.sodalive.audio_content.donation.AudioContentDonationRequest
|
import kr.co.vividnext.sodalive.audio_content.donation.AudioContentDonationRequest
|
||||||
import kr.co.vividnext.sodalive.audio_content.order.OrderRequest
|
import kr.co.vividnext.sodalive.audio_content.order.OrderRequest
|
||||||
import kr.co.vividnext.sodalive.audio_content.order.OrderType
|
import kr.co.vividnext.sodalive.audio_content.order.OrderType
|
||||||
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||||
|
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
||||||
import kr.co.vividnext.sodalive.settings.ContentType
|
import kr.co.vividnext.sodalive.settings.ContentType
|
||||||
import okhttp3.MultipartBody
|
import okhttp3.MultipartBody
|
||||||
import okhttp3.RequestBody
|
import okhttp3.RequestBody
|
||||||
@@ -153,7 +155,8 @@ class AudioContentRepository(
|
|||||||
fun getContentRanking(
|
fun getContentRanking(
|
||||||
page: Int,
|
page: Int,
|
||||||
size: Int,
|
size: Int,
|
||||||
sortType: String = "매출",
|
sortType: String = SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_home_sort_revenue),
|
||||||
token: String
|
token: String
|
||||||
) = api.getContentRanking(
|
) = api.getContentRanking(
|
||||||
page = page - 1,
|
page = page - 1,
|
||||||
|
|||||||
@@ -5,12 +5,12 @@ import androidx.lifecycle.MutableLiveData
|
|||||||
import com.orhanobut.logger.Logger
|
import com.orhanobut.logger.Logger
|
||||||
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
||||||
import io.reactivex.rxjava3.schedulers.Schedulers
|
import io.reactivex.rxjava3.schedulers.Schedulers
|
||||||
|
import kr.co.vividnext.sodalive.R
|
||||||
import kr.co.vividnext.sodalive.audio_content.AudioContentRepository
|
import kr.co.vividnext.sodalive.audio_content.AudioContentRepository
|
||||||
import kr.co.vividnext.sodalive.audio_content.main.GetAudioContentRankingItem
|
import kr.co.vividnext.sodalive.audio_content.main.GetAudioContentRankingItem
|
||||||
import kr.co.vividnext.sodalive.base.BaseViewModel
|
import kr.co.vividnext.sodalive.base.BaseViewModel
|
||||||
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
|
||||||
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||||
import kr.co.vividnext.sodalive.R
|
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
||||||
|
|
||||||
class AudioContentRankingAllViewModel(
|
class AudioContentRankingAllViewModel(
|
||||||
private val repository: AudioContentRepository
|
private val repository: AudioContentRepository
|
||||||
@@ -39,12 +39,14 @@ class AudioContentRankingAllViewModel(
|
|||||||
private var pageSize = 10
|
private var pageSize = 10
|
||||||
private var isLast = false
|
private var isLast = false
|
||||||
|
|
||||||
private var selectedSort = "매출"
|
private var selectedSort =
|
||||||
|
SodaLiveApplicationHolder.get().getString(R.string.screen_home_sort_revenue)
|
||||||
|
|
||||||
fun getAudioContentRanking() {
|
fun getAudioContentRanking() {
|
||||||
if (!_isLoading.value!! && !isLast && page <= 5) {
|
if (!_isLoading.value!! && !isLast && page <= 5) {
|
||||||
_isLoading.value = true
|
_isLoading.value = true
|
||||||
val unknownError = SodaLiveApplicationHolder.get().getString(R.string.common_error_unknown)
|
val unknownError =
|
||||||
|
SodaLiveApplicationHolder.get().getString(R.string.common_error_unknown)
|
||||||
compositeDisposable.add(
|
compositeDisposable.add(
|
||||||
repository.getContentRanking(
|
repository.getContentRanking(
|
||||||
page = page,
|
page = page,
|
||||||
|
|||||||
@@ -42,6 +42,7 @@ import kr.co.vividnext.sodalive.base.SodaDialog
|
|||||||
import kr.co.vividnext.sodalive.common.Constants
|
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.SharedPreferenceManager
|
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||||
|
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
||||||
import kr.co.vividnext.sodalive.common.Utils
|
import kr.co.vividnext.sodalive.common.Utils
|
||||||
import kr.co.vividnext.sodalive.databinding.ActivityAudioContentDetailBinding
|
import kr.co.vividnext.sodalive.databinding.ActivityAudioContentDetailBinding
|
||||||
import kr.co.vividnext.sodalive.explorer.profile.CreatorFollowNotifyFragment
|
import kr.co.vividnext.sodalive.explorer.profile.CreatorFollowNotifyFragment
|
||||||
@@ -938,7 +939,7 @@ class AudioContentDetailActivity : BaseActivity<ActivityAudioContentDetailBindin
|
|||||||
binding.ivLike.setImageResource(R.drawable.ic_audio_content_heart_pressed)
|
binding.ivLike.setImageResource(R.drawable.ic_audio_content_heart_pressed)
|
||||||
} else {
|
} else {
|
||||||
binding.tvLike.text = if (likeCount - 1 < 0) {
|
binding.tvLike.text = if (likeCount - 1 < 0) {
|
||||||
"0"
|
SodaLiveApplicationHolder.get().getString(R.string.common_zero)
|
||||||
} else {
|
} else {
|
||||||
"${likeCount - 1}"
|
"${likeCount - 1}"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ import android.view.ViewGroup
|
|||||||
import androidx.core.content.ContextCompat
|
import androidx.core.content.ContextCompat
|
||||||
import androidx.recyclerview.widget.RecyclerView
|
import androidx.recyclerview.widget.RecyclerView
|
||||||
import kr.co.vividnext.sodalive.R
|
import kr.co.vividnext.sodalive.R
|
||||||
|
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
||||||
import kr.co.vividnext.sodalive.databinding.ItemAudioContentMainNewContentThemeBinding
|
import kr.co.vividnext.sodalive.databinding.ItemAudioContentMainNewContentThemeBinding
|
||||||
|
|
||||||
class AudioContentMainNewContentThemeAdapter(
|
class AudioContentMainNewContentThemeAdapter(
|
||||||
@@ -24,8 +25,10 @@ class AudioContentMainNewContentThemeAdapter(
|
|||||||
fun bind(theme: String) {
|
fun bind(theme: String) {
|
||||||
if (
|
if (
|
||||||
theme == selectedTheme ||
|
theme == selectedTheme ||
|
||||||
(selectedTheme == "" && theme == "전체") ||
|
(selectedTheme == "" && theme == SodaLiveApplicationHolder.get()
|
||||||
(selectedTheme == "" && theme == "매출")
|
.getString(R.string.audio_content_label_all)) ||
|
||||||
|
(selectedTheme == "" && theme == SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_home_sort_revenue))
|
||||||
) {
|
) {
|
||||||
binding.tvTheme.setBackgroundResource(
|
binding.tvTheme.setBackgroundResource(
|
||||||
R.drawable.bg_round_corner_16_7_transparent_3bb9f1
|
R.drawable.bg_round_corner_16_7_transparent_3bb9f1
|
||||||
|
|||||||
@@ -25,6 +25,7 @@ import kr.co.vividnext.sodalive.common.Constants
|
|||||||
import kr.co.vividnext.sodalive.common.ImagePickerCropper
|
import kr.co.vividnext.sodalive.common.ImagePickerCropper
|
||||||
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.common.SodaLiveApplicationHolder
|
||||||
import kr.co.vividnext.sodalive.databinding.ActivityAudioContentModifyBinding
|
import kr.co.vividnext.sodalive.databinding.ActivityAudioContentModifyBinding
|
||||||
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
|
||||||
@@ -42,7 +43,12 @@ class AudioContentModifyActivity : BaseActivity<ActivityAudioContentModifyBindin
|
|||||||
super.onCreate(savedInstanceState)
|
super.onCreate(savedInstanceState)
|
||||||
val audioContentId = intent.getLongExtra(Constants.EXTRA_AUDIO_CONTENT_ID, 0)
|
val audioContentId = intent.getLongExtra(Constants.EXTRA_AUDIO_CONTENT_ID, 0)
|
||||||
if (audioContentId <= 0) {
|
if (audioContentId <= 0) {
|
||||||
Toast.makeText(applicationContext, "잘못된 요청입니다.", Toast.LENGTH_LONG).show()
|
Toast.makeText(
|
||||||
|
applicationContext,
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_audio_content_error_invalid_request),
|
||||||
|
Toast.LENGTH_LONG
|
||||||
|
).show()
|
||||||
finish()
|
finish()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -7,9 +7,11 @@ import com.google.gson.Gson
|
|||||||
import com.orhanobut.logger.Logger
|
import com.orhanobut.logger.Logger
|
||||||
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
||||||
import io.reactivex.rxjava3.schedulers.Schedulers
|
import io.reactivex.rxjava3.schedulers.Schedulers
|
||||||
|
import kr.co.vividnext.sodalive.R
|
||||||
import kr.co.vividnext.sodalive.audio_content.AudioContentRepository
|
import kr.co.vividnext.sodalive.audio_content.AudioContentRepository
|
||||||
import kr.co.vividnext.sodalive.base.BaseViewModel
|
import kr.co.vividnext.sodalive.base.BaseViewModel
|
||||||
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||||
|
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
||||||
import okhttp3.MediaType
|
import okhttp3.MediaType
|
||||||
import okhttp3.MediaType.Companion.toMediaType
|
import okhttp3.MediaType.Companion.toMediaType
|
||||||
import okhttp3.MultipartBody
|
import okhttp3.MultipartBody
|
||||||
@@ -111,7 +113,8 @@ class AudioContentModifyViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -125,7 +128,10 @@ class AudioContentModifyViewModel(
|
|||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
|
)
|
||||||
if (onFailure != null) {
|
if (onFailure != null) {
|
||||||
onFailure()
|
onFailure()
|
||||||
}
|
}
|
||||||
@@ -201,7 +207,8 @@ class AudioContentModifyViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -211,7 +218,8 @@ class AudioContentModifyViewModel(
|
|||||||
_isLoading.postValue(false)
|
_isLoading.postValue(false)
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
@@ -221,12 +229,18 @@ class AudioContentModifyViewModel(
|
|||||||
|
|
||||||
private fun validateData(): Boolean {
|
private fun validateData(): Boolean {
|
||||||
if (title != null && title!!.isBlank()) {
|
if (title != null && title!!.isBlank()) {
|
||||||
_toastLiveData.postValue("제목을 입력해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.audio_content_upload_error_title_required)
|
||||||
|
)
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
|
||||||
if (detail != null && (detail!!.isBlank() || detail!!.length < 5)) {
|
if (detail != null && (detail!!.isBlank() || detail!!.length < 5)) {
|
||||||
_toastLiveData.postValue("내용을 5자 이상 입력해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.audio_content_upload_error_detail_min_length)
|
||||||
|
)
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -15,6 +15,7 @@ import kr.co.vividnext.sodalive.audio_content.playlist.create.add_content.Playli
|
|||||||
import kr.co.vividnext.sodalive.audio_content.playlist.detail.AudioContentPlaylistContent
|
import kr.co.vividnext.sodalive.audio_content.playlist.detail.AudioContentPlaylistContent
|
||||||
import kr.co.vividnext.sodalive.base.BaseActivity
|
import kr.co.vividnext.sodalive.base.BaseActivity
|
||||||
import kr.co.vividnext.sodalive.common.LoadingDialog
|
import kr.co.vividnext.sodalive.common.LoadingDialog
|
||||||
|
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
||||||
import kr.co.vividnext.sodalive.databinding.ActivityAudioContentPlaylistCreateBinding
|
import kr.co.vividnext.sodalive.databinding.ActivityAudioContentPlaylistCreateBinding
|
||||||
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
|
||||||
@@ -39,7 +40,8 @@ class AudioContentPlaylistCreateActivity : BaseActivity<ActivityAudioContentPlay
|
|||||||
title = item.title,
|
title = item.title,
|
||||||
category = item.themeStr,
|
category = item.themeStr,
|
||||||
coverUrl = item.coverImageUrl,
|
coverUrl = item.coverImageUrl,
|
||||||
duration = item.duration ?: "00:00:00",
|
duration = item.duration ?: SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_audio_content_upload_preview_start_time_default),
|
||||||
creatorNickname = item.creatorNickname,
|
creatorNickname = item.creatorNickname,
|
||||||
creatorProfileUrl = ""
|
creatorProfileUrl = ""
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -13,12 +13,13 @@ import androidx.recyclerview.widget.RecyclerView
|
|||||||
import com.jakewharton.rxbinding4.widget.textChanges
|
import com.jakewharton.rxbinding4.widget.textChanges
|
||||||
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
||||||
import io.reactivex.rxjava3.schedulers.Schedulers
|
import io.reactivex.rxjava3.schedulers.Schedulers
|
||||||
|
import kr.co.vividnext.sodalive.R
|
||||||
import kr.co.vividnext.sodalive.audio_content.playlist.create.add_content.PlaylistAddContentDialogFragment
|
import kr.co.vividnext.sodalive.audio_content.playlist.create.add_content.PlaylistAddContentDialogFragment
|
||||||
import kr.co.vividnext.sodalive.audio_content.playlist.detail.AudioContentPlaylistContent
|
import kr.co.vividnext.sodalive.audio_content.playlist.detail.AudioContentPlaylistContent
|
||||||
import kr.co.vividnext.sodalive.base.BaseActivity
|
import kr.co.vividnext.sodalive.base.BaseActivity
|
||||||
import kr.co.vividnext.sodalive.R
|
|
||||||
import kr.co.vividnext.sodalive.common.Constants
|
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.SodaLiveApplicationHolder
|
||||||
import kr.co.vividnext.sodalive.databinding.ActivityAudioContentPlaylistModifyBinding
|
import kr.co.vividnext.sodalive.databinding.ActivityAudioContentPlaylistModifyBinding
|
||||||
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
|
||||||
@@ -46,7 +47,8 @@ class AudioContentPlaylistModifyActivity : BaseActivity<ActivityAudioContentPlay
|
|||||||
title = item.title,
|
title = item.title,
|
||||||
category = item.themeStr,
|
category = item.themeStr,
|
||||||
coverUrl = item.coverImageUrl,
|
coverUrl = item.coverImageUrl,
|
||||||
duration = item.duration ?: "00:00:00",
|
duration = item.duration ?: SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_audio_content_upload_preview_start_time_default),
|
||||||
creatorNickname = item.creatorNickname,
|
creatorNickname = item.creatorNickname,
|
||||||
creatorProfileUrl = ""
|
creatorProfileUrl = ""
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -31,6 +31,7 @@ import kr.co.vividnext.sodalive.common.ImagePickerCropper
|
|||||||
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.common.SharedPreferenceManager
|
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||||
|
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
||||||
import kr.co.vividnext.sodalive.databinding.ActivityAudioContentUploadBinding
|
import kr.co.vividnext.sodalive.databinding.ActivityAudioContentUploadBinding
|
||||||
import kr.co.vividnext.sodalive.dialog.LiveDialog
|
import kr.co.vividnext.sodalive.dialog.LiveDialog
|
||||||
import kr.co.vividnext.sodalive.dialog.SodaLiveTimePickerDialog
|
import kr.co.vividnext.sodalive.dialog.SodaLiveTimePickerDialog
|
||||||
@@ -667,7 +668,7 @@ class AudioContentUploadActivity : BaseActivity<ActivityAudioContentUploadBindin
|
|||||||
|
|
||||||
private fun checkPriceFree() {
|
private fun checkPriceFree() {
|
||||||
viewModel.price = 0
|
viewModel.price = 0
|
||||||
binding.etSetPrice.setText("0")
|
binding.etSetPrice.setText(SodaLiveApplicationHolder.get().getString(R.string.common_zero))
|
||||||
binding.llSetPrice.visibility = View.GONE
|
binding.llSetPrice.visibility = View.GONE
|
||||||
binding.llConfigPurchase.visibility = View.GONE
|
binding.llConfigPurchase.visibility = View.GONE
|
||||||
binding.tvTitleConfigKeep.visibility = View.GONE
|
binding.tvTitleConfigKeep.visibility = View.GONE
|
||||||
|
|||||||
@@ -17,8 +17,10 @@ import androidx.core.view.WindowInsetsControllerCompat
|
|||||||
import androidx.localbroadcastmanager.content.LocalBroadcastManager
|
import androidx.localbroadcastmanager.content.LocalBroadcastManager
|
||||||
import androidx.viewbinding.ViewBinding
|
import androidx.viewbinding.ViewBinding
|
||||||
import io.reactivex.rxjava3.disposables.CompositeDisposable
|
import io.reactivex.rxjava3.disposables.CompositeDisposable
|
||||||
import kotlin.math.max
|
import kr.co.vividnext.sodalive.R
|
||||||
|
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
||||||
import kr.co.vividnext.sodalive.settings.language.LocaleHelper
|
import kr.co.vividnext.sodalive.settings.language.LocaleHelper
|
||||||
|
import kotlin.math.max
|
||||||
|
|
||||||
abstract class BaseActivity<T : ViewBinding>(
|
abstract class BaseActivity<T : ViewBinding>(
|
||||||
private val inflate: (LayoutInflater) -> T
|
private val inflate: (LayoutInflater) -> T
|
||||||
@@ -110,7 +112,8 @@ abstract class BaseActivity<T : ViewBinding>(
|
|||||||
layoutInflater = layoutInflater,
|
layoutInflater = layoutInflater,
|
||||||
title = "포인트 지급",
|
title = "포인트 지급",
|
||||||
desc = message,
|
desc = message,
|
||||||
confirmButtonTitle = "확인",
|
confirmButtonTitle = SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_tag_confirm),
|
||||||
confirmButtonClick = {}
|
confirmButtonClick = {}
|
||||||
).show(screenWidth)
|
).show(screenWidth)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,8 +5,10 @@ import androidx.lifecycle.MutableLiveData
|
|||||||
import com.orhanobut.logger.Logger
|
import com.orhanobut.logger.Logger
|
||||||
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
||||||
import io.reactivex.rxjava3.schedulers.Schedulers
|
import io.reactivex.rxjava3.schedulers.Schedulers
|
||||||
|
import kr.co.vividnext.sodalive.R
|
||||||
import kr.co.vividnext.sodalive.base.BaseViewModel
|
import kr.co.vividnext.sodalive.base.BaseViewModel
|
||||||
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||||
|
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
||||||
|
|
||||||
class TalkTabViewModel(private val repository: TalkTabRepository) : BaseViewModel() {
|
class TalkTabViewModel(private val repository: TalkTabRepository) : BaseViewModel() {
|
||||||
|
|
||||||
@@ -59,13 +61,15 @@ class TalkTabViewModel(private val repository: TalkTabRepository) : BaseViewMode
|
|||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.value =
|
_toastLiveData.value =
|
||||||
response.message ?: "알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
response.message ?: SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.msg_can_coupon_unknown_error)
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{ throwable ->
|
{ throwable ->
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
throwable.message?.let { message -> Logger.e(message) }
|
throwable.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.value = "알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
_toastLiveData.value = SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.msg_can_coupon_unknown_error)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -23,6 +23,7 @@ import kr.co.vividnext.sodalive.base.SodaDialog
|
|||||||
import kr.co.vividnext.sodalive.chat.character.detail.detail.CharacterType
|
import kr.co.vividnext.sodalive.chat.character.detail.detail.CharacterType
|
||||||
import kr.co.vividnext.sodalive.common.LoadingDialog
|
import kr.co.vividnext.sodalive.common.LoadingDialog
|
||||||
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||||
|
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
||||||
import kr.co.vividnext.sodalive.databinding.ActivityChatRoomBinding
|
import kr.co.vividnext.sodalive.databinding.ActivityChatRoomBinding
|
||||||
import kr.co.vividnext.sodalive.extensions.dpToPx
|
import kr.co.vividnext.sodalive.extensions.dpToPx
|
||||||
import kr.co.vividnext.sodalive.extensions.moneyFormat
|
import kr.co.vividnext.sodalive.extensions.moneyFormat
|
||||||
@@ -538,7 +539,10 @@ class ChatRoomActivity : BaseActivity<ActivityChatRoomBinding>(
|
|||||||
}
|
}
|
||||||
|
|
||||||
override fun onFinish() {
|
override fun onFinish() {
|
||||||
ensureQuotaNoticeShown("00:00:00")
|
ensureQuotaNoticeShown(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_audio_content_detail_time_default)
|
||||||
|
)
|
||||||
checkQuotaStatus()
|
checkQuotaStatus()
|
||||||
}
|
}
|
||||||
}.start()
|
}.start()
|
||||||
@@ -565,7 +569,12 @@ class ChatRoomActivity : BaseActivity<ActivityChatRoomBinding>(
|
|||||||
val ms = if (epoch < 1_000_000_000_000L) epoch * 1000 else epoch
|
val ms = if (epoch < 1_000_000_000_000L) epoch * 1000 else epoch
|
||||||
val remain = ms - System.currentTimeMillis()
|
val remain = ms - System.currentTimeMillis()
|
||||||
val displayMs = (remain + DISPLAY_FUDGE_MS).coerceAtLeast(0L)
|
val displayMs = (remain + DISPLAY_FUDGE_MS).coerceAtLeast(0L)
|
||||||
return if (displayMs > 0L) formatMillisToHms(displayMs) else "00:00:00"
|
return if (displayMs > 0L) {
|
||||||
|
formatMillisToHms(displayMs)
|
||||||
|
} else {
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_audio_content_detail_time_default)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun formatMillisToHms(ms: Long): String {
|
private fun formatMillisToHms(ms: Long): String {
|
||||||
@@ -780,7 +789,9 @@ class ChatRoomActivity : BaseActivity<ActivityChatRoomBinding>(
|
|||||||
)
|
)
|
||||||
}, { error ->
|
}, { error ->
|
||||||
isLoading = false
|
isLoading = false
|
||||||
showToast(error.message ?: getString(R.string.chat_previous_messages_load_failed))
|
showToast(
|
||||||
|
error.message ?: getString(R.string.chat_previous_messages_load_failed)
|
||||||
|
)
|
||||||
})
|
})
|
||||||
|
|
||||||
compositeDisposable.add(disposable)
|
compositeDisposable.add(disposable)
|
||||||
@@ -793,10 +804,10 @@ class ChatRoomActivity : BaseActivity<ActivityChatRoomBinding>(
|
|||||||
*/
|
*/
|
||||||
private fun onPurchaseMessageClicked(message: ChatMessage) {
|
private fun onPurchaseMessageClicked(message: ChatMessage) {
|
||||||
// 조건 확인: AI 메시지이며 잠금 상태여야 함
|
// 조건 확인: AI 메시지이며 잠금 상태여야 함
|
||||||
val isLock = (message.price != null) && (message.hasAccess == false)
|
val isLock = (message.price != null) && !message.hasAccess
|
||||||
if (message.mine || !isLock) return
|
if (message.mine || !isLock) return
|
||||||
|
|
||||||
val priceText = message.price?.toString() ?: "0"
|
val priceText = message.price.toString()
|
||||||
val title = getString(R.string.chat_locked_message_title)
|
val title = getString(R.string.chat_locked_message_title)
|
||||||
val desc = getString(R.string.chat_locked_message_desc, priceText)
|
val desc = getString(R.string.chat_locked_message_desc, priceText)
|
||||||
|
|
||||||
|
|||||||
@@ -9,6 +9,7 @@ import android.os.Environment
|
|||||||
import android.provider.DocumentsContract
|
import android.provider.DocumentsContract
|
||||||
import android.provider.MediaStore
|
import android.provider.MediaStore
|
||||||
import android.text.TextUtils
|
import android.text.TextUtils
|
||||||
|
import kr.co.vividnext.sodalive.R
|
||||||
|
|
||||||
object RealPathUtil {
|
object RealPathUtil {
|
||||||
fun getRealPath(context: Context, fileUri: Uri): String? {
|
fun getRealPath(context: Context, fileUri: Uri): String? {
|
||||||
@@ -35,7 +36,9 @@ object RealPathUtil {
|
|||||||
val type = split[0]
|
val type = split[0]
|
||||||
|
|
||||||
if ("primary".equals(type, ignoreCase = true)) {
|
if ("primary".equals(type, ignoreCase = true)) {
|
||||||
return Environment.getExternalStorageDirectory().toString() + "/" + split[1]
|
return Environment.getExternalStorageDirectory()
|
||||||
|
.toString() + SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_separator_slash) + split[1]
|
||||||
}
|
}
|
||||||
} else if (isDownloadsDocument(uri)) {
|
} else if (isDownloadsDocument(uri)) {
|
||||||
var cursor: Cursor? = null
|
var cursor: Cursor? = null
|
||||||
|
|||||||
@@ -13,6 +13,7 @@ import coil.transform.RoundedCornersTransformation
|
|||||||
import kr.co.vividnext.sodalive.R
|
import kr.co.vividnext.sodalive.R
|
||||||
import kr.co.vividnext.sodalive.common.LoadingDialog
|
import kr.co.vividnext.sodalive.common.LoadingDialog
|
||||||
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||||
|
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
||||||
import kr.co.vividnext.sodalive.databinding.DialogMemberProfileBinding
|
import kr.co.vividnext.sodalive.databinding.DialogMemberProfileBinding
|
||||||
import kr.co.vividnext.sodalive.extensions.dpToPx
|
import kr.co.vividnext.sodalive.extensions.dpToPx
|
||||||
import kr.co.vividnext.sodalive.report.ProfileReportDialog
|
import kr.co.vividnext.sodalive.report.ProfileReportDialog
|
||||||
@@ -102,7 +103,7 @@ class MemberProfileDialog(
|
|||||||
dialogView.tvBlockMember.text = if (it.isBlocked) {
|
dialogView.tvBlockMember.text = if (it.isBlocked) {
|
||||||
"차단 해제"
|
"차단 해제"
|
||||||
} else {
|
} else {
|
||||||
"차단"
|
SodaLiveApplicationHolder.get().getString(R.string.screen_block_member_block)
|
||||||
}
|
}
|
||||||
|
|
||||||
dialogView.tvBlockMember.setOnClickListener { _ ->
|
dialogView.tvBlockMember.setOnClickListener { _ ->
|
||||||
@@ -141,15 +142,24 @@ class MemberProfileDialog(
|
|||||||
""".trimIndent()
|
""".trimIndent()
|
||||||
}
|
}
|
||||||
val dialog = android.app.AlertDialog.Builder(activity)
|
val dialog = android.app.AlertDialog.Builder(activity)
|
||||||
dialog.setTitle("사용자 차단")
|
dialog.setTitle(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_block_title)
|
||||||
|
)
|
||||||
dialog.setMessage(message)
|
dialog.setMessage(message)
|
||||||
dialog.setPositiveButton("차단") { _, _ ->
|
dialog.setPositiveButton(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_block_member_block)
|
||||||
|
) { _, _ ->
|
||||||
viewModel.memberBlock(memberId) {
|
viewModel.memberBlock(memberId) {
|
||||||
dismiss()
|
dismiss()
|
||||||
onBlockComplete()
|
onBlockComplete()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
dialog.setNegativeButton("취소") { _, _ -> }
|
dialog.setNegativeButton(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_message_write_cancel)
|
||||||
|
) { _, _ -> }
|
||||||
dialog.show()
|
dialog.show()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -5,8 +5,10 @@ import androidx.lifecycle.MutableLiveData
|
|||||||
import com.orhanobut.logger.Logger
|
import com.orhanobut.logger.Logger
|
||||||
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
||||||
import io.reactivex.rxjava3.schedulers.Schedulers
|
import io.reactivex.rxjava3.schedulers.Schedulers
|
||||||
|
import kr.co.vividnext.sodalive.R
|
||||||
import kr.co.vividnext.sodalive.base.BaseViewModel
|
import kr.co.vividnext.sodalive.base.BaseViewModel
|
||||||
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||||
|
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
||||||
import kr.co.vividnext.sodalive.live.room.detail.GetRoomDetailUser
|
import kr.co.vividnext.sodalive.live.room.detail.GetRoomDetailUser
|
||||||
|
|
||||||
class ExplorerViewModel(private val repository: ExplorerRepository) : BaseViewModel() {
|
class ExplorerViewModel(private val repository: ExplorerRepository) : BaseViewModel() {
|
||||||
@@ -43,14 +45,18 @@ class ExplorerViewModel(private val repository: ExplorerRepository) : BaseViewMo
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -74,7 +80,8 @@ class ExplorerViewModel(private val repository: ExplorerRepository) : BaseViewMo
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -83,7 +90,10 @@ class ExplorerViewModel(private val repository: ExplorerRepository) : BaseViewMo
|
|||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -5,8 +5,10 @@ import androidx.lifecycle.MutableLiveData
|
|||||||
import com.orhanobut.logger.Logger
|
import com.orhanobut.logger.Logger
|
||||||
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
||||||
import io.reactivex.rxjava3.schedulers.Schedulers
|
import io.reactivex.rxjava3.schedulers.Schedulers
|
||||||
|
import kr.co.vividnext.sodalive.R
|
||||||
import kr.co.vividnext.sodalive.base.BaseViewModel
|
import kr.co.vividnext.sodalive.base.BaseViewModel
|
||||||
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||||
|
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
||||||
import kr.co.vividnext.sodalive.common.Utils
|
import kr.co.vividnext.sodalive.common.Utils
|
||||||
import kr.co.vividnext.sodalive.explorer.ExplorerRepository
|
import kr.co.vividnext.sodalive.explorer.ExplorerRepository
|
||||||
import kr.co.vividnext.sodalive.explorer.profile.cheers.PutModifyCheersRequest
|
import kr.co.vividnext.sodalive.explorer.profile.cheers.PutModifyCheersRequest
|
||||||
@@ -49,7 +51,8 @@ class UserProfileViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"신고가 접수되었습니다."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.character_comment_report_submitted)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -58,13 +61,21 @@ class UserProfileViewModel(
|
|||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("신고가 접수되었습니다.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.character_comment_report_submitted)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
fun report(type: ReportType, userId: Long, reason: String = "프로필 신고") {
|
fun report(
|
||||||
|
type: ReportType,
|
||||||
|
userId: Long,
|
||||||
|
reason: String = SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.dialog_member_profile_report_profile)
|
||||||
|
) {
|
||||||
_isLoading.value = true
|
_isLoading.value = true
|
||||||
|
|
||||||
val request = ReportRequest(type, reason, reportedMemberId = userId)
|
val request = ReportRequest(type, reason, reportedMemberId = userId)
|
||||||
@@ -81,7 +92,8 @@ class UserProfileViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"신고가 접수되었습니다."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.character_comment_report_submitted)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -90,7 +102,10 @@ class UserProfileViewModel(
|
|||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("신고가 접수되었습니다.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.character_comment_report_submitted)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -115,7 +130,8 @@ class UserProfileViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -129,7 +145,9 @@ class UserProfileViewModel(
|
|||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get().getString(R.string.common_error_unknown)
|
||||||
|
)
|
||||||
if (onFailure != null) {
|
if (onFailure != null) {
|
||||||
onFailure()
|
onFailure()
|
||||||
}
|
}
|
||||||
@@ -158,7 +176,8 @@ class UserProfileViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -167,7 +186,10 @@ class UserProfileViewModel(
|
|||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -175,7 +197,10 @@ class UserProfileViewModel(
|
|||||||
|
|
||||||
fun writeCheers(parentCheersId: Long? = null, creatorId: Long, cheersContent: String) {
|
fun writeCheers(parentCheersId: Long? = null, creatorId: Long, cheersContent: String) {
|
||||||
if (cheersContent.isBlank()) {
|
if (cheersContent.isBlank()) {
|
||||||
_toastLiveData.postValue("내용을 입력하세요")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.character_comment_error_empty)
|
||||||
|
)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -197,14 +222,18 @@ class UserProfileViewModel(
|
|||||||
if (it.success) {
|
if (it.success) {
|
||||||
getCreatorProfile(creatorId)
|
getCreatorProfile(creatorId)
|
||||||
} else {
|
} else {
|
||||||
val message = it.message ?: "알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
val message = it.message ?: SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
_toastLiveData.postValue(message)
|
_toastLiveData.postValue(message)
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -217,12 +246,18 @@ class UserProfileViewModel(
|
|||||||
isActive: Boolean? = null
|
isActive: Boolean? = null
|
||||||
) {
|
) {
|
||||||
if (cheersContent == null && isActive == null) {
|
if (cheersContent == null && isActive == null) {
|
||||||
_toastLiveData.postValue("변경사항이 없습니다.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.msg_live_room_edit_no_changes)
|
||||||
|
)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
if (cheersContent != null && cheersContent.isBlank()) {
|
if (cheersContent != null && cheersContent.isBlank()) {
|
||||||
_toastLiveData.postValue("내용을 입력하세요")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.character_comment_error_empty)
|
||||||
|
)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -252,14 +287,18 @@ class UserProfileViewModel(
|
|||||||
if (it.success) {
|
if (it.success) {
|
||||||
getCreatorProfile(creatorId)
|
getCreatorProfile(creatorId)
|
||||||
} else {
|
} else {
|
||||||
val message = it.message ?: "알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
val message = it.message ?: SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
_toastLiveData.postValue(message)
|
_toastLiveData.postValue(message)
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -296,14 +335,18 @@ class UserProfileViewModel(
|
|||||||
getCreatorProfile(userId)
|
getCreatorProfile(userId)
|
||||||
_toastLiveData.postValue("차단하였습니다.")
|
_toastLiveData.postValue("차단하였습니다.")
|
||||||
} else {
|
} else {
|
||||||
val message = it.message ?: "알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
val message = it.message ?: SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
_toastLiveData.postValue(message)
|
_toastLiveData.postValue(message)
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -326,14 +369,18 @@ class UserProfileViewModel(
|
|||||||
getCreatorProfile(userId)
|
getCreatorProfile(userId)
|
||||||
_toastLiveData.postValue("차단이 해제 되었습니다.")
|
_toastLiveData.postValue("차단이 해제 되었습니다.")
|
||||||
} else {
|
} else {
|
||||||
val message = it.message ?: "알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
val message = it.message ?: SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
_toastLiveData.postValue(message)
|
_toastLiveData.postValue(message)
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -6,8 +6,10 @@ import com.google.gson.Gson
|
|||||||
import com.orhanobut.logger.Logger
|
import com.orhanobut.logger.Logger
|
||||||
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
||||||
import io.reactivex.rxjava3.schedulers.Schedulers
|
import io.reactivex.rxjava3.schedulers.Schedulers
|
||||||
|
import kr.co.vividnext.sodalive.R
|
||||||
import kr.co.vividnext.sodalive.base.BaseViewModel
|
import kr.co.vividnext.sodalive.base.BaseViewModel
|
||||||
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||||
|
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
||||||
import kr.co.vividnext.sodalive.explorer.profile.creator_community.CreatorCommunityRepository
|
import kr.co.vividnext.sodalive.explorer.profile.creator_community.CreatorCommunityRepository
|
||||||
import kr.co.vividnext.sodalive.explorer.profile.creator_community.GetCommunityPostListResponse
|
import kr.co.vividnext.sodalive.explorer.profile.creator_community.GetCommunityPostListResponse
|
||||||
import kr.co.vividnext.sodalive.explorer.profile.creator_community.modify.ModifyCommunityPostRequest
|
import kr.co.vividnext.sodalive.explorer.profile.creator_community.modify.ModifyCommunityPostRequest
|
||||||
@@ -66,7 +68,8 @@ class CreatorCommunityAllViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -76,7 +79,10 @@ class CreatorCommunityAllViewModel(
|
|||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -114,7 +120,8 @@ class CreatorCommunityAllViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -123,7 +130,8 @@ class CreatorCommunityAllViewModel(
|
|||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
@@ -177,7 +185,8 @@ class CreatorCommunityAllViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -185,7 +194,10 @@ class CreatorCommunityAllViewModel(
|
|||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -212,7 +224,8 @@ class CreatorCommunityAllViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"신고가 접수되었습니다."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.character_comment_report_submitted)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -221,7 +234,10 @@ class CreatorCommunityAllViewModel(
|
|||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("신고가 접수되었습니다.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.character_comment_report_submitted)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -247,7 +263,8 @@ class CreatorCommunityAllViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -257,7 +274,10 @@ class CreatorCommunityAllViewModel(
|
|||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -8,6 +8,8 @@ import android.view.WindowManager
|
|||||||
import android.widget.RadioButton
|
import android.widget.RadioButton
|
||||||
import android.widget.Toast
|
import android.widget.Toast
|
||||||
import androidx.appcompat.app.AlertDialog
|
import androidx.appcompat.app.AlertDialog
|
||||||
|
import kr.co.vividnext.sodalive.R
|
||||||
|
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
||||||
import kr.co.vividnext.sodalive.databinding.DialogCommunityPostReportBinding
|
import kr.co.vividnext.sodalive.databinding.DialogCommunityPostReportBinding
|
||||||
import kr.co.vividnext.sodalive.extensions.dpToPx
|
import kr.co.vividnext.sodalive.extensions.dpToPx
|
||||||
|
|
||||||
@@ -37,7 +39,11 @@ class CreatorCommunityReportDialog(
|
|||||||
alertDialog.dismiss()
|
alertDialog.dismiss()
|
||||||
confirmButtonClick(reason)
|
confirmButtonClick(reason)
|
||||||
} else {
|
} else {
|
||||||
Toast.makeText(activity, "신고 이유를 선택하세요.", Toast.LENGTH_LONG).show()
|
Toast.makeText(activity,
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_audio_content_detail_report_reason_required),
|
||||||
|
Toast.LENGTH_LONG
|
||||||
|
).show()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -5,9 +5,11 @@ import androidx.lifecycle.MutableLiveData
|
|||||||
import com.orhanobut.logger.Logger
|
import com.orhanobut.logger.Logger
|
||||||
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
||||||
import io.reactivex.rxjava3.schedulers.Schedulers
|
import io.reactivex.rxjava3.schedulers.Schedulers
|
||||||
|
import kr.co.vividnext.sodalive.R
|
||||||
import kr.co.vividnext.sodalive.audio_content.comment.ModifyCommentRequest
|
import kr.co.vividnext.sodalive.audio_content.comment.ModifyCommentRequest
|
||||||
import kr.co.vividnext.sodalive.base.BaseViewModel
|
import kr.co.vividnext.sodalive.base.BaseViewModel
|
||||||
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||||
|
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
||||||
import kr.co.vividnext.sodalive.explorer.profile.creator_community.CreatorCommunityRepository
|
import kr.co.vividnext.sodalive.explorer.profile.creator_community.CreatorCommunityRepository
|
||||||
import kr.co.vividnext.sodalive.explorer.profile.creator_community.GetCommunityPostCommentListItem
|
import kr.co.vividnext.sodalive.explorer.profile.creator_community.GetCommunityPostCommentListItem
|
||||||
|
|
||||||
@@ -63,7 +65,8 @@ class CreatorCommunityCommentListViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -77,7 +80,10 @@ class CreatorCommunityCommentListViewModel(
|
|||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
|
)
|
||||||
if (onFailure != null) {
|
if (onFailure != null) {
|
||||||
onFailure()
|
onFailure()
|
||||||
}
|
}
|
||||||
@@ -124,7 +130,8 @@ class CreatorCommunityCommentListViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -132,7 +139,10 @@ class CreatorCommunityCommentListViewModel(
|
|||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -146,12 +156,18 @@ class CreatorCommunityCommentListViewModel(
|
|||||||
isActive: Boolean? = null
|
isActive: Boolean? = null
|
||||||
) {
|
) {
|
||||||
if (comment == null && isActive == null) {
|
if (comment == null && isActive == null) {
|
||||||
_toastLiveData.postValue("변경사항이 없습니다.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.audio_content_comment_no_change)
|
||||||
|
)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
if (comment != null && comment.isBlank()) {
|
if (comment != null && comment.isBlank()) {
|
||||||
_toastLiveData.postValue("내용을 입력하세요")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_creator_community_write_content_hint)
|
||||||
|
)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -188,14 +204,18 @@ class CreatorCommunityCommentListViewModel(
|
|||||||
getCommentList(postId)
|
getCommentList(postId)
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
val message = it.message ?: "알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
val message = it.message ?: SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
_toastLiveData.postValue(message)
|
_toastLiveData.postValue(message)
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -228,7 +248,8 @@ class CreatorCommunityCommentListViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -242,7 +263,10 @@ class CreatorCommunityCommentListViewModel(
|
|||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
|
)
|
||||||
if (onFailure != null) {
|
if (onFailure != null) {
|
||||||
onFailure()
|
onFailure()
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -8,8 +8,10 @@ import android.net.Uri
|
|||||||
import android.widget.Toast
|
import android.widget.Toast
|
||||||
import androidx.annotation.Keep
|
import androidx.annotation.Keep
|
||||||
import com.google.gson.annotations.SerializedName
|
import com.google.gson.annotations.SerializedName
|
||||||
|
import kr.co.vividnext.sodalive.R
|
||||||
import kr.co.vividnext.sodalive.audio_content.AudioContentPlayService
|
import kr.co.vividnext.sodalive.audio_content.AudioContentPlayService
|
||||||
import kr.co.vividnext.sodalive.audio_content.player.AudioContentPlayerService
|
import kr.co.vividnext.sodalive.audio_content.player.AudioContentPlayerService
|
||||||
|
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
||||||
import java.io.IOException
|
import java.io.IOException
|
||||||
|
|
||||||
@Keep
|
@Keep
|
||||||
@@ -93,7 +95,12 @@ class CreatorCommunityMediaPlayerManager(
|
|||||||
}
|
}
|
||||||
} catch (e: IOException) {
|
} catch (e: IOException) {
|
||||||
e.printStackTrace()
|
e.printStackTrace()
|
||||||
Toast.makeText(context, "콘텐츠를 재생하지 못했습니다.\n다시 시도해 주세요", Toast.LENGTH_SHORT).show()
|
Toast.makeText(
|
||||||
|
context,
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_audition_play_error),
|
||||||
|
Toast.LENGTH_SHORT
|
||||||
|
).show()
|
||||||
}
|
}
|
||||||
|
|
||||||
setOnCompletionListener {
|
setOnCompletionListener {
|
||||||
|
|||||||
@@ -6,8 +6,10 @@ import com.google.gson.Gson
|
|||||||
import com.orhanobut.logger.Logger
|
import com.orhanobut.logger.Logger
|
||||||
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
||||||
import io.reactivex.rxjava3.schedulers.Schedulers
|
import io.reactivex.rxjava3.schedulers.Schedulers
|
||||||
|
import kr.co.vividnext.sodalive.R
|
||||||
import kr.co.vividnext.sodalive.base.BaseViewModel
|
import kr.co.vividnext.sodalive.base.BaseViewModel
|
||||||
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||||
|
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
||||||
import kr.co.vividnext.sodalive.explorer.profile.creator_community.CreatorCommunityRepository
|
import kr.co.vividnext.sodalive.explorer.profile.creator_community.CreatorCommunityRepository
|
||||||
import kr.co.vividnext.sodalive.explorer.profile.creator_community.GetCommunityPostListResponse
|
import kr.co.vividnext.sodalive.explorer.profile.creator_community.GetCommunityPostListResponse
|
||||||
import okhttp3.MediaType
|
import okhttp3.MediaType
|
||||||
@@ -84,7 +86,8 @@ class CreatorCommunityModifyViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -96,7 +99,10 @@ class CreatorCommunityModifyViewModel(
|
|||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
|
)
|
||||||
if (onFailure != null) {
|
if (onFailure != null) {
|
||||||
onFailure()
|
onFailure()
|
||||||
}
|
}
|
||||||
@@ -178,7 +184,8 @@ class CreatorCommunityModifyViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -187,7 +194,8 @@ class CreatorCommunityModifyViewModel(
|
|||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
@@ -197,7 +205,10 @@ class CreatorCommunityModifyViewModel(
|
|||||||
|
|
||||||
private fun validateData(): Boolean {
|
private fun validateData(): Boolean {
|
||||||
if (content.isBlank() || content.length < 5) {
|
if (content.isBlank() || content.length < 5) {
|
||||||
_toastLiveData.postValue("내용을 5자 이상 입력해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.audio_content_upload_error_detail_min_length)
|
||||||
|
)
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
package kr.co.vividnext.sodalive.explorer.profile.creator_community.write
|
package kr.co.vividnext.sodalive.explorer.profile.creator_community.write
|
||||||
|
|
||||||
import android.Manifest
|
import android.Manifest
|
||||||
import android.annotation.SuppressLint
|
|
||||||
import android.graphics.Bitmap
|
import android.graphics.Bitmap
|
||||||
import android.os.Build
|
import android.os.Build
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
@@ -21,6 +20,7 @@ import kr.co.vividnext.sodalive.base.BaseActivity
|
|||||||
import kr.co.vividnext.sodalive.common.ImagePickerCropper
|
import kr.co.vividnext.sodalive.common.ImagePickerCropper
|
||||||
import kr.co.vividnext.sodalive.common.LoadingDialog
|
import kr.co.vividnext.sodalive.common.LoadingDialog
|
||||||
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||||
|
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
||||||
import kr.co.vividnext.sodalive.databinding.ActivityCreatorCommunityWriteBinding
|
import kr.co.vividnext.sodalive.databinding.ActivityCreatorCommunityWriteBinding
|
||||||
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
|
||||||
@@ -298,7 +298,10 @@ class CreatorCommunityWriteActivity : BaseActivity<ActivityCreatorCommunityWrite
|
|||||||
|
|
||||||
private fun checkPriceFree() {
|
private fun checkPriceFree() {
|
||||||
viewModel.price = 0
|
viewModel.price = 0
|
||||||
binding.etPrice.setText("0")
|
binding.etPrice.setText(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_zero)
|
||||||
|
)
|
||||||
binding.rlPrice.visibility = View.GONE
|
binding.rlPrice.visibility = View.GONE
|
||||||
|
|
||||||
binding.ivPriceFree.visibility = View.VISIBLE
|
binding.ivPriceFree.visibility = View.VISIBLE
|
||||||
|
|||||||
@@ -6,8 +6,10 @@ import com.google.gson.Gson
|
|||||||
import com.orhanobut.logger.Logger
|
import com.orhanobut.logger.Logger
|
||||||
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
||||||
import io.reactivex.rxjava3.schedulers.Schedulers
|
import io.reactivex.rxjava3.schedulers.Schedulers
|
||||||
|
import kr.co.vividnext.sodalive.R
|
||||||
import kr.co.vividnext.sodalive.base.BaseViewModel
|
import kr.co.vividnext.sodalive.base.BaseViewModel
|
||||||
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||||
|
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
||||||
import kr.co.vividnext.sodalive.explorer.profile.creator_community.CreatorCommunityRepository
|
import kr.co.vividnext.sodalive.explorer.profile.creator_community.CreatorCommunityRepository
|
||||||
import okhttp3.MediaType
|
import okhttp3.MediaType
|
||||||
import okhttp3.MediaType.Companion.toMediaType
|
import okhttp3.MediaType.Companion.toMediaType
|
||||||
@@ -154,7 +156,8 @@ class CreatorCommunityWriteViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -164,7 +167,8 @@ class CreatorCommunityWriteViewModel(
|
|||||||
_isLoading.postValue(false)
|
_isLoading.postValue(false)
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
@@ -174,7 +178,10 @@ class CreatorCommunityWriteViewModel(
|
|||||||
|
|
||||||
private fun validateData(): Boolean {
|
private fun validateData(): Boolean {
|
||||||
if (content.isBlank() || content.length < 5) {
|
if (content.isBlank() || content.length < 5) {
|
||||||
_toastLiveData.postValue("내용을 5자 이상 입력해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.audio_content_upload_error_detail_min_length)
|
||||||
|
)
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -18,6 +18,7 @@ import com.google.android.material.bottomsheet.BottomSheetBehavior
|
|||||||
import com.google.android.material.bottomsheet.BottomSheetDialog
|
import com.google.android.material.bottomsheet.BottomSheetDialog
|
||||||
import com.google.android.material.bottomsheet.BottomSheetDialogFragment
|
import com.google.android.material.bottomsheet.BottomSheetDialogFragment
|
||||||
import kr.co.vividnext.sodalive.R
|
import kr.co.vividnext.sodalive.R
|
||||||
|
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
||||||
import kr.co.vividnext.sodalive.databinding.FragmentRecordingVoiceBinding
|
import kr.co.vividnext.sodalive.databinding.FragmentRecordingVoiceBinding
|
||||||
import java.io.File
|
import java.io.File
|
||||||
import java.io.IOException
|
import java.io.IOException
|
||||||
@@ -289,6 +290,7 @@ class RecordingVoiceFragment : BottomSheetDialogFragment() {
|
|||||||
private fun stopCountDownTimer() {
|
private fun stopCountDownTimer() {
|
||||||
handler.removeCallbacksAndMessages(null)
|
handler.removeCallbacksAndMessages(null)
|
||||||
startTime = 0
|
startTime = 0
|
||||||
binding.tvTimer.text = "00:00.00"
|
binding.tvTimer.text =
|
||||||
|
SodaLiveApplicationHolder.get().getString(R.string.recording_voice_initial_time)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,8 +5,10 @@ import androidx.lifecycle.MutableLiveData
|
|||||||
import com.orhanobut.logger.Logger
|
import com.orhanobut.logger.Logger
|
||||||
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
||||||
import io.reactivex.rxjava3.schedulers.Schedulers
|
import io.reactivex.rxjava3.schedulers.Schedulers
|
||||||
|
import kr.co.vividnext.sodalive.R
|
||||||
import kr.co.vividnext.sodalive.base.BaseViewModel
|
import kr.co.vividnext.sodalive.base.BaseViewModel
|
||||||
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||||
|
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
||||||
import kr.co.vividnext.sodalive.explorer.ExplorerRepository
|
import kr.co.vividnext.sodalive.explorer.ExplorerRepository
|
||||||
import kr.co.vividnext.sodalive.mypage.profile.ProfileUpdateRequest
|
import kr.co.vividnext.sodalive.mypage.profile.ProfileUpdateRequest
|
||||||
import kr.co.vividnext.sodalive.user.UserRepository
|
import kr.co.vividnext.sodalive.user.UserRepository
|
||||||
@@ -64,7 +66,8 @@ class UserProfileDonationAllViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -74,7 +77,10 @@ class UserProfileDonationAllViewModel(
|
|||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -110,7 +116,8 @@ class UserProfileDonationAllViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -120,7 +127,10 @@ class UserProfileDonationAllViewModel(
|
|||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -5,8 +5,10 @@ import androidx.lifecycle.MutableLiveData
|
|||||||
import com.orhanobut.logger.Logger
|
import com.orhanobut.logger.Logger
|
||||||
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
||||||
import io.reactivex.rxjava3.schedulers.Schedulers
|
import io.reactivex.rxjava3.schedulers.Schedulers
|
||||||
|
import kr.co.vividnext.sodalive.R
|
||||||
import kr.co.vividnext.sodalive.base.BaseViewModel
|
import kr.co.vividnext.sodalive.base.BaseViewModel
|
||||||
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||||
|
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
||||||
import kr.co.vividnext.sodalive.explorer.ExplorerRepository
|
import kr.co.vividnext.sodalive.explorer.ExplorerRepository
|
||||||
import kr.co.vividnext.sodalive.explorer.profile.GetCheersResponse
|
import kr.co.vividnext.sodalive.explorer.profile.GetCheersResponse
|
||||||
import kr.co.vividnext.sodalive.explorer.profile.cheers.PutModifyCheersRequest
|
import kr.co.vividnext.sodalive.explorer.profile.cheers.PutModifyCheersRequest
|
||||||
@@ -59,7 +61,8 @@ class UserProfileFantalkAllViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -69,7 +72,10 @@ class UserProfileFantalkAllViewModel(
|
|||||||
{
|
{
|
||||||
_isLoading.postValue(false)
|
_isLoading.postValue(false)
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -93,7 +99,8 @@ class UserProfileFantalkAllViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"신고가 접수되었습니다."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.character_comment_report_submitted)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -102,7 +109,10 @@ class UserProfileFantalkAllViewModel(
|
|||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("신고가 접수되었습니다.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.character_comment_report_submitted)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -110,7 +120,10 @@ class UserProfileFantalkAllViewModel(
|
|||||||
|
|
||||||
fun writeCheers(parentCheersId: Long? = null, creatorId: Long, cheersContent: String) {
|
fun writeCheers(parentCheersId: Long? = null, creatorId: Long, cheersContent: String) {
|
||||||
if (cheersContent.isBlank()) {
|
if (cheersContent.isBlank()) {
|
||||||
_toastLiveData.postValue("내용을 입력하세요")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.audio_content_comment_input_required)
|
||||||
|
)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -134,14 +147,18 @@ class UserProfileFantalkAllViewModel(
|
|||||||
cheersPage = 1
|
cheersPage = 1
|
||||||
getCheersList(creatorId)
|
getCheersList(creatorId)
|
||||||
} else {
|
} else {
|
||||||
val message = it.message ?: "알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
val message = it.message ?: SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
_toastLiveData.postValue(message)
|
_toastLiveData.postValue(message)
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -154,12 +171,18 @@ class UserProfileFantalkAllViewModel(
|
|||||||
isActive: Boolean? = null
|
isActive: Boolean? = null
|
||||||
) {
|
) {
|
||||||
if (cheersContent == null && isActive == null) {
|
if (cheersContent == null && isActive == null) {
|
||||||
_toastLiveData.postValue("변경사항이 없습니다.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.msg_live_room_edit_no_changes)
|
||||||
|
)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
if (cheersContent != null && cheersContent.isBlank()) {
|
if (cheersContent != null && cheersContent.isBlank()) {
|
||||||
_toastLiveData.postValue("내용을 입력하세요")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.audio_content_comment_input_required)
|
||||||
|
)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -191,14 +214,18 @@ class UserProfileFantalkAllViewModel(
|
|||||||
cheersPage = 1
|
cheersPage = 1
|
||||||
getCheersList(creatorId)
|
getCheersList(creatorId)
|
||||||
} else {
|
} else {
|
||||||
val message = it.message ?: "알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
val message = it.message ?: SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
_toastLiveData.postValue(message)
|
_toastLiveData.postValue(message)
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -5,8 +5,10 @@ import androidx.lifecycle.MutableLiveData
|
|||||||
import com.orhanobut.logger.Logger
|
import com.orhanobut.logger.Logger
|
||||||
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
||||||
import io.reactivex.rxjava3.schedulers.Schedulers
|
import io.reactivex.rxjava3.schedulers.Schedulers
|
||||||
|
import kr.co.vividnext.sodalive.R
|
||||||
import kr.co.vividnext.sodalive.base.BaseViewModel
|
import kr.co.vividnext.sodalive.base.BaseViewModel
|
||||||
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||||
|
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
||||||
import kr.co.vividnext.sodalive.explorer.ExplorerRepository
|
import kr.co.vividnext.sodalive.explorer.ExplorerRepository
|
||||||
import kr.co.vividnext.sodalive.user.UserRepository
|
import kr.co.vividnext.sodalive.user.UserRepository
|
||||||
|
|
||||||
@@ -72,7 +74,8 @@ class UserFollowerListViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -81,7 +84,8 @@ class UserFollowerListViewModel(
|
|||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
@@ -113,7 +117,8 @@ class UserFollowerListViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -121,7 +126,10 @@ class UserFollowerListViewModel(
|
|||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.common_error_unknown)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -6,9 +6,11 @@ import com.orhanobut.logger.Logger
|
|||||||
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
||||||
import io.reactivex.rxjava3.core.Flowable
|
import io.reactivex.rxjava3.core.Flowable
|
||||||
import io.reactivex.rxjava3.schedulers.Schedulers
|
import io.reactivex.rxjava3.schedulers.Schedulers
|
||||||
|
import kr.co.vividnext.sodalive.R
|
||||||
import kr.co.vividnext.sodalive.audio_content.AudioContentRepository
|
import kr.co.vividnext.sodalive.audio_content.AudioContentRepository
|
||||||
import kr.co.vividnext.sodalive.base.BaseViewModel
|
import kr.co.vividnext.sodalive.base.BaseViewModel
|
||||||
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||||
|
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
||||||
import kr.co.vividnext.sodalive.explorer.profile.creator_community.CreatorCommunityRepository
|
import kr.co.vividnext.sodalive.explorer.profile.creator_community.CreatorCommunityRepository
|
||||||
import kr.co.vividnext.sodalive.explorer.profile.creator_community.GetCommunityPostListResponse
|
import kr.co.vividnext.sodalive.explorer.profile.creator_community.GetCommunityPostListResponse
|
||||||
import kr.co.vividnext.sodalive.home.AudioContentMainItem
|
import kr.co.vividnext.sodalive.home.AudioContentMainItem
|
||||||
@@ -93,7 +95,8 @@ class LiveViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -101,7 +104,10 @@ class LiveViewModel(
|
|||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -123,7 +129,8 @@ class LiveViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -131,7 +138,10 @@ class LiveViewModel(
|
|||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -213,7 +223,8 @@ class LiveViewModel(
|
|||||||
_toastLiveData.postValue(now.message)
|
_toastLiveData.postValue(now.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -231,7 +242,8 @@ class LiveViewModel(
|
|||||||
_toastLiveData.postValue(reservation.message)
|
_toastLiveData.postValue(reservation.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -271,7 +283,10 @@ class LiveViewModel(
|
|||||||
{
|
{
|
||||||
_isLoading.postValue(false)
|
_isLoading.postValue(false)
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -295,7 +310,8 @@ class LiveViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -303,7 +319,10 @@ class LiveViewModel(
|
|||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -328,7 +347,8 @@ class LiveViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -336,7 +356,10 @@ class LiveViewModel(
|
|||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -363,7 +386,8 @@ class LiveViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -371,7 +395,10 @@ class LiveViewModel(
|
|||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -395,7 +422,8 @@ class LiveViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -403,7 +431,10 @@ class LiveViewModel(
|
|||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -468,7 +499,8 @@ class LiveViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -476,7 +508,10 @@ class LiveViewModel(
|
|||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -509,7 +544,8 @@ class LiveViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -517,7 +553,10 @@ class LiveViewModel(
|
|||||||
{
|
{
|
||||||
_isLoading.postValue(false)
|
_isLoading.postValue(false)
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -552,7 +591,8 @@ class LiveViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -560,7 +600,10 @@ class LiveViewModel(
|
|||||||
{
|
{
|
||||||
_isLoading.postValue(false)
|
_isLoading.postValue(false)
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -594,7 +637,8 @@ class LiveViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -602,7 +646,10 @@ class LiveViewModel(
|
|||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -14,6 +14,7 @@ import io.reactivex.rxjava3.schedulers.Schedulers
|
|||||||
import kr.co.vividnext.sodalive.R
|
import kr.co.vividnext.sodalive.R
|
||||||
import kr.co.vividnext.sodalive.base.BaseActivity
|
import kr.co.vividnext.sodalive.base.BaseActivity
|
||||||
import kr.co.vividnext.sodalive.common.LoadingDialog
|
import kr.co.vividnext.sodalive.common.LoadingDialog
|
||||||
|
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
||||||
import kr.co.vividnext.sodalive.databinding.ActivityLiveReservationCancelBinding
|
import kr.co.vividnext.sodalive.databinding.ActivityLiveReservationCancelBinding
|
||||||
import kr.co.vividnext.sodalive.extensions.dpToPx
|
import kr.co.vividnext.sodalive.extensions.dpToPx
|
||||||
import kr.co.vividnext.sodalive.main.MainActivity
|
import kr.co.vividnext.sodalive.main.MainActivity
|
||||||
@@ -75,7 +76,8 @@ class LiveReservationCancelActivity : BaseActivity<ActivityLiveReservationCancel
|
|||||||
@SuppressLint("SetTextI18n")
|
@SuppressLint("SetTextI18n")
|
||||||
override fun setupView() {
|
override fun setupView() {
|
||||||
loadingDialog = LoadingDialog(this, layoutInflater)
|
loadingDialog = LoadingDialog(this, layoutInflater)
|
||||||
binding.toolbar.tvBack.text = "예약취소"
|
binding.toolbar.tvBack.text = SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.live_reservation_cancel_action)
|
||||||
binding.toolbar.tvBack.setOnClickListener { finish() }
|
binding.toolbar.tvBack.setOnClickListener { finish() }
|
||||||
|
|
||||||
binding.tvReason1.setOnClickListener {
|
binding.tvReason1.setOnClickListener {
|
||||||
@@ -119,7 +121,9 @@ class LiveReservationCancelActivity : BaseActivity<ActivityLiveReservationCancel
|
|||||||
|
|
||||||
binding.tvCancel.setOnClickListener {
|
binding.tvCancel.setOnClickListener {
|
||||||
viewModel.cancelReservation {
|
viewModel.cancelReservation {
|
||||||
if (binding.tvPrice.text == "무료") {
|
if (binding.tvPrice.text == SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.live_reservation_free)
|
||||||
|
) {
|
||||||
binding.tvCancelComplete.visibility = View.GONE
|
binding.tvCancelComplete.visibility = View.GONE
|
||||||
} else {
|
} else {
|
||||||
binding.tvCancelComplete.visibility = View.VISIBLE
|
binding.tvCancelComplete.visibility = View.VISIBLE
|
||||||
@@ -156,7 +160,9 @@ class LiveReservationCancelActivity : BaseActivity<ActivityLiveReservationCancel
|
|||||||
binding.tvPrice.text = "${response.price}캔"
|
binding.tvPrice.text = "${response.price}캔"
|
||||||
} else {
|
} else {
|
||||||
binding.tvCheckCanStatus.visibility = View.GONE
|
binding.tvCheckCanStatus.visibility = View.GONE
|
||||||
binding.tvPrice.text = "무료"
|
binding.tvPrice.text =
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.live_reservation_free)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,8 +5,10 @@ import androidx.lifecycle.MutableLiveData
|
|||||||
import com.orhanobut.logger.Logger
|
import com.orhanobut.logger.Logger
|
||||||
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
||||||
import io.reactivex.rxjava3.schedulers.Schedulers
|
import io.reactivex.rxjava3.schedulers.Schedulers
|
||||||
|
import kr.co.vividnext.sodalive.R
|
||||||
import kr.co.vividnext.sodalive.base.BaseViewModel
|
import kr.co.vividnext.sodalive.base.BaseViewModel
|
||||||
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||||
|
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
||||||
import kr.co.vividnext.sodalive.live.LiveRepository
|
import kr.co.vividnext.sodalive.live.LiveRepository
|
||||||
|
|
||||||
class LiveReservationStatusViewModel(
|
class LiveReservationStatusViewModel(
|
||||||
@@ -44,7 +46,8 @@ class LiveReservationStatusViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -53,7 +56,10 @@ class LiveReservationStatusViewModel(
|
|||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -76,7 +82,8 @@ class LiveReservationStatusViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -86,7 +93,10 @@ class LiveReservationStatusViewModel(
|
|||||||
|
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -117,7 +127,8 @@ class LiveReservationStatusViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -126,7 +137,10 @@ class LiveReservationStatusViewModel(
|
|||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -8,9 +8,11 @@ import com.orhanobut.logger.Logger
|
|||||||
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
||||||
import io.reactivex.rxjava3.core.Single
|
import io.reactivex.rxjava3.core.Single
|
||||||
import io.reactivex.rxjava3.schedulers.Schedulers
|
import io.reactivex.rxjava3.schedulers.Schedulers
|
||||||
|
import kr.co.vividnext.sodalive.R
|
||||||
import kr.co.vividnext.sodalive.base.BaseViewModel
|
import kr.co.vividnext.sodalive.base.BaseViewModel
|
||||||
import kr.co.vividnext.sodalive.common.ApiResponse
|
import kr.co.vividnext.sodalive.common.ApiResponse
|
||||||
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||||
|
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
||||||
import kr.co.vividnext.sodalive.common.Utils
|
import kr.co.vividnext.sodalive.common.Utils
|
||||||
import kr.co.vividnext.sodalive.live.LiveRepository
|
import kr.co.vividnext.sodalive.live.LiveRepository
|
||||||
import kr.co.vividnext.sodalive.live.room.donation.GetLiveRoomDonationStatusResponse
|
import kr.co.vividnext.sodalive.live.room.donation.GetLiveRoomDonationStatusResponse
|
||||||
@@ -164,14 +166,18 @@ class LiveRoomViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -192,14 +198,18 @@ class LiveRoomViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -236,14 +246,18 @@ class LiveRoomViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -348,7 +362,8 @@ class LiveRoomViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -357,7 +372,10 @@ class LiveRoomViewModel(
|
|||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -385,7 +403,8 @@ class LiveRoomViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -394,7 +413,10 @@ class LiveRoomViewModel(
|
|||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -489,7 +511,9 @@ class LiveRoomViewModel(
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (coverImage == null && requestJson == null) {
|
if (coverImage == null && requestJson == null) {
|
||||||
_toastLiveData.value = "변경사항이 없습니다."
|
_toastLiveData.value =
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.msg_live_room_edit_no_changes)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -512,7 +536,8 @@ class LiveRoomViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"라이브 정보를 수정하지 못했습니다.\n다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.msg_live_room_edit_update_failed)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -520,7 +545,8 @@ class LiveRoomViewModel(
|
|||||||
{
|
{
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"라이브 정보를 수정하지 못했습니다.\n다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.msg_live_room_edit_update_failed)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
@@ -544,7 +570,8 @@ class LiveRoomViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -552,7 +579,10 @@ class LiveRoomViewModel(
|
|||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -586,7 +616,8 @@ class LiveRoomViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
onFailure()
|
onFailure()
|
||||||
@@ -594,7 +625,10 @@ class LiveRoomViewModel(
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
|
)
|
||||||
onFailure()
|
onFailure()
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
@@ -630,7 +664,8 @@ class LiveRoomViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -638,7 +673,10 @@ class LiveRoomViewModel(
|
|||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -827,7 +865,8 @@ class LiveRoomViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -835,7 +874,10 @@ class LiveRoomViewModel(
|
|||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -858,7 +900,8 @@ class LiveRoomViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -866,7 +909,10 @@ class LiveRoomViewModel(
|
|||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -899,14 +945,18 @@ class LiveRoomViewModel(
|
|||||||
_toastLiveData.postValue("차단하였습니다.")
|
_toastLiveData.postValue("차단하였습니다.")
|
||||||
onSuccess()
|
onSuccess()
|
||||||
} else {
|
} else {
|
||||||
val message = it.message ?: "알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
val message = it.message ?: SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
_toastLiveData.postValue(message)
|
_toastLiveData.postValue(message)
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -929,20 +979,29 @@ class LiveRoomViewModel(
|
|||||||
getUserProfile(roomId = roomInfoResponse.roomId, userId = userId) {}
|
getUserProfile(roomId = roomInfoResponse.roomId, userId = userId) {}
|
||||||
_toastLiveData.postValue("차단이 해제 되었습니다.")
|
_toastLiveData.postValue("차단이 해제 되었습니다.")
|
||||||
} else {
|
} else {
|
||||||
val message = it.message ?: "알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
val message = it.message ?: SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
_toastLiveData.postValue(message)
|
_toastLiveData.postValue(message)
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
fun report(type: ReportType, userId: Long, reason: String = "프로필 신고") {
|
fun report(
|
||||||
|
type: ReportType,
|
||||||
|
userId: Long,
|
||||||
|
reason: String = SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.dialog_member_profile_report_profile)
|
||||||
|
) {
|
||||||
_isLoading.value = true
|
_isLoading.value = true
|
||||||
|
|
||||||
val request = ReportRequest(type, reason, reportedMemberId = userId)
|
val request = ReportRequest(type, reason, reportedMemberId = userId)
|
||||||
@@ -959,7 +1018,8 @@ class LiveRoomViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"신고가 접수되었습니다."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.character_comment_report_submitted)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -968,7 +1028,10 @@ class LiveRoomViewModel(
|
|||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("신고가 접수되었습니다.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.character_comment_report_submitted)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -1119,7 +1182,8 @@ class LiveRoomViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1128,7 +1192,10 @@ class LiveRoomViewModel(
|
|||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -28,6 +28,7 @@ import kr.co.vividnext.sodalive.common.Constants
|
|||||||
import kr.co.vividnext.sodalive.common.ImagePickerCropper
|
import kr.co.vividnext.sodalive.common.ImagePickerCropper
|
||||||
import kr.co.vividnext.sodalive.common.LoadingDialog
|
import kr.co.vividnext.sodalive.common.LoadingDialog
|
||||||
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||||
|
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
||||||
import kr.co.vividnext.sodalive.databinding.ActivityLiveRoomCreateBinding
|
import kr.co.vividnext.sodalive.databinding.ActivityLiveRoomCreateBinding
|
||||||
import kr.co.vividnext.sodalive.databinding.ItemLiveTagSelectedBinding
|
import kr.co.vividnext.sodalive.databinding.ItemLiveTagSelectedBinding
|
||||||
import kr.co.vividnext.sodalive.extensions.convertDateFormat
|
import kr.co.vividnext.sodalive.extensions.convertDateFormat
|
||||||
@@ -292,7 +293,11 @@ class LiveRoomCreateActivity : BaseActivity<ActivityLiveRoomCreateBinding>(
|
|||||||
|
|
||||||
if (SharedPreferenceManager.role == MemberRole.CREATOR.name) {
|
if (SharedPreferenceManager.role == MemberRole.CREATOR.name) {
|
||||||
binding.llPrice.visibility = View.VISIBLE
|
binding.llPrice.visibility = View.VISIBLE
|
||||||
binding.tvPriceFree.setOnClickListener { binding.etPrice.setText("0") }
|
binding.tvPriceFree.setOnClickListener {
|
||||||
|
binding.etPrice.setText(
|
||||||
|
SodaLiveApplicationHolder.get().getString(R.string.common_zero)
|
||||||
|
)
|
||||||
|
}
|
||||||
binding.tvPrice100.setOnClickListener { binding.etPrice.setText("100") }
|
binding.tvPrice100.setOnClickListener { binding.etPrice.setText("100") }
|
||||||
binding.tvPrice300.setOnClickListener { binding.etPrice.setText("300") }
|
binding.tvPrice300.setOnClickListener { binding.etPrice.setText("300") }
|
||||||
binding.tvPrice500.setOnClickListener { binding.etPrice.setText("500") }
|
binding.tvPrice500.setOnClickListener { binding.etPrice.setText("500") }
|
||||||
|
|||||||
@@ -5,8 +5,10 @@ import androidx.lifecycle.MutableLiveData
|
|||||||
import com.orhanobut.logger.Logger
|
import com.orhanobut.logger.Logger
|
||||||
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
||||||
import io.reactivex.rxjava3.schedulers.Schedulers
|
import io.reactivex.rxjava3.schedulers.Schedulers
|
||||||
|
import kr.co.vividnext.sodalive.R
|
||||||
import kr.co.vividnext.sodalive.base.BaseViewModel
|
import kr.co.vividnext.sodalive.base.BaseViewModel
|
||||||
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||||
|
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
||||||
import kr.co.vividnext.sodalive.live.LiveRepository
|
import kr.co.vividnext.sodalive.live.LiveRepository
|
||||||
|
|
||||||
class LiveRoomDonationMessageViewModel(private val repository: LiveRepository) : BaseViewModel() {
|
class LiveRoomDonationMessageViewModel(private val repository: LiveRepository) : BaseViewModel() {
|
||||||
@@ -46,7 +48,8 @@ class LiveRoomDonationMessageViewModel(private val repository: LiveRepository) :
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -54,7 +57,10 @@ class LiveRoomDonationMessageViewModel(private val repository: LiveRepository) :
|
|||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -80,7 +86,8 @@ class LiveRoomDonationMessageViewModel(private val repository: LiveRepository) :
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -88,7 +95,10 @@ class LiveRoomDonationMessageViewModel(private val repository: LiveRepository) :
|
|||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -30,6 +30,7 @@ import com.gun0912.tedpermission.normal.TedPermission
|
|||||||
import kr.co.vividnext.sodalive.R
|
import kr.co.vividnext.sodalive.R
|
||||||
import kr.co.vividnext.sodalive.common.Constants
|
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.SodaLiveApplicationHolder
|
||||||
import kr.co.vividnext.sodalive.databinding.FragmentVoiceMessageWriteBinding
|
import kr.co.vividnext.sodalive.databinding.FragmentVoiceMessageWriteBinding
|
||||||
import kr.co.vividnext.sodalive.extensions.dpToPx
|
import kr.co.vividnext.sodalive.extensions.dpToPx
|
||||||
import kr.co.vividnext.sodalive.live.room.detail.GetRoomDetailUser
|
import kr.co.vividnext.sodalive.live.room.detail.GetRoomDetailUser
|
||||||
@@ -433,7 +434,8 @@ class VoiceMessageWriteFragment(
|
|||||||
countDownTimer = null
|
countDownTimer = null
|
||||||
}
|
}
|
||||||
|
|
||||||
binding.tvTimer.text = "00:00:00"
|
binding.tvTimer.text = SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_audio_content_detail_time_default)
|
||||||
second = -1
|
second = -1
|
||||||
minute = 0
|
minute = 0
|
||||||
hour = 0
|
hour = 0
|
||||||
|
|||||||
@@ -22,6 +22,7 @@ import kr.co.vividnext.sodalive.common.Constants
|
|||||||
import kr.co.vividnext.sodalive.common.FunctionButtonHelper
|
import kr.co.vividnext.sodalive.common.FunctionButtonHelper
|
||||||
import kr.co.vividnext.sodalive.common.LoadingDialog
|
import kr.co.vividnext.sodalive.common.LoadingDialog
|
||||||
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||||
|
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
||||||
import kr.co.vividnext.sodalive.databinding.FragmentMyBinding
|
import kr.co.vividnext.sodalive.databinding.FragmentMyBinding
|
||||||
import kr.co.vividnext.sodalive.explorer.profile.UserProfileActivity
|
import kr.co.vividnext.sodalive.explorer.profile.UserProfileActivity
|
||||||
import kr.co.vividnext.sodalive.extensions.dpToPx
|
import kr.co.vividnext.sodalive.extensions.dpToPx
|
||||||
@@ -344,12 +345,14 @@ class MyPageFragment : BaseFragment<FragmentMyBinding>(FragmentMyBinding::inflat
|
|||||||
(requireActivity() as MainActivity).showLoginActivity()
|
(requireActivity() as MainActivity).showLoginActivity()
|
||||||
}
|
}
|
||||||
|
|
||||||
binding.tvCanAmount.text = "0"
|
binding.tvCanAmount.text =
|
||||||
|
SodaLiveApplicationHolder.get().getString(R.string.common_zero)
|
||||||
binding.tvCanAmount.setOnClickListener {
|
binding.tvCanAmount.setOnClickListener {
|
||||||
(requireActivity() as MainActivity).showLoginActivity()
|
(requireActivity() as MainActivity).showLoginActivity()
|
||||||
}
|
}
|
||||||
|
|
||||||
binding.tvPointAmount.text = "0"
|
binding.tvPointAmount.text =
|
||||||
|
SodaLiveApplicationHolder.get().getString(R.string.common_zero)
|
||||||
binding.tvPointAmount.setOnClickListener {
|
binding.tvPointAmount.setOnClickListener {
|
||||||
(requireActivity() as MainActivity).showLoginActivity()
|
(requireActivity() as MainActivity).showLoginActivity()
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,8 +5,10 @@ import androidx.lifecycle.MutableLiveData
|
|||||||
import com.orhanobut.logger.Logger
|
import com.orhanobut.logger.Logger
|
||||||
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
||||||
import io.reactivex.rxjava3.schedulers.Schedulers
|
import io.reactivex.rxjava3.schedulers.Schedulers
|
||||||
|
import kr.co.vividnext.sodalive.R
|
||||||
import kr.co.vividnext.sodalive.base.BaseViewModel
|
import kr.co.vividnext.sodalive.base.BaseViewModel
|
||||||
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||||
|
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
||||||
|
|
||||||
class AlarmListViewModel(private val repository: AlarmListRepository) : BaseViewModel() {
|
class AlarmListViewModel(private val repository: AlarmListRepository) : BaseViewModel() {
|
||||||
private val _toastLiveData = MutableLiveData<String?>()
|
private val _toastLiveData = MutableLiveData<String?>()
|
||||||
@@ -47,7 +49,8 @@ class AlarmListViewModel(private val repository: AlarmListRepository) : BaseView
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -55,7 +58,10 @@ class AlarmListViewModel(private val repository: AlarmListRepository) : BaseView
|
|||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -77,7 +83,8 @@ class AlarmListViewModel(private val repository: AlarmListRepository) : BaseView
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -85,7 +92,10 @@ class AlarmListViewModel(private val repository: AlarmListRepository) : BaseView
|
|||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_live_room_unknown_error)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -2,6 +2,8 @@ package kr.co.vividnext.sodalive.mypage.alarm.db
|
|||||||
|
|
||||||
import androidx.room.Entity
|
import androidx.room.Entity
|
||||||
import androidx.room.PrimaryKey
|
import androidx.room.PrimaryKey
|
||||||
|
import kr.co.vividnext.sodalive.R
|
||||||
|
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
||||||
|
|
||||||
@Entity(tableName = "alarms")
|
@Entity(tableName = "alarms")
|
||||||
data class Alarm(
|
data class Alarm(
|
||||||
@@ -16,6 +18,10 @@ data class Alarm(
|
|||||||
var isEnabled: Boolean = true
|
var isEnabled: Boolean = true
|
||||||
) {
|
) {
|
||||||
fun getDaysText(): String {
|
fun getDaysText(): String {
|
||||||
return if (days.size == 7) "매일" else days.joinToString(", ")
|
return if (days.size == 7) {
|
||||||
|
SodaLiveApplicationHolder.get().getString(R.string.alarm_add_everyday)
|
||||||
|
} else {
|
||||||
|
days.joinToString(", ")
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,7 +4,9 @@ import android.app.AlarmManager
|
|||||||
import android.app.PendingIntent
|
import android.app.PendingIntent
|
||||||
import android.content.Context
|
import android.content.Context
|
||||||
import android.content.Intent
|
import android.content.Intent
|
||||||
|
import kr.co.vividnext.sodalive.R
|
||||||
import kr.co.vividnext.sodalive.common.Constants
|
import kr.co.vividnext.sodalive.common.Constants
|
||||||
|
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
||||||
import kr.co.vividnext.sodalive.mypage.alarm.db.Alarm
|
import kr.co.vividnext.sodalive.mypage.alarm.db.Alarm
|
||||||
import kr.co.vividnext.sodalive.mypage.alarm.receiver.AlarmReceiver
|
import kr.co.vividnext.sodalive.mypage.alarm.receiver.AlarmReceiver
|
||||||
import java.util.Calendar
|
import java.util.Calendar
|
||||||
@@ -109,13 +111,13 @@ class AlarmScheduler(private val context: Context) {
|
|||||||
|
|
||||||
private fun getDayOfWeek(day: String): Int {
|
private fun getDayOfWeek(day: String): Int {
|
||||||
return when (day) {
|
return when (day) {
|
||||||
"일" -> Calendar.SUNDAY
|
SodaLiveApplicationHolder.get().getString(R.string.day_sun_short) -> Calendar.SUNDAY
|
||||||
"월" -> Calendar.MONDAY
|
SodaLiveApplicationHolder.get().getString(R.string.day_mon_short) -> Calendar.MONDAY
|
||||||
"화" -> Calendar.TUESDAY
|
SodaLiveApplicationHolder.get().getString(R.string.day_tue_short) -> Calendar.TUESDAY
|
||||||
"수" -> Calendar.WEDNESDAY
|
SodaLiveApplicationHolder.get().getString(R.string.day_wed_short) -> Calendar.WEDNESDAY
|
||||||
"목" -> Calendar.THURSDAY
|
SodaLiveApplicationHolder.get().getString(R.string.day_thu_short) -> Calendar.THURSDAY
|
||||||
"금" -> Calendar.FRIDAY
|
SodaLiveApplicationHolder.get().getString(R.string.day_fri_short) -> Calendar.FRIDAY
|
||||||
"토" -> Calendar.SATURDAY
|
SodaLiveApplicationHolder.get().getString(R.string.day_sat_short) -> Calendar.SATURDAY
|
||||||
else -> Calendar.MONDAY
|
else -> Calendar.MONDAY
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -8,7 +8,9 @@ import kr.co.bootpay.android.Bootpay
|
|||||||
import kr.co.bootpay.android.events.BootpayEventListener
|
import kr.co.bootpay.android.events.BootpayEventListener
|
||||||
import kr.co.bootpay.android.models.Payload
|
import kr.co.bootpay.android.models.Payload
|
||||||
import kr.co.vividnext.sodalive.BuildConfig
|
import kr.co.vividnext.sodalive.BuildConfig
|
||||||
|
import kr.co.vividnext.sodalive.R
|
||||||
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||||
|
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
||||||
import java.util.Date
|
import java.util.Date
|
||||||
|
|
||||||
object Auth {
|
object Auth {
|
||||||
@@ -18,9 +20,9 @@ object Auth {
|
|||||||
|
|
||||||
val payload = Payload()
|
val payload = Payload()
|
||||||
.setApplicationId(BuildConfig.BOOTPAY_APP_ID)
|
.setApplicationId(BuildConfig.BOOTPAY_APP_ID)
|
||||||
.setOrderName("본인인증")
|
.setOrderName(SodaLiveApplicationHolder.get().getString(R.string.auth_title))
|
||||||
.setPg("다날")
|
.setPg("다날")
|
||||||
.setMethod("본인인증")
|
.setMethod(SodaLiveApplicationHolder.get().getString(R.string.auth_title))
|
||||||
.setAuthenticationId(authenticationId)
|
.setAuthenticationId(authenticationId)
|
||||||
.setPrice(0.toDouble())
|
.setPrice(0.toDouble())
|
||||||
|
|
||||||
|
|||||||
@@ -33,6 +33,7 @@ import kr.co.vividnext.sodalive.base.BaseActivity
|
|||||||
import kr.co.vividnext.sodalive.common.Constants
|
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.SharedPreferenceManager
|
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||||
|
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
||||||
import kr.co.vividnext.sodalive.databinding.ActivityCanPaymentBinding
|
import kr.co.vividnext.sodalive.databinding.ActivityCanPaymentBinding
|
||||||
import kr.co.vividnext.sodalive.extensions.formatMoney
|
import kr.co.vividnext.sodalive.extensions.formatMoney
|
||||||
import kr.co.vividnext.sodalive.mypage.auth.BootpayResponse
|
import kr.co.vividnext.sodalive.mypage.auth.BootpayResponse
|
||||||
@@ -46,7 +47,10 @@ class CanPaymentActivity : BaseActivity<ActivityCanPaymentBinding>(
|
|||||||
ActivityCanPaymentBinding::inflate
|
ActivityCanPaymentBinding::inflate
|
||||||
) {
|
) {
|
||||||
enum class PaymentMethod(val method: String) {
|
enum class PaymentMethod(val method: String) {
|
||||||
UNIFIED("통합 결제"),
|
UNIFIED(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_can_payment_method_unified)
|
||||||
|
),
|
||||||
PHONE("휴대폰"),
|
PHONE("휴대폰"),
|
||||||
KAKAOPAY("카카오페이")
|
KAKAOPAY("카카오페이")
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -20,6 +20,7 @@ import kr.co.vividnext.sodalive.R
|
|||||||
import kr.co.vividnext.sodalive.base.BaseActivity
|
import kr.co.vividnext.sodalive.base.BaseActivity
|
||||||
import kr.co.vividnext.sodalive.common.LoadingDialog
|
import kr.co.vividnext.sodalive.common.LoadingDialog
|
||||||
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||||
|
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
||||||
import kr.co.vividnext.sodalive.databinding.ActivityCanPaymentBinding
|
import kr.co.vividnext.sodalive.databinding.ActivityCanPaymentBinding
|
||||||
import kr.co.vividnext.sodalive.extensions.fontSpan
|
import kr.co.vividnext.sodalive.extensions.fontSpan
|
||||||
import kr.co.vividnext.sodalive.extensions.moneyFormat
|
import kr.co.vividnext.sodalive.extensions.moneyFormat
|
||||||
@@ -31,7 +32,11 @@ class CanPaymentTempActivity : BaseActivity<ActivityCanPaymentBinding>(
|
|||||||
ActivityCanPaymentBinding::inflate
|
ActivityCanPaymentBinding::inflate
|
||||||
) {
|
) {
|
||||||
enum class PaymentMethod(val method: String) {
|
enum class PaymentMethod(val method: String) {
|
||||||
UNIFIED("통합 결제"), PHONE("휴대폰")
|
UNIFIED(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.screen_can_payment_method_unified)
|
||||||
|
),
|
||||||
|
PHONE("휴대폰")
|
||||||
}
|
}
|
||||||
|
|
||||||
private val viewModel: CanPaymentTempViewModel by inject()
|
private val viewModel: CanPaymentTempViewModel by inject()
|
||||||
|
|||||||
@@ -5,8 +5,10 @@ import androidx.lifecycle.MutableLiveData
|
|||||||
import com.orhanobut.logger.Logger
|
import com.orhanobut.logger.Logger
|
||||||
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
|
||||||
import io.reactivex.rxjava3.schedulers.Schedulers
|
import io.reactivex.rxjava3.schedulers.Schedulers
|
||||||
|
import kr.co.vividnext.sodalive.R
|
||||||
import kr.co.vividnext.sodalive.base.BaseViewModel
|
import kr.co.vividnext.sodalive.base.BaseViewModel
|
||||||
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
import kr.co.vividnext.sodalive.common.SharedPreferenceManager
|
||||||
|
import kr.co.vividnext.sodalive.common.SodaLiveApplicationHolder
|
||||||
import kr.co.vividnext.sodalive.report.ReportRepository
|
import kr.co.vividnext.sodalive.report.ReportRepository
|
||||||
import kr.co.vividnext.sodalive.report.ReportRequest
|
import kr.co.vividnext.sodalive.report.ReportRequest
|
||||||
import kr.co.vividnext.sodalive.report.ReportType
|
import kr.co.vividnext.sodalive.report.ReportType
|
||||||
@@ -48,7 +50,8 @@ class UserViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.msg_can_coupon_unknown_error)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -57,7 +60,8 @@ class UserViewModel(
|
|||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.msg_can_coupon_unknown_error)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
@@ -81,14 +85,18 @@ class UserViewModel(
|
|||||||
_toastLiveData.postValue("차단하였습니다.")
|
_toastLiveData.postValue("차단하였습니다.")
|
||||||
onSuccess()
|
onSuccess()
|
||||||
} else {
|
} else {
|
||||||
val message = it.message ?: "알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
val message = it.message ?: SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.msg_can_coupon_unknown_error)
|
||||||
_toastLiveData.postValue(message)
|
_toastLiveData.postValue(message)
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.msg_can_coupon_unknown_error)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -111,14 +119,18 @@ class UserViewModel(
|
|||||||
_toastLiveData.postValue("차단이 해제 되었습니다.")
|
_toastLiveData.postValue("차단이 해제 되었습니다.")
|
||||||
onSuccess()
|
onSuccess()
|
||||||
} else {
|
} else {
|
||||||
val message = it.message ?: "알 수 없는 오류가 발생했습니다. 다시 시도해 주세요."
|
val message = it.message ?: SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.msg_can_coupon_unknown_error)
|
||||||
_toastLiveData.postValue(message)
|
_toastLiveData.postValue(message)
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("알 수 없는 오류가 발생했습니다. 다시 시도해 주세요.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.msg_can_coupon_unknown_error)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@@ -127,7 +139,8 @@ class UserViewModel(
|
|||||||
fun report(
|
fun report(
|
||||||
type: ReportType,
|
type: ReportType,
|
||||||
userId: Long,
|
userId: Long,
|
||||||
reason: String = "프로필 신고",
|
reason: String = SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.dialog_member_profile_report_profile),
|
||||||
onSuccess: () -> Unit
|
onSuccess: () -> Unit
|
||||||
) {
|
) {
|
||||||
_isLoading.value = true
|
_isLoading.value = true
|
||||||
@@ -146,7 +159,8 @@ class UserViewModel(
|
|||||||
_toastLiveData.postValue(it.message)
|
_toastLiveData.postValue(it.message)
|
||||||
} else {
|
} else {
|
||||||
_toastLiveData.postValue(
|
_toastLiveData.postValue(
|
||||||
"신고가 접수되었습니다."
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.character_comment_report_submitted)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -156,7 +170,10 @@ class UserViewModel(
|
|||||||
{
|
{
|
||||||
_isLoading.value = false
|
_isLoading.value = false
|
||||||
it.message?.let { message -> Logger.e(message) }
|
it.message?.let { message -> Logger.e(message) }
|
||||||
_toastLiveData.postValue("신고가 접수되었습니다.")
|
_toastLiveData.postValue(
|
||||||
|
SodaLiveApplicationHolder.get()
|
||||||
|
.getString(R.string.character_comment_report_submitted)
|
||||||
|
)
|
||||||
onSuccess()
|
onSuccess()
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -31,7 +31,7 @@
|
|||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:fontFamily="@font/pretendard_bold"
|
android:fontFamily="@font/pretendard_bold"
|
||||||
android:text="목소리로 만나는 새로운 세계"
|
android:text="@string/screen_splash_tagline"
|
||||||
android:textColor="#263238"
|
android:textColor="#263238"
|
||||||
android:textSize="23sp" />
|
android:textSize="23sp" />
|
||||||
|
|
||||||
@@ -48,7 +48,7 @@
|
|||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:fontFamily="@font/pretendard_bold"
|
android:fontFamily="@font/pretendard_bold"
|
||||||
android:text="소다라이브"
|
android:text="@string/screen_splash_brand_name"
|
||||||
android:textColor="@color/white"
|
android:textColor="@color/white"
|
||||||
android:textSize="21sp"
|
android:textSize="21sp"
|
||||||
app:layout_constraintBottom_toBottomOf="parent"
|
app:layout_constraintBottom_toBottomOf="parent"
|
||||||
|
|||||||
Reference in New Issue
Block a user