Skip to content

Commit

Permalink
fix: Analytics toggle not showing properly (WPB-10587) (#3393)
Browse files Browse the repository at this point in the history
Signed-off-by: alexandreferris <ferris.alexandre@gmail.com>
  • Loading branch information
alexandreferris authored Aug 28, 2024
1 parent ec5ef01 commit 72616dc
Showing 1 changed file with 13 additions and 13 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,7 @@ class PrivacySettingsViewModel @Inject constructor(

init {
viewModelScope.launch {
val shouldShowAnalyticsUsage = shouldShowAnalyticsUsage()
combine(
observeReadReceiptsEnabled(),
observeTypingIndicatorEnabled(),
Expand All @@ -73,6 +74,7 @@ class PrivacySettingsViewModel @Inject constructor(
) { readReceiptsEnabled, typingIndicatorEnabled, screenshotCensoringConfig, anonymousUsageDataEnabled ->
PrivacySettingsState(
isAnalyticsUsageEnabled = anonymousUsageDataEnabled,
shouldShowAnalyticsUsage = shouldShowAnalyticsUsage,
areReadReceiptsEnabled = readReceiptsEnabled,
isTypingIndicatorEnabled = typingIndicatorEnabled,
screenshotCensoringConfig = when (screenshotCensoringConfig) {
Expand All @@ -88,21 +90,19 @@ class PrivacySettingsViewModel @Inject constructor(
)
}.collect { state = it }
}
}

viewModelScope.launch {
// TODO(Analytics): To be changed with UseCase
val isAnalyticsConfigurationEnabled = analyticsEnabled is AnalyticsConfiguration.Enabled
val isValidBackend = when (val serverConfig = selfServerConfig()) {
is SelfServerConfigUseCase.Result.Success ->
serverConfig.serverLinks.links.api == ServerConfig.PRODUCTION.api
|| serverConfig.serverLinks.links.api == ServerConfig.STAGING.api
is SelfServerConfigUseCase.Result.Failure -> false
}

state = state.copy(
shouldShowAnalyticsUsage = isAnalyticsConfigurationEnabled && isValidBackend
)
private suspend fun shouldShowAnalyticsUsage(): Boolean {
// TODO(Analytics): To be changed with UseCase
val isAnalyticsConfigurationEnabled = analyticsEnabled is AnalyticsConfiguration.Enabled
val isValidBackend = when (val serverConfig = selfServerConfig()) {
is SelfServerConfigUseCase.Result.Success ->
serverConfig.serverLinks.links.api == ServerConfig.PRODUCTION.api
|| serverConfig.serverLinks.links.api == ServerConfig.STAGING.api
is SelfServerConfigUseCase.Result.Failure -> false
}

return isAnalyticsConfigurationEnabled && isValidBackend
}

fun setReadReceiptsState(isEnabled: Boolean) {
Expand Down

0 comments on commit 72616dc

Please sign in to comment.