From 5138892b6284dd2f4a5a40aa48b7cee80f59a6ed Mon Sep 17 00:00:00 2001 From: aodiadi Date: Fri, 9 Oct 2026 21:18:46 +0000 Subject: [PATCH] fix(lightnovelwp): add missing slash in search URL for sites without a trailing slash Lazy Girl Translations' sourceSite has no trailing slash, so search requested https://lazygirltranslations.compage/1/?s=... Normalise the site to end in one slash before appending page/. Bumps the generator's version to 1.1.12. Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01VnfMAhZNXtX8PMFdNfViCB --- plugins/multisrc/lightnovelwp/template.ts | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/plugins/multisrc/lightnovelwp/template.ts b/plugins/multisrc/lightnovelwp/template.ts index 26a3bd8e2..9475e614c 100644 --- a/plugins/multisrc/lightnovelwp/template.ts +++ b/plugins/multisrc/lightnovelwp/template.ts @@ -42,7 +42,7 @@ export class LightNovelWPPlugin implements Plugin.PluginBase { this.icon = `multisrc/lightnovelwp/${metadata.id.toLowerCase()}/icon.png`; this.site = metadata.sourceSite; const versionIncrements = metadata.options?.versionIncrements || 0; - this.version = `1.1.${11 + versionIncrements}`; + this.version = `1.1.${12 + versionIncrements}`; this.options = metadata.options ?? ({} as LightNovelWPOptions); this.filters = metadata.filters satisfies Filters; @@ -512,8 +512,13 @@ export class LightNovelWPPlugin implements Plugin.PluginBase { searchTerm: string, page: number, ): Promise { + // Some sources' sites have no trailing slash (Lazy Girl Translations). const url = - this.site + 'page/' + page + '/?s=' + encodeURIComponent(searchTerm); + this.site.replace(/\/?$/, '/') + + 'page/' + + page + + '/?s=' + + encodeURIComponent(searchTerm); const html = await this.safeFecth(url, true); return this.parseNovels(html); }