| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | support skipping the current song while playback is paused | Florian Fischer | 2023-05-31 | 3 | -17/+42 |
| | | |||||
| * | create websocket context after successfully identifying the connection | Florian Fischer | 2023-05-31 | 1 | -4/+3 |
| | | | | | Fixes: d8bdce51c336f3693121202402ee38ff3f12c0e2 | ||||
| * | use an atomic pointer to track the current song | Florian Fischer | 2023-05-31 | 4 | -13/+24 |
| | | | | | | Also fix showing finished songs as current playing on new clients. | ||||
| * | send bad request status if the websocket connection has a bad UUID cookie | Florian Fischer | 2023-05-31 | 1 | -0/+4 |
| | | |||||
| * | add thread saftey TODO | Florian Fischer | 2023-05-31 | 1 | -0/+1 |
| | | |||||
| * | mark search query distinguishing TODO as done | Florian Fischer | 2023-05-31 | 1 | -1/+1 |
| | | |||||
| * | mark admin controlls as done | Florian Fischer | 2023-05-31 | 1 | -2/+2 |
| | | |||||
| * | prevent deadlocks when connections are closed | Florian Fischer | 2023-05-31 | 2 | -19/+59 |
| | | | | | | | | | | | | | | | | | | Currently the unbounded Events channel is never closed and Connection are not removed from WRMS therefore any call to Broadcast deadlocks because the wsEndpoint consumer is no longer reading Events. Prevent this deadlock with a combination of announcing the closing of connections and sender counting for each connection. Before a sender is trying to write to the Events channel it checks if it is already closed. If it observes that the connection is open it registers itself as sender send the Event and unregisters itself. The wsEndpoint announces that the connection is closed and consumes Events until no registered senders are left. Then it closed the Events channel and terminates. | ||||
| * | allow admins to skip or delete songs | Florian Fischer | 2023-05-31 | 4 | -3/+82 |
| | | |||||
| * | add more verbose logging around loading tracks from spotify | Florian Fischer | 2023-05-31 | 1 | -0/+2 |
| | | |||||
| * | mention the uplaod backend | Florian Fischer | 2023-05-30 | 1 | -0/+5 |
| | | |||||
| * | add more TODOs | Florian Fischer | 2023-05-30 | 1 | -0/+4 |
| | | |||||
| * | log file path on upload error | Florian Fischer | 2023-05-30 | 1 | -2/+3 |
| | | |||||
| * | distinguish between search queries | Florian Fischer | 2023-05-30 | 4 | -21/+55 |
| | | | | | | | | | | | | Introduce a new Id field for events to distinguish between different searches. Since search result reporting is split up a old search could introduce results or terminate the current search. Keep track of a search counter to distinguish between result from the active search and stale ones. Allow to add multiple songs from the current search. | ||||
| * | use 'uploads' instead of 'upload' as default upload dir | Florian Fischer | 2023-05-28 | 1 | -1/+1 |
| | | |||||
| * | improve mpv argv logging | Florian Fischer | 2023-05-28 | 1 | -1/+1 |
| | | |||||
| * | fix building mpv argv when no mpv flags are configured | Florian Fischer | 2023-05-28 | 1 | -1/+3 |
| | | |||||
| * | add more TODOs | Florian Fischer | 2023-05-28 | 1 | -1/+5 |
| | | |||||
| * | escape html for search results | Florian Fischer | 2023-05-28 | 2 | -4/+10 |
| | | |||||
| * | select pattern input on click | Florian Fischer | 2023-05-28 | 1 | -1/+1 |
| | | |||||
| * | refactor title and artist detection | Florian Fischer | 2023-05-28 | 1 | -4/+15 |
| | | |||||
| * | fix building mpv argv | Florian Fischer | 2023-05-28 | 1 | -1/+1 |
| | | |||||
| * | restrict file upload to audio mime types | Florian Fischer | 2023-05-28 | 1 | -1/+1 |
| | | |||||
| * | fix next song not beeing removed from the playlist | Florian Fischer | 2023-05-28 | 1 | -1/+2 |
| | | |||||
| * | refactor playing an uri and from stdin | Florian Fischer | 2023-05-28 | 1 | -10/+17 |
| | | |||||
| * | support custom mpv flags | Florian Fischer | 2023-05-28 | 2 | -1/+12 |
| | | |||||
| * | use llog instead of fmt debugging | Florian Fischer | 2023-05-28 | 1 | -12/+9 |
| | | |||||
| * | allow loglevel to be specifies in config file | Florian Fischer | 2023-05-28 | 3 | -3/+6 |
| | | |||||
| * | include OS error in Fatalf | Florian Fischer | 2023-05-28 | 1 | -2/+2 |
| | | |||||
| * | log the output of a failed mpv execution | Florian Fischer | 2023-05-28 | 1 | -2/+3 |
| | | |||||
| * | also toggle playpause button label on a stop event | Florian Fischer | 2023-05-21 | 1 | -0/+5 |
| | | |||||
| * | continue playback when adding a song to an empty queue | Florian Fischer | 2023-05-21 | 6 | -22/+24 |
| | | | | | | | | Now WRMS only switches the playback state when an admin calls the /playpause endpoint. When the queue runs out of songs the state is kept and continues when a new song is added. | ||||
| * | only add playbutton eventlistener for admins | Florian Fischer | 2023-05-21 | 1 | -0/+2 |
| | | |||||
| * | add song deletion and continue playback todos | Florian Fischer | 2023-05-21 | 1 | -0/+2 |
| | | |||||
| * | fix yaml reflection tag | Florian Fischer | 2023-05-21 | 1 | -1/+1 |
| | | |||||
| * | format code using go fmt | Florian Fischer | 2023-05-21 | 1 | -5/+5 |
| | | |||||
| * | add sample config | Florian Fischer | 2023-05-21 | 1 | -0/+13 |
| | | |||||
| * | allow YAML parsing of the spotify config | Florian Fischer | 2023-05-21 | 4 | -12/+20 |
| | | |||||
| * | create upload dir parents | Florian Fischer | 2023-05-21 | 1 | -1/+1 |
| | | |||||
| * | bump dependencies | Florian Fischer | 2023-05-21 | 2 | -10/+35 |
| | | |||||
| * | use io.ReadAll instead of the deprecated ioutil.ReadAll | Florian Fischer | 2023-05-21 | 1 | -2/+2 |
| | | |||||
| * | implement YAML config and admin connections | Florian Fischer | 2023-05-21 | 7 | -60/+195 |
| | | |||||
| * | add info message when starting | Florian Fischer | 2023-05-21 | 1 | -0/+1 |
| | | |||||
| * | add OnSongFinished backend hook allowing to remove uploaded songs | Florian Fischer | 2023-05-21 | 8 | -8/+25 |
| | | |||||
| * | actually handle stop notifications | Florian Fischer | 2023-05-21 | 1 | -0/+3 |
| | | |||||
| * | wrap search results in a details element | Florian Fischer | 2023-05-21 | 1 | -2/+5 |
| | | |||||
| * | misc cleanups | Florian Fischer | 2023-05-21 | 2 | -5/+5 |
| | | | | | Reported-By: myOmikron <git@omikron.dev> | ||||
| * | implement incremental search results | Florian Fischer | 2023-05-21 | 4 | -37/+75 |
| | | | | | TODO: ensure late search results do not show up for future searches | ||||
| * | paralyze searching | Florian Fischer | 2023-05-21 | 4 | -7/+33 |
| | | |||||
| * | add searching indicator | Florian Fischer | 2023-05-21 | 1 | -1/+10 |
| | | |||||
