124 Commits

Author SHA1 Message Date
Yassine Doghri
3359abf3fc fix: remove exit function from podcast:import command to allow for episodes:compute-downloads to run
- update CI4 to v4.5.7
- update php and js dependencies to latest
- reconfigure lint-staged
2025-01-08 12:11:18 +00:00
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
3a7d26fdf9 feat(rss): add option for 301 redirect to new feed url 2024-10-24 12:23:59 +00:00
Yassine Doghri
bba13d80f7 build: update CI4 to v4.5.5 + php and js packages to latest 2024-09-24 10:35:55 +00:00
Yassine Doghri
bb628f355f refactor: add modules folder to phpstan paths + fix errors 2024-04-28 16:41:24 +00:00
Yassine Doghri
fc4f982556 fix: set owner email visibility when editing podcast
fixes #473
2024-04-28 10:16:23 +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
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
164f4d3be7 fix(models): set updatedField as empty string when not used 2024-01-16 09:26:14 +00:00
Yassine Doghri
68a599fee0 feat(persons): order persons by full_name ASC for easier list scanning
closes #418
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
c1ec98c956 fix(persons): delete person avatar when deleting a person
fixes #419
2024-01-15 14:34:11 +00:00
Yassine Doghri
30a3473863 fix(episode-form): add required validation rules for title and slug
fixes #420
2024-01-15 14:34:11 +00:00
Yassine Doghri
694328f108 fix(episode-form): render episode number optional when episode type is trailer or bonus 2023-12-12 15:45:38 +00:00
Yassine Doghri
dff85168b3 fix: move monetization outside of podcast form + add broadcast section to podcast menu 2023-11-17 17:29:05 +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
2d52fa1046 fix: reorder podcast form fields + extract sync feeds to its own form
- update fields' styling
- update icons contents
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
ba5324ea19 fix(admin): redirect root fediverse route to fediverse-blocked-actors 2023-09-09 10:23:34 +00:00
Yassine Doghri
2c07070b2c refactor: use Validation::getValidated() when using $this->validate() in controllers 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
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
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
c682f03a67 fix: replace essence with embera to create preview cards 2023-05-09 11:55:16 +00:00
Yassine Doghri
108fdf84b8 fix(import-update): insert episodes incrementally into database 2023-05-05 12:56:57 +00:00
Yassine Doghri
ebb9be985a chore(podcast-import): clean unnecessary critical log when importing episodes 2023-04-17 11:21:07 +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
41d8efe6e7 fix: delete files using file_manager when deleting episode and podcast
- add deleteAll method to file manager
- refactor deletePodcastImageSizes and
deletePersonImagesSizes implementations
2023-03-30 13:23:10 +00:00
misuzu
7e1a470ba4 feat(media): set media storage directory as configurable 2023-03-28 16:13:04 +00:00
Aonrud
ae5e12be3b fix: allow images to have .jpeg extension consistently 2023-03-21 18:06:54 +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
b63c1dc9b1 feat: add downloads count to episode list 2023-02-28 16:53:58 +00:00
Yassine Doghri
84a6447fd4 ci: fix lint and formatting issues 2023-02-22 16:29:45 +00:00
Yassine Doghri
a2a87abf7c fix: display bandwidth limit on dashboard when set in .env 2022-12-28 16:57:14 +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
16527ed529 feat(analytics): add OP3 analytics service option + update episode audio url 2022-12-09 15:04:42 +00:00
Yassine Doghri
82310a2e0b fix(platforms): convert special characters to htmlentities to validate url
remove validate_url custom validator and replace with CI4's valid_url_strict
2022-11-04 10:39:26 +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
07780c5f6f refactor(migrations): set namespace to null to run all migrations during install and updates 2022-10-20 06:48:44 +00:00
Yassine Doghri
b07ac093b2 fix: validate slug length when submitting episode form + clean permalink edit prefix 2022-10-19 14:56:39 +00:00
Yassine Doghri
1686f840d1 fix: sort episodes by published_at with unpublished episodes at the begining
set the right permissions for episode's publication date edit

fixes #249
2022-10-18 17:25:49 +00:00
Yassine Doghri
d0836f3ee3 feat: add about page in admin with instance info + database update button 2022-10-18 16:53:51 +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
d783d16eb7 feat(episode): add form to allow editing episode's publication date to a past date
This allows podcasters to reorganize their published episodes as they see fit

closes #97
2022-10-14 14:37:03 +00:00