Commit Graph

40 Commits

Author SHA1 Message Date
Yassine Doghri e0da11517d refactor: update js files to typescript and replace parcel with rollup
- add basic rollup config to bundle minified and browser compatible js
- use babel to transpile
typescript files to js
- add static code checkers: eslint and stylelint
- update package.json
scripts
- update DEPENDENCIES.md file to include rollup and popper
- set html in rss feed
description fields
- update Podcast and Episode entities to add description_html attribute
generated by parsing markdown to html using parsedown

#9
2020-10-15 14:41:12 +00:00
Yassine Doghri c0e66d5f70 feat: enhance ui using javascript in admin area
- bundle js using parcel
- add markdown editor, html editor, dropdown and tooltip features using third-party packages
- integrate optimized inline svg icons from RemixIcon using svgo and a php helper
- add scripts in package.json to bundle icons, images, css and js
- update tailwind config to add purgecss lookups and typography plugin
- refactor views to add missing pages in user journey
- update admin's holy grail layout using css grid
2020-10-15 14:41:09 +00:00
Yassine Doghri d58e51874a feat: add user permissions and basic groups to handle authorizations
- add AuthSeeder to bootstrap authorization data and remove UserSeeder
- create a superadmin group having all authorizations
- refactor routes and controller methods to separate get and post requests
- refactor admin views with a title section in layout
- add contributors section to podcasts to manage contributions (add, edit roles and remove)

closes #3, #18
2020-10-15 14:41:06 +00:00
Yassine Doghri c63a077618 feat(users): add myth-auth to handle users crud + add admin gateway only accessible by login
- overwrite myth/auth config with castopod app needs
- create custom views for users authentication
- add admin area bootstrapped by admin controller
- shift podcast and episodes crud to admin area
- reorganize view layouts
- update docs for database migration
- add myth-auth to DEPENDENCIES.md

closes #11
2020-10-15 14:41:03 +00:00
Yassine Doghri da0f047281 feat(cache): add podcast and episode pages to cache + clear them after insert or update
- throw not found page error if no podcast in podcast controller
- delete unnecessary unknownuseragents view
2020-10-15 14:40:58 +00:00
Yassine Doghri ac5f0c7328 feat: edit + delete podcast and episode
- refactor model / entity and controller logic for DRY code
- update episodes and podcasts
migrations
- define callbacks for podcast and episode models for enclosure update and cache
clearing
2020-10-15 14:40:57 +00:00
Yassine Doghri c815ecd664 feat(rss): generate rss feed from podcast entity
- refactor episode, podcast and category entities to add dynamic properties
- refactor Routes when adding feed route
- update migration files to better fit itunes' and rss' specs
- update podcast and episode forms
- add SimpleRSSElement class to Libraries
- add rss_helper
- update home controller to redirect if system has only one podcast
2020-10-15 14:40:55 +00:00
Benjamin Bellamy d31191732e fix: move analytics to helper 2020-10-15 14:40:52 +00:00
Benjamin Bellamy 13be386842 fix: minor corrections 2020-10-15 14:40:52 +00:00
Benjamin Bellamy ec92e65aa4 feat: add analytics and unknown useragents 2020-10-15 14:40:51 +00:00
Yassine Doghri 4651d01a84 feat: write id3v2 tags to episode's audio file
- add $mediaRoot parameter in app config
- add and refactor helpers : id3, media and url
- add basic vscode settings for code formatting in devcontainer.json
- set post_max_size to Dockerfile
2020-10-15 14:40:49 +00:00
Benjamin Bellamy d2dc6e6418 docs(dependencies): add GeoIP2 2020-10-15 14:40:48 +00:00
Yassine Doghri f3b2c8b84f feat(episodes): add create form and view pages for episode
- add james-heinrich/getid3 library as a dependency to composer.json
- update DEPENDENCIES.md file
- fix episodes table migration script
- add js devDependencies: prettier, @prettier/plugin-php and lint-staged to automatically format staged files before commit
- reformat all files to the prettier format
- refactor code by separating some logic as helper functions
- overwrite existing files when uploading new files with the same name

fixes #1
2020-10-15 14:40:47 +00:00
Yassine Doghri 044482174e feat(episodes): add migrations, model and entity for episodes table 2020-10-15 14:40:44 +00:00
Benjamin Bellamy a333d29196 feat: add platform models 2020-10-15 14:40:18 +00:00
Benjamin Bellamy ce5934419a feat: add platforms tables 2020-10-15 14:39:17 +00:00
Benjamin Bellamy 97cd94b474 feat: add ISO 3166 country codes 2020-10-15 14:08:04 +00:00
Benjamin Bellamy 0c90db44c4 fix: update iso-369 language table seeder 2020-10-15 14:07:07 +00:00
Yassine Doghri 21413f8af3 fix(package.json): update destination of postcss generation scripts 2020-10-15 14:06:41 +00:00
Benjamin Bellamy 0be28c50bf style: update favicon 2020-10-15 14:06:16 +00:00
Benjamin Bellamy 7cf35bc9bd docs(readme): add NLnet support 2020-10-15 14:05:37 +00:00
Yassine Doghri 75da3fde33 docs(authors): set authors info as list 2020-10-15 14:05:37 +00:00
Yassine Doghri cbb83a6f30 feat: add npm for js dependencies + move src/ files to root folder
- add node service in docker-compose.yml
- update .devcontainer Dockerfile by adding node, npm and vim
- init package.json for npm with tailwindcss, postcss, commitlint and commitizen as dev dependencies
- update default layout main header and footer
- replace CI's welcome_message.php with home.php listing all podcasts
- add AUTHORS.md file
- add docs folder in which to place castopod's technical documentation
2020-10-15 14:05:36 +00:00
Benjamin Bellamy 3bf9420b59 feat: minor corrections to some tables 2020-10-15 14:05:03 +00:00
Benjamin Bellamy d9c790d3fa docs(dependencies): replace TinyMCE by Quill Rich Text Editor 2020-10-15 14:04:32 +00:00
Benjamin Bellamy 11f16db77b docs(dependencies): remove MaxMind DB Reader PHP API 2020-10-15 14:03:53 +00:00
Yassine Doghri 12ce905799 feat(podcast-form): update routes and redirect to podcast page 2020-10-15 14:03:52 +00:00
Benjamin Bellamy 3234224369 docs(dependencies): add WhichBrowser 2020-10-15 14:03:21 +00:00
Yassine Doghri a80adb2295 fix: use slash instead of backslash to call layout 2020-10-15 14:03:20 +00:00
Benjamin Bellamy 4ff23ad308 docs(dependencies): add TinyMCE 2020-10-15 14:03:02 +00:00
Yassine Doghri 1202ba3545 feat(podcast): create a podcast using form 2020-10-15 14:03:01 +00:00
Benjamin Bellamy 9daa0df006 docs: update DEPENDENCIES.md 2020-10-15 14:02:42 +00:00
Yassine Doghri f73b042cc0 feat(categories): create model, entity, migrations and seeds 2020-10-15 14:02:26 +00:00
Yassine Doghri 69e7266736 feat(devcontainer): add devcontainer settings for dev environment 2020-10-15 14:02:25 +00:00
Yassine Doghri d523597515 docs(readme): include dependencies installation in prerequisites
add sessions folder in .gitignore
2020-10-15 14:02:25 +00:00
Yassine Doghri 9070ca2651 build(app): bootstrap codeigniter4 app using docker-compose 2020-10-15 14:02:24 +00:00
Benjamin Bellamy 11080d46d1 docs: update DEPENDENCIES.md 2020-10-15 14:02:21 +00:00
Benjamin Bellamy 90093447b8 docs: update README.md 2020-10-15 14:02:21 +00:00
Benjamin Bellamy 453a1aac66 docs: add GNU AGPLv3 LICENSE file 2020-10-15 14:01:39 +00:00
Benjamin Bellamy 1772483f2d chore: initial commit 2020-10-15 14:01:13 +00:00