web/lib
Mike Colagrosso c8d5dfb11f Add properties that were previously omitted
PHP 8.3 (part of Ubuntu 24.04) outputs a deprecated warning for properties that
were not in the class definition. Error below. There were a few of these
missing from the `Ebook`, `GitCommit`, `CollectionMembership`, `EbookSource`,
and `Contributor` classes. Adding them doesn't change any functionality, but it
does make it clearer what properties a class has.

Some of these properties are never set for `Ebook` instances created from the
filesystem, i.e., `Created` and `Updated`, and some of them need to be manually
set to make `Ebook` instances from the filesystem and the database match, e.g.,
`GitCommitId`, `CollectionEbookId`, `EbookSourceId`, and `ContributorId`.
Making the `Ebook` instances from the filesystem and the database match each
other makes it easier to spot bugs in the future.

Previous errors with PHP 8.3:

```
PHP Deprecated:  Creation of dynamic property Ebook::$Created is deprecated in /standardebooks.org/web/lib/Traits/Accessor.php on line 42
PHP Deprecated:  Creation of dynamic property Ebook::$Updated is deprecated in /standardebooks.org/web/lib/Traits/Accessor.php on line 42
PHP Deprecated:  Creation of dynamic property GitCommit::$GitCommitId is deprecated in /standardebooks.org/web/lib/DbConnection.php on line 286
PHP Deprecated:  Creation of dynamic property GitCommit::$EbookId is deprecated in /standardebooks.org/web/lib/DbConnection.php on line 286
PHP Deprecated:  Creation of dynamic property GitCommit::$GitCommitId is deprecated in /standardebooks.org/web/lib/DbConnection.php on line 286
PHP Deprecated:  Creation of dynamic property GitCommit::$EbookId is deprecated in /standardebooks.org/web/lib/DbConnection.php on line 286
PHP Deprecated:  Creation of dynamic property GitCommit::$GitCommitId is deprecated in /standardebooks.org/web/lib/DbConnection.php on line 286
PHP Deprecated:  Creation of dynamic property GitCommit::$EbookId is deprecated in /standardebooks.org/web/lib/DbConnection.php on line 286
PHP Deprecated:  Creation of dynamic property GitCommit::$GitCommitId is deprecated in /standardebooks.org/web/lib/DbConnection.php on line 286
PHP Deprecated:  Creation of dynamic property GitCommit::$EbookId is deprecated in /standardebooks.org/web/lib/DbConnection.php on line 286
PHP Deprecated:  Creation of dynamic property GitCommit::$GitCommitId is deprecated in /standardebooks.org/web/lib/DbConnection.php on line 286
PHP Deprecated:  Creation of dynamic property GitCommit::$EbookId is deprecated in /standardebooks.org/web/lib/DbConnection.php on line 286
PHP Deprecated:  Creation of dynamic property CollectionMembership::$CollectionEbookId is deprecated in /standardebooks.org/web/lib/Traits/Accessor.php on line 42
PHP Deprecated:  Creation of dynamic property CollectionMembership::$EbookId is deprecated in /standardebooks.org/web/lib/Traits/Accessor.php on line 42
PHP Deprecated:  Creation of dynamic property CollectionMembership::$CollectionId is deprecated in /standardebooks.org/web/lib/Traits/Accessor.php on line 42
PHP Deprecated:  Creation of dynamic property EbookSource::$EbookSourceId is deprecated in /standardebooks.org/web/lib/DbConnection.php on line 286
PHP Deprecated:  Creation of dynamic property EbookSource::$EbookId is deprecated in /standardebooks.org/web/lib/DbConnection.php on line 286
PHP Deprecated:  Creation of dynamic property EbookSource::$EbookSourceId is deprecated in /standardebooks.org/web/lib/DbConnection.php on line 286
PHP Deprecated:  Creation of dynamic property EbookSource::$EbookId is deprecated in /standardebooks.org/web/lib/DbConnection.php on line 286
PHP Deprecated:  Creation of dynamic property Contributor::$ContributorId is deprecated in /standardebooks.org/web/lib/DbConnection.php on line 286
PHP Deprecated:  Creation of dynamic property Contributor::$EbookId is deprecated in /standardebooks.org/web/lib/DbConnection.php on line 286
PHP Deprecated:  Creation of dynamic property Contributor::$SortOrder is deprecated in /standardebooks.org/web/lib/DbConnection.php on line 286
```
2024-11-04 13:16:56 -06:00
..
Enums Update framework standards 2024-09-12 21:45:28 -05:00
Exceptions Add a Type enum to Tags for artwork/ebook 2024-11-04 13:16:56 -06:00
Traits Update framework standards 2024-09-13 12:01:25 -05:00
Artist.php Redirect an artwork if it's found under an artist's alternate name. 2024-11-03 15:15:07 -06:00
Artwork.php Get ebook from DB for artworks 2024-11-04 13:16:56 -06:00
ArtworkSortType.php Flesh out some PHPDocs, and consistently name enums 2024-05-14 15:40:56 -05:00
ArtworkStatusType.php Flesh out some PHPDocs, and consistently name enums 2024-05-14 15:40:56 -05:00
ArtworkTag.php Add a Type enum to Tags for artwork/ebook 2024-11-04 13:16:56 -06:00
AtomFeed.php Rename Created and Updated in PHP code to EbookCreated and EbookUpdated to match the schema 2024-11-04 13:16:56 -06:00
Benefits.php Don't allow submitters to review their own artwork 2024-01-13 16:38:22 -06:00
Collection.php Add a CollectionMembership class 2024-11-04 13:16:56 -06:00
CollectionMembership.php Add properties that were previously omitted 2024-11-04 13:16:56 -06:00
Constants.php Use Ebook::GetByIdentifier() to read ebooks 2024-11-04 13:16:56 -06:00
Contributor.php Add properties that were previously omitted 2024-11-04 13:16:56 -06:00
Core.php Flesh out some PHPDocs, and consistently name enums 2024-05-14 15:40:56 -05:00
Db.php Create a helper function for SQL set membership 2024-11-04 13:16:56 -06:00
DbConnection.php Update framework standards 2024-09-12 21:45:28 -05:00
DonationDrive.php Add automatic donation drives 2024-10-17 11:58:25 -05:00
Ebook.php Add properties that were previously omitted 2024-11-04 13:16:56 -06:00
EbookFormatType.php Flesh out some PHPDocs, and consistently name enums 2024-05-14 15:40:56 -05:00
EbookSortType.php Flesh out some PHPDocs, and consistently name enums 2024-05-14 15:40:56 -05:00
EbookSource.php Add properties that were previously omitted 2024-11-04 13:16:56 -06:00
EbookSourceType.php Initial code changes to insert/update Ebook records 2024-11-04 13:16:56 -06:00
EbookTag.php Add a Type enum to Tags for artwork/ebook 2024-11-04 13:16:56 -06:00
Email.php Continue improving type hints 2024-05-10 23:38:57 -05:00
Feed.php Continue improving type hints 2024-05-10 23:38:57 -05:00
Formatter.php Replace some global variables with static class properties in Formatter 2024-07-06 13:34:12 -05:00
GitCommit.php Add properties that were previously omitted 2024-11-04 13:16:56 -06:00
HttpInput.php Update framework standards 2024-09-12 21:45:28 -05:00
Image.php Continue improving type hints 2024-05-10 23:38:57 -05:00
ImageMimeType.php Remove unused import 2024-04-09 11:13:10 -05:00
Library.php Remove Library::RebuildCache 2024-11-04 13:16:56 -06:00
LocSubject.php Use ::class names instead of strings in LocSubject and EbookTag 2024-11-04 13:16:56 -06:00
Log.php Use a NOW constant instead of new DateTimeImmutable objects, and tweak how some donation drive dates work 2024-10-15 22:21:12 -05:00
Manual.php Remove unused exception variables, now that this is possible with PHP8 2023-06-06 21:00:12 -05:00
Museum.php Add KMSK as approved museum in artwork form 2024-09-22 12:49:54 -05:00
NewsletterSubscription.php Use a NOW constant instead of new DateTimeImmutable objects, and tweak how some donation drive dates work 2024-10-15 22:21:12 -05:00
OpdsAcquisitionFeed.php Switch from DateTime to DateTimeImmutable across codebase 2024-04-13 14:05:14 -05:00
OpdsFeed.php Use a NOW constant instead of new DateTimeImmutable objects, and tweak how some donation drive dates work 2024-10-15 22:21:12 -05:00
OpdsNavigationEntry.php Switch from DateTime to DateTimeImmutable across codebase 2024-04-13 14:05:14 -05:00
OpdsNavigationFeed.php Continue improving type hints 2024-05-10 23:38:57 -05:00
Patron.php Use a NOW constant instead of new DateTimeImmutable objects, and tweak how some donation drive dates work 2024-10-15 22:21:12 -05:00
Payment.php Add type checks 2024-05-30 23:46:50 -05:00
PaymentProcessorType.php Flesh out some PHPDocs, and consistently name enums 2024-05-14 15:40:56 -05:00
Poll.php Use a NOW constant instead of new DateTimeImmutable objects, and tweak how some donation drive dates work 2024-10-15 22:21:12 -05:00
PollItem.php Use static class names instead of strings when getting objects from the DB 2024-05-13 14:49:28 -05:00
PollVote.php Use static class names instead of strings when getting objects from the DB 2024-05-13 14:49:28 -05:00
RssFeed.php Use a NOW constant instead of new DateTimeImmutable objects, and tweak how some donation drive dates work 2024-10-15 22:21:12 -05:00
Session.php Use a NOW constant instead of new DateTimeImmutable objects, and tweak how some donation drive dates work 2024-10-15 22:21:12 -05:00
Tag.php Add a Type enum to Tags for artwork/ebook 2024-11-04 13:16:56 -06:00
Template.php Bump PHPStan check level to max and add final round of type hints 2024-05-13 10:48:05 -05:00
User.php Use a NOW constant instead of new DateTimeImmutable objects, and tweak how some donation drive dates work 2024-10-15 22:21:12 -05:00
ViewType.php Add enum for view type and fix some type hints 2024-05-08 11:22:28 -05:00