diff --git a/README-COMPOSE.md b/README-COMPOSE.md
index bf7bbc0c..3c83a047 100644
--- a/README-COMPOSE.md
+++ b/README-COMPOSE.md
@@ -114,7 +114,8 @@ following table:
| setShowSGI | Boolean | setShowSGI(true) | Determines whether the integration will fetch SGI and use SGI flow for users to add user generated items to their wardrobe. | No. By default, ShowSGI is set to false |
| setAllowedLanguages | A list of `VirtusizeLanguage` | In Kotlin, setAllowedLanguages(mutableListOf(VirtusizeLanguage.EN, VirtusizeLanguage.JP))
In Java, setAllowedLanguages(Arrays.asList(VirtusizeLanguage.EN, VirtusizeLanguage.JP)) | The languages which the user can switch to using the Language Selector | No. By default, the integration allows all possible languages to be displayed, including English, Japanese and Korean. |
| setDetailsPanelCards | A list of `VirtusizeInfoCategory` | In Kotlin, setDetailsPanelCards(mutableListOf(VirtusizeInfoCategory.BRAND_SIZING, VirtusizeInfoCategory.GENERAL_FIT))
In Java, setDetailsPanelCards(Arrays.asList(VirtusizeInfoCategory.BRAND_SIZING, VirtusizeInfoCategory.GENERAL_FIT)) | The info categories which will be display in the Product Details tab. Possible categories are: `VirtusizeInfoCategory.MODEL_INFO`, `VirtusizeInfoCategory.GENERAL_FIT`, `VirtusizeInfoCategory.BRAND_SIZING` and `VirtusizeInfoCategory.MATERIAL` | No. By default, the integration displays all the possible info categories in the Product Details tab. |
-| setShowSNSButtons | Boolean | setShowSNSButtons(true) | Determines whether the integration will show the SNS buttons to the users | No. By default, the integration enables the SNS buttons |
+| setShowSNSButtons | Boolean | setShowSNSButtons(true) | Determines whether the integration will show the SNS buttons to the users | No. By default, the integration enables the SNS buttons |
+| setShowPrivacyPolicy | Boolean | setShowPrivacyPolicy(true) | Controls whether the privacy policy shows to users | No. By default, the privacy policy is shown |
```kotlin
override fun onCreate() {
@@ -138,6 +139,8 @@ override fun onCreate() {
.setDetailsPanelCards(setOf(VirtusizeInfoCategory.BRAND_SIZING, VirtusizeInfoCategory.GENERAL_FIT))
// By default, Virtusize enables the SNS buttons
.setShowSNSButtons(true)
+ //By default, Virtusize shows Privacy Policy
+ .setShowPrivacyPolicy(true)
.build()
}
```
diff --git a/README-JP.md b/README-JP.md
index 4c5c9976..de9af0f9 100644
--- a/README-JP.md
+++ b/README-JP.md
@@ -113,7 +113,8 @@ Proguardをお使いの場合、Proguardのルールファイルに下記のル
| setShowSGI | Boolean | setShowSGI(true) | ユーザーが生成したアイテムをワードローブに追加するために、SGIを取得してSGIフローを使用するかどうかを決定します。 | 特になし。デフォルトではShowSGIはfalseに設定されています。 |
| setAllowedLanguages | `VirtusizeLanguage`列挙のリスト | In Kotlin, setAllowedLanguages(mutableListOf(VirtusizeLanguage.EN, VirtusizeLanguage.JP))
In Java, setAllowedLanguages(Arrays.asList(VirtusizeLanguage.EN, VirtusizeLanguage.JP)) | ユーザーが言語選択ボタンより選択できる言語 | 特になし。デフォルトでは、英語、日本語、韓国語など、表示可能なすべての言語が表示されるようになっています。 |
| setDetailsPanelCards | `VirtusizeInfoCategory`列挙のリスト | In Kotlin, setDetailsPanelCards(mutableListOf(VirtusizeInfoCategory.BRAND_SIZING, VirtusizeInfoCategory.GENERAL_FIT))
In Java, setDetailsPanelCards(Arrays.asList(VirtusizeInfoCategory.BRAND_SIZING, VirtusizeInfoCategory.GENERAL_FIT)) | 商品詳細タブに表示する情報のカテゴリ。表示可能カテゴリは以下:`VirtusizeInfoCategory.MODELINFO`, `VirtusizeInfoCategory.GENERALFIT`, `VirtusizeInfoCategory.BRANDSIZING` および `VirtusizeInfoCategory.MATERIAL` | 特になし。デフォルトでは、商品詳細タブに表示可能なすべての情報カテゴリが表示されます。 |
-| setShowSNSButtons | Boolean | setShowSNSButtons(true) | Determines whether the integration will show the SNS buttons to the users | No. By default, the integration enables the SNS buttons |
+| setShowSNSButtons | Boolean | setShowSNSButtons(true) | Determines whether the integration will show the SNS buttons to the users | No. By default, the integration enables the SNS buttons |
+| setShowPrivacyPolicy | Boolean | setShowPrivacyPolicy(true) | Controls whether the privacy policy shows to users | No. By default, the privacy policy is shown |
```kotlin
override fun onCreate() {
@@ -137,6 +138,8 @@ override fun onCreate() {
.setDetailsPanelCards(setOf(VirtusizeInfoCategory.BRAND_SIZING, VirtusizeInfoCategory.GENERAL_FIT))
// デフォルトでは、SNS ボタンが表示されます
.setShowSNSButtons(true)
+ //デフォルトでは、Virtusizeはプライバシーポリシーを表示します
+ .setShowPrivacyPolicy(true)
.build()
}
```
diff --git a/README.md b/README.md
index a3c296a9..9739e9c7 100644
--- a/README.md
+++ b/README.md
@@ -112,17 +112,18 @@ following table:
**VirtusizeBuilder**
-| Method | Argument Type | Example | Description | Requirement |
-|----------------------|-----------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------|
-| setApiKey | String | setApiKey("api_key") | A unique API key is provided to each Virtusize client. | Yes |
-| setUserId | String | setUserId("123") | Passed from the client if the user is logged into the client's app. | Yes, if the Order API is used. |
-| setEnv | VirtusizeEnvironment | setEnv(VirtusizeEnvironment.STAGING) | The environment is the region you are running the integration from, either `VirtusizeEnvironment.STAGING`, `VirtusizeEnvironment.GLOBAL`, `VirtusizeEnvironment.JAPAN` or `VirtusizeEnvironment.KOREA`. | No. By default, the Virtusize environment will be set to `VirtusizeEnvironment.GLOBAL`. |
-| setLanguage | VirtusizeLanguage | setLanguage(VirtusizeLanguage.EN) | Sets the initial language that the integration will load in. The possible values are `VirtusizeLanguage.EN`, `VirtusizeLanguage.JP` and `VirtusizeLanguage.KR` | No. By default, the initial language will be set based on the Virtusize environment. |
-| setShowSGI | Boolean | setShowSGI(true) | Determines whether the integration will fetch SGI and use SGI flow for users to add user generated items to their wardrobe. | No. By default, ShowSGI is set to false |
-| setAllowedLanguages | A list of `VirtusizeLanguage` | In Kotlin, setAllowedLanguages(mutableListOf(VirtusizeLanguage.EN, VirtusizeLanguage.JP))
In Java, setAllowedLanguages(Arrays.asList(VirtusizeLanguage.EN, VirtusizeLanguage.JP)) | The languages which the user can switch to using the Language Selector | No. By default, the integration allows all possible languages to be displayed, including English, Japanese and Korean. |
-| setDetailsPanelCards | A list of `VirtusizeInfoCategory` | In Kotlin, setDetailsPanelCards(mutableListOf(VirtusizeInfoCategory.BRAND_SIZING, VirtusizeInfoCategory.GENERAL_FIT))
In Java, setDetailsPanelCards(Arrays.asList(VirtusizeInfoCategory.BRAND_SIZING, VirtusizeInfoCategory.GENERAL_FIT)) | The info categories which will be display in the Product Details tab. Possible categories are: `VirtusizeInfoCategory.MODEL_INFO`, `VirtusizeInfoCategory.GENERAL_FIT`, `VirtusizeInfoCategory.BRAND_SIZING` and `VirtusizeInfoCategory.MATERIAL` | No. By default, the integration displays all the possible info categories in the Product Details tab. |
-| setShowSNSButtons | Boolean | setShowSNSButtons(true) | Determines whether the integration will show the SNS buttons to the users | No. By default, the integration enables the SNS buttons |
-| setBranch | String | setBranch("branch-name") | Targets specific environment branch | No. By default, production environment is targeted. `staging` targets staging environment. `` targets a specific branch |
+| Method | Argument Type | Example | Description | Requirement |
+|----------------------|-----------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------|
+| setApiKey | String | setApiKey("api_key") | A unique API key is provided to each Virtusize client. | Yes |
+| setUserId | String | setUserId("123") | Passed from the client if the user is logged into the client's app. | Yes, if the Order API is used. |
+| setEnv | VirtusizeEnvironment | setEnv(VirtusizeEnvironment.STAGING) | The environment is the region you are running the integration from, either `VirtusizeEnvironment.STAGING`, `VirtusizeEnvironment.GLOBAL`, `VirtusizeEnvironment.JAPAN` or `VirtusizeEnvironment.KOREA`. | No. By default, the Virtusize environment will be set to `VirtusizeEnvironment.GLOBAL`. |
+| setLanguage | VirtusizeLanguage | setLanguage(VirtusizeLanguage.EN) | Sets the initial language that the integration will load in. The possible values are `VirtusizeLanguage.EN`, `VirtusizeLanguage.JP` and `VirtusizeLanguage.KR` | No. By default, the initial language will be set based on the Virtusize environment. |
+| setShowSGI | Boolean | setShowSGI(true) | Determines whether the integration will fetch SGI and use SGI flow for users to add user generated items to their wardrobe. | No. By default, ShowSGI is set to false |
+| setAllowedLanguages | A list of `VirtusizeLanguage` | In Kotlin, setAllowedLanguages(mutableListOf(VirtusizeLanguage.EN, VirtusizeLanguage.JP))
In Java, setAllowedLanguages(Arrays.asList(VirtusizeLanguage.EN, VirtusizeLanguage.JP)) | The languages which the user can switch to using the Language Selector | No. By default, the integration allows all possible languages to be displayed, including English, Japanese and Korean. |
+| setDetailsPanelCards | A list of `VirtusizeInfoCategory` | In Kotlin, setDetailsPanelCards(mutableListOf(VirtusizeInfoCategory.BRAND_SIZING, VirtusizeInfoCategory.GENERAL_FIT))
In Java, setDetailsPanelCards(Arrays.asList(VirtusizeInfoCategory.BRAND_SIZING, VirtusizeInfoCategory.GENERAL_FIT)) | The info categories which will be display in the Product Details tab. Possible categories are: `VirtusizeInfoCategory.MODEL_INFO`, `VirtusizeInfoCategory.GENERAL_FIT`, `VirtusizeInfoCategory.BRAND_SIZING` and `VirtusizeInfoCategory.MATERIAL` | No. By default, the integration displays all the possible info categories in the Product Details tab. |
+| setShowSNSButtons | Boolean | setShowSNSButtons(true) | Determines whether the integration will show the SNS buttons to the users | No. By default, the integration enables the SNS buttons |
+| setBranch | String | setBranch("branch-name") | Targets specific environment branch | No. By default, production environment is targeted. `staging` targets staging environment. `` targets a specific branch |
+| setShowPrivacyPolicy | Boolean | setShowPrivacyPolicy(true) | Controls whether the privacy policy shows to users | No. By default, the privacy policy is shown |
- Kotlin
@@ -150,6 +151,8 @@ following table:
.setShowSNSButtons(true)
// Target the specific branch environment by its name
.setBranch("branch-name")
+ //By default, Virtusize shows Privacy Policy
+ .setShowPrivacyPolicy(true)
.build()
}
```
@@ -182,7 +185,9 @@ following table:
// By default, Virtusize enables the SNS buttons
.setShowSNSButtons(true)
// Target the specific environment branch by its name
- .setBranch("branch-name")
+ .setBranch("branch-name")
+ //By default, Virtusize shows Privacy Policy
+ .setShowPrivacyPolicy(true)
.build();
}
```
diff --git a/sampleAppKotlin/src/main/java/com/virtusize/sampleappkotlin/App.kt b/sampleAppKotlin/src/main/java/com/virtusize/sampleappkotlin/App.kt
index f6dac1a8..5013aa30 100644
--- a/sampleAppKotlin/src/main/java/com/virtusize/sampleappkotlin/App.kt
+++ b/sampleAppKotlin/src/main/java/com/virtusize/sampleappkotlin/App.kt
@@ -30,6 +30,8 @@ class App : Application() {
.setShowSNSButtons(true)
// By default, branch is empty and `production` is used
// .setBranch("branch-name")
+ // By default, Virtusize shows Privacy Policy
+ .setShowPrivacyPolicy(true)
.build()
}
}
diff --git a/sampleappcompose/src/main/java/com/virtusize/sampleapp/compose/VirtusizeSampleApplication.kt b/sampleappcompose/src/main/java/com/virtusize/sampleapp/compose/VirtusizeSampleApplication.kt
index 55bab09a..de5a1e58 100644
--- a/sampleappcompose/src/main/java/com/virtusize/sampleapp/compose/VirtusizeSampleApplication.kt
+++ b/sampleappcompose/src/main/java/com/virtusize/sampleapp/compose/VirtusizeSampleApplication.kt
@@ -27,6 +27,8 @@ internal class VirtusizeSampleApplication : Application() {
.setDetailsPanelCards(setOf(VirtusizeInfoCategory.BRAND_SIZING, VirtusizeInfoCategory.GENERAL_FIT))
// By default, Virtusize enables the SNS buttons
.setShowSNSButtons(true)
+ // By default, Virtusize shows Privacy Policy
+ .setShowPrivacyPolicy(true)
.build()
}
}
diff --git a/sampleappjava/src/main/java/com/virtusize/sampleappjava/App.java b/sampleappjava/src/main/java/com/virtusize/sampleappjava/App.java
index 7eca7b38..36245dcf 100644
--- a/sampleappjava/src/main/java/com/virtusize/sampleappjava/App.java
+++ b/sampleappjava/src/main/java/com/virtusize/sampleappjava/App.java
@@ -37,6 +37,8 @@ public void onCreate() {
.setDetailsPanelCards(Set.of(VirtusizeInfoCategory.BRAND_SIZING, VirtusizeInfoCategory.GENERAL_FIT))
// By default, Virtusize enables the SNS buttons
.setShowSNSButtons(true)
+ // By default, Virtusize shows Privacy Policy
+ .setShowPrivacyPolicy(true)
.build();
}
}
\ No newline at end of file
diff --git a/virtusize/src/main/java/com/virtusize/android/VirtusizeBuilder.kt b/virtusize/src/main/java/com/virtusize/android/VirtusizeBuilder.kt
index 5e6b9901..98222ad1 100644
--- a/virtusize/src/main/java/com/virtusize/android/VirtusizeBuilder.kt
+++ b/virtusize/src/main/java/com/virtusize/android/VirtusizeBuilder.kt
@@ -23,6 +23,7 @@ import com.virtusize.android.data.local.virtusizeRegion
* @param detailsPanelCards the info categories that will display in the Product Details tab
* @param showSNSButtons the Boolean value to determine whether the Virtusize web app will display the SNS buttons
* @param branch the branch name of targeted Virtusize environment when specified
+ * @param showPrivacyPolicy the Boolean value to determine whether to show or hide the privacy policy
*/
class VirtusizeBuilder {
private var userId: String? = null
@@ -37,6 +38,7 @@ class VirtusizeBuilder {
private var detailsPanelCards: Set = VirtusizeInfoCategory.entries.toMutableSet()
private var showSNSButtons: Boolean = true
private var branch: String? = null
+ private var showPrivacyPolicy: Boolean = true
/**
* This method is used to add the application context to the Virtusize builder
@@ -148,6 +150,17 @@ class VirtusizeBuilder {
return this
}
+ /**
+ * Sets up whether the Virtusize will show the Privacy Policy
+ * By default value set to TRUE
+ * @param showPrivacyPolicy the Boolean value
+ * @return [VirtusizeBuilder]
+ */
+ fun setShowPrivacyPolicy(showPrivacyPolicy: Boolean): VirtusizeBuilder {
+ this.showPrivacyPolicy = showPrivacyPolicy
+ return this
+ }
+
/**
* Builds the Virtusize object from the passed data and returns the Virtusize object
* @return Virtusize
@@ -173,6 +186,7 @@ class VirtusizeBuilder {
detailsPanelCards = detailsPanelCards,
showSNSButtons = showSNSButtons,
branch = branch,
+ showPrivacyPolicy = showPrivacyPolicy,
)
return Virtusize.init(context = context!!, params = params)
}
diff --git a/virtusize/src/main/java/com/virtusize/android/data/local/VirtusizeParams.kt b/virtusize/src/main/java/com/virtusize/android/data/local/VirtusizeParams.kt
index 02e64205..7e4a1591 100644
--- a/virtusize/src/main/java/com/virtusize/android/data/local/VirtusizeParams.kt
+++ b/virtusize/src/main/java/com/virtusize/android/data/local/VirtusizeParams.kt
@@ -16,6 +16,7 @@ import com.virtusize.android.SharedPreferencesHelper
* @param detailsPanelCards the info categories that will be displayed in the Product Details tab
* @param showSNSButtons the Boolean value to determine whether the Virtusize web app will display the SNS buttons
* @param branch the branch name of targeted Virtusize testing environment when specified
+ * @param showPrivacyPolicy the Boolean value to determine whether to show or hide the privacy policy
*/
data class VirtusizeParams(
internal val context: Context,
@@ -29,6 +30,7 @@ data class VirtusizeParams(
private val detailsPanelCards: Set,
internal val showSNSButtons: Boolean,
internal val branch: String?,
+ internal val showPrivacyPolicy: Boolean,
) {
/**
* Returns the virtusize parameter string to be passed to the JavaScript function vsParamsFromSDK
diff --git a/virtusize/src/main/java/com/virtusize/android/flutter/VirtusizeFlutterBuilder.kt b/virtusize/src/main/java/com/virtusize/android/flutter/VirtusizeFlutterBuilder.kt
index 750df146..ce570e84 100644
--- a/virtusize/src/main/java/com/virtusize/android/flutter/VirtusizeFlutterBuilder.kt
+++ b/virtusize/src/main/java/com/virtusize/android/flutter/VirtusizeFlutterBuilder.kt
@@ -23,6 +23,7 @@ import com.virtusize.android.data.local.virtusizeRegion
* @param detailsPanelCards the info categories that will display in the Product Details tab
* @param showSNSButtons the Boolean value to determine whether the Virtusize web app will display the SNS buttons
* @param branch the branch name of targeted Virtusize environment when specified
+ * @param showPrivacyPolicy the Boolean value to determine whether to show or hide the privacy policy
*/
class VirtusizeFlutterBuilder {
private var userId: String? = null
@@ -38,6 +39,7 @@ class VirtusizeFlutterBuilder {
private var showSNSButtons: Boolean = true
private var branch: String? = null
private var virtusizeFlutterPresenter: VirtusizeFlutterPresenter? = null
+ private var showPrivacyPolicy: Boolean = true
/**
* This method is used to add the application context to the Virtusize builder
@@ -160,6 +162,17 @@ class VirtusizeFlutterBuilder {
return this
}
+ /**
+ * Sets up whether the Virtusize will show the Privacy Policy
+ * By default value set to TRUE
+ * @param showPrivacyPolicy the Boolean value
+ * @return [VirtusizeFlutterBuilder]
+ */
+ fun setShowPrivacyPolicy(showPrivacyPolicy: Boolean): VirtusizeFlutterBuilder {
+ this.showPrivacyPolicy = showPrivacyPolicy
+ return this
+ }
+
/**
* Builds the VirtusizeFlutter object from the passed data and returns the VirtusizeFlutter object
* @return VirtusizeFlutter
@@ -185,6 +198,7 @@ class VirtusizeFlutterBuilder {
detailsPanelCards = detailsPanelCards,
showSNSButtons = showSNSButtons,
branch = branch,
+ showPrivacyPolicy = showPrivacyPolicy,
)
return VirtusizeFlutter.init(
context = context!!,
diff --git a/virtusize/src/main/java/com/virtusize/android/ui/VirtusizeInPageStandard.kt b/virtusize/src/main/java/com/virtusize/android/ui/VirtusizeInPageStandard.kt
index 8e281e32..935b5161 100644
--- a/virtusize/src/main/java/com/virtusize/android/ui/VirtusizeInPageStandard.kt
+++ b/virtusize/src/main/java/com/virtusize/android/ui/VirtusizeInPageStandard.kt
@@ -216,6 +216,7 @@ class VirtusizeInPageStandard
}
})
}
+ binding.privacyPolicyText.visibility = showPrivacyPolicy()
}
/**
@@ -272,7 +273,7 @@ class VirtusizeInPageStandard
binding.inpageUserProductImageView.visibility =
if (userBestFitProduct == null) View.GONE else View.VISIBLE
binding.vsSignatureImageView.visibility = if (loading) View.INVISIBLE else View.VISIBLE
- binding.privacyPolicyText.visibility = if (loading) View.INVISIBLE else View.VISIBLE
+ binding.privacyPolicyText.visibility = if (loading) View.INVISIBLE else showPrivacyPolicy()
binding.inpageVSIconImageView.visibility = if (loading) View.VISIBLE else View.GONE
binding.inpageLoadingText.visibility = if (loading) View.VISIBLE else View.GONE
if (loading) {
@@ -739,4 +740,6 @@ class VirtusizeInPageStandard
layoutParams.setMargins(left, top, right, bottom)
binding.inpageFooter.layoutParams = layoutParams
}
+
+ private fun showPrivacyPolicy() = if (virtusizeParams.showPrivacyPolicy) View.VISIBLE else View.GONE
}