Commit graph

268 commits

Author SHA1 Message Date
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
Alex Cabal
7a6a743295 Some type check fixes 2024-12-18 15:03:44 -06:00
Alex Cabal
b2191d1219 Allow editing of projects 2024-12-18 14:20:28 -06:00
Alex Cabal
97021ce26d Add blog post 2024-12-16 23:47:02 -06:00
Alex Cabal
7a3c7ad503 Allow VCS URLs to be null in projects 2024-12-16 21:48:01 -06:00
Alex Cabal
d902074285 Add new project form, and allow projects to be created when attempting to create a placeholder that already exists. 2024-12-16 21:27:45 -06:00
Alex Cabal
8e6b05a150 Fix typos 2024-12-16 15:49:18 -06:00
Alex Cabal
051e286a6d Continue fleshing out project management system 2024-12-16 15:01:22 -06:00
Alex Cabal
657ecc68d4 Tweak styling of placeholder form 2024-12-16 10:55:06 -06:00
Mike Colagrosso
6dd8d50148 Add a dropdown to specify collection type 2024-12-16 10:32:23 -06:00
Alex Cabal
10d2265513 Fix logic error in placeholder form 2024-12-16 00:21:56 -06:00