diff --git a/src/all/madara/build.gradle b/src/all/madara/build.gradle index 4612d8228..d3c466b1b 100644 --- a/src/all/madara/build.gradle +++ b/src/all/madara/build.gradle @@ -5,7 +5,7 @@ ext { appName = 'Tachiyomi: Madara (multiple sources)' pkgNameSuffix = "all.madara" extClass = '.MadaraFactory' - extVersionCode = 107 + extVersionCode = 108 libVersion = '1.2' } diff --git a/src/all/madara/src/eu/kanade/tachiyomi/extension/all/madara/Madara.kt b/src/all/madara/src/eu/kanade/tachiyomi/extension/all/madara/Madara.kt index 9a5bf376f..74d8614f2 100644 --- a/src/all/madara/src/eu/kanade/tachiyomi/extension/all/madara/Madara.kt +++ b/src/all/madara/src/eu/kanade/tachiyomi/extension/all/madara/Madara.kt @@ -418,6 +418,10 @@ abstract class Madara( date.endsWith(" ago", ignoreCase = true) -> { parseRelativeDate(date) } + // Handle translated 'ago' in Portuguese. + date.endsWith(" atrás", ignoreCase = true) -> { + parseRelativeDate(date) + } // Handle 'yesterday' and 'today', using midnight date.startsWith("year", ignoreCase = true) -> { Calendar.getInstance().apply { @@ -456,18 +460,18 @@ abstract class Madara( private fun parseRelativeDate(date: String): Long { val trimmedDate = date.split(" ") val number = trimmedDate[0].toIntOrNull() - + val isRelative = trimmedDate[2] == "ago" || trimmedDate[2] == "atrás" /** * Size check is for Arabic language, would sometimes break if we don't check * Take that in to consideration if adding support for parsing Arabic dates */ - return if (trimmedDate.size == 3 && trimmedDate[2] == "ago" && number is Int) { + return if (trimmedDate.size == 3 && isRelative && number is Int) { val cal = Calendar.getInstance() // Map English and other language units to Java units when (trimmedDate[1].removeSuffix("s")) { - "jour", "día", "day" -> cal.apply { add(Calendar.DAY_OF_MONTH, -number) }.timeInMillis + "jour", "día", "dia", "day" -> cal.apply { add(Calendar.DAY_OF_MONTH, -number) }.timeInMillis "heure", "hora", "hour" -> cal.apply { add(Calendar.HOUR, -number) }.timeInMillis - "min", "minute" -> cal.apply { add(Calendar.MINUTE, -number) }.timeInMillis + "min", "minute", "minuto" -> cal.apply { add(Calendar.MINUTE, -number) }.timeInMillis "segundo", "second" -> cal.apply { add(Calendar.SECOND, -number) }.timeInMillis else -> 0 } diff --git a/src/all/madara/src/eu/kanade/tachiyomi/extension/all/madara/MadaraFactory.kt b/src/all/madara/src/eu/kanade/tachiyomi/extension/all/madara/MadaraFactory.kt index 980630b2b..9528eb5ce 100644 --- a/src/all/madara/src/eu/kanade/tachiyomi/extension/all/madara/MadaraFactory.kt +++ b/src/all/madara/src/eu/kanade/tachiyomi/extension/all/madara/MadaraFactory.kt @@ -652,7 +652,7 @@ class MangaStream : Madara("MangaStream", "https://www.mangastream.cc", "en") { ) } -class NeoxScanlator : Madara("Neox Scanlator", "https://neoxscans.com", "pt-BR", SimpleDateFormat("dd 'de' MMM 'de' yyyy", Locale("pt", "BR"))) { +class NeoxScanlator : Madara("Neox Scanlator", "https://neoxscans.com", "pt-BR", SimpleDateFormat("dd/MM/yyyy", Locale("pt", "BR"))) { override fun headersBuilder(): Headers.Builder = Headers.Builder() .add("User-Agent", USER_AGENT) .add("Referer", baseUrl)