aboutsummaryrefslogtreecommitdiff
path: root/app/src/main/kotlin/com/pitchedapps/frost/utils/iab/IABDialogs.kt
diff options
context:
space:
mode:
Diffstat (limited to 'app/src/main/kotlin/com/pitchedapps/frost/utils/iab/IABDialogs.kt')
-rw-r--r--app/src/main/kotlin/com/pitchedapps/frost/utils/iab/IABDialogs.kt32
1 files changed, 31 insertions, 1 deletions
diff --git a/app/src/main/kotlin/com/pitchedapps/frost/utils/iab/IABDialogs.kt b/app/src/main/kotlin/com/pitchedapps/frost/utils/iab/IABDialogs.kt
index e855138f..f0a544f7 100644
--- a/app/src/main/kotlin/com/pitchedapps/frost/utils/iab/IABDialogs.kt
+++ b/app/src/main/kotlin/com/pitchedapps/frost/utils/iab/IABDialogs.kt
@@ -3,7 +3,10 @@ package com.pitchedapps.frost.utils.iab
import android.app.Activity
import ca.allanwang.kau.utils.restart
import ca.allanwang.kau.utils.startPlayStoreLink
+import ca.allanwang.kau.utils.string
+import com.pitchedapps.frost.MainActivity
import com.pitchedapps.frost.R
+import com.pitchedapps.frost.SettingsActivity
import com.pitchedapps.frost.utils.L
import com.pitchedapps.frost.utils.Prefs
import com.pitchedapps.frost.utils.materialDialogThemed
@@ -15,6 +18,14 @@ private fun playStoreLog(text: String) {
L.e(Throwable(text), "Play Store Exception")
}
+private fun Activity.playRestart() {
+ if (this is MainActivity) restart()
+ else if (this is SettingsActivity) {
+ setResult(MainActivity.REQUEST_RESTART)
+ finish()
+ }
+}
+
fun Activity.playStoreNoLongerPro() {
if (!Prefs.previouslyPro) return //never pro to begin with
Prefs.previouslyPro = false
@@ -24,7 +35,7 @@ fun Activity.playStoreNoLongerPro() {
content(R.string.play_store_not_pro)
positiveText(R.string.reload)
dismissListener {
- this@playStoreNoLongerPro.restart()
+ this@playStoreNoLongerPro.playRestart()
}
}
}
@@ -47,4 +58,23 @@ fun Activity.playStoreGenericError(text: String = "Store generic error") {
content(R.string.play_store_billing_error)
positiveText(R.string.kau_ok)
}
+}
+
+fun Activity.playStoreAlreadyPurchased(key: String) {
+ materialDialogThemed {
+ title(R.string.play_already_purchased)
+ content(String.format(string(R.string.play_already_purchased_content), key))
+ positiveText(R.string.reload)
+ dismissListener {
+ this@playStoreAlreadyPurchased.playRestart()
+ }
+ }
+}
+
+fun Activity.playStorePurchasedSuccessfully(key: String) {
+ materialDialogThemed {
+ title(R.string.play_thank_you)
+ content(R.string.play_purchased_pro)
+ positiveText(R.string.kau_ok)
+ }
} \ No newline at end of file