AquaStream/app/src/main/java/com/lagradost/cloudstream3/ui/search/SearchHelper.kt

55 lines
2.4 KiB
Kotlin
Raw Normal View History

2021-07-30 23:41:54 +00:00
package com.lagradost.cloudstream3.ui.search
import android.app.Activity
import android.widget.Toast
import com.lagradost.cloudstream3.MainActivity.Companion.showToast
2021-08-25 15:28:25 +00:00
import com.lagradost.cloudstream3.ui.download.DOWNLOAD_ACTION_PLAY_FILE
import com.lagradost.cloudstream3.ui.download.DownloadButtonSetup.handleDownloadClick
import com.lagradost.cloudstream3.ui.download.DownloadClickEvent
import com.lagradost.cloudstream3.ui.result.START_ACTION_LOAD_EP
2021-07-30 23:41:54 +00:00
import com.lagradost.cloudstream3.utils.AppUtils.loadSearchResult
2021-08-25 15:28:25 +00:00
import com.lagradost.cloudstream3.utils.DataStoreHelper
import com.lagradost.cloudstream3.utils.VideoDownloadHelper
2021-07-30 23:41:54 +00:00
object SearchHelper {
fun handleSearchClickCallback(activity: Activity?, callback: SearchClickCallback) {
val card = callback.card
when (callback.action) {
SEARCH_ACTION_LOAD -> {
activity.loadSearchResult(card)
}
2021-08-25 15:28:25 +00:00
SEARCH_ACTION_PLAY_FILE -> {
if (card is DataStoreHelper.ResumeWatchingResult && card.id != null) {
if (card.isFromDownload) {
handleDownloadClick(
activity, card.name, DownloadClickEvent(
DOWNLOAD_ACTION_PLAY_FILE,
VideoDownloadHelper.DownloadEpisodeCached(
card.name,
card.posterUrl,
card.episode ?: 0,
card.season,
card.id!!,
card.parentId ?: return,
null,
null,
System.currentTimeMillis()
)
)
)
} else {
activity.loadSearchResult(card, START_ACTION_LOAD_EP, card.id!!)
}
} else {
2021-11-30 17:59:52 +00:00
handleSearchClickCallback(
activity,
SearchClickCallback(SEARCH_ACTION_LOAD, callback.view, callback.card)
)
2021-08-25 15:28:25 +00:00
}
}
2021-07-30 23:41:54 +00:00
SEARCH_ACTION_SHOW_METADATA -> {
showToast(activity, callback.card.name, Toast.LENGTH_SHORT)
2021-07-30 23:41:54 +00:00
}
}
}
}