mirror of
https://github.com/KevinMidboe/seasoned.git
synced 2026-03-10 11:29:07 +00:00
e0ce0ea6da7fcd1573491629cc84ffd4ebc55371
Issue: ActivityPage and route guards showed "not authenticated" even when Plex was linked via Settings page. Root cause: Plex user data stored in localStorage but route guards and ActivityPage only checked Vuex store (state.settings.plexUserId). Changes: - Update routes.ts hasPlexAccount() to check both: 1. Vuex store (user/plexUserId) 2. localStorage (plex_user_data) as fallback - Update ActivityPage plexUserId computed to check both: 1. Vuex store first 2. localStorage plex_user_data.id as fallback Why two sources? - Vuex store: Set from JWT token (backend user settings) - localStorage: Set immediately when linking Plex account - localStorage persists across page reloads - Provides seamless experience without backend round-trip Now Activity page correctly shows data when Plex is linked ✓
Seasoned Request
Seasoned request is frontend vue application for searching, requesting and viewing account watch activity.
Config setup
# make copy of example environment file
cp .env.example .env
# .env sane default values
SEASONED_API=
ELASTIC=
ELASTIC_INDEX=shows,movies
SEASONED_DOMAIN=
- Leave SEASONED_API empty to request
/apifrom same origin and proxy passed by nginx, set if hosting seasonedShows backend api locally. - Elastic is optional and can be used for a instant search feature for all movies and shows registered in tmdb, leave empty to disable.
# .env example values
SEASONED_API=http://localhost:31459
ELASTIC=http://localhost:9200
ELASTIC_INDEX=shows,movies
SEASONED_DOMAIN=request.movie
Build Steps
# install dependencies
yarn
# build vue project using webpack
yarn build
# test or host built files using docker, might require sudo:
docker build -t seasoned .
docker run -d -p 5000:5000 --name seasoned-request --env-file .env seasoned
Development Steps
# serve project with hot reloading at localhost:8080
yarn dev
To proxy requests to /api either update SEASONED_API in .env or run set environment variable, e.g.:
# export and run
export SEASONED_API=http://localhost:31459
yarn dev
# or run with environment variable inline
SEASONED_API=http://localhost:31459 yarn dev
Documentation
All api functions are documented in /docs and found here.
html version also available
License
Languages
Vue
78.2%
TypeScript
17.4%
SCSS
3.5%
JavaScript
0.5%
HTML
0.2%
Other
0.2%
