aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAllan Wang <me@allanwang.ca>2017-10-07 01:51:47 -0400
committerAllan Wang <me@allanwang.ca>2017-10-07 01:51:47 -0400
commit6bca83c464337c37ebcbabe47f8a8e2e44dd4794 (patch)
tree3d583fcb9cda549b7bd5383e88fe85cc3eeae55c
parent795572dee04f03de70a013907e886d32df747fa0 (diff)
downloadfrost-6bca83c464337c37ebcbabe47f8a8e2e44dd4794.tar.gz
frost-6bca83c464337c37ebcbabe47f8a8e2e44dd4794.tar.bz2
frost-6bca83c464337c37ebcbabe47f8a8e2e44dd4794.zip
Create email sender basev1.5.6
-rw-r--r--app/src/main/kotlin/com/pitchedapps/frost/activities/ImageActivity.kt3
-rw-r--r--app/src/main/kotlin/com/pitchedapps/frost/enums/Support.kt8
-rw-r--r--app/src/main/kotlin/com/pitchedapps/frost/settings/Debug.kt8
-rw-r--r--app/src/main/kotlin/com/pitchedapps/frost/utils/Utils.kt14
-rw-r--r--app/src/main/kotlin/com/pitchedapps/frost/utils/WebContextMenu.kt6
5 files changed, 22 insertions, 17 deletions
diff --git a/app/src/main/kotlin/com/pitchedapps/frost/activities/ImageActivity.kt b/app/src/main/kotlin/com/pitchedapps/frost/activities/ImageActivity.kt
index 1a253fa8..e32a2ea9 100644
--- a/app/src/main/kotlin/com/pitchedapps/frost/activities/ImageActivity.kt
+++ b/app/src/main/kotlin/com/pitchedapps/frost/activities/ImageActivity.kt
@@ -13,7 +13,6 @@ import android.view.View
import android.view.ViewGroup
import android.widget.ProgressBar
import android.widget.TextView
-import ca.allanwang.kau.email.sendEmail
import ca.allanwang.kau.internal.KauBaseActivity
import ca.allanwang.kau.mediapicker.scanMedia
import ca.allanwang.kau.permissions.PERMISSION_WRITE_EXTERNAL_STORAGE
@@ -214,7 +213,7 @@ internal enum class FabStates(val iicon: IIcon, val iconColor: Int = Prefs.iconC
onPositive { _, _ ->
if (activity.errorRef != null)
L.e(activity.errorRef, "ImageActivity error report")
- activity.sendEmail(R.string.dev_email, R.string.debug_image_link_subject) {
+ activity.sendFrostEmail(R.string.debug_image_link_subject) {
addItem("Url", activity.imageUrl)
addItem("Message", activity.errorRef?.message ?: "Null")
}
diff --git a/app/src/main/kotlin/com/pitchedapps/frost/enums/Support.kt b/app/src/main/kotlin/com/pitchedapps/frost/enums/Support.kt
index a624e429..ef3c88b6 100644
--- a/app/src/main/kotlin/com/pitchedapps/frost/enums/Support.kt
+++ b/app/src/main/kotlin/com/pitchedapps/frost/enums/Support.kt
@@ -2,11 +2,9 @@ package com.pitchedapps.frost.enums
import android.content.Context
import android.support.annotation.StringRes
-import ca.allanwang.kau.email.sendEmail
import ca.allanwang.kau.utils.string
import com.pitchedapps.frost.R
-import com.pitchedapps.frost.utils.Prefs
-import com.pitchedapps.frost.utils.iab.IS_FROST_PRO
+import com.pitchedapps.frost.utils.sendFrostEmail
/**
* Created by Allan Wang on 2017-06-29.
@@ -19,9 +17,7 @@ enum class Support(@StringRes val title: Int) {
fun sendEmail(context: Context) {
with(context) {
- this.sendEmail(string(R.string.dev_email), "${string(R.string.frost_prefix)} ${string(title)}") {
- val proTag = if (IS_FROST_PRO) "TY" else "FP"
- addItem("Random Frost ID", "${Prefs.frostId}-$proTag")
+ this.sendFrostEmail("${string(R.string.frost_prefix)} ${string(title)}") {
}
}
}
diff --git a/app/src/main/kotlin/com/pitchedapps/frost/settings/Debug.kt b/app/src/main/kotlin/com/pitchedapps/frost/settings/Debug.kt
index 3375a444..5784e2a8 100644
--- a/app/src/main/kotlin/com/pitchedapps/frost/settings/Debug.kt
+++ b/app/src/main/kotlin/com/pitchedapps/frost/settings/Debug.kt
@@ -2,7 +2,6 @@ package com.pitchedapps.frost.settings
import android.content.Context
import android.support.annotation.UiThread
-import ca.allanwang.kau.email.sendEmail
import ca.allanwang.kau.kpref.activity.KPrefAdapterBuilder
import ca.allanwang.kau.utils.string
import com.afollestad.materialdialogs.MaterialDialog
@@ -18,6 +17,7 @@ import com.pitchedapps.frost.injectors.JsAssets
import com.pitchedapps.frost.utils.L
import com.pitchedapps.frost.utils.cleanHtml
import com.pitchedapps.frost.utils.materialDialogThemed
+import com.pitchedapps.frost.utils.sendFrostEmail
import com.pitchedapps.frost.web.launchHeadlessHtmlExtractor
import com.pitchedapps.frost.web.query
import io.reactivex.disposables.Disposable
@@ -95,8 +95,7 @@ private enum class Debugger(val data: FbItem, val injector: InjectorContract?, v
var disposable: Disposable? = null
setOnCancelListener { disposable?.dispose() }
context.launchHeadlessHtmlExtractor(data.url, injector) {
- disposable = it.subscribe {
- (html, errorRes) ->
+ disposable = it.subscribe { (html, errorRes) ->
debugAsync {
if (errorRes == -1) {
L.i("Debug report successful", html)
@@ -143,8 +142,7 @@ private enum class Debugger(val data: FbItem, val injector: InjectorContract?, v
uiThread {
val c = it.context
it.dismiss()
- c.sendEmail(c.string(R.string.dev_email),
- "${c.string(R.string.debug_report_email_title)} $name") {
+ c.sendFrostEmail("${c.string(R.string.debug_report_email_title)} $name") {
addItem("Query List", query.contentToString())
footer = cleanHtml
}
diff --git a/app/src/main/kotlin/com/pitchedapps/frost/utils/Utils.kt b/app/src/main/kotlin/com/pitchedapps/frost/utils/Utils.kt
index aeddd20c..5726409c 100644
--- a/app/src/main/kotlin/com/pitchedapps/frost/utils/Utils.kt
+++ b/app/src/main/kotlin/com/pitchedapps/frost/utils/Utils.kt
@@ -13,6 +13,8 @@ import android.support.v7.widget.Toolbar
import android.view.View
import android.widget.FrameLayout
import android.widget.TextView
+import ca.allanwang.kau.email.EmailBuilder
+import ca.allanwang.kau.email.sendEmail
import ca.allanwang.kau.mediapicker.createMediaFile
import ca.allanwang.kau.mediapicker.createPrivateMediaFile
import ca.allanwang.kau.utils.*
@@ -31,6 +33,7 @@ import com.pitchedapps.frost.facebook.FACEBOOK_COM
import com.pitchedapps.frost.facebook.FbCookie
import com.pitchedapps.frost.facebook.FbItem
import com.pitchedapps.frost.facebook.formattedFbUrl
+import com.pitchedapps.frost.utils.iab.IS_FROST_PRO
import java.io.IOException
import java.util.*
@@ -206,4 +209,15 @@ fun Context.frostChangelog() = showChangelog(R.xml.frost_changelog, Prefs.textCo
}
}
+inline fun Context.sendFrostEmail(@StringRes subjectId: Int, crossinline builder: EmailBuilder.() -> Unit)
+ = sendFrostEmail(string(subjectId), builder)
+
+inline fun Context.sendFrostEmail(subjectId: String, crossinline builder: EmailBuilder.() -> Unit)
+ = sendEmail(string(R.string.dev_email), subjectId) {
+ builder()
+ val proTag = if (IS_FROST_PRO) "TY" else "FP"
+ addItem("Random Frost ID", "${Prefs.frostId}-$proTag")
+}
+
+
diff --git a/app/src/main/kotlin/com/pitchedapps/frost/utils/WebContextMenu.kt b/app/src/main/kotlin/com/pitchedapps/frost/utils/WebContextMenu.kt
index 3918a993..dc2d7549 100644
--- a/app/src/main/kotlin/com/pitchedapps/frost/utils/WebContextMenu.kt
+++ b/app/src/main/kotlin/com/pitchedapps/frost/utils/WebContextMenu.kt
@@ -1,7 +1,6 @@
package com.pitchedapps.frost.utils
import android.content.Context
-import ca.allanwang.kau.email.sendEmail
import ca.allanwang.kau.utils.copyToClipboard
import ca.allanwang.kau.utils.shareText
import ca.allanwang.kau.utils.string
@@ -25,8 +24,7 @@ fun Context.showWebContextMenu(wc: WebContext) {
if (it == WebContextType.COPY_TEXT && wc.text == null) return@map null
this@showWebContextMenu.string(it.textId)
}.filterNotNull())
- itemsCallback {
- _, _, position, _ ->
+ itemsCallback { _, _, position, _ ->
WebContextType[position].onClick(this@showWebContextMenu, wc)
}
dismissListener {
@@ -51,7 +49,7 @@ enum class WebContextType(val textId: Int, val onClick: (c: Context, wc: WebCont
content(R.string.debug_link_desc)
positiveText(R.string.kau_ok)
onPositive { _, _ ->
- c.sendEmail(R.string.dev_email, R.string.debug_link_subject) {
+ c.sendFrostEmail(R.string.debug_link_subject) {
message = c.string(R.string.debug_link_content)
addItem("Unformatted url", wc.unformattedUrl)
addItem("Formatted url", wc.url)