diff --git a/WooCommerce/src/main/kotlin/com/woocommerce/android/AppUrls.kt b/WooCommerce/src/main/kotlin/com/woocommerce/android/AppUrls.kt index 8891c69df6e7..60fc6b559376 100644 --- a/WooCommerce/src/main/kotlin/com/woocommerce/android/AppUrls.kt +++ b/WooCommerce/src/main/kotlin/com/woocommerce/android/AppUrls.kt @@ -35,6 +35,8 @@ object AppUrls { const val CROWDSIGNAL_MAIN_SURVEY = "https://automattic.survey.fm/woo-app-general-feedback-user-survey" const val CROWDSIGNAL_PRODUCT_SURVEY = "https://automattic.survey.fm/woo-app-feature-feedback-products" + const val CROWDSIGNAL_WOO_POS_SURVEY_POTENTIAL_USER = "https://automattic.survey.fm/woo-pos-potential-user-survey" + const val CROWDSIGNAL_WOO_POS_SURVEY_CURRENT_USER = "https://automattic.survey.fm/woo-pos-current-user-survey" const val CROWDSIGNAL_ANALYTICS_HUB_SURVEY = "https://automattic.survey.fm/woo-app-analytics-hub-production" diff --git a/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/main/MainActivity.kt b/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/main/MainActivity.kt index 7b1761f9636e..c97a3194dfc9 100644 --- a/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/main/MainActivity.kt +++ b/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/main/MainActivity.kt @@ -877,6 +877,8 @@ class MainActivity : // Propagate it to the DashboardBlazeCard event.isHandled = false } + + is MainActivityViewModel.ViewSurvey -> showSurvey(event.surveyUrl) } } @@ -1286,6 +1288,15 @@ class MainActivity : } } + private fun showSurvey(surveyUrl: String) { + NavGraphMainDirections.actionGlobalFeedbackSurveyFragment( + surveyType = SurveyType.MAIN, + customUrl = surveyUrl + ).apply { + navController.navigateSafely(this) + } + } + override fun updateOfflineStatusBar(isConnected: Boolean) { if (isConnected) binding.offlineBar.hide() else binding.offlineBar.show() } diff --git a/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/main/MainActivityViewModel.kt b/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/main/MainActivityViewModel.kt index e52ee91e2c02..685f21baa09a 100644 --- a/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/main/MainActivityViewModel.kt +++ b/WooCommerce/src/main/kotlin/com/woocommerce/android/ui/main/MainActivityViewModel.kt @@ -6,6 +6,7 @@ import android.os.Build.VERSION_CODES import androidx.lifecycle.SavedStateHandle import androidx.lifecycle.asLiveData import com.woocommerce.android.AppPrefs +import com.woocommerce.android.AppUrls import com.woocommerce.android.R import com.woocommerce.android.analytics.AnalyticsEvent import com.woocommerce.android.analytics.AnalyticsEvent.REVIEW_OPEN @@ -289,8 +290,13 @@ class MainActivityViewModel @Inject constructor( BLAZE_NO_CAMPAIGN_REMINDER, BLAZE_ABANDONED_CAMPAIGN_REMINDER -> triggerEvent(LaunchBlazeCampaignCreation) - WOO_POS_SURVEY_POTENTIAL_USER_REMINDER, - WOO_POS_SURVEY_CURRENT_USER_REMINDER -> error("POS Survey notifications are not implemented yet") + WOO_POS_SURVEY_POTENTIAL_USER_REMINDER -> triggerEvent( + ViewSurvey(AppUrls.CROWDSIGNAL_WOO_POS_SURVEY_POTENTIAL_USER) + ) + + WOO_POS_SURVEY_CURRENT_USER_REMINDER -> triggerEvent( + ViewSurvey(AppUrls.CROWDSIGNAL_WOO_POS_SURVEY_CURRENT_USER) + ) } } } @@ -338,6 +344,7 @@ class MainActivityViewModel @Inject constructor( data class ViewUrlInWebView( val url: String, ) : Event() + data class ViewSurvey(val surveyUrl: String) : Event() object ShortcutOpenPayments : Event() object ShortcutOpenOrderCreation : Event() diff --git a/WooCommerce/src/main/res/values/strings.xml b/WooCommerce/src/main/res/values/strings.xml index 7360326d212b..ec9f90c24519 100644 --- a/WooCommerce/src/main/res/values/strings.xml +++ b/WooCommerce/src/main/res/values/strings.xml @@ -3212,9 +3212,9 @@ Thinking about boosting your sales? Get your products seen by millions with Blaze and boost your sales Thinking about in-person sales? - Help us build tools you\'d actually use. 2-minute survey to build tools you\'ll love. + Take a quick 2-minute survey to help us shape features you\'ll love. How\'s POS working for you? - Share your experience in 2 minutes and help us improve. + Share your experience in a quick 2-minute survey and help us improve.