Commit Graph

97 Commits

Author SHA1 Message Date
sentriz
222256cccb feat(admin): update stylesheet 2023-03-04 13:22:33 +00:00
sentriz
0407a1581f feat(subsonic): add stub lyrics.view
fixes #274
2022-12-26 01:54:44 +00:00
sentriz
df932864d8 feat(server): recover from panics 2022-12-12 21:57:23 +00:00
sentriz
4280700621 fix(jukebox): use a tmp dir instead of file for mpv sock
closes #266
fixes #265

Release-As: 0.15.1
2022-12-08 14:37:16 +00:00
sentriz
7e097c9bdf feat: allow for custom music folder path alias
closes #259
2022-11-21 20:51:26 +00:00
sentriz
e1488b0d18 feat(jukebox): use mpv over ipc as a player backend 2022-11-16 19:40:40 +00:00
Brian Doherty
f6c95503c7 feat(scanner): added option to scan at startup
closes #251
2022-11-07 23:41:56 +00:00
brian-doherty
85cb0feb5a feat(podcasts): add an option to purge old episodes
* Record podcast episode plays in ModifiedAt field.

* Added podcast purger.
2022-11-07 23:30:34 +00:00
sentriz
1f8de66fc0 2022-11-03 15:27:59 +00:00
brian-doherty
e8759cb6c1 feat(subsonic): add support for track/album/artist ratings/stars
fixes #171
fixes #31

* Initial code. Compiles and passes unit tests.

* Moved average rating calculation from rating fetch to set rating function. Still only compiled and unit tested.

* Bug fixes

* Fixed bug in savePlayQueue. Removed unique_index for star / rating entries because it's not valid.

* Changed time format on stars to RFC3339Nano to match created date format.

* Lint fixes.

* More lint fixes.

* Removed add* functions and replaced with Preload.

* Fixed several bugs in handlers for getStarred and getStarred2.

* Fixed bug when using music folder ID.

Co-authored-by: Brian Doherty <brian@hplaptop.dohertyfamily.me>
2022-10-26 14:37:16 +01:00
brian-doherty
ea28ff1df3 feat(scanner): add option to use fsnotify based scan watcher (#232)
* First cut at fsnotify support. Tested on Linux.

* Fixed bug in logging.

* Fixed lint issues.

* Added new scan watcher option to README.md

* Inverted conditional and dedented following code as per PR discussion.

* Changed command line switch and error return on ExecuteWatch() as per GH comments.

* Scan watcher: Removed scan at first start. Modified watcher to set a 10 second timer and then process in bulk.

Co-authored-by: Brian Doherty <brian@hplaptop.dohertyfamily.me>
2022-10-08 15:47:35 +01:00
Walter Huf
731a696bd7 feat: add a ping endpoint that doesn't create a session 2022-09-09 08:32:48 +00:00
Brian Doherty
5e66261f0c feat(subsonic): add avatar support
closes: #228
2022-07-20 23:18:35 +01:00
brian-doherty
7ab378accb feat(subsonic): add internet radio support
* Initial commit of internet radio support.

* Added first test for internet radio.

* Refactor to prepare for more test cases.

* Added a few more tests. Realized that I was not calling as admin so added ability to mock admin.

* Added more internet radio tests. Added proper JSON unmarshaling for ID.

* More test cases. Fixed some accidental tabs in files.

* Fixed some more tabs.

* lint fixes

* Changed placeholder for homepage URL to fit into box.

* Finished out internet radio test cases. Found a few bad error codes in internet radio AND podcasts (mea culpa).

* Realized that delete via website was not checking properly if id existed. Fixed.

gofmt
2022-06-21 22:33:21 +01:00
brian-doherty
182c96e966 refactor(podcast)!: make podcasts global not per user, to match spec
Release-As: 0.15.0
2022-05-03 22:42:03 +01:00
brian-doherty
f6687df3f3 feat(subsonic): add getNewestPodcasts 2022-04-21 20:13:47 +01:00
sentriz
8b803ecf20 refactor: move shared packages up a level 2022-04-13 01:10:46 +01:00
sentriz
165904c2bb feat(transcode): add a generic transcoding package for encoding/decoding/caching 2022-04-13 01:10:46 +01:00
brian-doherty
59c404749f feat(server): support TLS
* Added https support. Will revert to http if either cert or key are empty strings.

* Update server/server.go

Co-authored-by: Senan Kelly <senan@senan.xyz>

* Fixed lint issues.

Co-authored-by: Senan Kelly <senan@senan.xyz>
2022-03-14 23:38:09 +00:00
sentriz
10e8d18a0f refactor: return scan context from scanner 2022-02-24 19:15:37 +00:00
xavier
92febcffe6 feat(subsonic): implement getSimilarSongs2.view
closes #195
2022-02-10 12:34:35 +00:00
xavier
e1cfed7965 feat(subsonic): implement getSimilarSongs.view
closes #195
2022-02-10 12:34:34 +00:00
xavier
39b3ae5ecb feat(subsonic): implement getTopSongs.view
closes #195
2022-02-10 12:34:34 +00:00
sentriz
9c1f9784be chore: upgrade sqlite 2022-01-05 13:50:55 +00:00
sentriz
27ac8e1d25 fix: add stub getStarred views to shut up refix 2021-12-20 17:06:09 +00:00
sentriz
62ccf01a3a unfunny the comments 2021-12-20 16:51:26 +00:00
sentriz
f9133aac91 fix(subsonic): route settings.view -> admin home 2021-12-20 16:51:26 +00:00
sentriz
e10c8bafdf refactor: remove godirwalk dep 2021-11-20 18:09:33 +00:00
Senan Kelly
96f693f4e4 make musicFolderIds ints (#169)
* make `musicFolderId`s ints

https://github.com/sentriz/gonic/issues/50#issuecomment-963257103
006c1dafee/Classes/Models/API%20Models/MediaFolder.swift (L16)

related #50

* add a test for multi folders and reused artists
2021-11-09 00:23:32 +00:00
sentriz
40cd031b05 feat: add multi folder support
closes #50
2021-11-06 21:56:01 +00:00
sentriz
fa587fc7de refactor: update scanner, scanner tests, mockfs
closes #165
closes #163
2021-11-06 21:55:46 +00:00
sentriz
c0ca6aaf03 fix(scanner): spawn interval scans in a goroutine
this way, if the average scan takes longer than the tick interval, the ticker will be unblocked and scans won't stack on top of each other

related #63
2021-06-28 21:37:32 +01:00
sentriz
0c871d888b refactor(admin): use go1.16 embed for templates and assets 2021-05-08 18:37:55 +01:00
sentriz
b17ce76a72 Set getUser.view jukebox/podcast role
closes #130
2021-04-18 12:34:54 +01:00
Alex McGrath
10fca91785 Add download all button and include options to automatically download new episodes 2021-03-04 19:38:34 +00:00
Duncan Overbruck
2a11017d54 add flag (-http-log) to disable http request logging 2021-02-27 18:26:37 +00:00
sentriz
7a1d57a43c support subsonic bookmarks 2021-02-03 22:55:05 +00:00
Alex McGrath
37fca3a087 add some podcast nit changes and make podcasts mandatory 2021-02-03 20:45:30 +00:00
Alex McGrath
9c4286b0e2 add support for subsonic podcast api 2021-02-03 20:45:30 +00:00
Alex McGrath
4443d7d0f5 move scrobblers into their own package 2021-01-12 11:26:36 +00:00
Alex McGrath
b9998f7ee6 Add support for scrobbling to listenbrainz 2021-01-12 11:26:36 +00:00
Alex McGrath
f4ff7e70f2 server/lastfm: make a scrobbler interface and migrate lastfm to use it 2021-01-12 11:26:36 +00:00
sentriz
3a71358df6 add dummy getPodcasts view
fixes #98
2021-01-03 18:15:16 +00:00
sentriz
de79b043e1 Add inital multiple artist support 2021-01-03 18:15:16 +00:00
sentriz
1b67a2f960 don't use StatusMovedPermanently for admin redirections 2020-12-09 14:35:15 +00:00
sentriz
d02c65cb09 add playlist deletion from web ui 2020-08-16 01:05:15 +01:00
sentriz
dae1e03940 use a "CacheCover" folder for scaled covers 2020-07-24 20:56:07 +01:00
sentriz
2dcbdf312a let admins and users change usernames 2020-07-16 23:29:48 +01:00
Sumner Evans
cd0e425eff Fix issue where createPlaylist didn't replace the song IDs 2020-06-18 20:57:44 +01:00
sentriz
431641b83a add getArtistInfo stub 2020-06-13 16:03:10 +01:00