Commit graph

160 commits

Author SHA1 Message Date
arkon
1b71e4cee7 Write job failure exceptions to error log 2022-01-26 22:21:01 -05:00
arkon
89dbb4d300 Avoid migration failing if previous source doesn't exist 2022-01-23 17:21:23 -05:00
Gauthier
cd7cf3583e
fix: handle Komga tracks during manga migration (#6463)
* fix: handle Komga tracks during manga migration

closes #6354

* refactor: remove Komga direct reference
2022-01-22 14:25:05 -05:00
arkon
3dc4fd8dd1 Make tracker status wording/ordering more consistent 2022-01-08 15:49:39 -05:00
arkon
d04d676d2f URL encode Kitsu search queries (fixes #5712) 2022-01-05 17:43:11 -05:00
arkon
dbb2c523c1 Avoid crashes in tracker interceptor errors 2022-01-02 17:56:49 -05:00
arkon
58c2f22120 Truncate MAL search queries to first 64 characters (closes #6314)
Is it worth telling the user? ¯\_(ツ)_/¯
2021-12-26 11:35:28 -05:00
jmir1
a9d2741e6a
Automatically set tracker as completed after reading the last chapter (#6289)
* Automatically set tracker as completed after reading the last chapter.

* use integer value in comparison

* also set `started_reading` date

* don't use source manga's status

* remove useless line
2021-12-04 09:59:39 -05:00
arkon
e8f284d377 Add convenience extension functions for rate limit interceptors
To be included in extension-lib 1.3 as a replacement for the lib that's currently compiled in tachiyomi-extensions.
2021-11-28 14:41:46 -05:00
Henrik
8acce011b5
fix MAL search novel filter (#6279) 2021-11-25 12:55:52 -05:00
Ivan Iskandar
2e127dff1f
Replace Timber with Square Logcat and make logging configurable (#6062)
* Replace Timber with Square Logcat

* Configurable logger
2021-10-07 22:12:55 -04:00
Gauthier
d45fefd6f0
handle maxNumberSort from API (#5917) 2021-09-16 17:37:42 -04:00
Gauthier
6151318ac1
use chapter_number instead of ordinal index for syncChaptersWithTrackServiceTwoWay (#5846)
use v2 api for Komga tracker for series
2021-09-09 21:07:16 -04:00
arkon
5ae4621da1 Queue tracking updates when offline (closes #1497)
Co-authored-by: Jays2Kings <Jays2Kings@users.noreply.github.com>
2021-09-04 16:37:35 -04:00
Jays2Kings
634da15191 Update kitsu to not show "null" for empty descriptions
(cherry picked from commit e6ea530532523ed033fd232fcea2da8f17b973f7)
2021-08-29 10:03:40 -04:00
Gauthier
2cd8733212
change Track.last_chapter_read to Float (#5802)
each TrackService can convert it to Int if decimal chapters are not supported
2021-08-28 10:37:45 -04:00
nicki
50b282f58b
update Anilist tracking title during refresh (#5760)
Co-authored-by: Andreas <andreas.everos@gmail.com>

Co-authored-by: Andreas <andreas.everos@gmail.com>
2021-08-21 10:51:20 -04:00
nicki
708e71a35a
Use user preferred title language in Anilist (#5758)
* Use user preferred title language in Anilist

Since Anilist is only used by authenticated users, the title language
can be set using the `userPreferred` field (defaults to romaji)

Changed wherever `title>romaji` was being used. Shouldn't have missed
any. `userPreferred` is also available for Staff and Character but not
relevant to Tachiyomi for now.

Users might need to go Logout and log back in on Anilist to see the
change. Actual setting can be found at https://anilist.co/settings/media

closes https://github.com/tachiyomiorg/tachiyomi/issues/5757

* correct title in anilist model

indicates the fact that userPreferred title is used

* convert forgotten `type` to `format` as well

leads to NPE when using `findLibManga`.
missed one query in https://github.com/tachiyomiorg/tachiyomi/pull/5741
2021-08-20 18:20:04 -04:00
nicki
27133520fc
Label one-shots correctly in anilist track search (#5741)
* use format instead of type in anilist search

As per anilist graphql docs, `type` refers to whether anime/manga and is
redundant (since we already limit it to `MANGA`). What we actually want
is `format` which includes whether the media is a One-shot or Manga

This should help in making search a bit better as one no longer needs to
rely on the Date to figure out if its the One-shot entry or the Manga
entry

* Revert "use format instead of type in anilist search"

This reverts commit 6f0ba4888669f414a2093d7632eb1fab109d74de.

Accidentally changed the wrong query while further testing whoops

* use format instead of type in anilist search

As per anilist graphql docs, `type` refers to whether anime/manga and is
redundant (since we already limit it to `MANGA`). What we actually want
is `format` which includes whether the media is a One-shot or Manga

Changes search query and corresponding JSONALManga structure
2021-08-19 09:08:48 -04:00
arkon
a69a833716 Require Komga to be installed when attempting to setup tracker (closes #5491) 2021-07-18 13:12:47 -04:00
arkon
8bfc5f0450 Put Komga tracker in separate group 2021-07-18 12:55:55 -04:00
Andreas
447ee4bd09
Add support for start/end fields for Kitsu (#5573) 2021-07-18 12:47:40 -04:00
arkon
5d1134dfa8 Add link to Don't Kill My App! in advanced settings 2021-07-17 12:52:27 -04:00
Andreas
c0647c3110
Make default tracking status depend if the user has read chapter or not (#5567)
- When user reads a chapter change tracking status to reading
2021-07-17 11:26:29 -04:00
Ivan Iskandar
ae97bb0445
Replace material-dialogs usage with Material Components' (#5423)
* Use Material Components' dialogs

For all dialogs that has direct replacement.

* Convert text input dialogs

* Convert quad-state multi choices dialogs

* Convert date picker dialogs

This also changes the flow to remove selected start/finish tracking date and
the track item itself

* Remove material-dialogs dependencies
2021-07-14 18:04:03 -04:00
arkon
71d225c562 Address some build warnings 2021-06-05 17:49:20 -04:00
Gauthier
acd927a937
Refactor TrackService.kt to remove unused add function (#5164)
* removed the add function from TrackService.kt as it's not used except within the tracker implementations

* add private modifier
2021-05-24 22:12:12 -04:00
arkon
70d9b0c390 Organize some classes 2021-05-24 12:34:54 -04:00
Gauthier
e57a999c9c
pull the rate limit interceptors from the extensions repo (#5163)
apply a rate limit to anilist, current limit is 90 per minute
2021-05-24 11:29:20 -04:00
Gauthier
d6b3b0baf7
Add Komga as an unattended track service (#5049)
* fix: prevent crash if TrackService.getScoreList() is empty

* disabled track score button if service doesn't support scoring

* first implementation of the Komga tracking
this doesn't work for read lists

* auto track when adding to library

* handle refresh

* 2-way sync of chapters for unattended tracking services

* Update app/src/main/java/eu/kanade/tachiyomi/ui/manga/track/TrackSheet.kt

Co-authored-by: Andreas <andreas.everos@gmail.com>

* group strings together

* support for read lists

* sync read chapters on bind

* only mark local chapters as read during 2-way sync (incoming)

* local progress from read chapters will be sent to remote tracker on bind/refresh
this enables syncing after reading offline

* remove unused variable

* refactor the 2-way sync in a util function

* handle auto add to track for unattended services from the browse source screen when long clicking
this will also sync chapters, as it is possible to have read or marked as read chapters from there

* 2-way sync when library update for TRACKING

* refactor

* better handling of what has been read server side

* refactor: extract function

* fix: localLastRead could be -1 when all chapters are read

* refactor to rethrow exception so it can be shown in toast

* extract strings

* replace komga logo

Co-authored-by: Andreas <andreas.everos@gmail.com>
2021-05-22 12:07:58 -04:00
arkon
08a6db7d6e Maybe better handle MAL token expiration 2021-04-24 16:30:53 -04:00
mutsumi
cc6ae9d1a8
Fix Some Bangumi Track Bug (#4726) 2021-03-28 11:36:29 -04:00
Jays2Kings
2ba60e9114 Added Start/Finished Date Support to AniList
Based on 1e3de8a67f

Co-Authored-By: Jays2Kings
2021-03-22 22:38:14 -04:00
arkon
99ba84c810 Handle null Anilist start dates (fixes #4685) 2021-03-20 16:36:31 -04:00
arkon
6d8c4fb8b1 Fix Bangumi search null image errors 2021-03-20 10:22:11 -04:00
arkon
13d25e0849 Don't automatically set MAL start date (closes #4349) 2021-02-01 22:39:41 -05:00
arkon
34cb24fe34 Update total number of chapters when refreshing MAL entries (fixes #4348) 2021-01-24 16:58:23 -05:00
arkon
1490112135 Parse correct object when finding existing MAL list item (fixes #4347) 2021-01-24 16:33:47 -05:00
arkon
0a54901eb0 Refactor tracker name strings 2021-01-24 16:06:28 -05:00
arkon
00285a782c Ignore error when cover is missing in Kitsu search results (fixes #4334) 2021-01-23 10:14:43 -05:00
Andreas
2a5102a457
Fix Kitsu toasting "Logged in" when there is an error (#4329) 2021-01-21 18:05:22 -05:00
arkon
878008e93b Reimplement MAL start/end date support 2021-01-16 16:03:19 -05:00
arkon
0cd551d4fd Revert removal of tracker start/end date 2021-01-16 15:48:20 -05:00
arkon
189f18b112 Simplify lookup for existing MAL list item 2021-01-16 10:51:17 -05:00
arkon
2ffbee3db2 Avoid using global scope where appropriate
Also fixes the crash in tracking when an exception is thrown during a refresh.
2021-01-08 18:05:51 -05:00
arkon
df7e0d2f2f Surface "NSFW" (includes things like ecchi) results in MAL search (closes #4249) 2021-01-04 15:16:08 -05:00
arkon
8a792e6d76 MAL: add way to search by list items' titles 2021-01-04 14:30:04 -05:00
arkon
17b70ab38c Refactor Kitsu API to remove Retrofit usage 2021-01-04 12:13:14 -05:00
arkon
7d713b87b1 Fully remove usages of RxJava from tracker classes
TODO: refactor usages to coroutines as well
2021-01-03 23:41:36 -05:00
arkon
2d0a5eb02c Convert more TrackService methods to coroutines 2021-01-03 23:33:21 -05:00