Commit graph

261 commits

Author SHA1 Message Date
Phan An
d2f8e4d920
feat: use a composition token (#1592) 2022-11-16 18:57:38 +01:00
Phan An
3b15622693
feat: add and use "last played" timestamp for songs (#1578) 2022-11-08 18:38:28 +01:00
Phan An
1acff99fba
feat: improve song updating logic 2022-10-12 14:33:41 +02:00
Phan An
3ec65c4197
fix(compilation): some bugs with album artists
- album artists not properly shown on Artist screen
- updating song with album artists creates multiple albums
- downloading artists doesn't cater for "album artist" songs
2022-10-10 10:33:30 +02:00
Phan An
e068a4ca8c
feat: support genre and year (closes #1503) (#1509) 2022-09-23 13:21:29 +07:00
Phan An
4306d1e6f6
feat: read LRC files if applicable (closes #1447) (#1502) 2022-09-14 19:12:06 +07:00
Phan An
1730e19d21
test: add tests for playlist folder functionalities 2022-09-10 12:45:04 +07:00
Phan An
52dd323c96
feat: support playlist folders (closes #1476) 2022-09-02 22:01:11 +07:00
Phan An
bbbf270965
fix: incorrect deleteWhereValueNotIn behavior 2022-08-10 08:57:20 +02:00
Phan An
9d9dc0b397
refactor: use custom query builders instead of scopes 2022-08-09 20:45:11 +02:00
Phan An
f010c773a1
feat: rework 3rd integration 2022-08-08 18:00:59 +02:00
Phan An
3bee67f910
Revert "feat: hide artists with no albums"
This reverts commit 3f635fa811.
2022-08-04 12:01:48 +02:00
Phan An
3f635fa811
feat: hide artists with no albums 2022-08-04 12:00:50 +02:00
Phan An
61445fa400
fix: album count for contributing artists 2022-08-04 11:52:36 +02:00
Phan An
07aedd9a52
fix: use UNSIGNED instead of INTEGER to support older MySQL versions 2022-08-03 12:16:44 +02:00
Phan An
9d3011fe2c
fix: koel:init 2022-08-02 10:21:05 +02:00
Phan An
c4cffcc2e7
feat: use UUIDs for song IDs 2022-08-01 12:42:33 +02:00
Phan An
4a4bbaf8a7
fix(api): restore Album::is_compilation for backward compat 2022-07-28 09:37:48 +02:00
Phan An
117a3df1f5
feat: replace br with new lines in lyrics 2022-07-28 08:05:15 +02:00
Phan An
a3c1f7aec4
fix(cs): broken static analysis 2022-07-27 20:08:57 +02:00
Phan An
334c53727e
feat(test|api): add PlaylistSong tests 2022-07-27 10:49:33 +02:00
Phan An
cebbf13107
feat: improve Spotify integration 2022-07-18 13:24:43 +02:00
Phan An
61740e66df
feat: store settings as json instead of serialized 2022-07-07 23:23:41 +02:00
Phan An
09f54d26d5
fix(sync): properly ignore unchanged files 2022-07-07 12:45:47 +02:00
Phan An
7d4f3caf68
fix(test): broken tests 2022-07-06 18:08:55 +02:00
Phan An
9edc8e5577
fix(song-update): always change album when artist is changed 2022-07-06 15:08:40 +02:00
Phan An
9d79d95cb9
refactor: massively simplify SmartPlaylist logic 2022-07-06 13:07:20 +02:00
Phan An
a59866c453
chore: remove default album covers 2022-07-05 11:03:11 +02:00
Phan An
fbbe434204
feat!: make app progressive 2022-07-04 10:36:39 +02:00
Phan An
aedff9cf6e
fix: do not remove S3-hosted songs post-sync (#1390) 2021-12-06 17:12:47 +01:00
Phan An
b29000bf8d
feat(smart-playlist): use proper Eloquent cast for rules (#1363) 2021-10-08 18:23:45 +02:00
Phan An
230ec454dd
fix(smart-playlist): ignore songs when creating a smart playlist (#1362) 2021-10-08 12:19:44 +02:00
Phan An
70696da096
feat: require PHP7.4 (#1326) 2021-06-05 12:47:56 +02:00
Phan An
51130e3a20
feat: use model casting for user preferences 2021-06-04 18:19:34 +02:00
Phan An
ef1add3877
feat(lastfm): batch like/unlike are now asynchronous 2021-06-04 17:19:33 +02:00
Phan An
a5389c41f7
feat: implement stricter password rules 2021-05-21 19:14:00 +02:00
Phan An
d189c719ae feat(search): add Playlist as searchable 2021-01-05 17:52:16 +01:00
Phan An
201da1caa5 feat: add Excerpt search 2020-12-24 13:41:18 +01:00
Phan An
84a72d284c feat: add Laravel Scount & TNTSearch 2020-12-23 11:53:00 +01:00
Phan An
50a94cb4b9 chore: fix static analysis problems 2020-12-23 00:01:49 +01:00
Phan An
560d41bf1d chore: fix CS 2020-12-22 21:11:22 +01:00
Phan An
58c00192ad
chore(builds): upgrade to Laravel 8 (#1261) 2020-11-14 17:57:25 +01:00
Phan An
1d6d832a15 feat: better API and API docs 2020-09-14 00:04:07 +02:00
Phan An
84b05c449f feat: move non-API routes out of API namespace 2020-09-07 22:43:23 +02:00
Phan An
4b799e85a7 feat: add PHPCSFixer 2020-09-06 23:20:42 +02:00
Phan An
e356e72814 feat: upgrade Laravel to 7.x 2020-09-06 20:21:39 +02:00
Phan An
3fbf14efd2 chore: sandbox tests 2020-06-13 14:19:24 +02:00
Phan An
c707a0be65 feat: delete old album/artist images upon creating new ones 2020-06-13 13:00:51 +02:00
Phan An
dcf6970355 chore: make album thumbnail blurry 2020-06-12 17:05:18 +02:00
Phan An
6977cc4986 feat: get album thumbnail from the server 2020-06-12 15:55:45 +02:00
Phan An
e6eb28ba2d feat: add upload feature 2020-06-07 22:43:04 +02:00
Phan An
7a6d930335
Apply fixes from StyleCI (#1129) 2019-11-29 22:23:58 +01:00
Phan An
ef140d8819 chore: better firstOrCreate usage 2019-11-29 22:23:40 +01:00
Phan An
872764da5a chore: clean up seeders 2019-11-29 21:50:59 +01:00
Phan An
c41e281930 feat: Allow changing admin password via console 2019-10-23 15:33:31 +02:00
Phan An
335c3370db
Apply fixes from StyleCI (#1039) 2019-08-05 17:57:36 +07:00
Phan An
e41e658fce Better type hints 2019-08-05 17:57:10 +07:00
Phan An
b3b9202ed8 Fix some problems with code analytics 2019-06-30 16:23:02 +02:00
Phan An
5f0a487586 Fix SongZipArchive tests 2019-06-30 13:13:20 +02:00
Phan An
b349110d50
Apply fixes from StyleCI (#1013) 2019-06-30 12:19:11 +02:00
Phan An
9efd232daf Add some improvements for SongZipArchive 2019-06-30 12:18:48 +02:00
Phan An
d58b791c37 Allow smart playlist creation 2018-11-25 22:21:46 +01:00
Phan An
d45948e1bd Revise the smart playlist rule 2018-11-18 22:50:15 +01:00
Phan An
d088561e06
Add "Smart Playlist" backend logics (#849)
This commit prepares the backend for the "Smart Playlist" feature.
2018-11-04 00:25:08 +01:00
Phan An
096eb7e610 Remove over-engineered service 2018-09-04 13:25:24 +07:00
Phan An
373870fefb Add a UserPreferenceService 2018-09-04 12:34:02 +07:00
Phan An
a57fe76dfe Fix some more advanced errors reported by PHPStan 2018-09-03 19:42:14 +07:00
Phan An
1558062428 Rewrite the file synchronization handling logic 2018-08-29 16:41:42 +07:00
Phan An
a31664adf7 Fix get preferences error 2018-08-29 15:01:53 +07:00
Phan An
ca2e737554 Use observers for model events 2018-08-29 14:58:59 +07:00
Phan An
3825452658
Apply fixes from StyleCI (#790) 2018-08-29 09:07:44 +02:00
Phan An
0ad670ffff Use repositories 2018-08-29 13:30:39 +07:00
Phan An
bf1d158c90 Refactor S3 2018-08-29 13:15:24 +07:00
Phan An
ffa05696c8 Upgrade to Larave 5.5 and PHP 7 2018-08-29 13:15:23 +07:00
Phan An
20282ed633 Use repositories 2018-08-29 13:15:11 +07:00
Phan An
f4ca7cf09f Refactor S3 2018-08-29 11:06:17 +07:00
Phan An
1dd5457084 Upgrade to Larave 5.5 and PHP 7 2018-08-24 17:27:19 +02:00
Phan An
a340a64748 Better download tests 2018-08-22 22:25:01 +02:00
Phan An
86915c9280
Apply fixes from StyleCI (#782) 2018-08-19 23:17:24 +02:00
Phan An
8f7654a220 Refactor scrobble 2018-08-19 23:17:05 +02:00
Phan An
6181041331
Apply fixes from StyleCI (#778) 2018-08-19 13:13:29 +02:00
Phan An
67357316bc Big revamp for lastfm and youtube services 2018-08-19 13:13:08 +02:00
Phan An
d4d2b0aff3
Apply fixes from StyleCI (#777) 2018-08-19 11:06:59 +02:00
Phan An
5fbec01c50 Big revamp for artist and album info 2018-08-19 11:06:31 +02:00
Phan An
cedb9f9922
Apply fixes from StyleCI (#776) 2018-08-18 15:20:02 +02:00
Phan An
4fc5117509 Use a service for media info 2018-08-18 15:19:40 +02:00
Phan An
1d5c8e84b6 Use a service for Interaction 2018-08-18 14:27:44 +02:00
Phan An
168f70481c Fix download issues 2018-08-18 12:35:42 +02:00
Phan An
1a8ab06db7 Revert changes to lyrics tag 2018-04-14 23:16:04 +02:00
Phan An
77812d0070 Fix lyric tag (closes #716) 2018-04-14 22:59:45 +02:00
Phan An
f472ff9ac8 Fix tests 2018-02-05 09:52:14 +01:00
Phan An
4ad5020b58 Fix image stealing logic 2018-02-04 16:53:40 +01:00
Phan An
bca8668ace Refactor and use extending request classes 2017-12-09 19:34:27 +01:00
Phan An
3270879031 Refactor File model 2017-12-09 03:24:09 +01:00
Fiete Börner
4298774e7f implement simple multi disc support (#687)
* add disc field to songs table via migration

* add disc field to song model

* collect disc information in file sync process

* sort song list by disc and track number in album context

* check the disc field in file test

* remove nullable flag from disc field in add_disc_into_songs migration

* fix php code style issues

* fix js code style

* fix sort usage in song-list

* sort songs by inserting into queue by clicking the album/artist item play button (album_id, disc, track)

* add disc to sync tags in media model
2017-12-03 11:02:31 +01:00
Phan An
4246bcb45c Only consider an album “compiled” if albumartist != artist 2017-12-02 17:22:20 +01:00
Phan An
3e3004a904 Fix the bug with lyrics fails to be read 2017-11-08 23:39:26 +01:00
Phan An
cc975996af Use file name for song title if such is missing 2017-11-08 22:35:06 +01:00
Phan An
1919df1e20
Apply fixes from StyleCI (#678) 2017-11-08 14:11:45 +01:00
Phan An
f344b4c3fa Make tests green 2017-08-05 23:27:26 +01:00