Yassine Doghri
|
b4718a93b2
|
build(php): upgrade min php version to 8.3
|
2024-05-29 10:24:13 +00:00 |
|
Yassine Doghri
|
ff6a699beb
|
test(plugins): add test cases for loading manifest data
|
2024-05-28 15:57:04 +00:00 |
|
Yassine Doghri
|
8d9ddd76c0
|
refactor(plugins): rename manifest schema
|
2024-05-28 10:14:10 +00:00 |
|
Yassine Doghri
|
ee7808ec70
|
feat(plugins): add before channel/item hooks to allow podcast/episode data edit when generating rss
|
2024-05-28 10:14:10 +00:00 |
|
Yassine Doghri
|
c604f0426f
|
feat(plugins): display errors when plugin is invalid instead of crashing
|
2024-05-28 10:14:10 +00:00 |
|
Yassine Doghri
|
f18d054ad1
|
feat(plugins): handle empty states and long strings in UI
|
2024-05-28 10:14:10 +00:00 |
|
Yassine Doghri
|
adbc7e78c0
|
feat(plugins): abstract settings form for general, podcast and episode types
update filter permission logic for replacing router param
|
2024-05-28 10:14:10 +00:00 |
|
Yassine Doghri
|
8917bdb655
|
feat(plugins): add new field types + validate & cast user data before storing settings
+ refactor form fields components
|
2024-05-28 10:14:10 +00:00 |
|
Yassine Doghri
|
9da1d0a1b6
|
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-05-28 10:14:10 +00:00 |
|
Yassine Doghri
|
f033468981
|
feat(plugins): load README.md file to view plugin's instructions in UI
|
2024-05-28 10:14:10 +00:00 |
|
Yassine Doghri
|
895acb9c1a
|
feat(plugins): load and validate plugin manifest.json
|
2024-05-28 10:14:10 +00:00 |
|
Yassine Doghri
|
4d90e10c9f
|
feat(plugins): add json schema definition for plugin manifest
|
2024-05-28 10:14:10 +00:00 |
|
Yassine Doghri
|
ea9685faad
|
refactor(plugins): redefine plugins folder structure to vendor/package
|
2024-05-28 10:14:10 +00:00 |
|
Yassine Doghri
|
fe48bbbda5
|
feat(plugins): uninstall plugins via CLI and admin UI
|
2024-05-28 10:14:10 +00:00 |
|
Yassine Doghri
|
3f204819f3
|
feat(plugins): add settings page for podcast and episode if defined in the plugin's manifest
- rename options to settings
|
2024-05-28 10:14:10 +00:00 |
|
Yassine Doghri
|
b9aa6a4d3e
|
feat(plugins): add options to manifest for building forms and storing plugin settings
|
2024-05-28 10:14:10 +00:00 |
|
Yassine Doghri
|
fc67af19cb
|
feat(plugins): add siteHead hook to add custom meta tags to public pages
|
2024-05-28 10:14:10 +00:00 |
|
Yassine Doghri
|
dfd5fe73cb
|
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-05-28 10:14:10 +00:00 |
|
Yassine Doghri
|
30edf698d7
|
feat(plugins): load plugins using file locator service
|
2024-05-28 10:14:10 +00:00 |
|
Yassine Doghri
|
bb1f8a740d
|
feat: add Plugins module with base files for plugins architecture
|
2024-05-28 10:14:10 +00:00 |
|
Yassine Doghri
|
d88b041d2c
|
docs: change vitepress with astro's starlight
- change language keys to kebab-case
- add new languages to docs: ca, de, es, sr-latn, zh-hans
|
2024-05-21 16:07:56 +00:00 |
|
crowdin
|
70f56a73ff
|
chore(i18n): new Crowdin updates
|
2024-05-21 11:16:15 +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
|
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
|
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 |
|
crowdin
|
499005d798
|
chore(i18n): new Crowdin updates
|
2024-04-17 09:57:14 +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 |
|
crowdin
|
bd205d56ca
|
chore(i18n): new Crowdin updates
|
2024-03-12 09:32:22 +00:00 |
|
Yassine Doghri
|
c24850bda9
|
build(i18n): include Breton and Serbian (Latin) languages to Castopod bundle
|
2024-03-12 09:32:22 +00:00 |
|
crowdin
|
656627050a
|
chore(i18n): new Crowdin updates
|
2024-03-12 09:32:22 +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 |
|
crowdin
|
83b6571a81
|
chore(i18n): new Crowdin updates
|
2024-02-26 11:09:03 +00:00 |
|
crowdin
|
1e208c55ca
|
chore(i18n): new Crowdin updates
|
2024-02-22 10:11:10 +00:00 |
|
Yassine Doghri
|
dfd66beebf
|
fix(import): set episodes as premium if podcast is set as premium by default
|
2024-02-21 12:57:16 +00:00 |
|
Yassine Doghri
|
cec78155f9
|
fix(podcast-import): move closing parenthasis when checking for owner name and email existence
This fixes a bug introduced in 1.10.0, having imports blocked and showing "1" as error.
|
2024-02-20 15:25:01 +00:00 |
|
Yassine Doghri
|
5fd0980ff7
|
fix(fediverse): use config name to get Fediverse config properties instead of hardcoded class string
|
2024-02-20 10:01:16 +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 |
|
Yassine Doghri
|
d580369235
|
fix(op3): move op3 prefix to enclosure url instead of audio proxy
|
2024-02-12 16:55:09 +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 |
|
crowdin
|
d02ac93867
|
chore(i18n): new Crowdin updates
|
2024-02-05 17:03:36 +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
|
6a77a9d2f2
|
fix(s3): remove proxy, set objects acl to public-read, and serve files using their public urls
|
2024-01-30 15:26:22 +00:00 |
|
Yassine Doghri
|
2accb0f765
|
fix(premium-subs): clear subscription list cache after insert
fixes #430
|
2024-01-24 17:33:58 +00:00 |
|
Guy Martin
|
5f3752b443
|
feat(admin): add podcast's OP3 analytics dashboard link
|
2024-01-23 13:19:53 +00:00 |
|