diff options
Diffstat (limited to 'app/src/main/kotlin/com/pitchedapps/frost/facebook')
5 files changed, 12 insertions, 11 deletions
diff --git a/app/src/main/kotlin/com/pitchedapps/frost/facebook/FbCookie.kt b/app/src/main/kotlin/com/pitchedapps/frost/facebook/FbCookie.kt index 38de6150..2f0ef616 100644 --- a/app/src/main/kotlin/com/pitchedapps/frost/facebook/FbCookie.kt +++ b/app/src/main/kotlin/com/pitchedapps/frost/facebook/FbCookie.kt @@ -30,14 +30,15 @@ object FbCookie { private fun setWebCookie(cookie: String?, callback: (() -> Unit)?) { with(CookieManager.getInstance()) { removeAllCookies { + _ -> if (cookie == null) { callback?.invoke() return@removeAllCookies } L.d { "Setting cookie" } val cookies = cookie.split(";").map { Pair(it, SingleSubject.create<Boolean>()) } - cookies.forEach { (cookie, callback) -> setCookie(FB_URL_BASE, cookie, { callback.onSuccess(it) }) } - Observable.zip<Boolean, Unit>(cookies.map { (_, callback) -> callback.toObservable() }, {}) + cookies.forEach { (cookie, callback) -> setCookie(FB_URL_BASE, cookie) { callback.onSuccess(it) } } + Observable.zip<Boolean, Unit>(cookies.map { (_, callback) -> callback.toObservable() }) {} .observeOn(AndroidSchedulers.mainThread()) .subscribe { callback?.invoke() diff --git a/app/src/main/kotlin/com/pitchedapps/frost/facebook/parsers/MessageParser.kt b/app/src/main/kotlin/com/pitchedapps/frost/facebook/parsers/MessageParser.kt index f32c3452..a3ebf998 100644 --- a/app/src/main/kotlin/com/pitchedapps/frost/facebook/parsers/MessageParser.kt +++ b/app/src/main/kotlin/com/pitchedapps/frost/facebook/parsers/MessageParser.kt @@ -35,7 +35,7 @@ data class FrostMessages(val threads: List<FrostThread>, }.toString() override fun getUnreadNotifications(data: CookieModel) = - threads.filter(FrostThread::unread).map { + threads.asSequence().filter(FrostThread::unread).map { with(it) { NotificationContent( data = data, @@ -47,7 +47,7 @@ data class FrostMessages(val threads: List<FrostThread>, profileUrl = img ) } - } + }.toList() } /** diff --git a/app/src/main/kotlin/com/pitchedapps/frost/facebook/parsers/NotifParser.kt b/app/src/main/kotlin/com/pitchedapps/frost/facebook/parsers/NotifParser.kt index 03b913c7..410a0e84 100644 --- a/app/src/main/kotlin/com/pitchedapps/frost/facebook/parsers/NotifParser.kt +++ b/app/src/main/kotlin/com/pitchedapps/frost/facebook/parsers/NotifParser.kt @@ -24,7 +24,7 @@ data class FrostNotifs( }.toString() override fun getUnreadNotifications(data: CookieModel) = - notifs.filter(FrostNotif::unread).map { + notifs.asSequence().filter(FrostNotif::unread).map { with(it) { NotificationContent( data = data, @@ -36,7 +36,7 @@ data class FrostNotifs( profileUrl = img ) } - } + }.toList() } /** diff --git a/app/src/main/kotlin/com/pitchedapps/frost/facebook/requests/FbRequest.kt b/app/src/main/kotlin/com/pitchedapps/frost/facebook/requests/FbRequest.kt index a4b0a347..500c4102 100644 --- a/app/src/main/kotlin/com/pitchedapps/frost/facebook/requests/FbRequest.kt +++ b/app/src/main/kotlin/com/pitchedapps/frost/facebook/requests/FbRequest.kt @@ -115,8 +115,8 @@ fun String.getAuth(): RequestAuth { .url(FB_URL_BASE) .get() .call() - call.execute().body()?.charStream()?.useLines { - it.forEach { + call.execute().body()?.charStream()?.useLines { lines -> + lines.forEach { val text = StringEscapeUtils.unescapeEcmaScript(it) val fb_dtsg = FB_DTSG_MATCHER.find(text)[1] if (fb_dtsg != null) { @@ -153,8 +153,8 @@ inline fun <T, reified R : Any, O> Array<T>.zip(crossinline mapper: (List<R>) -> fun executeForNoError(call: Call): Boolean { val body = call.execute().body() ?: return false var empty = true - body.charStream().useLines { - it.forEach { + body.charStream().useLines { lines -> + lines.forEach { if (it.contains("error")) return false if (empty && it.isNotEmpty()) empty = false } diff --git a/app/src/main/kotlin/com/pitchedapps/frost/facebook/requests/Notifications.kt b/app/src/main/kotlin/com/pitchedapps/frost/facebook/requests/Notifications.kt index 82a9364b..0d3926dc 100644 --- a/app/src/main/kotlin/com/pitchedapps/frost/facebook/requests/Notifications.kt +++ b/app/src/main/kotlin/com/pitchedapps/frost/facebook/requests/Notifications.kt @@ -23,5 +23,5 @@ fun RequestAuth.markNotificationRead(notifId: Long): FrostRequest<Boolean> { fun RequestAuth.markNotificationsRead(vararg notifId: Long) = notifId.toTypedArray().zip<Long, Boolean, Boolean>( - { it.all { it } }, + { it.all { self -> self } }, { markNotificationRead(it).invoke() })
\ No newline at end of file |