diff --git a/src/pt/puraymoe/build.gradle b/src/pt/puraymoe/build.gradle index 526ddb14e..89aa34293 100644 --- a/src/pt/puraymoe/build.gradle +++ b/src/pt/puraymoe/build.gradle @@ -6,11 +6,8 @@ ext { extName = 'Puray.moe' pkgNameSuffix = 'pt.puraymoe' extClass = '.PurayMoe' - extVersionCode = 3 + extVersionCode = 4 libVersion = '13' } - - - apply from: "$rootDir/common.gradle" diff --git a/src/pt/puraymoe/src/eu/kanade/tachiyomi/animeextension/pt/puraymoe/PurayMoe.kt b/src/pt/puraymoe/src/eu/kanade/tachiyomi/animeextension/pt/puraymoe/PurayMoe.kt index a568b0e46..1b6129b80 100644 --- a/src/pt/puraymoe/src/eu/kanade/tachiyomi/animeextension/pt/puraymoe/PurayMoe.kt +++ b/src/pt/puraymoe/src/eu/kanade/tachiyomi/animeextension/pt/puraymoe/PurayMoe.kt @@ -4,6 +4,7 @@ import android.app.Application import android.content.SharedPreferences import androidx.preference.ListPreference import androidx.preference.PreferenceScreen +import androidx.preference.SwitchPreferenceCompat import eu.kanade.tachiyomi.animeextension.pt.puraymoe.dto.AnimeDto import eu.kanade.tachiyomi.animeextension.pt.puraymoe.dto.EpisodeDataDto import eu.kanade.tachiyomi.animeextension.pt.puraymoe.dto.MinimalEpisodeDto @@ -29,7 +30,6 @@ import rx.Observable import uy.kohesive.injekt.Injekt import uy.kohesive.injekt.api.get import java.lang.Exception -import java.text.ParseException import java.text.SimpleDateFormat import java.util.Locale @@ -80,7 +80,7 @@ class PurayMoe : ConfigurableAnimeSource, AnimeHttpSource() { override fun fetchEpisodeList(anime: SAnime): Observable> { val seasonsList: SeasonListDto = getSeasonList(anime) - val showOnly = preferences.getString(CONF_SHOW_ONLY, null) ?: "" + val showOnly = preferences.getString(PREF_SHOW_ONLY_KEY, null) ?: "" val dub_item = ANIME_TYPES_VALUES.elementAt(1) val sub_item = ANIME_TYPES_VALUES.last() var filteredSeasons = seasonsList.seasons.filter { @@ -118,9 +118,9 @@ class PurayMoe : ConfigurableAnimeSource, AnimeHttpSource() { return episodesData.episodes.map { val episode = SEpisode.create() episode.name = "Temp $seasonNumber ($format) EP ${it.ep_number}: ${it.name}" - episode.episode_number = try { + episode.episode_number = runCatching { it.ep_number.toFloat() - } catch (e: NumberFormatException) { 0F } + }.getOrNull() ?: 0F episode.url = it.id.toString() episode.date_upload = it.release_date.toDate() episode @@ -129,15 +129,26 @@ class PurayMoe : ConfigurableAnimeSource, AnimeHttpSource() { // ============================ Video Links ============================= - override fun videoListRequest(episode: SEpisode): Request = - GET("$API_URL/episodios/${episode.url}/m3u8/mp4/") + override fun videoListRequest(episode: SEpisode): Request { + val url = "$API_URL/episodios/${episode.url}/m3u8" + val usePlaylist = preferences.getBoolean(PREF_USE_PLAYLIST_KEY, true) + return if (usePlaylist) GET(url) else GET("$url/mp4/") + } override fun videoListParse(response: Response): List