Yassine Doghri
11c916fe43
feat(themes): set different default banner per theme
2022-01-20 14:51:31 +00:00
Yassine Doghri
e4e7e0005e
fix(themes): update themes stylesheet route and remove css extension
...
removing the css extension prevents having the file hijacked by the web server config
2022-01-20 11:26:18 +00:00
Yassine Doghri
8721719cd7
feat(vite): add vite config to decouple it from CI_ENVIRONMENT
2022-01-19 18:31:57 +00:00
Yassine Doghri
958c1213ed
chore: update codeigniter4 after 4.1.7 hot fix release
2022-01-10 10:31:47 +00:00
Yassine Doghri
1fc3da139e
chore: update CodeIgniter to latest dev version after 4.1.6
2022-01-04 15:40:27 +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
827ca03f61
refactor(color-themes): set themes declaration as a config property + generate css file dynamically
2021-12-29 12:09:32 +00:00
Yassine Doghri
35aa7ea5d9
feat(video-clips): generate a 16:9 video using ffmpeg
2021-12-29 12:09:32 +00:00
Yassine Doghri
fee2c1c0d0
feat(pwa): add service-worker + webmanifest for each podcasts to have them install on devices
...
- configure service-worker using vite-plugin-pwa
- refactor Image entity to generate images of
different types based on size config
- add requirement for webp library for php gd to generate webp
images for instance
- add action to regenerate all instance images for eventual Images config
changes
- enhance google lighthouse metrics for pwa
2021-12-29 12:09:31 +00:00
Yassine Doghri
902f959b30
feat: add schema.org json-ld objects to podcasts, episodes, posts and comments pages
...
- refactor meta-tags by generating them in the controller and injecting them into the views
- use
`melbahja/seo` library to build opengraph and twitter meta-tags + schema.org objects
2021-12-29 12:06:13 +00:00
Yassine Doghri
5c529a83aa
feat(settings): add theme settings to set an accent color for all public pages
...
set 6 base accent colors: pine, lake, jacaranda, crimson, amber and onyx
2021-12-29 12:06:13 +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
5c56f3e6f0
feat(settings): add general config for instance (site name, description and icon)
2021-12-29 12:04:01 +00:00
Yassine Doghri
025b2f42e6
refactor: replace "embeddable-player" occurrences to "embed"
2021-12-29 12:02:53 +00:00
Yassine Doghri
932140077c
feat: redesign public podcast and episode pages + remove any information clutter for better ux
...
- add About podcast page
- use different layout for episode pages
- improve on user feedback with
design
- restructure app theme folders
- update js packages to latest versions
2021-12-29 12:02:14 +00:00
Yassine Doghri
2c0efc6563
feat: simplify podcast page's layout for better ux
2021-12-29 12:01:40 +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
58c8839902
refactor(componentrenderer): update locateView using a lookupModules property in config
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
Yassine Doghri
94872f2338
feat(ui): create ViewComponents library to enable building class and view files components
...
- replace some helper components and forms with class components in the ui
- create viewcomponents
service and load the component function to be used in views
2021-12-29 11:54:22 +00:00
Yassine Doghri
fcecbe1c68
fix(comments): add comment view partials for public pages
2021-12-29 11:54:22 +00:00
Yassine Doghri
0c187ef7a9
feat(comments): add like / undo like to comment + add comment page
2021-12-29 11:54:22 +00:00
Yassine Doghri
bb4752c35e
feat(comments): add comments to episodes + update naming of status to post
...
- remove confusing counts for episode (total favourites, total reblogs)
- add comments section to
episode page to display episode comments + post replies linked to the episode
2021-12-29 11:54:22 +00:00
Yassine Doghri
3ff1364906
chore: update php dependencies to latest
2021-12-29 11:54:20 +00:00
Yassine Doghri
7fdea63de7
fix(persons): set person picture as optional for better ux
...
- use default avatar image if person image is not set
- add thumbnail and medium default avatar
images
- set default avatar images directly in public/media folder
- remove public/media's root
folder from .gitignore
- remove unnecessary copy:images script and cpy-cli package
closes #125
2021-12-29 11:37:16 +00:00
Yassine Doghri
9dd4c7741e
fix: rename podcast name to podcast handle to clarify field usage
...
- podcast name was too vague and didn't come clearly for users: handle is more relevant
- update
package.json dependencies and remove unnused packages
closes #126
2021-12-29 11:37:16 +00:00
semantic-release-bot
3a0a76d705
chore(release): 1.0.0-alpha.80 [skip ci]
...
# [1.0.0-alpha.80](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.79...v1.0.0-alpha.80 ) (2021-12-29)
### Bug Fixes
* add application/octet-stream mimetype to mp3 and m4a extensions to prevent ext_in error ([339bef8
](339bef878e
)), closes [#145 ](https://code.podlibre.org/podlibre/castopod-host/issues/145 )
2021-12-29 10:08:43 +00:00
Yassine Doghri
339bef878e
fix: add application/octet-stream mimetype to mp3 and m4a extensions to prevent ext_in error
...
fixes #145
2021-12-29 09:46:32 +00:00
semantic-release-bot
ece476b388
chore(release): 1.0.0-alpha.79 [skip ci]
...
# [1.0.0-alpha.79](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.78...v1.0.0-alpha.79 ) (2021-12-20)
### Bug Fixes
* **import:** set episode and season numbers to null when not present in item tag ([3211398
](3211398c78
))
2021-12-20 16:42:51 +00:00
semantic-release-bot
548234aa4d
chore(release): 1.0.0-alpha.78 [skip ci]
...
# [1.0.0-alpha.78](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.77...v1.0.0-alpha.78 ) (2021-12-15)
### Bug Fixes
* **import:** add extension when downloading file without + truncate slug if too long ([c5f18bb
](c5f18bb6dc
))
2021-12-15 16:08:58 +00:00
Yassine Doghri
c5f18bb6dc
fix(import): add extension when downloading file without + truncate slug if too long
2021-12-15 15:44:58 +00:00
semantic-release-bot
d86315ed94
chore(release): 1.0.0-alpha.77 [skip ci]
...
# [1.0.0-alpha.77](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.76...v1.0.0-alpha.77 ) (2021-11-23)
### Bug Fixes
* **cors:** add preflight option routes for episode, podcast and status objects ([a281abf
](a281abfda4
))
* **podcast-import:** move guid attribute declaration for Episode entity to include slug data ([5d02ae3
](5d02ae3990
))
2021-11-23 11:03:31 +00:00
Yassine Doghri
a281abfda4
fix(cors): add preflight option routes for episode, podcast and status objects
2021-11-22 14:35:44 +00:00
semantic-release-bot
a09853ef14
chore(release): 1.0.0-alpha.76 [skip ci]
...
# [1.0.0-alpha.76](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.75...v1.0.0-alpha.76 ) (2021-10-26)
### Bug Fixes
* replace hardcoded style links with vite service + set default value for remote transcript url ([3f2e056
](3f2e05608e
)), closes [#149 ](https://code.podlibre.org/podlibre/castopod-host/issues/149 ) [#150 ](https://code.podlibre.org/podlibre/castopod-host/issues/150 )
2021-10-26 10:40:11 +00:00
semantic-release-bot
84a0029c56
chore(release): 1.0.0-alpha.75 [skip ci]
...
# [1.0.0-alpha.75](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.74...v1.0.0-alpha.75 ) (2021-10-05)
### Bug Fixes
* **rss:** cast number type values to string in rss_helper ([7180ae9
](7180ae9ec7
)), closes [#148 ](https://code.podlibre.org/podlibre/castopod-host/issues/148 )
2021-10-05 14:44:53 +00:00
semantic-release-bot
0f586152b0
chore(release): 1.0.0-alpha.74 [skip ci]
...
# [1.0.0-alpha.74](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.73...v1.0.0-alpha.74 ) (2021-09-28)
### Features
* **platforms:** add missing newpodcastapps.com's platforms ([92dd370
](92dd370e2f
))
2021-09-28 10:40:31 +00:00
semantic-release-bot
3c5d3f65bf
chore(release): 1.0.0-alpha.73 [skip ci]
...
# [1.0.0-alpha.73](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.72...v1.0.0-alpha.73 ) (2021-09-22)
### Bug Fixes
* **map:** update episode markers query to discard unpublished episodes ([b3caac4
](b3caac45b1
))
2021-09-22 15:29:24 +00:00
semantic-release-bot
797e532727
chore(release): 1.0.0-alpha.72 [skip ci]
...
# [1.0.0-alpha.72](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.71...v1.0.0-alpha.72 ) (2021-09-20)
### Bug Fixes
* rename field status to task_status to get scheduled activities ([4ff82a5
](4ff82a5f0a
))
2021-09-20 10:00:58 +00:00
semantic-release-bot
a78cacd3aa
chore(release): 1.0.0-alpha.71 [skip ci]
...
# [1.0.0-alpha.71](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.70...v1.0.0-alpha.71 ) (2021-09-17)
### Features
* **map:** display geolocated episodes on a map page ([4357cc2
](4357cc25cc
))
2021-09-17 16:01:13 +00:00
Benjamin Bellamy
4357cc25cc
feat(map): display geolocated episodes on a map page
2021-09-17 15:50:55 +00:00
semantic-release-bot
652fa3659e
chore(release): 1.0.0-alpha.70 [skip ci]
...
# [1.0.0-alpha.70](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.69...v1.0.0-alpha.70 ) (2021-08-31)
### Bug Fixes
* **partner:** set correct image URL ([61554be
](61554be12a
))
2021-08-31 09:01:26 +00:00
semantic-release-bot
1d00a23866
chore(release): 1.0.0-alpha.69 [skip ci]
...
# [1.0.0-alpha.69](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.68...v1.0.0-alpha.69 ) (2021-08-23)
### Bug Fixes
* **import:** cast description's SimpleXMLElement to string ([02d17be
](02d17be4ff
))
2021-08-23 14:20:06 +00:00
semantic-release-bot
4e76266d50
chore(release): 1.0.0-alpha.68 [skip ci]
...
# [1.0.0-alpha.68](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.67...v1.0.0-alpha.68 ) (2021-08-19)
### Bug Fixes
* **analytics:** redirect to mp3 file even when referer was not set ([9fc388d
](9fc388d154
))
2021-08-19 14:37:51 +00:00
semantic-release-bot
af7d625462
chore(release): 1.0.0-alpha.67 [skip ci]
...
# [1.0.0-alpha.67](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.66...v1.0.0-alpha.67 ) (2021-07-24)
### Features
* allow cross origin requests on episode comments ([e12f95a
](e12f95aca1
))
2021-07-24 17:01:10 +00:00
Yassine Doghri
e12f95aca1
feat: allow cross origin requests on episode comments
2021-07-24 15:34:12 +00:00
semantic-release-bot
797c96c1e6
chore(release): 1.0.0-alpha.66 [skip ci]
...
# [1.0.0-alpha.66](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.65...v1.0.0-alpha.66 ) (2021-07-24)
### Features
* **rss:** add podcast:comments tag to link to episode comments ([32e8c7c
](32e8c7c16a
))
2021-07-24 09:37:02 +00:00
semantic-release-bot
ed8dc0052c
chore(release): 1.0.0-alpha.65 [skip ci]
...
# [1.0.0-alpha.65](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.64...v1.0.0-alpha.65 ) (2021-07-22)
### Bug Fixes
* update conditions when checking for empty max_episodes and season_number ([fbad0b5
](fbad0b59f6
))
2021-07-22 14:40:17 +00:00
semantic-release-bot
7047d5afb7
chore(release): 1.0.0-alpha.64 [skip ci]
...
# [1.0.0-alpha.64](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.63...v1.0.0-alpha.64 ) (2021-07-12)
### Features
* **activitypub:** add Podcast actor and PodcastEpisode object with comments ([9e1e5d2
](9e1e5d2e86
))
2021-07-12 18:49:14 +00:00
Yassine Doghri
9e1e5d2e86
feat(activitypub): add Podcast actor and PodcastEpisode object with comments
2021-07-12 18:40:22 +00:00
semantic-release-bot
b814cfaf7c
chore(release): 1.0.0-alpha.63 [skip ci]
...
# [1.0.0-alpha.63](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.62...v1.0.0-alpha.63 ) (2021-07-12)
### Features
* build hashed static files to renew browser cache ([37c54d2
](37c54d2477
)), closes [#107 ](https://code.podlibre.org/podlibre/castopod-host/issues/107 )
2021-07-12 18:01:18 +00:00
Yassine Doghri
37c54d2477
feat: build hashed static files to renew browser cache
...
- replace rollup config with vitejs
- use vite dev server during development to take advantage of
hot module replacement (HMR)
- add vite service using Vite library to load css and js assets
- update package.json scripts and remove unnecessary
dependencies
- update scripts/bundle-prepare.sh
closes #107
2021-07-12 17:47:56 +00:00
semantic-release-bot
cdc660e3b0
chore(release): 1.0.0-alpha.62 [skip ci]
...
# [1.0.0-alpha.62](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.61...v1.0.0-alpha.62 ) (2021-07-02)
### Bug Fixes
* **episode:** replace guid's empty string value to null ([441052a
](441052af8d
))
2021-07-02 07:15:10 +00:00
semantic-release-bot
3b5ce93c1b
chore(release): 1.0.0-alpha.61 [skip ci]
...
# [1.0.0-alpha.61](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.60...v1.0.0-alpha.61 ) (2021-06-23)
### Bug Fixes
* **release:** add missing version number to castopod-host package ([8f3e9d9
](8f3e9d90c1
))
* **ux:** allow for empty message upon episode publication and warn user on submit ([33d01b8
](33d01b8d4f
)), closes [#129 ](https://code.podlibre.org/podlibre/castopod-host/issues/129 )
2021-06-23 15:54:31 +00:00
Yassine Doghri
33d01b8d4f
fix(ux): allow for empty message upon episode publication and warn user on submit
...
- clarify distiction between the announcement post and the show notes
- change "note" occurences in UI by "post"
- show warning message explaining why the podcaster should fill the message area
- the podcaster
can choose to publish the episode with an empty message anyways
- redirect user to episode
dashboard with error message when episode publication pages are inaccessible instead of showing a
404 error
- add a cancel publication button in publish-edit form when episode is scheduled
closes #129
2021-06-23 13:34:59 +00:00
Yassine Doghri
134a071add
refactor: rename all occurences of notes to statuses
2021-06-23 13:34:53 +00:00
semantic-release-bot
ddeabf5665
chore(release): 1.0.0-alpha.60 [skip ci]
...
# [1.0.0-alpha.60](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.59...v1.0.0-alpha.60 ) (2021-06-21)
### Features
* **rss:** add ˂podcast:guid˃ tag for channel ([1fab10e
](1fab10eb0d
))
2021-06-21 12:08:38 +00:00
semantic-release-bot
cc0d56a2f5
chore(release): 1.0.0-alpha.59 [skip ci]
...
# [1.0.0-alpha.59](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.58...v1.0.0-alpha.59 ) (2021-06-15)
### Bug Fixes
* check that additional files are valid when creating episode ([eac5bc8
](eac5bc876d
))
2021-06-15 07:15:18 +00:00
semantic-release-bot
7cb4e3a803
chore(release): 1.0.0-alpha.58 [skip ci]
...
# [1.0.0-alpha.58](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.57...v1.0.0-alpha.58 ) (2021-06-11)
### Bug Fixes
* cast actor_id to pass as int to set_interact_as_actor() function ([56a8e5d
](56a8e5d7dd
))
* **analytics:** set duration field to precise decimal as episode's audio file duration ([d772685
](d772685405
))
* **analytics:** update migrations to set decimal precision for latitude and longitude ([714d6b5
](714d6b5d49
))
* check for database connection and podcasts table existence before redirecting to install ([eb74e81
](eb74e81c3d
))
* save transcript and chapters files to podcasts folder ([63f49c7
](63f49c719f
))
* set cache expiration to next note publish to show note on publication date ([0a66de3
](0a66de3e6c
))
* set episode description footer to null when empty value ([3a7d97d
](3a7d97d660
))
* set location to null when getting empty string ([71b1b5f
](71b1b5f775
))
* update condition in home controller to redirect to install page ([33f1b91
](33f1b91d55
))
* **activity-pub:** cache issues when navigating to activity stream urls ([7bcbfb3
](7bcbfb32f7
))
* **activity-pub:** get database records using new model instances ([92536dd
](92536ddb38
))
* **category:** remove uncategorized option to enforce users in choosing a category ([8c64f25
](8c64f25a0e
))
* **install:** redirect manually to install wizard on first visit ([2ceaaca
](2ceaaca44f
))
* **types:** update fake seeders types + fix bugs ([76a4bf3
](76a4bf3441
))
* update broken contributor dropdown fields ([e5b7515
](e5b7515023
))
* **ux:** redirect user to install page on database error in home page ([9017e30
](9017e30bf4
))
* update condition in AnalyticsTrait ([fbc0967
](fbc0967caa
))
### Performance Improvements
* **cache:** use deleteMatching method to prevent forgetting cached elements in models ([76afc0c
](76afc0cfa2
))
### Reverts
* set deprecated config options back in App config ([433745f
](433745f194
))
2021-06-11 16:15:37 +00:00
Yassine Doghri
92536ddb38
fix(activity-pub): get database records using new model instances
...
update types and some remap logic
2021-06-11 09:35:21 +00:00
Yassine Doghri
c72f4be6d8
refactor: add strict types declaration before each file and fix activitypub issues
...
fix some style issues
2021-06-11 09:35:19 +00:00
Yassine Doghri
0a66de3e6c
fix: set cache expiration to next note publish to show note on publication date
...
fix episode, podcast and persons forms + episode scheduling
2021-06-11 09:35:17 +00:00
Yassine Doghri
433745f194
revert: set deprecated config options back in App config
2021-06-11 09:35:16 +00:00
Yassine Doghri
91a9670e22
refactor: update app starter files to CI4 4.1.2
2021-06-11 09:35:16 +00:00
Yassine Doghri
1a024bdec7
ci: fix rector issues for code-review job to pass
2021-06-11 09:35:07 +00:00
Yassine Doghri
aa1612342e
style(ecs): add easy-coding-standard to enforce coding style rules for php
...
- update .devcontainer settings: remove auto-formatting
for php + set intelephense as default formatter
- remove prettier php plugin as it lacks php 8 support
- add captain hook action for checking style pre-commit
- fix style with ecs on all files except views
2021-06-11 09:34:48 +00:00
Yassine Doghri
fb3593f828
refactor: remove all empty declarations + add missing type declarations
...
update composer dependencies
2021-05-18 17:16:36 +00:00
Yassine Doghri
93e605b406
refactor(persons): move podcast and episode persons models to person model for consistency
...
- fix lazy loading properties + podcast import controller
- rename all snake_case variables to
camelCase
- fix broken routes
- refactor Location construction logic and setters
2021-05-17 17:11:23 +00:00
Yassine Doghri
6b74a9e98a
refactor: update code base to php 8 and set phpstan lvl to 6
2021-05-14 17:59:35 +00:00
Yassine Doghri
231d578d64
refactor: add phpstan and update code to adhere to level 5
...
- move and refactor Image.php from Libraries to Entities folder
- update some database field names
/ types
- update composer packages
2021-05-12 14:00:25 +00:00
Yassine Doghri
5c5c6da4be
refactor: add rector to enforce type declarations, code quality + style and remove dead code
...
- update CI process to include quality stage (tests + code review)
- add captainhook to install git pre-commit & pre-push hooks
- remove .devcontainer Dockerfile to use project's docker-compose services: all
services can now be started automatically using vscode
- update docs/setup-development.md
2021-05-12 10:48:30 +00:00
semantic-release-bot
a54a5964c3
chore(release): 1.0.0-alpha.57 [skip ci]
...
# [1.0.0-alpha.57](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.56...v1.0.0-alpha.57 ) (2021-05-12)
### Bug Fixes
* **follow:** add missing helpers to Actor controller ([ee53a73
](ee53a732dc
))
2021-05-12 10:32:49 +00:00
semantic-release-bot
fca7bd6808
chore(release): 1.0.0-alpha.56 [skip ci]
...
# [1.0.0-alpha.56](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.55...v1.0.0-alpha.56 ) (2021-05-12)
### Bug Fixes
* **rss:** use originalPath instead of originalMediaPath in Image library ([b4012b7
](b4012b7d2e
))
2021-05-12 09:16:14 +00:00
semantic-release-bot
6c7964fd51
chore(release): 1.0.0-alpha.55 [skip ci]
...
# [1.0.0-alpha.55](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.54...v1.0.0-alpha.55 ) (2021-05-03)
### Features
* add remote_url alternative for transcript and chapters files ([3143c9a
](3143c9ad36
))
2021-05-03 17:44:20 +00:00
Yassine Doghri
3143c9ad36
feat: add remote_url alternative for transcript and chapters files
2021-05-03 17:39:58 +00:00
semantic-release-bot
1296187613
chore(release): 1.0.0-alpha.54 [skip ci]
...
# [1.0.0-alpha.54](https://code.podlibre.org/podlibre/castopod-host/compare/v1.0.0-alpha.53...v1.0.0-alpha.54 ) (2021-05-03)
### Features
* set app parameter forceGlobalSecureRequests = true forcing requests to go through https ([d9dff1b
](d9dff1b8bf
))
* **ux:** remove admin dashboard and redirect directly to podcast list ([27c48b8
](27c48b8fa9
))
* add cache to ActivityPub sql queries + cache activity and note pages ([2d297f4
](2d297f45b3
))
### Performance Improvements
* **cache:** update CI4 to use cache's deleteMatching method ([54b84f9
](54b84f9684
))
* **docker:** add redis caching service for development ([05ace8c
](05ace8cff2
))
2021-05-03 15:43:53 +00:00
Yassine Doghri
d9dff1b8bf
feat: set app parameter forceGlobalSecureRequests = true forcing requests to go through https
...
docs: update INSTALL.md to include SSL certificate requirement + update install instructions
2021-05-03 15:32:55 +00:00
Yassine Doghri
2d297f45b3
feat: add cache to ActivityPub sql queries + cache activity and note pages
...
- authenticated pages are not cached
- add AnalyticsTrait to register a podcast webpage hit across
mutliple controllers
- set actor_id as unique in podcasts table
- fix issues with preview card not appearing
- update codeigniter4-uuid
2021-05-03 15:32:54 +00:00
Yassine Doghri
54b84f9684
perf(cache): update CI4 to use cache's deleteMatching method
...
add missing locale to category_options cache name
2021-05-03 15:32:46 +00:00
semantic-release-bot
d372d6746c
chore(release): 1.0.0-alpha.53 [skip ci]
...
# [1.0.0-alpha.53](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.52...v1.0.0-alpha.53 ) (2021-04-16)
### Bug Fixes
* check that note has a preview_card_id before displaying it ([acb8b3a
](acb8b3a401
)), closes [#114 ](https://code.podlibre.org/podlibre/castopod/issues/114 )
2021-04-16 18:09:32 +00:00
semantic-release-bot
b81e812506
chore(release): 1.0.0-alpha.52 [skip ci]
...
# [1.0.0-alpha.52](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.51...v1.0.0-alpha.52 ) (2021-04-16)
### Bug Fixes
* **avatar:** use default avatar when no avatar url has been set ([9d23c7e
](9d23c7e7e1
)), closes [#111 ](https://code.podlibre.org/podlibre/castopod/issues/111 )
2021-04-16 17:15:22 +00:00
Yassine Doghri
9d23c7e7e1
fix(avatar): use default avatar when no avatar url has been set
...
- get avatar and cover urls from entity: if no image exists, retrieve the default ones.
- always
set icon and image in actor object: set the default ones if podcast hasn't set them.
fixes #111
2021-04-16 17:05:23 +00:00
semantic-release-bot
e2b85a1d8f
chore(release): 1.0.0-alpha.51 [skip ci]
...
# [1.0.0-alpha.51](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.50...v1.0.0-alpha.51 ) (2021-04-15)
### Bug Fixes
* **interact-as:** set actor_id instead of podcast id upon login event ([5dfade7
](5dfade7cf3
)), closes [#104 ](https://code.podlibre.org/podlibre/castopod/issues/104 )
2021-04-15 09:20:24 +00:00
Yassine Doghri
5dfade7cf3
fix(interact-as): set actor_id instead of podcast id upon login event
...
fixes #104
2021-04-15 08:27:29 +00:00
Yassine Doghri
247ae1824f
refactor(analytics): move all analytics files to a new Libraries/Analytics folder
...
- add page hit on podcast activity page
- update development docs
2021-04-14 15:58:40 +00:00
semantic-release-bot
1c0d6cee44
chore(release): 1.0.0-alpha.50 [skip ci]
...
# [1.0.0-alpha.50](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.49...v1.0.0-alpha.50 ) (2021-04-14)
### Bug Fixes
* **persons:** prevent overflow of persons list by adding horizontal scroll ([9e8995d
](9e8995dc6e
))
2021-04-14 14:54:22 +00:00
semantic-release-bot
388fb42b3e
chore(release): 1.0.0-alpha.49 [skip ci]
...
# [1.0.0-alpha.49](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.48...v1.0.0-alpha.49 ) (2021-04-12)
### Bug Fixes
* **multiselect:** add missing class names in choices options for purge to work properly ([719538d
](719538d0cc
))
2021-04-12 09:37:37 +00:00
semantic-release-bot
6303e71973
chore(release): 1.0.0-alpha.48 [skip ci]
...
# [1.0.0-alpha.48](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.47...v1.0.0-alpha.48 ) (2021-04-10)
### Bug Fixes
* **import-with-escaped-characters:** remove \CodeIgniter\HTTP\URI in download_file, closes [#103 ](https://code.podlibre.org/podlibre/castopod/issues/103 ) ([35b5be0
](35b5be095f
))
2021-04-10 14:42:23 +00:00
semantic-release-bot
15180d2265
chore(release): 1.0.0-alpha.47 [skip ci]
...
# [1.0.0-alpha.47](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.46...v1.0.0-alpha.47 ) (2021-04-10)
### Bug Fixes
* **episodeCount:** add missing brackets to French language file ([c1b4112
](c1b411265a
))
2021-04-10 14:14:47 +00:00
semantic-release-bot
6fc06bc8f8
chore(release): 1.0.0-alpha.46 [skip ci]
...
# [1.0.0-alpha.46](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.45...v1.0.0-alpha.46 ) (2021-04-09)
### Bug Fixes
* **episodes-page:** handle defaultQuery being null when no podcast episodes ([15183b7
](15183b7eab
)), closes [#100 ](https://code.podlibre.org/podlibre/castopod/issues/100 )
2021-04-09 13:31:01 +00:00
semantic-release-bot
14d3d1d727
chore(release): 1.0.0-alpha.45 [skip ci]
...
# [1.0.0-alpha.45](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.44...v1.0.0-alpha.45 ) (2021-04-08)
### Bug Fixes
* add head request to analytics_hit route ([f0a2f0b
](f0a2f0bea4
))
2021-04-08 14:03:52 +00:00
Yassine Doghri
f0a2f0bea4
fix: add head request to analytics_hit route
...
validators break because they can't request the episode's audio files with HEAD
2021-04-08 13:54:05 +00:00
semantic-release-bot
b5eb4c68a5
chore(release): 1.0.0-alpha.44 [skip ci]
...
# [1.0.0-alpha.44](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.43...v1.0.0-alpha.44 ) (2021-04-08)
### Bug Fixes
* **rss:** set ❬itunes:author❭ tag to owner_name if publisher not specified ([2271c14
](2271c1445b
)), closes [#96 ](https://code.podlibre.org/podlibre/castopod/issues/96 )
2021-04-08 11:20:49 +00:00
semantic-release-bot
0cd6b80847
chore(release): 1.0.0-alpha.43 [skip ci]
...
# [1.0.0-alpha.43](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.42...v1.0.0-alpha.43 ) (2021-04-08)
### Bug Fixes
* **episode-form:** show warning to set `memory_limit`, `upload_max_filesize` & `post_max_size` ([3b3c218
](3b3c218b9c
)), closes [#5 ](https://code.podlibre.org/podlibre/castopod/issues/5 ) [#86 ](https://code.podlibre.org/podlibre/castopod/issues/86 )
2021-04-08 10:50:31 +00:00
Yassine Doghri
3b3c218b9c
fix(episode-form): show warning to set `memory_limit`, `upload_max_filesize` & `post_max_size`
...
remove undefined "my-podcasts" route
closes #5 , #86
2021-04-08 10:45:58 +00:00
semantic-release-bot
c37a4af2d8
chore(release): 1.0.0-alpha.42 [skip ci]
...
# [1.0.0-alpha.42](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.41...v1.0.0-alpha.42 ) (2021-04-02)
### Features
* **fediverse:** implement activitypub protocols + update user interface ([2f525c0
](2f525c0f6e
)), closes [#69 ](https://code.podlibre.org/podlibre/castopod/issues/69 ) [#65 ](https://code.podlibre.org/podlibre/castopod/issues/65 ) [#85 ](https://code.podlibre.org/podlibre/castopod/issues/85 ) [#51 ](https://code.podlibre.org/podlibre/castopod/issues/51 ) [#91 ](https://code.podlibre.org/podlibre/castopod/issues/91 ) [#92 ](https://code.podlibre.org/podlibre/castopod/issues/92 ) [#88 ](https://code.podlibre.org/podlibre/castopod/issues/88 )
2021-04-02 17:24:40 +00:00
Yassine Doghri
2f525c0f6e
feat(fediverse): implement activitypub protocols + update user interface
...
- add "ActivityPub" library to handle server to server federation and basic
client to server protocols using activitypub:
- add webfinger endpoint to look for actor
- add actor definition with inbox / outbox / followers
- remote follow an actor
- create notes with possible preview cards
- interract with favourites, reblogs and replies
- block incoming actors and/or domains
- broadcast/schedule activities to fediverse followers using a cron task
- For castopod, the podcast is the actor:
- overwrite the activitypub library for castopod's specific needs
- perform basic interactions administrating a podcast to interact with fediverse users:
- create notes with episode attachment
- favourite and share a note + reply
- add specific castopod_namespaces for podcasts and episodes definitions
- overwrite CodeIgniter's Route service to include alternate-content option for
activitystream requests
- update episode publication logic:
- remove publication inputs in create / edit episode form
- publish / schedule or unpublish an episode after creation
- the podcaster publishes a note when publishing an episode
- Javascript / Typescript modules:
- fix Dropdown.ts to keep dropdown menu in foreground
- add Modal.ts for funding links modal
- add Toggler.ts to toggle various css states in ui
- User Interface:
- update tailwindcss to v2
- use castopod's pine and rose colors
- update public layout to a 3 column layout
- add pages in public for podcast activity, episode list and notes
- update episode page to include linked notes
- remove previous and next episodes from episode pages
- show different public views depending on whether user is authenticated or not
- use Kumbh Sans and Montserrat fonts
- update CodeIgniter's config files
- with CodeIgniter's new requirements, update docker environments are now based on
php v7.3 image
- move Image entity to Libraries
- update composer and npm packages to latest versions
closes #69 #65 #85 , fixes #51 #91 #92 #88
2021-04-02 17:20:02 +00:00
semantic-release-bot
dd3ac9b4ab
chore(release): 1.0.0-alpha.41 [skip ci]
...
# [1.0.0-alpha.41](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.40...v1.0.0-alpha.41 ) (2021-03-30)
### Features
* **partner:** add link and image in episode description ([ad07bb9
](ad07bb9330
))
2021-03-30 16:25:05 +00:00
semantic-release-bot
62bae1eb70
chore(release): 1.0.0-alpha.40 [skip ci]
...
# [1.0.0-alpha.40](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.39...v1.0.0-alpha.40 ) (2021-03-19)
### Features
* **custom-rss:** add custom xml tag injection in rss feed for ❬channel❭ and ❬item❭ ([6ecdaad
](6ecdaad911
))
2021-03-19 16:17:09 +00:00
semantic-release-bot
ea5383643c
chore(release): 1.0.0-alpha.39 [skip ci]
...
# [1.0.0-alpha.39](https://code.podlibre.org/podlibre/castopod/compare/v1.0.0-alpha.38...v1.0.0-alpha.39 ) (2021-03-01)
### Bug Fixes
* **embeddable-player:** enable any ancestor when X-Frame-Options is set on server ([44a4962
](44a4962e0b
))
2021-03-01 15:08:05 +00:00