Merge remote-tracking branch 'inorichi/master'
This commit is contained in:
commit
c62fc05f8b
@ -226,6 +226,21 @@ public class DatabaseHelper {
|
|||||||
.prepare();
|
.prepare();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public PreparedGetListOfObjects<Chapter> getNextUnreadChapter(Manga manga) {
|
||||||
|
return db.get()
|
||||||
|
.listOfObjects(Chapter.class)
|
||||||
|
.withQuery(Query.builder()
|
||||||
|
.table(ChapterTable.TABLE)
|
||||||
|
.where(ChapterTable.COLUMN_MANGA_ID + "=? AND " +
|
||||||
|
ChapterTable.COLUMN_READ + "=? AND " +
|
||||||
|
ChapterTable.COLUMN_CHAPTER_NUMBER + ">=?")
|
||||||
|
.whereArgs(manga.id, 0, 0)
|
||||||
|
.orderBy(ChapterTable.COLUMN_CHAPTER_NUMBER)
|
||||||
|
.limit(1)
|
||||||
|
.build())
|
||||||
|
.prepare();
|
||||||
|
}
|
||||||
|
|
||||||
public PreparedPutObject<Chapter> insertChapter(Chapter chapter) {
|
public PreparedPutObject<Chapter> insertChapter(Chapter chapter) {
|
||||||
return db.put()
|
return db.put()
|
||||||
.object(chapter)
|
.object(chapter)
|
||||||
|
@ -36,6 +36,7 @@ public class Kissmanga extends Source {
|
|||||||
public static final String IP = "93.174.95.110";
|
public static final String IP = "93.174.95.110";
|
||||||
public static final String BASE_URL = "http://" + IP;
|
public static final String BASE_URL = "http://" + IP;
|
||||||
public static final String POPULAR_MANGAS_URL = BASE_URL + "/MangaList/MostPopular?page=%s";
|
public static final String POPULAR_MANGAS_URL = BASE_URL + "/MangaList/MostPopular?page=%s";
|
||||||
|
public static final String SEARCH_URL = BASE_URL + "/AdvanceSearch";
|
||||||
|
|
||||||
public Kissmanga(Context context) {
|
public Kissmanga(Context context) {
|
||||||
super(context);
|
super(context);
|
||||||
@ -75,7 +76,7 @@ public class Kissmanga extends Source {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected String getInitialSearchUrl(String query) {
|
protected String getInitialSearchUrl(String query) {
|
||||||
return null;
|
return SEARCH_URL;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -111,12 +112,31 @@ public class Kissmanga extends Source {
|
|||||||
if (next == null)
|
if (next == null)
|
||||||
return null;
|
return null;
|
||||||
|
|
||||||
return String.format(POPULAR_MANGAS_URL, next.attr("href"));
|
return BASE_URL + next.attr("href");
|
||||||
|
}
|
||||||
|
|
||||||
|
public Observable<MangasPage> searchMangasFromNetwork(MangasPage page, String query) {
|
||||||
|
if (page.page == 1)
|
||||||
|
page.url = getInitialSearchUrl(query);
|
||||||
|
|
||||||
|
FormEncodingBuilder form = new FormEncodingBuilder();
|
||||||
|
form.add("authorArtist", "");
|
||||||
|
form.add("mangaName", query);
|
||||||
|
form.add("status", "");
|
||||||
|
form.add("genres", "");
|
||||||
|
|
||||||
|
return networkService
|
||||||
|
.postData(page.url, form.build(), requestHeaders)
|
||||||
|
.flatMap(networkService::mapResponseToString)
|
||||||
|
.map(Jsoup::parse)
|
||||||
|
.doOnNext(doc -> page.mangas = parseSearchFromHtml(doc))
|
||||||
|
.doOnNext(doc -> page.nextPageUrl = parseNextSearchUrl(doc, page, query))
|
||||||
|
.map(response -> page);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected List<Manga> parseSearchFromHtml(Document parsedHtml) {
|
protected List<Manga> parseSearchFromHtml(Document parsedHtml) {
|
||||||
return null;
|
return parsePopularMangasFromHtml(parsedHtml);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -55,7 +55,7 @@
|
|||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_alignWithParentIfMissing="true"
|
android:layout_alignWithParentIfMissing="true"
|
||||||
android:gravity="center_vertical"
|
android:gravity="center_vertical"
|
||||||
android:textSize="18dp"
|
android:textSize="17sp"
|
||||||
android:ellipsize="end"
|
android:ellipsize="end"
|
||||||
android:maxLines="1"
|
android:maxLines="1"
|
||||||
tools:text="Title"
|
tools:text="Title"
|
||||||
@ -64,8 +64,7 @@
|
|||||||
android:layout_above="@+id/relativeLayout"
|
android:layout_above="@+id/relativeLayout"
|
||||||
android:layout_alignParentRight="true"
|
android:layout_alignParentRight="true"
|
||||||
android:layout_alignParentEnd="true"
|
android:layout_alignParentEnd="true"
|
||||||
android:layout_alignParentTop="true"
|
android:layout_alignParentTop="true"/>
|
||||||
android:paddingRight="30dp"/>
|
|
||||||
|
|
||||||
<RelativeLayout
|
<RelativeLayout
|
||||||
android:id="@+id/chapter_menu"
|
android:id="@+id/chapter_menu"
|
||||||
|
Loading…
Reference in New Issue
Block a user