Skip to content

Commit

Permalink
Fix recipe of the day crash
Browse files Browse the repository at this point in the history
  • Loading branch information
lneugebauer committed Jul 1, 2023
1 parent 5272c31 commit 57f261c
Show file tree
Hide file tree
Showing 3 changed files with 8 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ import androidx.datastore.preferences.preferencesDataStore
import dagger.hilt.android.qualifiers.ApplicationContext
import de.lukasneugebauer.nextcloudcookbook.core.domain.model.NcAccount
import de.lukasneugebauer.nextcloudcookbook.core.domain.model.RecipeOfTheDay
import de.lukasneugebauer.nextcloudcookbook.core.util.Constants.DEFAULT_RECIPE_OF_THE_DAY_ID
import de.lukasneugebauer.nextcloudcookbook.settings.util.SettingsConstants.STAY_AWAKE_DEFAULT
import de.lukasneugebauer.nextcloudcookbook.settings.util.SettingsConstants.STAY_AWAKE_KEY
import kotlinx.coroutines.flow.catch
Expand Down Expand Up @@ -56,7 +57,7 @@ class PreferencesManager @Inject constructor(
val ncUsername = preferences[PreferencesKeys.NC_USERNAME] ?: ""
val ncToken = preferences[PreferencesKeys.NC_TOKEN] ?: ""
val ncUrl = preferences[PreferencesKeys.NC_URL] ?: ""
val recipeOfTheDayId = preferences[PreferencesKeys.RECIPE_OF_THE_DAY_ID] ?: 0
val recipeOfTheDayId = preferences[PreferencesKeys.RECIPE_OF_THE_DAY_ID] ?: DEFAULT_RECIPE_OF_THE_DAY_ID
val recipeOfTheDayUpdatedAt =
preferences[PreferencesKeys.RECIPE_OF_THE_DAY_UPDATED_AT] ?: 0

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import de.lukasneugebauer.nextcloudcookbook.BuildConfig
object Constants {
private const val API_ENDPOINT: String = "index.php/apps/cookbook/api"
private const val API_VERSION: String = "/v1"
const val DEFAULT_RECIPE_OF_THE_DAY_ID: Int = 0
const val FULL_PATH: String = API_ENDPOINT + API_VERSION
const val SHARED_PREFERENCES_KEY: String = BuildConfig.APPLICATION_ID + ".SHARED_PREFERENCES"
}
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import com.dropbox.android.external.store4.get
import de.lukasneugebauer.nextcloudcookbook.R
import de.lukasneugebauer.nextcloudcookbook.core.data.PreferencesManager
import de.lukasneugebauer.nextcloudcookbook.core.domain.model.RecipeOfTheDay
import de.lukasneugebauer.nextcloudcookbook.core.util.Constants.DEFAULT_RECIPE_OF_THE_DAY_ID
import de.lukasneugebauer.nextcloudcookbook.core.util.IoDispatcher
import de.lukasneugebauer.nextcloudcookbook.di.CategoriesStore
import de.lukasneugebauer.nextcloudcookbook.di.RecipePreviewsByCategoryStore
Expand Down Expand Up @@ -39,10 +40,12 @@ class GetHomeScreenDataUseCase @Inject constructor(
val homeScreenData = mutableListOf<HomeScreenDataResult>()
var recipeOfTheDay = preferencesManager.preferencesFlow.map { it.recipeOfTheDay }.first()

if (recipeOfTheDay.id == 0 || recipeOfTheDay.updatedAt.isBefore(currentDate)) {
if (recipeOfTheDay.id == DEFAULT_RECIPE_OF_THE_DAY_ID || recipeOfTheDay.updatedAt.isBefore(currentDate)) {
try {
val newRecipeOfTheDayId =
recipePreviewsStore.get(Unit).random().toRecipePreview().id
recipePreviewsStore.get(Unit).randomOrNull()?.toRecipePreview()?.id
?: DEFAULT_RECIPE_OF_THE_DAY_ID

recipeOfTheDay = RecipeOfTheDay(
id = newRecipeOfTheDayId,
updatedAt = LocalDateTime.now(),
Expand Down

0 comments on commit 57f261c

Please sign in to comment.