137 Commits

Author SHA1 Message Date
Yassine Doghri
abb7fbac27 feat: add DropdownMenu component + remove global audio player in admin 2021-12-29 12:00:55 +00:00
Yassine Doghri
d60498c1be feat(admin): make header stick on scroll and show title + action buttons using css only 2021-12-29 12:00:53 +00:00
Yassine Doghri
99a3b8d33e fix: set episode numbers during import + remove all custom form_helpers + minor ui issues 2021-12-29 11:58:06 +00:00
Yassine Doghri
b05d177f1b fix: update MarkdownEditor component + restyle Button and other components 2021-12-29 11:55:43 +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
5413d09737 style: update app layout and map view styles 2021-12-29 11:55:43 +00:00
Yassine Doghri
bfa11d007d feat(fonts): replace Montserrat with Inter for better readablity 2021-12-29 11:55:43 +00:00
Yassine Doghri
e64548b982 feat: replace form helper functions with components in admin template 2021-12-29 11:55:43 +00:00
Yassine Doghri
6536729546 feat: integrate stylized form components and update podcast edit page 2021-12-29 11:55:43 +00:00
Yassine Doghri
23bdc6f8e3 feat: add heading component + update ecs rules to fix views 2021-12-29 11:55:43 +00:00
Yassine Doghri
a50abc138d feat: update pine colors + create charts components 2021-12-29 11:55:43 +00:00
Yassine Doghri
d86142ebe7 feat(admin): update admin layout for better ux + update brand pine colors 2021-12-29 11:55:41 +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
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
f15f26240c feat: add codemirror to display xml editor for custom rss field
- replace hardcoded label values for play_episode_button component
2021-12-29 11:37:16 +00:00
Yassine Doghri
578022b8c5 feat: replace slug field with interactive permalink component
- create permalink-edit web component with slug editing and permalink copy functionalities
- add
@github/clipboard-copy-element
- update npm packages
- replace vscode extension lit-html with
lit-plugin to get css intellisense
2021-12-29 11:37:16 +00:00
Yassine Doghri
230e139e43 feat: make displayed publication time as relative time using @github/time-elements 2021-12-29 11:37:16 +00:00
Yassine Doghri
0e14eb4d3f feat: add js audio player on podcast, admin and embeddable player pages + fix admon episodes ux
- use vimejs as audio player
- add global audio player + play episode buttons on public pages
-
refactor admin episodes list from a grid to a data table
- arrange episode cards to be more
readable

closes #131
2021-12-29 11:37:16 +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
9ec1cb93da fix(md-editor): build new markdown editor with lit + github/markdown-toolbar-element
- create markdown-write-preview + markdown-preview webcomponents using lit
- create
form_markdown_editor helper form component
- simplify form_dropdown and form_multiselect
components
- fix partner fields display

fixes #93, #94, #120
2021-12-29 11:37:16 +00:00
Yassine Doghri
910d457cf8 feat(select): enhance select input with choices.js
- select fields come with a search field
- update language names by fixing missing caps in
LanguageSeeder
- add parent to categoryOptions
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
Yassine Doghri
c5f18bb6dc fix(import): add extension when downloading file without + truncate slug if too long 2021-12-15 15:44:58 +00:00
Yassine Doghri
3f2e05608e fix: replace hardcoded style links with vite service + set default value for remote transcript url
fixes #149, #150
2021-10-26 10:27:57 +00:00
Yassine Doghri
4ff82a5f0a fix: rename field status to task_status to get scheduled activities
fix: load css using vite service for page view
2021-09-20 09:49:29 +00:00
Benjamin Bellamy
4357cc25cc feat(map): display geolocated episodes on a map page 2021-09-17 15:50:55 +00:00
Yassine Doghri
9e1e5d2e86 feat(activitypub): add Podcast actor and PodcastEpisode object with comments 2021-07-12 18:40:22 +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
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
Yassine Doghri
71b1b5f775
fix: set location to null when getting empty string 2021-06-11 09:35:22 +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
76a4bf3441
fix(types): update fake seeders types + fix bugs 2021-06-11 09:35:20 +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
76afc0cfa2
perf(cache): use deleteMatching method to prevent forgetting cached elements in models 2021-06-11 09:35:19 +00:00
Yassine Doghri
e5b7515023
fix: update broken contributor dropdown fields 2021-06-11 09:35:18 +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
8c64f25a0e
fix(category): remove uncategorized option to enforce users in choosing a category
Apple podcasts requires a category to submit a valid podcast RSS feed. The "uncategorized" category
is not a valid category.
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
6802bee0db
ci(gitlabci): add easy-coding-standard check for code-style + fix quality scripts 2021-06-11 09:35:06 +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