Repository navigation
Conversation
…ite theme BaiLianTales replaced its Madara theme with a custom WordPress theme, so the madara multisrc template found no novels. Move the source out of madara into a standalone plugin that parses the new listing, search, paged table of contents and chapter pages, keeping the same plugin id and path format. Fixes lnreader#2660
|
| const tocPages = $('#novel-toc .jt-page-jump option').length; | ||
| for (let page = 2; page <= tocPages; page++) { | ||
| const toc = await this.fetchPage( | ||
| this.site + novelPath + '?toc_page=' + page, | ||
| ); | ||
| if (toc) chapters.push(...this.parseChapters(toc)); |
There was a problem hiding this comment.
Later chapter pages lack coverage
The reported 26-chapter check never reaches this toc_page loop, since the first page holds 50 chapters. The existing live check accepts any nonempty chapter list, so missing later pages would still pass. Add a check using a novel with more than 50 chapters and confirm that chapters from the last page appear once and in the expected order.
There was a problem hiding this comment.
Checked against the live site by running the bundled plugin outside check:plugin:
novel/holding-the-sword-to-carry-away-senior-sister-transmigration/returned 350 chapters, all unique (7 TOC pages), fromchapter-1to the last rowchapter-347("Chapter 347 – Extra 14"). The order is the site's own TOC order, including its non-sequential slugs such aschapter-23-2andchapter-224_2.novel/who-says-the-director-is-frigid-lily-abo/returned 70 unique chapters (2 TOC pages) in ascending order. Row 50 ischapter-50, row 51 ischapter-51and the last ischapter-70, so nothing is dropped or repeated at the page boundary.
The playground screenshots in the PR description also show the 350-chapter novel. I didn't add a dedicated multi-page check to the shared live-check tooling, because this PR is scoped to the plugin.
Reply written by an AI agent (Claude).
Fixes #2660
Why it broke
bailiantales.com no longer uses the Madara WordPress theme. Wayback snapshots from 2026-05-18 and 2026-08-26 still show
themes/madara. The live site now runs its own theme (themes/jormuntl) with different listing, search, novel and chapter markup, and the Madaraajax/chapters/endpoint now returns 404. The old madara-generated plugin still got HTTP 200 pages but matched none of its selectors, so the app showed "No result found".There is no Cloudflare or User-Agent blocking involved: desktop Chrome, Android Chrome,
okhttpand empty User-Agents all get the same 200 page with no challenge.What changed
plugins/english/BaiLianTales.ts: a new standalone plugin for the current site.bailiantalesand the same path format (novel/<slug>/,novel/<slug>/<chapter>/), so existing library entries should keep resolving./novel/page/N/with the site's own sort, status and genre filters. Popular defaults to "Recently Added" and Latest uses "Recently Updated". The site has no views-based sort, and its "Highest Rated" sort only lists rated novels (31 today)./page/N/?s=…. Paging past the last page returns an empty list instead of an error.?toc_page=Npages.plugins/multisrc/madara/sources.json: removed thebailiantalesentry.public/static/multisrc/madara/bailiantales/topublic/static/src/en/bailiantales/(pure rename).Testing
npm run check:plugin -- plugins/english/BaiLianTales.ts: all four checks PASS against the live site. CI's Plugin Live Check also passed on this PR.Screenshots
These are from this repo's plugin playground, not the LNReader app. The Android toolchain isn't installed on the machine that made this change, so this fix has not been tested in the app. Port 3000 was taken by another process, so the playground ran on 3047. Its hard-coded proxy URL was pointed at that port through a temporary config outside the repo; no plugin or playground code was changed for this.
Popular (default filters):
Latest:
Search ("senior sister"):
Novel detail (status, genres, summary, 350 chapters):
Chapter list (start of the list, then where the paid chapters begin):
Chapter text:
Not covered
This PR was written by an AI agent (Claude), and the change and its tests were AI-driven. No human has reviewed it yet.
Pipeline
Updates from git push no-mistakes
✅ **intent** - passed
✅ No issues found.
✅ **Rebase** - passed
✅ No issues found.
✅ **Review** - passed
✅ No issues found.
⏭️ **Test** - skipped
npm run check:plugin -- plugins/english/BaiLianTales.ts(live bailiantales.com)npm run dev:startplayground, BaiLianTales selected and Fetch clicked in the browser✅ **Document** - passed
✅ No issues found.
✅ **Lint** - passed
✅ No issues found.
✅ **Push** - passed
✅ No issues found.