175 Commits

Author SHA1 Message Date
Yassine Doghri
5182d5d67a fix: add downloads_count to episodes table, computed every hour
This removes computing latency when retrieving episodes list with download count in admin.
The more
analytics records, the more it took to calculate the sum of hits to get the downloads count for each
episode.
2024-12-28 15:23:02 +00:00
Yassine Doghri
995ca5b197 fix(podcast-model): always query podcast from database when clearing cache
this prevents from having any unexpected caching side effects
2024-08-16 12:54:44 +00:00
Yassine Doghri
6a2cdd066e fix(preview): delete episode preview cache after editing episode
fixes #514
2024-08-14 10:34:13 +00:00
Yassine Doghri
bb628f355f refactor: add modules folder to phpstan paths + fix errors 2024-04-28 16:41:24 +00:00
Yassine Doghri
d4a36f811b chore: update CodeIgniter to 4.5.1 + other dependencies to latest 2024-04-26 09:26:22 +00:00
Yassine Doghri
303a900f66 refactor(platforms): move platforms data in code instead of database
refs #457
2024-04-24 14:47:05 +00:00
Guy Martin (Dwev)
57e459e187 feat: support podcast:txt tag with verify use case
closes #468
2024-04-24 10:03:20 +00:00
Yassine Doghri
a5aef2a63e fix(rss): generate podcast guid if empty
closes #450
2024-04-06 11:50:12 +00:00
Yassine Doghri
6289c42b11 fix(file-uploads): validate chapters json content + remove permit_empty rule to uploaded files
refs #445
2024-03-12 09:32:22 +00:00
Guy Martin
630e788f0e feat: add support for podcasting 2.0 "medium" tag with podcast, music and audiobook
closes #439
2024-02-05 16:51:04 +00:00
Yassine Doghri
67c037c9eb fix(podcast-about): update stats query to discard scheduled episodes from episodes number 2024-01-25 11:58:39 +00:00
Yassine Doghri
164f4d3be7 fix(models): set updatedField as empty string when not used 2024-01-16 09:26:14 +00:00
Yassine Doghri
6f8217e1a6 chore: update CI4 + shield + other php and js packages 2024-01-15 14:34:11 +00:00
Ewen Korr
222e02a2af feat: allow hiding owner's email in public RSS feed 2024-01-15 14:34:11 +00:00
Yassine Doghri
ac5336fbc5 fix(import): check for empty string when generating podcast guid for feeds not including one 2024-01-15 14:34:11 +00:00
Yassine Doghri
119742cdbb fix(housekeeping): add where clause to check episode_id is not null on reset comments count 2023-11-30 15:46:00 +00:00
Yassine Doghri
1861d67971 fix(podcast-form): move fediverse section below author section 2023-11-29 16:00:28 +00:00
Yassine Doghri
3d5fc14d5e build: upgrade CI4 + php and js dependencies to latest
closes #396
2023-11-17 17:29:05 +00:00
Yassine Doghri
02132dc466 fix(persons): set roles field as optional + set Cast > Host as default value
fixes #347
2023-11-17 17:29:05 +00:00
Yassine Doghri
2dd9cc9ef5 chore(phpstan): remove redundant dynamicConstantNames
+ update quality tools
2023-09-26 14:56:04 +00:00
Yassine Doghri
3c357183ca fix: use podcast-activity named route instead of not existing actor route 2023-09-09 10:23:34 +00:00
Yassine Doghri
ae57601c83 fix: update Router to include latest CI changes with alternate-content logic 2023-09-09 10:23:34 +00:00
Yassine Doghri
7ff1dbe903 fix: remove fediverse prefix to prevent migration error + load routes during podcast import
refactor migration queries to use forge functions
2023-09-09 10:23:34 +00:00
Yassine Doghri
d10c4fd753 fix(premium-podcasts): show premium flag only when podcast has published premium episodes 2023-08-28 14:01:33 +00:00
Yassine Doghri
7d21b3509e feat(episode): add preview link in admin to view and share episode before publication 2023-08-28 13:53:04 +00:00
Yassine Doghri
7a1eea58d3 fix(home): update where clause when getting all podcasts to prevent draft podcasts from showing up 2023-08-22 15:00:01 +00:00
Yassine Doghri
6833dd05ab fix(rss): update podcast extension namespace
refs #360
2023-07-29 08:27:43 +00:00
Yassine Doghri
d8e1d4031d feat(import): run podcast imports' processes asynchronously using tasks
- use codeigniter4/tasks project to handle cron tasks
- use yassinedoghri/podcast-feed project to parse feeds for imports
2023-06-21 16:17:11 +00:00
Krzysztof Domańczy
85505d4b31 feat(rest-api): add endpoints for episodes and full text search for podcasts and episodes
closes #296
2023-06-21 10:07:31 +00:00
Yassine Doghri
4c1a3e5015 refactor: fix some of phpstan's ignored errors 2023-06-13 16:05:02 +00:00
Yassine Doghri
2a50f6e4d2 style: update ecs config to align associative arrays arrows
update composer dependencies to latest
2023-06-12 15:12:49 +00:00
Yassine Doghri
855aacce0b fix(websub): add missing misc helper import
+ add checks before clearing episode cache
2023-04-17 11:18:02 +00:00
Yassine Doghri
a00e45ea4c build: update js and php dependencies to latest 2023-04-14 11:22:12 +00:00
Yassine Doghri
a76724a8cf fix(s3): add proxy to serve images from s3 to client
refs #321
2023-04-13 11:46:31 +00:00
Yassine Doghri
d93fc98469 feat(media): add s3 to manage media files
Users may choose between filesystem (FS) or S3 to store and manage their media files
2023-03-16 13:00:05 +00:00
Yassine Doghri
84a6447fd4 ci: fix lint and formatting issues 2023-02-22 16:29:45 +00:00
Yassine Doghri
46d70541d3 fix(notifications): remove cache inconsistencies when marking notification as read 2022-12-09 16:44:59 +00:00
Yassine Doghri
259fe5f697 fix(platforms): trim platform url before validation and storage
--> Having a URL with spaces in the beginning or end would cause the platform to be deleted
2022-11-01 15:15:39 +00:00
Yassine Doghri
3a57538572 build: set minimal php version to 8.1
closes #225
2022-10-17 14:17:50 +00:00
Yassine Doghri
c1287cbe6c refactor(auth): replace myth/auth with codeigniter/shield + define new roles
closes #222
2022-10-16 13:35:26 +00:00
Yassine Doghri
94c0b7c159 feat(rss): add rss feed route without the .xml extension
closes #247
2022-10-14 12:50:25 +00:00
Yassine Doghri
3234500e2d feat: add premium podcasts to manage subscriptions for premium episodes
closes #193
2022-09-28 15:02:09 +00:00
Yassine Doghri
b6114d3d93 chore: update rector to latest and use parallel for faster processing
update composer dependencies to latest
2022-09-28 14:00:46 +00:00
Yassine Doghri
f2bc2f7e01 fix: overwrite getActorById to return app's Actor entity 2022-09-14 10:21:14 +00:00
Yassine Doghri
e08555a4e9 fix(notifications): notify actors after activities insert / update using model callback methods
--> Remove sql triggers because most shared hosting plans prevent using them
2022-09-08 11:50:23 +00:00
Yassine Doghri
37f086075e chore: update CodeIgniter to 4.2.4 + other dependencies to latest 2022-08-22 15:36:29 +00:00
Ola Hneini
999999e3ef feat: add notifications inbox for actors
closes #215
2022-08-12 16:08:09 +00:00
Yassine Doghri
78acd7f5c0 feat(episode-unpublish): remove episode comments upon unpublish 2022-07-21 16:37:22 +00:00
Yassine Doghri
8acdafd260 fix(episode-unpublish): set consistent posts_counts' increments/decrements for actors and episodes
Some episodes could not be unpublished because of out of range error when removing posts.

fixes #233
2022-07-21 13:56:10 +00:00
Ola Hneini
3d363f2efe feat: add publish feature for podcasts and set draft by default
closes #128, #220
2022-07-05 16:39:20 +00:00