* Add development docker-compose file
* Add /new/ path in nginx conf
* Add frontend production setup
* Fix lint
* Refac move prod docker compose into non suffixed file
* Fix run.sh fileendings on windows
* Fix docker file naming consistancies
* Add frontend dev setup
* Add docker compose dev command
* Refac remove docker network
* Fix potential error causes
* Chore update react-router-dom
* Add redirect to login after logout
* Refac allow basic auth for session login in api
* Fix loginresponsetype optional property
* Refac move isAdmin check into page Base
* Refac use node lts for dev container
* Refac remove old setup in readme
* Refac move getisAdmin into loader and rename
* Refac remove manual csrf cookie handing from actions and loader
* Fix post requiring csrf header & cookie
* Fix remove empty files
* Refac revert dockerfile changes
* Refac revert gitatrributes changes
* Refac revert docker changes
* Refac revert nginx changes
* Refac revert docker change
* Refac move frontend into frontend folder
* Add production steps to dockerfile
* Refac implement endpoint renaming
* Refac remove frontend dockerfile
* Add credentials include for dev env
* Fix allow cors with credentials for dev environment
* Fix images in dev mode
* Add credentials for dev mode to all loader and actions, except signin
* Revert cors config
* Revert cors config
* Fix nginx not serving /youtube/
* Fix video url missing api
* Fix media url missing api
* Add application settings page
* Add continue vids
* Add csrf to delete requests
* Refac use api/video endpoint with filter to home, channel, playlist pages
* Add channel nav request
* Add channel playlists
* Fix filterbar for playlist in channel
* Add playlist_nav to video page
* Add downloads aggs
* Refac remove basic auth
* Fix credentials include in signin
* Refac user config to user me config
* Add ApiToken get
* Avoid creating superuser if variables are removed
Enables the removal of `TA_USERNAME` and/or `TA_PASSWORD` as a way of
preventing an additional superuser being created when another exists.
In the old code, `ELASTIC_USER` would never error due to the default, so
this replaces the loop with one requirement on `ELASTIC_PASSWORD`.
* Use .superuser_created to prevent re-creation
Creates an empty `.superuser_created` file after successful creation,
and uses this to skip the command on future runs. If the file doesn't
exist, then `TA_USERNAME` and `TA_PASSWORD` will also be required.
* The superuser password can't be empty
...well—it *can*—but the password input of the login form requires a
value so even though the account is created, you can't actually login.
* Parse createsuperuser output for 'exists' error
If a user already exists with the same name as the superuser being
created, the command fails with "Error: That name is already taken".
It's probably safe to assume that user is the one we expect. This parses
the output, treating it as successful so it can be skipped next time.
If it hits the catch-all, something probably failed so we exit.
* Use the cache for persistence
Updates the .superuser_created file to be placed in /cache so that it
gets persisted in a volume between config tweaks and container rebuilds.
Also makes `TA_PASSWORD` required always, because it seems to be needed
by tubearchivist/config/settings.py to generate a secret key.
* Let it work outside Docker
If /cache doesn't exist (i.e. when it's not running in Docker), this
falls back to a `cache` dir in the current working directory instead.
Also renames the file to 'initsu.lock' rather than having it hidden.
* Use flexible fallback path for `celery` command
* Modify Dockerfile and the nginx.conf file to avoid Nginx default config IPv6 conflict.
* Adjust nginx.conf name and run.sh nginx modification.
* but nginx.conf file back
Co-authored-by: simon <simobilleter@gmail.com>
* Added subtitle support to JS player.
* Move `video-item` id to source tag.
* Move `video-item` id to source tag.
* Fix cast support to handle new video tag format
* Add subtitle support to cast integration, WIP
* Replace `&` with `&` in video titles.
* Check if the video is already marked as watched
* Switch to HTML watched check.