Yassine Doghri
|
f7f9bafc3e
|
feat(admin): add tooltip for not authorized routes
|
2024-01-15 14:34:11 +00:00 |
|
Yassine Doghri
|
68a599fee0
|
feat(persons): order persons by full_name ASC for easier list scanning
closes #418
|
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
|
c1ec98c956
|
fix(persons): delete person avatar when deleting a person
fixes #419
|
2024-01-15 14:34:11 +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
|
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 |
|