Commit graph

325 commits

Author SHA1 Message Date
Phan An
4e7f4d1456
Downgrade getID3 (#1104)
* fix: downgrade getID3 to avoid bugs

* Apply fixes from StyleCI (#1103)
2019-10-09 19:36:22 +02:00
Phan An
f485e2e2ad Some minor tweaks 2019-08-13 15:56:59 +07:00
Phan An
951bcc85a8
Apply fixes from StyleCI (#1042) 2019-08-07 15:17:54 +07:00
Phan An
5f23f53c8d Upgrade GetID3 (fixes #1040) 2019-08-07 15:17:30 +07:00
Phan An
2a3129d3f3 Upgrade Laravel to 5.8 2019-07-22 09:03:23 +02:00
Phan An
fea98c017c Sync with core 2019-07-04 21:50:27 +02:00
Phan An
154de03251
Apply fixes from StyleCI (#1017) 2019-07-01 10:12:04 +02:00
Phan An
a19e30e74a Use constants for HTTP status code 2019-06-30 17:27:07 +02:00
Phan An
b3b9202ed8 Fix some problems with code analytics 2019-06-30 16:23:02 +02:00
Phan An
96488ba091 Refactor file synchronizer class 2019-06-30 15:37:33 +02:00
Phan An
d5d75577ed
Apply fixes from StyleCI (#1015) 2019-06-30 13:24:04 +02:00
Phan An
69cfab9515 Rename SyncCommand file 2019-06-30 13:22:01 +02:00
Phan An
cd84735a08
Apply fixes from StyleCI (#1014) 2019-06-30 13:13:41 +02:00
Phan An
931d5dbf6f Make album and artist image paths not so random 2019-06-30 13:13:20 +02:00
Phan An
9efd232daf Add some improvements for SongZipArchive 2019-06-30 12:18:48 +02:00
Phan An
5f77c061f9
Apply fixes from StyleCI (#999) 2019-06-16 23:13:25 +02:00
Phan An
d4c68e33e5 Fix return type 2019-06-16 23:12:56 +02:00
red-coracle
d9358cc181 Fix downloading songs from favourites playlist (#979) 2019-05-24 10:20:47 +02:00
Phan An
57a566834b Add tests for iTunes service 2019-04-07 23:09:25 +02:00
Javier López
7ba295efad Non interactive koel:init (#886)
* Use ADMIN_* variables if available to create the admin account

* Add APP_MEDIA_PATH for media directory

* Use the standard --no-interaction flag to koel:init

* Undo variable aligment and code formatting

* Prefer early return over else, add new line before return statements

* Some fixes
2019-01-01 12:53:20 +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
6f0db1620f
Add "Recently Played" playlist (#839)
* Add "Recently Played" playlist

* Apply fixes from StyleCI (#838)
2018-10-20 23:46:12 +02:00
Phan An
1c26d6bb66
Upgrade and fix getID3 lyrics tag issue (#835) 2018-10-19 16:32:16 +02:00
Phan An
c5f5a67789
Fix error with cover file (#823)
* Fix error with cover file

* Apply fixes from StyleCI (#822)
2018-10-06 12:44:25 +02:00
Phan An
3313cd1a1d
Apply fixes from StyleCI (#804) 2018-09-04 13:26:02 +07:00
Phan An
096eb7e610 Remove over-engineered service 2018-09-04 13:25:24 +07:00
Phan An
4b8153e503 Fix parameter type 2018-09-04 13:09:52 +07:00
Phan An
5102e75698
Apply fixes from StyleCI (#803) 2018-09-04 12:43:12 +07:00
Phan An
373870fefb Add a UserPreferenceService 2018-09-04 12:34:02 +07:00
Phan An
5c870ee254 Refactor Lastfm's connect 2018-09-04 09:24:29 +07:00
Phan An
47480ef49d
Apply fixes from StyleCI (#802) 2018-09-03 20:15:36 +07:00
Phan An
efcb6757d2 Fix type hint 2018-09-03 20:14:55 +07:00
Phan An
24cff9c2a8
Apply fixes from StyleCI (#801) 2018-09-03 20:13:54 +07:00
Phan An
5a4a6367be Fix type hint 2018-09-03 20:13:24 +07:00
Phan An
368d7ab484
Apply fixes from StyleCI (#800) 2018-09-03 19:42:37 +07:00
Phan An
a57fe76dfe Fix some more advanced errors reported by PHPStan 2018-09-03 19:42:14 +07:00
Phan An
40d4174d04
Apply fixes from StyleCI (#799) 2018-08-31 20:47:45 +07:00
Phan An
d88dd79f15 Fix basic errors detected by PHPStan 2018-08-31 20:47:15 +07:00
Phan An
c4beca787b Assert that version is cached 2018-08-30 12:42:47 +07:00
Phan An
b91d478fdf
Apply fixes from StyleCI (#798) 2018-08-30 12:37:24 +07:00
Phan An
351efe4092 Move version checking logic to a service 2018-08-30 12:37:03 +07:00
Phan An
06b7f7f5ca
Apply fixes from StyleCI (#797) 2018-08-30 10:16:40 +07:00
Phan An
3b2f6b9d1c Fix type hint 2018-08-30 10:16:21 +07:00
Phan An
86cd0fbb4f
Apply fixes from StyleCI (#796) 2018-08-30 09:53:39 +07:00
Phan An
37ec4aaa6f Use a proper package for php streamer 2018-08-30 09:53:18 +07:00
Phan An
2349a66a31 Refactor php streamer 2018-08-30 09:45:48 +07:00
Phan An
6eae3b53a2 Service configs can be null 2018-08-29 17:36:05 +07:00
Phan An
8638c229a8 Fix the error with S3Client being null 2018-08-29 17:18:56 +07:00
Phan An
fe34592e66
Apply fixes from StyleCI (#793) 2018-08-29 11:42:11 +02:00
Phan An
1558062428 Rewrite the file synchronization handling logic 2018-08-29 16:41:42 +07:00
Phan An
3825452658
Apply fixes from StyleCI (#790) 2018-08-29 09:07:44 +02:00
Phan An
b227ece517 Refactor Lastfm and iTunes services 2018-08-29 14:05:24 +07: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
6a2a2263fa
Apply fixes from StyleCI (#786) 2018-08-22 22:25:23 +02:00
Phan An
a340a64748 Better download tests 2018-08-22 22:25:01 +02:00
Phan An
6cadfc5ac3 Tests for streamer factory 2018-08-22 21:14:28 +02:00
Phan An
eed836bcb9
Apply fixes from StyleCI (#784) 2018-08-22 19:59:36 +02:00
Phan An
7c7693179d Refactor streamers 2018-08-22 19:59:14 +02:00
Phan An
5cf19b09aa
Apply fixes from StyleCI (#779) 2018-08-19 17:26:52 +02:00
Phan An
f3887e6276 Rewrite Sync command 2018-08-19 17:26:34 +02:00
Phan An
a837432a4e Use proper DI for cache service 2018-08-19 16:58:14 +02:00
Phan An
1c76ff6d76 Use a service for iTunes 2018-08-19 16:40:25 +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
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
181357f3de Rename Download service 2018-08-18 14:27:17 +02:00
Phan An
168f70481c Fix download issues 2018-08-18 12:35:42 +02:00
Phan An
b1165c2f0f Fix broken PHPStream logic (fixes #707) 2018-04-14 23:03:04 +02:00
Phan An
e11e9d1392 Optimize PHPStreamer (closes #708) 2018-04-14 22:46:08 +02:00
Phan An
cdf9faafbf Use correct Last-Modified date (fixes #709) 2018-04-14 22:36:41 +02:00
Phan An
bf3ca591d1
Apply fixes from StyleCI (#694) 2017-12-09 21:10:55 +01:00
Phan An
bca8668ace Refactor and use extending request classes 2017-12-09 19:34:27 +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
ee227865be Apply fixes from StyleCI (#640) 2017-08-21 22:05:03 +01:00
Phan An
c95d74d487 Add a memory limit setting 2017-08-21 21:45:01 +01:00
Phan An
0f1be0ae98 Refactor YouTube cache 2017-08-19 17:09:00 +01:00
Phan An
7ec5cfb2af Apply fixes from StyleCI (#633) 2017-08-05 23:27:41 +01:00
Phan An
f344b4c3fa Make tests green 2017-08-05 23:27:26 +01:00
Phan An
e16a500510 Refactor media cache 2017-08-05 22:51:59 +01:00
Phan An
e96c4d5073 Remove redundant code 2017-06-10 12:36:32 +01:00
Phan An
796088944d Add more refactorings 2017-06-04 02:30:45 +01:00
Phan An
caf13fbac0 Refactor Download service 2017-06-04 02:12:08 +01:00
Phan An
aa7267419d Massive refactorings 2017-06-04 00:21:50 +01:00
Phan An
9e863abdc2 Apply fixes from StyleCI (#608) 2017-06-03 17:48:13 +01:00
Phan An
7d80f1d143 Refactor and fix code styles 2017-06-03 17:35:08 +01:00
Phan An
e275a263bb Fix download bug (close #601) 2017-05-29 12:14:53 +01:00
Phan An
47360bcfa6
Cleanups 2017-05-02 10:23:10 +07:00
Phan An
a8bd7ea7c6
Rename contributing_artist_id to simple artist_id 2017-04-29 11:49:14 +08:00
Phan An
40deeb9f8b
Refactor and clean up 2017-04-29 10:55:41 +08:00
Phan An
570197d94b
Tidy the tidy function 2017-04-29 10:53:33 +08:00
Phan An
57157b5a57
Modify MediaCache to adapt to new changes 2017-04-28 22:36:57 +08:00
Phan An
a96c0e22fb Compilation fixes getting in shape 2017-04-24 00:01:02 +08:00
Phan An
3049804811 Move streamers into Services 2017-04-20 19:20:32 +08:00
An Phan
991133045d
Make media caching an option 2017-01-15 12:27:05 +08:00
An Phan
4082ca77f0
Merge branch 'master' of github.com:phanan/koel 2017-01-06 11:10:38 +08:00
An Phan
4740591f3d
Emit LibraryChanged event for new directory sync 2017-01-06 11:10:03 +08:00
Phan An
c086aa255a Apply fixes from StyleCI (#514) 2017-01-06 11:04:39 +08:00
An Phan
f51e660501
Cache the media 2017-01-06 11:04:08 +08:00
An Phan
1ba00a0475
Use cache() shortcut where applicable 2016-12-12 10:43:14 +08:00
An Phan
876db46501
Cache iTunes request 2016-12-11 21:21:45 +08:00
An Phan
86ca8d40f6
Add iTunes integration 2016-12-11 21:08:30 +08:00
An Phan
d3843f2d5f
Fix #463 2016-09-26 15:32:16 +08:00
An Phan
b0f5b3d76e
Upgrade to Laravel 5.3 2016-09-26 14:30:00 +08:00
bdgold
1d7a7602c9 Fix spelling (#454) 2016-09-19 09:08:50 +07:00
An Phan
e4f0027f6a
Add IGNORE_DOT_FILES setting
With this .env setting, user can specify Koel to ignore dot files and
folders (default) or include them during scanning.
2016-09-17 23:56:58 +08:00
An Phan
3b77163804
Take into account dot directories (#450) 2016-09-15 21:30:31 +08:00
bdgold
27933d49cf move env variables to config (#415) 2016-08-21 22:19:03 +07:00
X-Ryl669
8619c40282 Allow failure reason to be reported in verbose mode 2016-08-17 22:48:18 +08:00
An Phan
2504bb9a10
Add a progress bar when run koel:sync 2016-08-17 22:26:07 +08:00
An Phan
4480ad7ccf
Make PHPStorm happy 2016-08-16 23:12:11 +08:00
X-Ryl669
6e80635acb Allow music library scanning to follow symbolic links whenever applicable (#401) 2016-08-11 11:52:35 +08:00
Phan An
cb7cebe151 Applied fixes from StyleCI (#392) 2016-08-03 18:42:39 +08:00
An Phan
65d403f857
Code style and refactor 2016-08-03 18:42:11 +08:00
bdgold
8d76859df7 Corrected spelling in Media.php (#390) 2016-08-02 15:03:19 +08:00
Phan An
1f75e85fb6 Applied fixes from StyleCI (#386) 2016-07-30 23:34:34 +08:00
An Phan
e3ee03db24
Complete YouTube feature 2016-07-30 23:32:17 +08:00
An Phan
528469fdc4
Add YouTube service on the server side 2016-07-14 16:53:10 +08:00
An Phan
e19b5e5c79
Allow downloading from S3 (fixes #371) 2016-07-11 15:26:39 +08:00
An Phan
2f0d0dc042
Typo 2016-07-09 13:19:58 +08:00
An Phan
17eff0d246
Use albumartist/band to check for compilation as well 2016-06-16 18:17:16 +08:00
An Phan
b66a7835ca
Fix the bug where artists cannot be removed 2016-06-16 18:08:36 +08:00
An Phan
efcdac82e3
Refactor 2016-06-08 18:10:20 +08:00
An Phan
d5b83d53ef Allow downloading files with non-ascii names (fixes #351) 2016-06-06 01:23:03 +08:00
An Phan
080b0aac64 Resolve unresolved conflicts 2016-06-05 19:12:43 +08:00
An Phan
91f978c753 Resolve conflicts 2016-06-05 19:09:54 +08:00
An Phan
27b44ec79c Refactor useLastfm config 2016-06-05 18:44:13 +08:00
An Phan
48023f52be Refactor useLastfm config 2016-06-05 12:38:47 +08:00
Phan An
b8bcff0842 Applied fixes from StyleCI 2016-06-04 13:10:29 -04:00
An Phan
e334ec20d6 Add download tests 2016-06-05 00:56:38 +08:00
An Phan
6d0322f80d Finish Favorites download 2016-06-04 21:42:12 +08:00
An Phan
c8b1e253a7 Finish Artist download 2016-06-04 19:57:27 +08:00
An Phan
774ae68efb Finish Album download, starting Artist download 2016-06-04 19:20:11 +08:00
An Phan
5185f3dc6b Finish structure and song download 2016-06-03 01:53:26 +08:00
An Phan
4dc06719b3 First try 2016-04-17 23:38:06 +08:00
An Phan
8c862cb9cc Use root namespaces 2016-04-02 21:16:09 +08:00
An Phan
42f120599b Fix docblock 2016-03-26 08:46:54 +07:00
An Phan
1a8927e5ac Fix comments 2016-03-26 08:44:55 +07:00
An Phan
f43a617f20 Ignore unreadable dirs when sync 2016-03-24 11:34:28 +08:00
An Phan
d8d2dc8a5d Support force and selective-tags sync 2016-03-22 16:22:39 +08:00
alex-phillips
940cd1a914 added support for song track numbers as well as subsorting song lists
with a second sort key. track numbers are also editable via the song
edit modal interface.
2016-03-20 09:06:53 -04:00
Phan An
461480f766 Applied fixes from StyleCI 2016-03-05 23:11:28 -05:00
An Phan
516b78d9b0 Minor bug fix 2016-02-10 22:30:48 +07:00
Phan An
39d726c5ec Applied fixes from StyleCI 2016-02-04 10:48:15 -05:00
An Phan
4c90c35c28 Fix log message 2016-02-04 23:47:02 +08:00
An Phan
5d690f272d Ditch fswatch for inotify 2016-02-04 23:04:53 +08:00
An Phan
f10fc5fa7d Add "watch" functionality 2016-02-02 15:47:00 +08:00
An Phan
65fb45f08a Add FLAC support 2016-01-28 23:19:06 +08:00
An Phan
278fb7c8bf Remove obsolete comment regarding type support 2016-01-26 14:31:56 +08:00
An Phan
3827545037 Merge branch '1.1' into 2.0 2016-01-26 14:29:37 +08:00
Joan Font
a124a97cd3 case insentive file extension when looking up for files to add into the library 2016-01-25 18:48:33 +01:00
An Phan
946f335cc2 Disable sync time limit in console 2016-01-15 09:53:31 +08:00
An Phan
a083696289 Add updateNowPlaying for Last.fm 2015-12-23 14:26:16 +08:00
An Phan
15e1acbeae Merge branch 'master' into 1.1 2015-12-22 09:39:14 +08:00
An Phan
d64043e44b Added support for AAC (m4a) 2015-12-22 09:38:59 +08:00
Phan An
54c9a88bc1 Applied fixes from StyleCI 2015-12-21 08:50:26 -05:00
An Phan
8495452762 Like/unlike now work with Last.fm 2015-12-21 21:49:00 +08:00
Phan An
1d417221bf Applied fixes from StyleCI 2015-12-20 07:30:28 -05:00
An Phan
f449a1a744 Add Last.fm scrobbling functionality 2015-12-20 20:17:35 +08:00
An Phan
cf27ed713d First integration with Last.fm
Koel can now integrate and use the rich information from Last.fm. Now
whenever a song is played, its album and artist information will be
queried from Last.fm and cached for later use. What's better, if an
album has no cover, Koel will try to update its cover if one is found on
Last.fm.

In order to use this feature, users only need to provide valid Last.fm
API credentials (namely LASTFM_API_KEY and LASTFM_API_SECRET) in .env. A
npm and gulp rebuild is also required - just like with every update.
2015-12-20 00:36:44 +08:00
An Phan
bf01bf67ef Attempts to fix UTF-16 issues 2015-12-18 01:57:23 +08:00
Phan An
f9c9a4df2d Applied fixes from StyleCI 2015-12-14 08:22:39 -05:00
Phan An
3848552baf Merge pull request #3 from icewind1991/patch-1
Ignore files that dont have a playtime
2015-12-14 01:08:47 +08:00
An Phan
3f65c8ad3d Remove unused property 2015-12-14 00:42:55 +08:00
Robin Appelman
6810548490 Ignore files that dont have a playtime
They probably aren't music files

Prevents

> Undefined index: playtime_seconds

while scanning
2015-12-13 17:29:26 +01:00
An Phan
0c4df50fa9 Typos 2015-12-14 00:13:08 +08:00
An Phan
0ee372882c Big Bang 2015-12-13 12:42:28 +08:00