199 Commits

Author SHA1 Message Date
Yassine Doghri
35519f3a64 fix(episode): do not change slug when editing episode title
fixes #513
2024-09-18 12:01:18 +00:00
Yassine Doghri
1014c1f4d1 fix(icons): set correct names for lock and lock-unlock icons in premium banner 2024-09-18 11:55:47 +00:00
Yassine Doghri
fc9ea7597e feat(plugins): add minCastopodVersion to denote incompatibility with previous Castopod versions 2024-07-05 16:47:01 +00:00
Yassine Doghri
fee7905935 feat(plugins): load and display LICENSE.md file if found in plugin's directory 2024-07-05 16:44:35 +00:00
Yassine Doghri
0ba0a25b11 fix(audio-player): set player icons to default instead of missing Castopod's 2024-07-04 14:44:17 +00:00
Aonrud
322836254e fix: broken icon call in frontend default pages template 2024-07-04 13:27:36 +00:00
Yassine Doghri
e9c04548de build: update CI to 4.5.3 + php and js dependencies to latest 2024-07-04 13:27:10 +00:00
Yassine Doghri
5d35524875 fix: set correct icons parameters in map and funding links views
fixes #500
2024-07-04 13:26:59 +00:00
Yassine Doghri
8f8c61eaae docs(plugins): add experimental plugins section + plugins:create command to create plugin via CLI 2024-06-14 15:53:33 +00:00
Yassine Doghri
91dc8c8325 test(plugins): add test suite for Plugins service 2024-06-14 15:53:33 +00:00
Yassine Doghri
2035c39fd1 feat(plugins): register plugins using Plugin.php file instead of namespace + simplify i18n structure 2024-06-14 15:53:33 +00:00
Yassine Doghri
80d2c48ee2 feat(plugins): add before channel/item hooks to allow podcast/episode data edit when generating rss 2024-06-14 15:53:33 +00:00
Yassine Doghri
8ec79097bb feat(plugins): display errors when plugin is invalid instead of crashing 2024-06-14 15:53:33 +00:00
Yassine Doghri
45ac2a4be9 feat(plugins): handle empty states and long strings in UI 2024-06-14 15:53:33 +00:00
Yassine Doghri
b62b483ad9 feat(plugins): abstract settings form for general, podcast and episode types
update filter permission logic for replacing router param
2024-06-14 15:53:33 +00:00
Yassine Doghri
6f833fc76a feat(plugins): add new field types + validate & cast user data before storing settings
+ refactor form fields components
2024-06-14 15:53:33 +00:00
Yassine Doghri
82714e7155 style(buttons): add tint to variants 2024-06-14 15:53:33 +00:00
Yassine Doghri
dfb7888aeb feat(plugins): add aside with plugin metadata next to plugin's readme
- enhance plugin card ui
- refactor components to be more consistent
- invert toggler label for better UX
- edit view components regex
2024-06-14 15:53:33 +00:00
Yassine Doghri
e6bfdfc390 feat(plugins): load README.md file to view plugin's instructions in UI 2024-06-14 15:53:32 +00:00
Yassine Doghri
1510e36c0a feat(plugins): load and validate plugin manifest.json 2024-06-14 15:53:32 +00:00
Yassine Doghri
b5eddf351f feat(plugins): add json schema definition for plugin manifest 2024-06-14 15:53:32 +00:00
Yassine Doghri
896f00661f refactor(plugins): redefine plugins folder structure to vendor/package 2024-06-14 15:53:32 +00:00
Yassine Doghri
9a80de4068 feat(plugins): uninstall plugins via CLI and admin UI 2024-06-14 15:53:32 +00:00
Yassine Doghri
89ac92fb41 feat(plugins): add settings page for podcast and episode if defined in the plugin's manifest
- rename options to settings
2024-06-14 15:53:32 +00:00
Yassine Doghri
3d8aedf9c3 feat(plugins): add options to manifest for building forms and storing plugin settings 2024-06-14 15:53:32 +00:00
Yassine Doghri
27d2a1b0ff feat(plugins): activate / deactivate plugin using settings table
+ load plugin icon
+ add pagination
+ autoload plugins in Config/Autoload.php to handle plugin
i18n
+ style plugin cards
2024-06-14 15:53:32 +00:00
Yassine Doghri
eb7ad2f7e1 fix(import): rewrite download_file helper to output curl response directly to file
This prevents memory exhaustion when downloading large files
2024-06-05 18:46:34 +00:00
Yassine Doghri
bb628f355f refactor: add modules folder to phpstan paths + fix errors 2024-04-28 16:41:24 +00:00
Yassine Doghri
7a6d9df6db feat: set owner email to hidden by default in podcast create form 2024-04-28 10:19:35 +00:00
Yassine Doghri
51b064d67a refactor(icons): use php-icons library to load and display icons 2024-04-26 17:57:25 +00:00
Yassine Doghri
fe73e9fae9 fix(platforms): add platforms service + reduce memory consumption when rendering platform cards 2024-04-26 10:45:30 +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
Guy Martin (Dwev)
4d141fceae feat: add transcript display to episode page
+ fix transcript parser

closes #411
2024-04-17 09:13:07 +00:00
Yassine Doghri
a343de4cf6 fix(chapters): use episode cover when chapter img is an empty string
fixes #444
2024-02-21 14:14:29 +00:00
Yassine Doghri
419bb04716 fix(podcast-import): rollback transaction before exception is thrown
This allows errors' messages to resurface and prevent the script of having the generic "Process was
killed." error.

fixes #429, closes #319, #443, #438
2024-02-19 11:08:00 +00:00
Yassine Doghri
d0a94dd2cb chore: update php and js dependencies to latest 2024-02-17 13:01:39 +00:00
Guy Martin
87cc437e1e feat: display chapters in episode's public page
closes #423
2024-02-17 12:02:38 +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
de099ac643 feat: add actor domain to handle in follow page 2024-01-30 15:18:02 +00:00
Yassine Doghri
3cb5ffd25b fix(i18n): escape language strings in form fields to prevent them from disappearing
fixes #412
2024-01-24 16:48:23 +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
0bd7ddea58 feat(admin): emphasize unprivileged items in sidebar with "prohibited" icon 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
1861d67971 fix(podcast-form): move fediverse section below author section 2023-11-29 16:00:28 +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