From c2f6da0e0ba1fba31bcdb315bd160b412b05a81c Mon Sep 17 00:00:00 2001 From: Taumer Date: Thu, 22 Aug 2019 00:34:23 +0300 Subject: [PATCH] Fix statuses on readmanga/mintmanga (#1406) Fix statuses on readmanga/mintmanga --- src/ru/mintmanga/build.gradle | 2 +- .../extension/ru/mintmanga/Mintmanga.kt | 28 +++++++++++++------ src/ru/readmanga/build.gradle | 2 +- .../extension/ru/readmanga/Readmanga.kt | 28 +++++++++++++------ 4 files changed, 40 insertions(+), 20 deletions(-) diff --git a/src/ru/mintmanga/build.gradle b/src/ru/mintmanga/build.gradle index 7a77440b6..88a65d56e 100644 --- a/src/ru/mintmanga/build.gradle +++ b/src/ru/mintmanga/build.gradle @@ -5,7 +5,7 @@ ext { appName = 'Tachiyomi: Mintmanga' pkgNameSuffix = 'ru.mintmanga' extClass = '.Mintmanga' - extVersionCode = 12 + extVersionCode = 13 libVersion = '1.2' } diff --git a/src/ru/mintmanga/src/eu/kanade/tachiyomi/extension/ru/mintmanga/Mintmanga.kt b/src/ru/mintmanga/src/eu/kanade/tachiyomi/extension/ru/mintmanga/Mintmanga.kt index af488a536..b085a1daa 100644 --- a/src/ru/mintmanga/src/eu/kanade/tachiyomi/extension/ru/mintmanga/Mintmanga.kt +++ b/src/ru/mintmanga/src/eu/kanade/tachiyomi/extension/ru/mintmanga/Mintmanga.kt @@ -93,16 +93,26 @@ class Mintmanga : ParsedHttpSource() { manga.artist = infoElement.select("span.elem_illustrator").first()?.text() manga.genre = infoElement.select("span.elem_genre").text().replace(" ,", ",") manga.description = infoElement.select("div.manga-description").text() - manga.status = parseStatus(infoElement.html()) + manga.status = parseStatus(infoElement) manga.thumbnail_url = infoElement.select("img").attr("data-full") return manga } - private fun parseStatus(element: String): Int = when { - element.contains("

Запрещена публикация произведения по копирайту

") -> SManga.LICENSED - element.contains("

Сингл") || element.contains("Перевод: завершен") -> SManga.COMPLETED - element.contains("Перевод: продолжается") -> SManga.ONGOING - else -> SManga.UNKNOWN + private fun parseStatus(element: Element): Int { + val hiddenWarningMessage = element.select("span.hide > h3").first() + val html = element.html() + return if (hiddenWarningMessage != null) { + when { + html.contains("Перевод: продолжается") -> SManga.ONGOING + html.contains("

Сингл") || html.contains("Перевод: завершен") -> SManga.COMPLETED + else -> SManga.UNKNOWN + } + } else { + when { + html.contains("

Запрещена публикация произведения по копирайту

") -> SManga.LICENSED + else -> SManga.UNKNOWN + } + } } override fun chapterListSelector() = "div.chapters-link > table > tbody > tr:has(td > a)" @@ -120,9 +130,9 @@ class Mintmanga : ParsedHttpSource() { } chapter.date_upload = element.select("td.hidden-xxs").last()?.text()?.let { try { - SimpleDateFormat("dd/MM/yy", Locale.US).parse(it).time - } catch (e: ParseException) { SimpleDateFormat("dd.MM.yy", Locale.US).parse(it).time + } catch (e: ParseException) { + SimpleDateFormat("dd/MM/yy", Locale.US).parse(it).time } } ?: 0 return chapter @@ -257,4 +267,4 @@ class Mintmanga : ParsedHttpSource() { Genre("юри", "el_1315"), Genre("яой", "el_1336") ) -} \ No newline at end of file +} diff --git a/src/ru/readmanga/build.gradle b/src/ru/readmanga/build.gradle index 599ee4239..22ef430a3 100644 --- a/src/ru/readmanga/build.gradle +++ b/src/ru/readmanga/build.gradle @@ -5,7 +5,7 @@ ext { appName = 'Tachiyomi: Readmanga' pkgNameSuffix = 'ru.readmanga' extClass = '.Readmanga' - extVersionCode = 12 + extVersionCode = 13 libVersion = '1.2' } diff --git a/src/ru/readmanga/src/eu/kanade/tachiyomi/extension/ru/readmanga/Readmanga.kt b/src/ru/readmanga/src/eu/kanade/tachiyomi/extension/ru/readmanga/Readmanga.kt index 155addf04..84c696a09 100644 --- a/src/ru/readmanga/src/eu/kanade/tachiyomi/extension/ru/readmanga/Readmanga.kt +++ b/src/ru/readmanga/src/eu/kanade/tachiyomi/extension/ru/readmanga/Readmanga.kt @@ -93,16 +93,26 @@ class Readmanga : ParsedHttpSource() { manga.artist = infoElement.select("span.elem_illustrator").first()?.text() manga.genre = infoElement.select("span.elem_genre").text().replace(" ,", ",") manga.description = infoElement.select("div.manga-description").text() - manga.status = parseStatus(infoElement.html()) + manga.status = parseStatus(infoElement) manga.thumbnail_url = infoElement.select("img").attr("data-full") return manga } - private fun parseStatus(element: String): Int = when { - element.contains("

Запрещена публикация произведения по копирайту

") -> SManga.LICENSED - element.contains("

Сингл") || element.contains("Перевод: завершен") -> SManga.COMPLETED - element.contains("Перевод: продолжается") -> SManga.ONGOING - else -> SManga.UNKNOWN + private fun parseStatus(element: Element): Int { + val hiddenWarningMessage = element.select("span.hide > h3").first() + val html = element.html() + return if (hiddenWarningMessage != null) { + when { + html.contains("Перевод: продолжается") -> SManga.ONGOING + html.contains("

Сингл") || html.contains("Перевод: завершен") -> SManga.COMPLETED + else -> SManga.UNKNOWN + } + } else { + when { + html.contains("

Запрещена публикация произведения по копирайту

") -> SManga.LICENSED + else -> SManga.UNKNOWN + } + } } override fun chapterListSelector() = "div.chapters-link > table > tbody > tr:has(td > a)" @@ -120,9 +130,9 @@ class Readmanga : ParsedHttpSource() { } chapter.date_upload = element.select("td.hidden-xxs").last()?.text()?.let { try { - SimpleDateFormat("dd/MM/yy", Locale.US).parse(it).time - } catch (e: ParseException) { SimpleDateFormat("dd.MM.yy", Locale.US).parse(it).time + } catch (e: ParseException) { + SimpleDateFormat("dd/MM/yy", Locale.US).parse(it).time } } ?: 0 return chapter @@ -253,4 +263,4 @@ class Readmanga : ParsedHttpSource() { Genre("этти", "el_2149"), Genre("юри", "el_2123") ) -} \ No newline at end of file +}