Commit graph

278 commits

Author SHA1 Message Date
Alex Cabal
7e3566ec93 Use INI value for max artwork upload size 2025-05-04 22:33:44 -05:00
Mike Colagrosso
03ed3c2257 Add Ebook::DownloadUrl for web and feed downloads
This commit adds a rewrite rule for ebook downloads of the form:

```
/ebooks/some-author/some-book/downloads/some-filename.epub
```

to `www/ebooks/download.php`. That file handles the logic of whether to
show a thank you page before beginning the download.

Download URLs in RSS, Atom, and OPDS feeds follow the same pattern, but
they have a query string parameter `?source=feed` to always skip the
thank you page.
2025-04-25 14:31:44 -05:00
Alex Cabal
8c81e5b9d2 Catch exceptions if files don't exist 2025-04-14 10:46:54 -05:00
Alex Cabal
93b55d2da2 Add Authors index 2025-04-09 21:33:59 -05:00
Alex Cabal
810087ccf9 Update OpenSearch features to current standards 2025-03-31 13:28:26 -05:00
Alex Cabal
7da87bf9e2 Use enums for HTTP methods in search forms 2025-03-31 12:05:32 -05:00
Alex Cabal
dc84ff3fa9 Style tweaks 2025-03-10 14:38:54 -05:00
Mike Colagrosso
af956b2714
Replace EbookUrl with EbookId in Artworks (#482)
* Replace `EbookUrl` with `EbookId` in `Artworks`

* Add a `FullUrl` member to `Ebook`

Add documentation about when to use it versus Url.

The full URL is also being used as an ID in RSS feeds, so use `FullUrl` there.

* Store an `EbookId` in `Artworks`
2025-03-10 14:33:20 -05:00
Alex Cabal
34fd71e55a Tweak wording on delete artist page and add some more breadcrumbs 2025-03-07 10:37:56 -06:00
Alex Cabal
124e8343fc Completely type hint template functions and switch to named arguments 2025-03-04 20:32:20 -06:00
Alex Cabal
9d1b66d19e Update PHPStan and Safe PHP, and review codebase for further type correctness 2025-02-25 22:41:18 -06:00
Mike Colagrosso
55e0428006 Add a Default EbookSortType
This allows the user to run a keyword search and then change the sort
order. `Default` is interpreted as `Relevance` if a query is present,
`Newest` if not.
2025-02-13 13:48:39 -06:00
Mike Colagrosso
5e10d3be6f Remove placeholder text from search box 2025-02-13 13:48:39 -06:00
Mike Colagrosso
1a71913794 Add a Relevance sort order and improve search
Here's what's in `IndexableText` right now:

1. Title
2. Collections
3. Authors
4. Tags
5. LocSubjects
6. TocEntries

Here is the proposed new ranking:

```
10 * Title +
8 * Authors +
3 * Collections +
IndexableText
```

New indices for existing DBs:

```
ALTER TABLE `Ebooks` ADD COLUMN `IndexableAuthors` text NOT NULL;
ALTER TABLE `Ebooks` ADD COLUMN `IndexableCollections` text NULL;
ALTER TABLE `Ebooks` ADD FULLTEXT `indexSearchTitle` (`Title`);
ALTER TABLE `Ebooks` ADD FULLTEXT `idxSearchAuthors` (`IndexableAuthors`);
ALTER TABLE `Ebooks` ADD FULLTEXT `idxSearchCollections` (`IndexableCollections`);
```
2025-02-13 13:48:39 -06:00
Alex Cabal
b2df8a7018 Type fixes 2025-02-08 12:33:13 -06:00
Alex Cabal
367da8ec82 Show author names by compilations in projects view 2025-02-03 22:08:40 -06:00
Alex Cabal
664c51ea79 Fix dates in Atom entries 2025-02-03 11:14:05 -06:00
Alex Cabal
6378d687d8 Add 'awaiting review' and 'reviewed' project statuses that update from GitHub; allow project owners to update their project statuses 2025-01-27 15:52:21 -06:00
Alex Cabal
b48f3a5798 Improve honeypot link 2025-01-27 10:49:44 -06:00
Alex Cabal
4eb45bd54b Tweak feed wording 2025-01-26 16:23:15 -06:00
Alex Cabal
5b0d37824b Add configuration to stop rude bot crawlers using fail2ban 2025-01-18 17:37:47 -06:00
Alex Cabal
d9fe3e9303 Fix error handling for duplicate ebook placeholders 2025-01-09 14:00:50 -06:00
Alex Cabal
0105bfefa4 Tweak donation banners and some type safety 2025-01-06 13:25:02 -06:00
Alex Cabal
343d92f7c9 Tweak drive ending times 2025-01-06 10:30:08 -06:00
Alex Cabal
692e418aee Remove social media manager ad 2025-01-04 14:34:53 -06:00
Alex Cabal
9b959e3eda Don't show year for updated dates in current year of project table 2025-01-03 13:43:59 -06:00
Mike Colagrosso
eacd7306b0 Remove templates/EbookProjects.php
378555d removed the reference to it in `www/ebook-placeholders/get.php`
2025-01-01 20:29:15 -06:00
Alex Cabal
bcba5c2192 Remove now-redundant PD placeholders code 2025-01-01 10:05:59 -06:00
Alex Cabal
fcb5240585 Tweak PD Day banner 2024-12-31 15:00:14 -06:00
Alex Cabal
40296c2562 Fix wrong property references in user edit form 2024-12-31 10:31:16 -06:00
Alex Cabal
e972267ee8 Add social media manager ask to footer 2024-12-30 22:14:01 -06:00
Alex Cabal
616b9677a9 Fix donation progress bar 2024-12-30 22:04:09 -06:00
Alex Cabal
31633ee8ac Fix class in search form 2024-12-29 15:10:32 -06:00
Alex Cabal
e4e945f63f Tweak wanted list template structure 2024-12-29 14:14:20 -06:00
Alex Cabal
2c0c87bcb0 Expand placeholder subforms if they have data 2024-12-28 19:20:30 -06:00
Alex Cabal
c43c4fa2dd Tweak wanted list appearance 2024-12-28 19:14:04 -06:00
Mike Colagrosso
c016547e2c Rename template to CollectionDescriptor 2024-12-28 14:18:08 -06:00
Mike Colagrosso
7bd08087dc Inline and remove templates/WantedEbooks.php 2024-12-28 14:18:08 -06:00
Mike Colagrosso
5b605a00b7 Populate the wanted list from DB placeholders 2024-12-28 14:18:08 -06:00
Mike Colagrosso
9652d63b12 Add Template::CollectionFormatted for common formatting 2024-12-28 14:18:08 -06:00
Alex Cabal
88ed9639f5 Add dark mode support to emails 2024-12-23 15:07:06 -06:00
Alex Cabal
ac56d2d896 Don't allow the manager or reviewer to be the same as the ebook producer 2024-12-22 19:52:31 -06:00
Alex Cabal
43e5de1cc2 Improve number input pattern matching 2024-12-21 17:39:17 -06:00
Alex Cabal
8e8cbb0c5e Move delete form and more multi select fixes 2024-12-19 14:40:38 -06:00
Mike Colagrosso
d0d79d637c Add form to delete placeholders 2024-12-19 14:21:25 -06:00
Alex Cabal
18bcde3bf6 Don't show placeholder difficulty if it's not set 2024-12-18 22:26:34 -06:00
Alex Cabal
98e09f414e Allow creating new ebook placeholders when creating a new project 2024-12-18 22:23:57 -06:00
Alex Cabal
4596aeb007 Allow projects to auto-assign managers and reviewers 2024-12-18 20:57:21 -06:00
Alex Cabal
e51cc4395e Tweak some styling 2024-12-18 15:58:50 -06:00
Alex Cabal
378555d131 Show improved project details on placeholder page 2024-12-18 15:54:06 -06:00