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
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
Yassine Doghri
164f4d3be7
fix(models): set updatedField as empty string when not used
2024-01-16 09:26:14 +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
2dd9cc9ef5
chore(phpstan): remove redundant dynamicConstantNames
...
+ update quality tools
2023-09-26 14:56:04 +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
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
a00e45ea4c
build: update js and php dependencies to latest
2023-04-14 11:22:12 +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
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
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
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
3234500e2d
feat: add premium podcasts to manage subscriptions for premium episodes
...
closes #193
2022-09-28 15:02:09 +00:00
Yassine Doghri
e66bf44341
fix(search-episodes): add fallback sql query using LIKE for search query with less than 4 characters
...
fixes #236
2022-07-28 15:11:25 +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
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
4e22a0d5e4
fix: use UTC_TIMESTAMP() to get current utc date instead of NOW() in sql queries
2022-04-14 14:33:53 +00:00
Ola Hneini
9859c7434c
fix: change message upon cancellation of episode publication
2022-04-01 16:35:34 +00:00
Yassine Doghri
10d3f73786
feat: add WebSub module for pushing feed updates to open hubs
2022-03-15 16:47:35 +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
00987610a0
feat(transcript): parse srt subtitles into json file + add max file size info below audio file input
...
remove episode form warning + add javascript validation when uploading a file to check if it's too
big to upload
2022-01-09 16:37:13 +00:00
Yassine Doghri
07d740b79f
feat: prefill season and episode numbers + set episode number as mandatory for serial podcasts
...
closes #134 , #136
2022-01-05 16:01:44 +00:00
Yassine Doghri
d0cb964b0f
refactor: harmonize redirects after submitting forms
...
go back to form after submitting an edit form
2022-01-05 14:58:53 +00:00
Yassine Doghri
de19317138
feat(soundbites): add soundbite list and creation forms with audio-clipper component
2022-01-03 13:52:07 +00:00
Yassine Doghri
58e2a00a87
feat(media): save audio, images, transcripts and chapters to media for episode and persons
2021-12-29 12:10:13 +00:00
Yassine Doghri
fafaa7e689
feat(media): clean media api + create an entity per media type
2021-12-29 12:10:13 +00:00
Yassine Doghri
6ecf2866cf
feat: add media entity and link documents, images and audio files to it
2021-12-29 12:09:32 +00:00
Yassine Doghri
4a8147bfbb
feat: add podcast banner field for each podcast + refactor images configuration
...
- rename image fields on podcast, episode and persons for better clarity
- set different sizes
config for podcast cover, banner and persons avatars
- add tiny size for covers
- fix responsive
on admin forms
2021-12-29 12:04:04 +00:00
Yassine Doghri
025b2f42e6
refactor: replace "embeddable-player" occurrences to "embed"
2021-12-29 12:02:53 +00:00
Yassine Doghri
f75bd76458
fix: unpublish episode before deleting it + add validation step before deletion
...
fixes #112 , closes #55
2021-12-29 12:00:55 +00:00
Yassine Doghri
746b518789
refactor: replace ui function components with class components + fix
...
soundbites js
2021-12-29 11:55:43 +00:00
Yassine Doghri
7a276764e6
feat(themes): add ViewThemes library to set views in root themes folder
...
app, admin, install and authentication views are now located in root themes/ folder
2021-12-29 11:54:52 +00:00
Yassine Doghri
a95de8bab0
feat(components): add custom view renderer with ComponentRenderer adapted from bonfire2
...
- update Component class structure and remove component helper function and ComponentLoader
- update residual activitypub naming to fediverse
2021-12-29 11:54:50 +00:00
Yassine Doghri
5083cd2fda
refactor(modules): extract castopod parts into a modules/ folder for a scalable HMVC structure
...
- create Admin, Analytics, Auth, Fediverse and Install modules in the root modules/ folder
- rename
ActivityPub to Fediverse
2021-12-29 11:54:22 +00:00