Commit Graph

301 Commits

Author SHA1 Message Date
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
b61a32c8a9 fix(media): add missing HEAD route for static assets served with S3 2024-01-03 14:57:44 +00:00
crowdin
af6fe1e4ef chore(i18n): new Crowdin updates
+ sync composer.lock file using composer update
2023-12-21 16:12:09 +00:00
Yassine Doghri
8cd7886676 fix(analytics): upgrade opawg's user-agents-php to user-agents-v2-php
update php and js dependencies to latest
2023-12-21 15:48:54 +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
crowdin
34a2ebfd65 chore(i18n): new Crowdin updates 2023-11-29 17:27:10 +00:00
Yassine Doghri
2f1a5eb294 build: update shield to beta.8 + php and js dependencies to latest 2023-11-29 16:33:18 +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
02d4ba69ac feat(install): init database and create superadmin using CLI
closes #380
2023-11-17 17:29:05 +00:00
Yassine Doghri
97d793f55e fix(housekeeping): remove unnecessary $tablePrefix variable when resetting post count
fixes #383
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
6a7ef0109a fix(nodeinfo2): import database config + use dynamic table prefix for active local actors query 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
4ca7f9ccae fix(import): use cocur/slugify library to handle non latin text 2023-11-08 13:51:34 +00:00
Yassine Doghri
5a834c0f89 fix(auth): display error messages from validator 2023-10-05 11:36:36 +00:00
Yassine Doghri
ffa530e187 fix(fediverse): use NoteObject including episode link in content (hotfix) 2023-09-26 15:20:25 +00:00
Yassine Doghri
2dd9cc9ef5 chore(phpstan): remove redundant dynamicConstantNames
+ update quality tools
2023-09-26 14:56:04 +00:00
Yassine Doghri
4ecb42f7c8 fix(fediverse): do not cache remote action form + fix typo on post routes for passing post uuid
+ remove unnecessary session->start() directive
2023-09-17 10:07:59 +00:00
Yassine Doghri
3189f12206 fix(fediverse): update post controller namespace in routes 2023-09-15 16:40:07 +00:00
crowdin
d1b35312a4 chore(i18n): new Crowdin updates 2023-09-09 11:48:16 +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
77c2d08b6e build: add phpstan-codeigniter extension to manage config(), model() and service() functions 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
7ff1dbe903 fix: remove fediverse prefix to prevent migration error + load routes during podcast import
refactor migration queries to use forge functions
2023-09-09 10:23:34 +00:00
Yassine Doghri
b4f1b916bf fix(routes): overwrite RouteCollection to include all routes + update js and php dependencies 2023-09-09 10:23:34 +00:00
Yassine Doghri
4ccb363a3d refactor(modules): add Registrars to declare filter aliases 2023-09-09 10:23:34 +00:00
Yassine Doghri
c6e8000bab fix(auth): overwrite Shield's PermissionFilter 2023-09-09 10:23:34 +00:00
Yassine Doghri
23842df03a fix(auth): update shield from v1.0.0-beta.3 to v1.0.0-beta.6
v1.0.0-beta.4 fixes a security issue "Password Shucking Vulnerability"
(https://github.com/codeigniter4/shield/security/advisories/GHSA-c5vj-f36q-p9vg)
2023-09-09 10:23:34 +00:00
Aonrud
6be38e9fda fix(analytics): show full referrer domain in web pages visits reports
fixes #367
2023-08-31 08:53:46 +00:00
crowdin
b719be10c0 chore(i18n): new Crowdin updates 2023-08-28 14:13:45 +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
11aa3586a0 fix(s3): add a flag to serve media files by redirecting to a presigned url instead of default proxy 2023-08-21 13:34:48 +00:00
Yassine Doghri
754e7a6b4b fix(media): get path using media_path_absolute when saving media file 2023-08-06 13:49:06 +00:00
Yassine Doghri
9346e787bd fix(media): copy and delete temp file when saving instead of moving it for FS FileManager
+ throw exception instead silently failing file save

closes #338
2023-08-06 12:14:25 +00:00
Yassine Doghri
0775add678 fix(media): init file properties in setAttributes' Model method + set defaults to pathinfo data 2023-08-05 10:14:06 +00:00
Yassine Doghri
9cc5ffd143 fix(admin-ui): remove button labels on smaller screens in podcast view
- update components renderer regex to include special characters
- fix itunes_explicit mapping
during import
2023-07-29 09:57:35 +00:00
crowdin
dfa93ff8e3 chore(i18n): new Crowdin updates 2023-07-27 12:47:41 +00:00
Yassine Doghri
9b955c9ce2 fix(s3): allow CORS for served static files 2023-07-19 15:04:17 +00:00
Yassine Doghri
5e719f3e9e fix(podcast-import): remove error log when no import in queue, exit with success instead 2023-07-11 10:28:19 +00:00
Yassine Doghri
082cdc9ee7 fix(fediverse): expand object before sending accept follow request
fixes #350
2023-07-05 14:57:05 +00:00
Yassine Doghri
41a5932233 fix(s3): handle range requests to serve media files 2023-07-04 11:03:34 +00:00
Yassine Doghri
0b327cb4d9 fix: set resized images to 72dpi for compatibility with Apple Podcasts
fixes #282
2023-07-02 09:42:54 +00:00
crowdin
5d1edd7e4c chore(i18n): new Crowdin updates 2023-06-29 15:23:25 +00:00
Yassine Doghri
60814b8d20 fix(video-clipper): add -t option to ffmpeg command to stop generation after duration
fixes #341
2023-06-29 15:15:04 +00:00
crowdin
c4bdde2b03 chore(i18n): new Crowdin updates 2023-06-27 10:47:52 +00:00
Yassine Doghri
e42258de1f fix(podcast-import): show cancel or retry action depending on task status 2023-06-26 12:05:17 +00:00
Yassine Doghri
06c4f15477 fix(fediverse): check that actor's images mimetype is present or guess it otherwise
fixes #348
2023-06-26 11:46:52 +00:00
Yassine Doghri
aa46dca4e3 fix(podcast-import): set default values for person group and role if not found in taxonomy
+ update podcast-feed and podcast-persons-taxonomy packages
2023-06-22 15:11:21 +00:00
crowdin
ad1ba4f8a1 chore(i18n): new Crowdin updates 2023-06-21 17:49:33 +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
30db9f0667 fix(s3): serve files without cache if dummy cache handler + add http referer header to redirect 2023-06-14 17:20:14 +00:00
Yassine Doghri
4c1a3e5015 refactor: fix some of phpstan's ignored errors 2023-06-13 16:05:02 +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
cb92dc73f1 fix(s3): use presigned request uri to serve static files 2023-06-05 11:48:29 +00:00
crowdin
5fb43065ef chore(i18n): new Crowdin updates 2023-05-09 14:30:05 +00:00
Yassine Doghri
c682f03a67 fix: replace essence with embera to create preview cards 2023-05-09 11:55:16 +00:00
crowdin
80dfe46323 chore(i18n): new Crowdin updates 2023-05-05 14:28:51 +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
855aacce0b fix(websub): add missing misc helper import
+ add checks before clearing episode cache
2023-04-17 11:18:02 +00:00
Yassine Doghri
a00e45ea4c build: update js and php dependencies to latest 2023-04-14 11:22:12 +00:00
crowdin
23a47efefd chore(i18n): new Crowdin updates 2023-04-14 09:47:53 +00:00
Yassine Doghri
502f53c970 fix(s3): serve files using media base url to allow for CDN setup 2023-04-14 09:35:05 +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
crowdin
1a69bc48bb chore(i18n): new Crowdin updates 2023-04-01 12:38:40 +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
Yassine Doghri
da7076fc2d fix(s3): do not create bucket if not exists, check if healthy instead
update php and js dependencies to latest
2023-03-23 11:46:21 +00:00
Aonrud
ae5e12be3b fix: allow images to have .jpeg extension consistently 2023-03-21 18:06:54 +00:00
Yassine Doghri
208c2715f9 fix(s3): delete persons image sizes from bucket + add keyPrefix to config 2023-03-21 17:08:42 +00:00
Yassine Doghri
a4141421aa fix(migration): change old media file_key to file_path
fixes #314
2023-03-18 10:13:36 +00:00
Yassine Doghri
b3c6e05e6f fix: change app.mediaBaseURL to media.baseURL in install, docker entrypoints and docs 2023-03-17 17:36:26 +00:00
Yassine Doghri
5d2a2d49c4 fix(contributors): add dash to prevent deleting permissions from other podcast
fixes #310
2023-03-17 16:34:44 +00:00
Yassine Doghri
1dde11f8e4 feat: add health route to check if db, cache and file manager are ok 2023-03-17 14:54:03 +00:00
crowdin
d2151b74bd chore(i18n): new Crowdin updates 2023-03-16 16:45:41 +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
a9b630884b fix(auth): update podcast editors' permissions
`episodes.manage-notifications` should be `manage-notifications`
2023-03-07 14:55:49 +00:00
Yassine Doghri
b63c1dc9b1 feat: add downloads count to episode list 2023-02-28 16:53:58 +00:00
Yassine Doghri
fc009f3d00 revert(install): reset condition to look for instance owner before continuing install 2023-02-28 14:26:27 +00:00
Aonrud
1111177eb7 fix(analytics): check the x_forwarded_for client header 2023-02-24 15:38:14 +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
crowdin
1cc9c11e8f chore(i18n): new Crowdin updates 2022-12-14 11:18:11 +00:00
Yassine Doghri
77ccb30600 fix(analytics): set EpisodeAudioController to init user session data 2022-12-14 10:02:36 +00:00
Yassine Doghri
0ad22e49bc fix(op3): remove scheme when wraping audio URI 2022-12-13 11:56:49 +00:00
Yassine Doghri
964cbba54f fix(rss): add file extension to enclosure url 2022-12-13 11:34:50 +00:00
Yassine Doghri
46d70541d3 fix(notifications): remove cache inconsistencies when marking notification as read 2022-12-09 16:44:59 +00:00
crowdin
2e7b462d94 chore(i18n): new Crowdin updates 2022-12-09 15:42:46 +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
7fbbd08da6 fix(notifications): retrieve activity from database instead of getting cache 2022-12-07 14:00:38 +00:00
crowdin
80666bc728 chore(i18n): new Crowdin updates 2022-11-25 17:44:19 +00:00
Yassine Doghri
c13cfa0ea0 fix(router): revert to CI4 v4.2.7 to include all routes 2022-11-24 15:30:24 +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
1d6b177a55 fix: update actorUsername regex to get url_to actor
Since CI4 v4.2.8, the actor route is not retrieved anymore, this prevents users from creating a
podcast.
2022-11-18 17:38:40 +00:00
crowdin
b1e52ffac3 chore: new Crowdin updates 2022-11-17 14:42:46 +00:00