Commit graph

453 commits

Author SHA1 Message Date
Peter Deltchev
093f7ffb9d Added ALAC upload support and improved the upload page. 2016-02-15 12:16:04 -08:00
Peter Deltchev
4b3a0808a0 Updated getID3() - this fixes Atom tag parsing. 2016-02-15 11:53:42 -08:00
Peter Deltchev
20ef64988a Fixes #56: no more duplicate tracks when browsing! 2016-02-15 08:02:44 -08:00
Peter Deltchev
5314f5accb Fixed an n+1 query. 2016-02-15 07:51:26 -08:00
Peter Deltchev
6c83936ce6 Unknown audio formats are gracefully handled now. 2016-02-15 07:18:31 -08:00
Peter Deltchev
815b505e87 Code style improvements. 2016-02-15 05:15:40 -08:00
Peter Deltchev
5edcde3a8d The rebuild:track command properly deals with unfinished uploads now.
This commit involved a huge refactoring of UploadTrackCommand.
2016-02-15 05:06:06 -08:00
Peter Deltchev
5588b836a0 Pony.fm should accept all PCM and ADPCM files now. 2016-02-15 02:21:43 -08:00
Peter Deltchev
cbce336478 Converted uses of bindonce to Angular one-time bindings. 2016-02-14 02:53:27 -08:00
Peter Deltchev
7ab0b907c5 Fixed the release date picker.
- upgraded ui-date to the newest version
- made adjustments to keep this date in UTC
- fixed the picker's broken images
2016-02-14 01:29:02 -08:00
Peter Deltchev
72cdef8dae Fixed two regressions. 2016-02-08 05:29:58 -08:00
Peter Deltchev
3f7a63dd58 Implemented a script to fix broken MLPMA cover art. 2016-02-05 14:01:45 -08:00
Peter Deltchev
09de55d14d Handle slug collisions with disabled accounts properly. 2016-01-24 22:05:08 -08:00
Peter Deltchev
4e540de38e Implemented an account merging CLI tool. 2016-01-24 21:04:57 -08:00
Peter Deltchev
a2b35ba8a3 #56: Fixed duplicate tracks in playlists. 2016-01-23 04:27:43 -08:00
Peter Deltchev
4585eb712e #1: SEARCH IS ALIVE. LET'S GO, YES! 2016-01-20 19:18:18 -08:00
Peter Deltchev
7a005bcf6b Silently enabled lossy uploads for users. 2016-01-18 02:16:56 -08:00
Kelvin Zhang
abedc47d7e Remove outdated code from ClearTrackCache.php 2016-01-18 07:32:20 +00:00
Peter Deltchev
e35752d11a Prepared asynchronous jobs to run in daemon mode. 2016-01-17 18:01:58 -08:00
Scrutinizer Auto-Fixer
d655d0a151 Scrutinizer Auto-Fixes
This commit consists of patches automatically generated for this project on https://scrutinizer-ci.com
2016-01-18 01:21:39 +00:00
Peter Deltchev
004c236ed4 #1: There's room for two more tracks in the search UI. 2016-01-17 08:45:44 -08:00
Peter Deltchev
845449c8cc #1: Reindexing now runs on its own queue + lots of code cleanup. 2016-01-17 07:16:16 -08:00
Peter Deltchev
33befbe3d0 #1: Darklaunched search to site staff. 2016-01-17 05:43:28 -08:00
Peter Deltchev
56edd5ec28 #1: Search relevancy improvements and other tweaks. 2016-01-17 02:33:58 -08:00
Peter Deltchev
7a7f4ee02a #1: Moved the artists list into its own directive + visual cleanup of search. 2016-01-16 23:35:43 -08:00
Peter Deltchev
6b5d3f67a3 #1: Beginning of the search front-end. 2016-01-16 01:13:53 -08:00
Peter Deltchev
dbbaa03542 #1: Implemented Elasticsearch mappings for playlists and users. 2016-01-16 01:13:53 -08:00
Peter Deltchev
990916171c #1: Progress commit - some semblance of this is working now. 2016-01-16 01:13:53 -08:00
Peter Deltchev
e0faefee23 #1: Progress commit. 2016-01-16 01:13:53 -08:00
Peter Deltchev
9eb0da9a13 Removed unused Artisan commands. 2016-01-15 14:40:58 -08:00
Peter Deltchev
84ab0a3b38 Improved the tag rebuild command's output. 2016-01-06 06:13:54 -08:00
Peter Deltchev
95090fb334 Include the original-size cover art when tagging tracks.
Also, use Symfony to run external commands.
2016-01-06 05:52:09 -08:00
Peter Deltchev
0a078adab3 #20: Genre tags in files are now updated when a genre is renamed. 2016-01-06 05:33:23 -08:00
Peter Deltchev
bf831d839a #20: Added the genre creation tool. 2016-01-06 04:50:44 -08:00
Peter Deltchev
96be3224e4 Deleting stuff actually can be undone. 2016-01-05 07:53:01 -08:00
Peter Deltchev
eaa1cc39a9 Make it possible to rebuild deleted tracks, too. 2016-01-04 15:24:25 -08:00
Peter Deltchev
4394d0131b Only log ffmpeg output if encoding fails. 2016-01-04 15:22:15 -08:00
Peter Deltchev
0eb96f0e83 Fixed track encodes. They work again! Also implemented a track re-encoding command. 2016-01-04 14:55:20 -08:00
Peter Deltchev
a2b450baa6 The array has strings in it, not datetime objects. 2016-01-04 09:12:21 -08:00
Peter Deltchev
df5a911168 Fixed an explosion of queued encoding jobs. 2016-01-04 08:42:30 -08:00
Peter Deltchev
cf85ee69d7 Octal values... 2016-01-03 11:10:48 -08:00
Peter Deltchev
933f3f60c5 Fixed full-size JPEG covers not being accessible by nginx. 2016-01-03 10:50:16 -08:00
Adam Lavin
3399f3e223 Added support for authorising oauth2 endpoints with the bearer header 2016-01-01 21:11:28 +00:00
Adam Lavin
6b026e8551 Remove reliance on facades/helpers, and added in a typehint, in AuthenticateOAuth middleware. 2016-01-01 20:58:52 +00:00
Adam Lavin
991f8df661 Security: Fix auth.outh2 generating a user session
If you are logged out of Pony.fm, made a request to an endpoint using this middleware in the browser with an access token with the appropriate scope, then went back to Pony.fm, you'd be logged in as the owner of the access token.
2016-01-01 20:55:00 +00:00
Peter Deltchev
e85b79a9e4 Fixed error on artist pages and an issue with profile URL generation. 2015-12-31 21:12:16 -08:00
Peter Deltchev
d0c81f78dc Use the absolute path to the document root when generating asset URL's. 2015-12-31 18:52:56 -08:00
Peter Deltchev
8ac590819f Fixed incorrect class references. 2015-12-31 18:27:21 -08:00
Peter Deltchev
f61771db09 Made avatars local-environment-friendly. 2015-12-31 17:23:41 -08:00
Peter Deltchev
3b7d060b73 Removed libraries that aren't used anymore. 2015-12-31 17:18:01 -08:00
Peter Deltchev
cb27cddac7 Typehinted the database models. 2015-12-31 16:36:08 -08:00
Peter Deltchev
5ff04ff08d Moved all database models into their own namespace. 2015-12-31 16:24:33 -08:00
Peter Deltchev
79a0129e6d Reversed the order that the top X tracks show up in. 2015-12-31 04:20:04 -08:00
Peter Deltchev
3b1fa792cf #29: This works because the only disabled accounts right now are merged ones. 2015-12-29 13:32:14 -08:00
Peter Deltchev
a9bc69ec02 #29: Exclude null usernames from the account merging script. 2015-12-29 09:15:32 -08:00
Peter Deltchev
622dc2d577 #29: Implemented the auth:merge-duplicates CLI script to reconcile duplicate accounts. 2015-12-29 08:54:08 -08:00
Zeusking19
dfefb2ad81 Implement server-side track removal from playlist 2015-12-28 14:31:28 +00:00
Zeusking19
286fd9354b Merge pull request #47 from Poniverse/feature/markdown
Implement markdown, remove disfunctional newlines.coffee
2015-12-27 18:29:49 +00:00
Peter Deltchev
8f7e4366f3 #40: Handle the release date tag better. 2015-12-27 09:11:07 -08:00
Zeusking19
605c8b7f99 Resolve #43 - Implement markdown, remove disfunctional newlines.coffee 2015-12-27 15:59:38 +00:00
Peter Deltchev
5989b36aa8 Resolves #40: Tags included with a file upload are now used and stored.
Also made our ffmpeg commands more robust - they now ignore cover art and strip metadata.
2015-12-27 07:31:54 -08:00
Peter Deltchev
454411b24b Added the ability to the API to include cover art with a track upload. 2015-12-27 02:36:49 -08:00
Peter Deltchev
93b76d1954 Added support for JPEG cover art. 2015-12-27 01:43:43 -08:00
Zeusking19
17810942b4 Emergency fix - Can't call format on null object 2015-12-26 22:11:17 +00:00
Zeusking19
8282e5752d Quickfix to some date issues 2015-12-26 21:01:46 +00:00
Buster Silver
a760527e49 Closes #42 -- Check for specific "null" string when doing string replacement. 2015-12-26 10:29:36 -06:00
Adam Lavin
f30f17e80a Merge pull request #41 from Poniverse/feature/fixed-dates
Get dates to display properly in Pony.fm
2015-12-26 15:31:47 +00:00
Zeusking19
78deb73e04 Resolve #26 - Get dates to display properly in Pony.fm 2015-12-26 15:20:31 +00:00
Peter Deltchev
ac6ce4bbb4 #8: Implemented auto-publishing and lots of optional fields for the upload endpoint. 2015-12-26 03:40:47 -08:00
Adam Lavin
378584261d Fixed playlist download url generation 2015-12-26 03:00:43 +00:00
Adam Lavin
590a691bc5 Corrected reference to TrackFileNotFoundException in Album and Playlist classes 2015-12-26 02:30:16 +00:00
Adam Lavin
ba29702be9 Corrected reference to TrackFileNotFoundException in Track class 2015-12-26 02:18:04 +00:00
Peter Deltchev
de88fe6fff #8: Updated the name of the track upload scope. 2015-12-25 01:25:22 -08:00
Peter Deltchev
7bd336ef55 #8: Implemented several tests for the API. 2015-12-24 18:08:49 -08:00
Peter Deltchev
4d119ff758 #8: Implemented the track upload API. 2015-12-24 04:14:55 -08:00
Peter Deltchev
e6c31a1500 Updated URL generation to use Laravel 5's helpers. 2015-12-20 07:07:36 -08:00
Peter Deltchev
91a4a2d660 Patched getID3() for PHP 7. 2015-12-20 03:33:22 -08:00
Peter Deltchev
476e6b4800 Updated getID3() to the latest version. 2015-12-20 03:20:04 -08:00
Peter Deltchev
c99ec8fc54 #39: Fixed a typing issue with database results. 2015-12-18 05:57:30 -08:00
Peter Deltchev
851dfff921 #39: Implemented asynchronous encoding in uploads. 2015-12-18 05:11:29 -08:00
Peter Deltchev
f01fcae3af Merge pull request #35 from Zeusking19/master
Closes #28 - Lightbox for cover art
2015-12-13 12:41:23 -08:00
Zeusking19
2de2b87653 Make changes in regards to #28 2015-12-13 13:42:37 +00:00
Peter Deltchev
3af70f8f90 #20: Allow the reuse of deleted genre names and slugs. 2015-12-11 06:07:47 -08:00
Peter Deltchev
e3fc8ee6d6 Added the new advertising program page, updated the FAQ, and revamped all the static pages. 2015-12-06 00:22:00 -08:00
Peter Deltchev
07bb5e2c3a #20: Implemented the genre merging tool. 2015-12-05 18:43:05 -08:00
Adam Lavin
3ba8467870 Return error message in profile exception handler response 2015-11-30 01:00:20 +00:00
Adam Lavin
3c0e922b28 Fixed mobile api endpoints 2015-11-30 00:59:59 +00:00
Peter Deltchev
77730e9fd9 #20: Fixed an n+1 query. 2015-11-24 10:00:59 -08:00
Peter Deltchev
be23475ae5 Include a link to the genre's content in the genre editor. 2015-11-24 03:37:33 -08:00
Peter Deltchev
2bd6a0b258 #2, #20: Added revision tracking to genres, tracks, albums, users, and playlists.
Also ordered genres alphabetically in the genre editor.
2015-11-24 03:15:50 -08:00
Peter Deltchev
4c660fcb71 #20: Implemented the genre renaming tool. 2015-11-24 02:49:47 -08:00
Peter Deltchev
395a894bdd Removed obsolete CSRF validation middleware. CSRF tokens are validated on all requests. 2015-11-23 21:47:26 -08:00
Peter Deltchev
35cd4d65e4 Updated all endpoints that are supposed to use middleware to actually use it. 2015-11-23 21:39:03 -08:00
Peter Deltchev
c4e31a6431 #2, #20: Laid the groundwork for an admin area. Includes the addition of Laravel's authorization system. 2015-11-23 21:19:23 -08:00
Peter Deltchev
b2c5a2233e Fixes issue #30: Weirdness in the embedded player's timestamp. 2015-11-21 18:34:06 -08:00
Peter Deltchev
88b034ea6c Use a sensible filename for image downloads. 2015-11-21 18:16:44 -08:00
Peter Deltchev
8d7f36c375 Fixes #29: Usernames are now used to check if a Pony.fm account already exists. The username column was also renamed. 2015-11-20 18:25:11 -08:00
Peter Deltchev
8bfddc7037 Fixes #10: Use the X-XSRF-TOKEN header globally for AJAX CSRF protection. 2015-11-11 13:45:44 -08:00
Peter Deltchev
87f796f50b #4: Don't try re-encoding master files when rebuilding the track cache. 2015-11-10 00:09:39 -08:00
Peter Deltchev
4214dde7b0 #4: The file size updating method no longer overwrites file size estimates for un-cached files with null. 2015-11-09 22:44:41 -08:00
Peter Deltchev
2d93ed0ef4 #4: Fixed an error in the cache polling callback. 2015-11-09 22:44:38 -08:00
Peter Deltchev
c28c887e29 #4: Refactored a bunch of common logic between albums and playlists into a trait. 2015-11-09 22:44:36 -08:00
Peter Deltchev
3456e6b499 #4: Fixed playlists that have a mix of lossy and lossless master files, added a bunch of typehinting, and fixed the reversal of a migration. 2015-11-09 22:44:32 -08:00
Kelvin Zhang
214880ec2c #4: Remove re-thrown ModelNotFoundException 2015-11-09 22:44:30 -08:00
Kelvin Zhang
6c5155f583 #4: Implement cached playlist downloads 2015-11-08 17:46:35 +00:00
Kelvin Zhang
80ad614b5f Merge branch 'master' into feature/cache_tracks 2015-11-08 17:40:24 +00:00
Kelvin Zhang
f69240064a #18: Make playlist accessible conditional one line 2015-11-08 13:45:59 +00:00
Kelvin Zhang
8df11e9616 Merge remote-tracking branch 'origin/master' 2015-11-07 17:55:35 +00:00
Kelvin Zhang
dc117351ce Fixes #18: Fix downloading of private playlists for playlist owners 2015-11-07 17:54:58 +00:00
Kelvin Zhang
41bcdcaf91 #4: Cast track output formats to correct types 2015-11-07 17:01:53 +00:00
Peter Deltchev
7dfb80f13b Fixes #5: Implemented a rebuild:artists command to recount all users' tracks. 2015-11-06 03:26:23 -08:00
Peter Deltchev
5583c59ec3 Merge branch 'master' into feature/cache_tracks 2015-11-05 17:15:28 -08:00
Peter Deltchev
a62fca7212 Added missing copyright notices. 2015-11-05 17:10:33 -08:00
Peter Deltchev
72132d9505 Added a "secret" unclassified track type for MLPMA tracks. 2015-11-04 18:47:11 -08:00
Peter Deltchev
9cff18f5fc #4: Removed a line of dead code and fixed the rebuild process for deleted tracks. 2015-11-02 20:48:15 -08:00
Peter Deltchev
c7bca18b5e Added AAC to the list of cacheable formats and wrote some inline documentation. 2015-11-02 20:28:39 -08:00
Kelvin Zhang
b2408e3d84 Add in changes from code review 2015-11-01 16:49:28 +00:00
Kelvin Zhang
eca01b5f29 Change rebuild commands to rebuild:command 2015-10-31 12:19:12 +00:00
Kelvin Zhang
98e069e6a2 Update copyright notices for created files 2015-10-30 15:29:18 +00:00
Kelvin Zhang
df930d629b Add missing copyright notices 2015-10-29 16:48:45 +00:00
Kelvin Zhang
f5987db735 Add file size addition during uploading 2015-10-29 16:26:01 +00:00
Kelvin Zhang
7fd13632eb Add file size caching for track encoding 2015-10-29 16:10:55 +00:00
Kelvin Zhang
4f9046af6e Update file size caching for tracks 2015-10-29 16:10:38 +00:00
Kelvin Zhang
5a81908ed4 Add file size rebuilding command 2015-10-29 16:00:16 +00:00
Kelvin Zhang
88b57a631a Update models with isCached 2015-10-29 14:36:13 +00:00
Kelvin Zhang
65159f31a3 Fix returning of cached tracks 2015-10-29 14:11:06 +00:00
Kelvin Zhang
629b9913ce Add cache handling for controllers 2015-10-28 17:55:21 +00:00
Kelvin Zhang
a03c44aadb Add cache routes 2015-10-28 17:32:44 +00:00
Peter Deltchev
88a787cde8 Closes #6: Implemented a "source" attribute for tracks. 2015-10-28 00:05:37 -07:00
Kelvin Zhang
f205cf6d93 Implement EncodeTrackFile job 2015-10-27 17:35:38 +00:00
Kelvin Zhang
43c45adece Fix options and imports for commands 2015-10-27 17:29:51 +00:00
Kelvin Zhang
683aa568e9 Revert to catch Exception in UploadTrackCommand 2015-10-27 17:21:14 +00:00
Kelvin Zhang
c651c44d34 Add EncodeTrackFile job 2015-10-27 17:20:43 +00:00
Kelvin Zhang
0970734648 Update UploadTrackCommand with selective uploading using Process 2015-10-27 16:21:03 +00:00
Kelvin Zhang
fdb95560e7 Add --force option to RebuildTrackCache 2015-10-26 19:50:58 +00:00
Kelvin Zhang
9470faaaa2 Add $CacheableFormats to Track.php 2015-10-26 19:48:55 +00:00
Kelvin Zhang
a9f80fde6e Add console commands 2015-10-26 19:47:42 +00:00
Peter Deltchev
ed0a5fb8ac Licensed Pony.fm under the GNU Affero General Public License (AGPL). 2015-10-24 22:17:45 -07:00
Peter Deltchev
b00982cd61 Converted a bunch of tabs to spaces. 2015-10-24 19:35:37 -07:00
Peter Deltchev
a4c24a7d64 Updated Pony.fm's PHP namespace to Poniverse\Ponyfm. 2015-10-23 18:22:14 -07:00
Peter Deltchev
f7d128dbc5 T388: Albums, playlists, and artists are now sorted alphabetically; tracks have an alphabetical sort option; and a few new indices were added. 2015-09-28 21:10:35 -07:00
Peter Deltchev
ebf6448036 Added Poniverse API setup command. Closes T378. 2015-09-24 10:43:12 -07:00
Peter Deltchev
ae39784708 Updated the rebuild:tags command with a progress bar. 2015-09-24 09:59:45 -07:00
Peter Deltchev
7d76e2d74d Fixed a broken migration and cleaned up some leftover files from Laravel 4.. 2015-09-24 09:55:34 -07:00
Peter Deltchev
33725cf0dd Removed obsolete Laravel 4 config files. 2015-09-20 02:43:15 -07:00
Peter Deltchev
451cd699cb Fixed zeroed timestamps being recorded for statistics and added a script to fill in the missing data. 2015-09-20 02:38:17 -07:00
Peter Deltchev
97681212a4 Updated the SPA profiler as Laravel 5 middleware. 2015-09-20 01:47:24 -07:00
Peter Deltchev
7d047a41e4 Fixes T373: Moment.js now assumes whatever it's given is UTC. 2015-09-20 00:27:52 -07:00
Peter Deltchev
1aa0b5f9d7 Closes T360: Replace the dev blog feed with the Twitter feed. 2015-09-16 12:55:15 -07:00
Peter Deltchev
efa16a2baa T350: Fixed the broken show song filter. 2015-09-13 00:43:03 -07:00