Commit Graph

79 Commits

Author SHA1 Message Date
Yassine Doghri bb628f355f refactor: add modules folder to phpstan paths + fix errors 2024-04-28 16:41:24 +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 7071b4b6f4 feat: support VTT transcript file format in addition to SRT
closes #433
2024-02-09 16:34:50 +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
Guy Martin 5f3752b443 feat(admin): add podcast's OP3 analytics dashboard link 2024-01-23 13:19:53 +00:00
Yassine Doghri f7f9bafc3e feat(admin): add tooltip for not authorized routes 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 18e2633a49 feat(admin): add rss feed link to podcast side navigation 2023-11-21 17:15:04 +00:00
Yassine Doghri 61cf8fa3e2 fix(platforms): make platforms' websites and submit urls more prominent
+ show default podcast website (castopod) link first in links page
2023-11-17 17:29:05 +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 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 b047a3c670 fix(admin-ux): hide navigation submenus in details panel for easier scanning 2023-11-17 17:29:05 +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 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 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
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 a2a87abf7c fix: display bandwidth limit on dashboard when set in .env 2022-12-28 16:57:14 +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 4f7c17f420 chore: add missing translation keys for blocked actors and domains breadcrumb 2022-11-22 16:48:59 +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 d0836f3ee3 feat: add about page in admin with instance info + database update button 2022-10-18 16:53:51 +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
Yassine Doghri b1303c5255 fix(premium-podcasts): return different cached page when podcast is unlocked
- clear podcast cache when setting subscription link
- update and add missing translation keys
2022-09-29 10:52:28 +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 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 1c8af7550b fix(users): remove required roles input when editing user + prevent owner's roles from being edited
fixes #239
2022-09-07 09:41:58 +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 b1a6c02e56 feat(admin): add instance wide dashboard with storage and bandwidth usage
* add DashboardCard component
* add instance wide podcasts and episodes numbers
* add app.storageLimit environment variable
* divide bytes by 1000 instead of 1024 in stats sql queries

closes #216
2022-07-06 15:29:15 +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
root ea20206ee6 fix: change image size requirement hints 2022-06-17 16:49:29 +00:00
root 5eb9dc168e feat: add update rss feed feature for podcasts to import their latest episodes
closes #183
2022-06-17 16:46:59 +00:00
Yassine Doghri 6be5d12877 feat(admin): add search form in podcast episodes list
closes #26
2022-06-17 12:52:36 +00:00
Ola Hneini dbb4030da4 feat: add permanent delete feature for podcasts 🎉
closes #89
2022-06-07 11:13:06 +00:00
Ola Hneini eb9ff522c2 feat(episodes): replace soft delete with permanent delete
+ add constraint to prevent deleting an episode when published
2022-05-05 15:48:16 +00:00
Yassine Doghri 4c490c15bb fix: overwrite common lang function to escape returned string
closes #196, fixes #198
2022-04-21 12:54:19 +00:00
Ola Hneini 9859c7434c fix: change message upon cancellation of episode publication 2022-04-01 16:35:34 +00:00
Patryk Miś 2d83b44add feat(i18n): add Polish translation 2022-03-04 17:52:52 +00:00
Yassine Doghri cd2e1e1dc3 fix(security): add csrf filter + prevent xss attacks by escaping user input
- update CI4 to v4.1.9's stable production package
- update php and js dependencies to latest
2022-03-04 14:36:32 +00:00
Yassine Doghri fa5b5f51a4 docs(init): create documentation website using vitepress
- rename podlibre to adaures
- rename castopod-host to castopod
- simplify README and redirect to docs site
- move INSTALL and UPDATE docs
- add new gitlabci pipeline to deploy docs
- upgrade node to v16 in Dockerfile
2022-02-19 16:06:11 +00:00
Yassine Doghri e7eec48e7b feat(podcast-form): add new_feed_url field to set an url when changing domain or host 2022-02-09 17:44:24 +00:00
Yassine Doghri 99bfac0b42 feat(housekeeping): add clear_cache option to flush redis or files cache 2022-01-29 16:42:34 +00:00
Yassine Doghri 67b73c1525 docs: update install, update and readme for next release
fix translation files
2022-01-22 14:44:07 +00:00
Yassine Doghri 06b1a8b29b fix: update translations for settings' tasks to include what they should be used for 2022-01-21 19:51:36 +00:00
Yassine Doghri db191ac31b fix: add translation key for audio-clipper trim labels 2022-01-21 18:29:39 +00:00
Yassine Doghri dff1208725 fix(video-clips): check if created video exists before recreating it and failing
update seed scripts to prevent sql error when reloading install page
2022-01-21 17:25:27 +00:00
Yassine Doghri 7f7c878cb6 fix(video-clips): create unique temporary files for resources to be deleted after generation
- tempfile uniqueness ensures that each process lives in its independent context
- add
writable/temp folder to store video clips temporary resources
- add videoClipWorkers config to
Admin for specifying the number of ffmpeg processes to run in parallel
- update video clip preview
background to better suit the end result
2022-01-21 12:35:50 +00:00