fix(web): add comic delete UI and fix container Cloudflare bypass for #6
- Add delete button (SVG X, hover-reveal) and confirmation modal to comic cards - Add DELETE /api/comics/delete endpoint with path traversal protection - Fix container downloads: delegate Cloudflare-blocked requests to FlareSolverr (headless Chrome sidecar) instead of retrying with Go HTTP client, whose Linux TCP fingerprint is flagged by Cloudflare even with network_mode: host - Add FlareSolverr service to docker-compose; inject FLARESOLVERR_URL env var - Add diagnostic logging to BatcaveBizMarkup request flow - Trim URL whitespace before storing in download job - Guard Archive() against empty filelist; fix runJob error-check ordering
This commit is contained in:
@@ -23,6 +23,9 @@ func (a ArchiveError) Error() string {
|
||||
// It takes no parameters.
|
||||
// Returns an error if the operation fails.
|
||||
func (c *Comic) Archive() error {
|
||||
if len(c.Filelist) == 0 {
|
||||
return nil
|
||||
}
|
||||
|
||||
outputPath := filepath.Join(c.LibraryPath, c.Title, c.Title+".cbz")
|
||||
err := os.MkdirAll(filepath.Dir(outputPath), os.ModePerm)
|
||||
|
||||
Reference in New Issue
Block a user