diff --git a/presentation/src/main/java/com/nextroom/nextroom/presentation/ui/manage/hint/HintManageFragment.kt b/presentation/src/main/java/com/nextroom/nextroom/presentation/ui/manage/hint/HintManageFragment.kt index 8cac3056..aa9b3317 100644 --- a/presentation/src/main/java/com/nextroom/nextroom/presentation/ui/manage/hint/HintManageFragment.kt +++ b/presentation/src/main/java/com/nextroom/nextroom/presentation/ui/manage/hint/HintManageFragment.kt @@ -72,6 +72,7 @@ class HintManageFragment : ComposeBaseViewModelFragment() { is HintManageEvent.RequestDeleteHint -> showDeleteConfirmDialog(event.hint) is HintManageEvent.HintSaved -> snackbar(R.string.hint_manage_save_success) is HintManageEvent.HintDeleted -> snackbar(R.string.hint_manage_delete_success) + is HintManageEvent.SaveBlockedDueToImages -> toast(R.string.hint_save_blocked_due_to_images) is HintManageEvent.ImageUploadFailed -> { when (event.reason) { HintManageEvent.ImageUploadFailed.Reason.INVALID_FORMAT -> R.string.image_invalid_format diff --git a/presentation/src/main/java/com/nextroom/nextroom/presentation/ui/manage/hint/HintManageState.kt b/presentation/src/main/java/com/nextroom/nextroom/presentation/ui/manage/hint/HintManageState.kt index db7efd75..9bed3591 100644 --- a/presentation/src/main/java/com/nextroom/nextroom/presentation/ui/manage/hint/HintManageState.kt +++ b/presentation/src/main/java/com/nextroom/nextroom/presentation/ui/manage/hint/HintManageState.kt @@ -57,6 +57,7 @@ sealed interface HintManageEvent { data class RequestDeleteHint(val hint: Hint) : HintManageEvent data object HintSaved : HintManageEvent data object HintDeleted : HintManageEvent + data object SaveBlockedDueToImages : HintManageEvent data class ImageUploadFailed(val reason: Reason) : HintManageEvent { enum class Reason { INVALID_FORMAT, diff --git a/presentation/src/main/java/com/nextroom/nextroom/presentation/ui/manage/hint/HintManageViewModel.kt b/presentation/src/main/java/com/nextroom/nextroom/presentation/ui/manage/hint/HintManageViewModel.kt index 2d50fbea..fad89ea9 100644 --- a/presentation/src/main/java/com/nextroom/nextroom/presentation/ui/manage/hint/HintManageViewModel.kt +++ b/presentation/src/main/java/com/nextroom/nextroom/presentation/ui/manage/hint/HintManageViewModel.kt @@ -196,6 +196,15 @@ class HintManageViewModel @Inject constructor( fun saveHint() { val editData = _editData.value + if (editData.hintId != null && + adminRepository.cachedSubscribeStatus != SubscribeStatus.Subscribed && + (editData.hintImageUrls.isNotEmpty() || editData.answerImageUrls.isNotEmpty()) + ) { + baseViewModelScope.launch { + _uiEvent.emit(HintManageEvent.SaveBlockedDueToImages) + } + return + } _sheetType.value = HintSheetType.None baseViewModelScope.launch { try { diff --git a/presentation/src/main/res/values/strings.xml b/presentation/src/main/res/values/strings.xml index 28382227..185d77e1 100644 --- a/presentation/src/main/res/values/strings.xml +++ b/presentation/src/main/res/values/strings.xml @@ -296,4 +296,5 @@ 이미지 크기는 10MB 이하여야 합니다 지원하지 않는 이미지 형식입니다 구독이 필요한 기능입니다. + 구독이 만료되었습니다. 이미지를 삭제한 후 저장해 주세요. \ No newline at end of file