diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index b80154b2..2fd8bb3d 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -114,7 +114,7 @@
-
+
diff --git a/app/src/main/java/com/lagradost/cloudstream3/movieproviders/FilmanProvider.kt b/app/src/main/java/com/lagradost/cloudstream3/movieproviders/FilmanProvider.kt
index 8cf5f753..c82fff2e 100644
--- a/app/src/main/java/com/lagradost/cloudstream3/movieproviders/FilmanProvider.kt
+++ b/app/src/main/java/com/lagradost/cloudstream3/movieproviders/FilmanProvider.kt
@@ -3,6 +3,8 @@ package com.lagradost.cloudstream3.movieproviders
import com.fasterxml.jackson.annotation.JsonProperty
import com.fasterxml.jackson.module.kotlin.readValue
import com.lagradost.cloudstream3.*
+import com.lagradost.cloudstream3.utils.AppUtils.parseJson
+import com.lagradost.cloudstream3.utils.AppUtils.tryParseJson
import com.lagradost.cloudstream3.utils.ExtractorLink
import com.lagradost.cloudstream3.utils.loadExtractor
import org.jsoup.Jsoup
@@ -86,10 +88,16 @@ class FilmanProvider : MainAPI() {
override suspend fun load(url: String): LoadResponse {
val response = app.get(url).text
val document = Jsoup.parse(response)
+ val documentTitle = document.select("title").text().trim()
+
+ if (documentTitle.startsWith("Logowanie")){
+ throw RuntimeException("This page seems to be locked behind a login-wall on the website, unable to scrape it. If it is not please report it.")
+ }
+
var title = document.select("span[itemprop=title]").text()
val data = document.select("#links").outerHtml()
val posterUrl = document.select("#single-poster > img").attr("src")
- val year = document.select(".info > ul li")[1].text().toIntOrNull()
+ val year = document.select(".info > ul li").getOrNull(0)?.text()?.toIntOrNull()
val plot = document.select(".description").text()
val episodesElements = document.select("#episode-list a[href]")
if (episodesElements.isEmpty()) {
@@ -132,7 +140,7 @@ class FilmanProvider : MainAPI() {
document?.select(".link-to-video")?.apmap { item ->
val decoded = base64Decode(item.select("a").attr("data-iframe"))
- val link = mapper.readValue(decoded).src
+ val link = tryParseJson(decoded)?.src ?: return@apmap
loadExtractor(link, null, callback)
}
return true
diff --git a/app/src/main/java/com/lagradost/cloudstream3/movieproviders/StreamingcommunityProvider.kt b/app/src/main/java/com/lagradost/cloudstream3/movieproviders/StreamingcommunityProvider.kt
index 2196caa9..209bca6d 100644
--- a/app/src/main/java/com/lagradost/cloudstream3/movieproviders/StreamingcommunityProvider.kt
+++ b/app/src/main/java/com/lagradost/cloudstream3/movieproviders/StreamingcommunityProvider.kt
@@ -128,7 +128,7 @@ data class TrailerElement(
class StreamingcommunityProvider : MainAPI() {
override var lang = "it"
- override var mainUrl = "https://streamingcommunity.business"
+ override var mainUrl = "https://streamingcommunity.org"
override var name = "Streamingcommunity"
override val hasMainPage = true
override val hasChromecastSupport = true
@@ -177,7 +177,7 @@ class StreamingcommunityProvider : MainAPI() {
override suspend fun getMainPage(): HomePageResponse {
val items = ArrayList()
val document = app.get(mainUrl).document
- document.select("slider-title").subList(2, 6).map { it ->
+ document.select("slider-title").subList(0, 6).map { it ->
if (it.attr("slider-name") != "In arrivo") {
val films = it.attr("titles-json")
val lista = mutableListOf()
diff --git a/docs/providers.json b/docs/providers.json
index 7050c1f0..d06b9fbb 100644
--- a/docs/providers.json
+++ b/docs/providers.json
@@ -455,7 +455,7 @@
"language": "it",
"name": "Streamingcommunity",
"status": 1,
- "url": "https://streamingcommunity.business"
+ "url": "https://streamingcommunity.org"
},
"TantifilmProvider": {
"language": "it",