From 402f0e4814ed1fe7519c9e8630b3ca63def2b482 Mon Sep 17 00:00:00 2001
From: WebDitto <webditto@proton.me>
Date: Sat, 15 Mar 2025 15:23:31 -0300
Subject: [PATCH] fix(pt/animesgratis): Fixed Q1N video source for MDPLAYER

---
 src/pt/animesgratis/build.gradle                            | 2 +-
 .../kanade/tachiyomi/animeextension/pt/animesgratis/Q1N.kt  | 1 +
 .../pt/animesgratis/extractors/NoaExtractor.kt              | 6 +++---
 .../pt/animesgratis/extractors/RuplayExtractor.kt           | 2 +-
 4 files changed, 6 insertions(+), 5 deletions(-)

diff --git a/src/pt/animesgratis/build.gradle b/src/pt/animesgratis/build.gradle
index a9f7edf9..8e0c3b14 100644
--- a/src/pt/animesgratis/build.gradle
+++ b/src/pt/animesgratis/build.gradle
@@ -3,7 +3,7 @@ ext {
     extClass = '.Q1N'
     themePkg = 'dooplay'
     baseUrl = 'https://q1n.net'
-    overrideVersionCode = 17
+    overrideVersionCode = 18
 }
 
 apply from: "$rootDir/common.gradle"
diff --git a/src/pt/animesgratis/src/eu/kanade/tachiyomi/animeextension/pt/animesgratis/Q1N.kt b/src/pt/animesgratis/src/eu/kanade/tachiyomi/animeextension/pt/animesgratis/Q1N.kt
index ef9a0bb1..03e410bc 100644
--- a/src/pt/animesgratis/src/eu/kanade/tachiyomi/animeextension/pt/animesgratis/Q1N.kt
+++ b/src/pt/animesgratis/src/eu/kanade/tachiyomi/animeextension/pt/animesgratis/Q1N.kt
@@ -129,6 +129,7 @@ class Q1N : DooPlay(
             "mixdrop" in name -> mixDropExtractor.videoFromUrl(url)
             "streamtape" in name -> streamTapeExtractor.videosFromUrl(url)
             "noa" in name -> noaExtractor.videosFromUrl(url)
+            "mdplayer" in name -> noaExtractor.videosFromUrl(url, "MDPLAYER")
             "/player/" in url -> bloggerExtractor.videosFromUrl(url, headers)
             else -> emptyList()
         }
diff --git a/src/pt/animesgratis/src/eu/kanade/tachiyomi/animeextension/pt/animesgratis/extractors/NoaExtractor.kt b/src/pt/animesgratis/src/eu/kanade/tachiyomi/animeextension/pt/animesgratis/extractors/NoaExtractor.kt
index 5bb5d42c..9755a9a1 100644
--- a/src/pt/animesgratis/src/eu/kanade/tachiyomi/animeextension/pt/animesgratis/extractors/NoaExtractor.kt
+++ b/src/pt/animesgratis/src/eu/kanade/tachiyomi/animeextension/pt/animesgratis/extractors/NoaExtractor.kt
@@ -6,7 +6,7 @@ import okhttp3.Headers
 import okhttp3.OkHttpClient
 
 class NoaExtractor(private val client: OkHttpClient, private val headers: Headers) {
-    fun videosFromUrl(url: String): List<Video> {
+    fun videosFromUrl(url: String, name: String = "NOA"): List<Video> {
         val body = client.newCall(GET(url)).execute()
             .body.string()
 
@@ -16,7 +16,7 @@ class NoaExtractor(private val client: OkHttpClient, private val headers: Header
                     .substringAfter(":\"")
                     .substringBefore('"')
                     .replace("\\", "")
-                listOf(Video(videoUrl, "NOA", videoUrl, headers))
+                listOf(Video(videoUrl, name, videoUrl, headers))
             }
 
             "sources:" in body -> {
@@ -31,7 +31,7 @@ class NoaExtractor(private val client: OkHttpClient, private val headers: Header
                             .substringAfter(":\"")
                             .substringBefore('"')
                             .replace("\\", "")
-                        Video(videoUrl, "NOA - $label", videoUrl, headers)
+                        Video(videoUrl, "$name - $label", videoUrl, headers)
                     }
             }
 
diff --git a/src/pt/animesgratis/src/eu/kanade/tachiyomi/animeextension/pt/animesgratis/extractors/RuplayExtractor.kt b/src/pt/animesgratis/src/eu/kanade/tachiyomi/animeextension/pt/animesgratis/extractors/RuplayExtractor.kt
index 0f6e4a73..aa2bcc52 100644
--- a/src/pt/animesgratis/src/eu/kanade/tachiyomi/animeextension/pt/animesgratis/extractors/RuplayExtractor.kt
+++ b/src/pt/animesgratis/src/eu/kanade/tachiyomi/animeextension/pt/animesgratis/extractors/RuplayExtractor.kt
@@ -15,7 +15,7 @@ class RuplayExtractor(private val client: OkHttpClient) {
             .split(",")
             .map {
                 val videoUrl = it.substringAfter("]")
-                val quality = it.substringAfter("[").substringBefore("]")
+                val quality = it.substringAfter("[", "").substringBefore("]").ifEmpty { "Default" }
                 val headers = Headers.headersOf("Referer", videoUrl)
                 Video(videoUrl, "Ruplay - $quality", videoUrl, headers = headers)
             }