Commit graph

540 commits

Author SHA1 Message Date
Peter Deltchev
79e77a2da0 #25: Limited notification management to admins. 2016-12-24 18:39:05 -08:00
Peter Deltchev
b401a0ae7e #25: Implemented UI for managing email subscriptions. 2016-12-24 18:11:42 -08:00
Peter Deltchev
62188eb5e6 Removed an unused package (#108) and made a minor notifications fix for #25. 2016-12-23 07:36:31 -08:00
Peter Deltchev
7e4faa0454 #25: Profile comment notifications hotfix. 2016-12-23 07:31:06 -08:00
Peter Deltchev
ff5d8220ef #25: Implemented all basic notification types.
- blocks off the unfinished URL endpoints for email notifications
2016-12-23 06:44:16 -08:00
Peter Deltchev
78b22cdfd0 #25: Added email templates for all currently implemented notification types. 2016-12-23 06:33:45 -08:00
Peter Deltchev
5822408655 #25: New tracks have working email notifications now! 2016-12-23 06:33:33 -08:00
Josef Citrine
510d0e80ac Simplified playlist 404 if statement 2016-12-21 03:05:58 +00:00
Josef Citrine
25e023ccb7 Let admins download all items in playlists 2016-12-21 02:56:19 +00:00
Josef Citrine
9ba9eab424 Adding tracks to albums from the track editor works now 2016-12-19 23:49:22 +00:00
Josef Citrine
e23e1a3dab Updated HWC deadline 2016-12-17 21:16:16 +00:00
Josef Citrine
19d6dd7890 #108: Switching to Laravel's new encryption 2016-12-10 19:58:48 +00:00
Josef Citrine
bab783467c Updated docs with ide-helper 2016-12-10 16:47:49 +00:00
Josef Citrine
3aacb5f87c ID detection should work better now 2016-11-30 22:08:40 +00:00
Josef Citrine
2dd6c663ff Oembed stuffs 2016-11-30 21:42:45 +00:00
Josef Citrine
78501007ce Uploader for track versions, admin only for now 2016-11-28 00:19:16 +00:00
Josef Citrine
41cbdb2e97 Fixed HWC checkbox detection 2016-11-21 17:08:34 +00:00
Josef Citrine
337caa23a8 Admins can see all playlists 2016-11-21 11:41:16 +00:00
Josef Citrine
0e6afe372b Another attempted bug fix 2016-11-21 01:33:30 +00:00
Josef Citrine
f85b1ecdeb Attempt to fix playlist adding bug 2016-11-21 01:08:45 +00:00
Josef Citrine
926e410721 Hearth's Warming Contest stuff 2016-11-21 00:42:43 +00:00
Josef Citrine
d9dc582c08 Start of announcements admin panel 2016-11-12 21:57:29 +00:00
Josef Citrine
b356cfaea1 Server should now check local avatar file instead of URL 2016-11-12 21:38:03 +00:00
Josef Citrine
1c40d3cfa5 Fixed server crashing if avatar can't be found 2016-11-12 21:13:29 +00:00
Josef Citrine
ec8b64f494 Added announcement system 2016-11-11 19:39:31 +00:00
Josef Citrine
fa7e04aee9 Fixed admin area, this took far too long to fix 2016-11-11 00:03:28 +00:00
Josef Citrine
abc521bb2f #109: Open Graph and Twitter cards for tracks 2016-10-30 19:02:14 +00:00
Josef Citrine
3fa85e9fe7 Popular function respects track limit 2016-10-06 22:46:31 +01:00
Josef Citrine
568969f7e5 Popular tracks are now sorted by 'weight' 2016-10-06 22:11:19 +01:00
Josef Citrine
e5c9ff3e71 Added dialog for track load errors 2016-10-01 18:20:49 +01:00
Josef Citrine
141282e8c7 God damn it Lavo 2016-10-01 17:59:30 +01:00
Adam Lavin
14211f4ea4 Initial Alexa integration 2016-09-30 22:21:17 +01:00
Adam Lavin
d0a6022ed8 Added basic hardcoded alexa endpoints 2016-09-30 02:36:44 +01:00
Josef Citrine
7a0cf5a921 Fixed notification thing about followers being related to themselves 2016-09-30 01:10:45 +01:00
Laravel Shift
c420d3955b Laravel 5.3 Update (#107)
* Shift core files

* Shift app folder structure

Laravel 5.3 no longer includes the `Events`, `Jobs`, `Listeners`, and
`Policies` folders by default. Instead, they are created when you make
them using `artisan`.

* Shift Middleware

* Shift Providers

* Shift configuration

* Shift Routes

Laravel 5.3 now stores Routes in a top-level `routes` folder and
separates them into API, console, and web files.

* Shift deprecations

The `Str::randomBytes` and `Str::equals` methods were deprecated in
Laravel 5.2 and removed in Laravel 5.3 in favor of the native
`random_bytes` and `hash_equals` PHP functions.

In addition, the Collection method `lists()` was replaced with
`pluck()`.

* Shift Laravel dependencies

* Shift cleanup

* Updated composer.json

* Updated providers to 5.3 style

* Removed events folder and extend correct exceptions handler

* Updated configuration

* Shift back our method names from ending in "pluck" to "list"

* Temporarily add back in old mcrypt encrypter
2016-09-30 00:56:25 +01:00
Laravel Shift
00f24a5c12 Laravel 5.2 Update (#106)
* Adopt PSR-2 coding style

The Laravel framework adopts the PSR-2 coding style in version 5.1.
Laravel apps *should* adopt this coding style as well. Read the
[PSR-2 coding style guide][1] for more details and check out [PHPCS][2]
to use as a code formatting tool.

[1]: https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-2-coding-style-guide.md
[2]: https://github.com/squizlabs/PHP_CodeSniffer

* Adopt PHP short array syntax

Laravel 5 adopted the short array syntax which became available in
PHP 5.4.

* Remove SelfHandling from Jobs

Jobs are self handling by default in Laravel 5.2.

* Add new exceptions to `$dontReport` property

* Shift core files

* Shift Middleware

Laravel 5.2 adjusts the `Guard` object used within middleware. In
addition, new `can` and `throttles` middleware were added.

* Shift Input to Request facade

Laravel 5.2 no longer registers the `Input` facade by default. Laravel
now prefers using the `Request` facade or the `$request` object within
*Controllers* instead. Review the [HTTP Requests][1] documentation for
more details.

[1]: https://laravel.com/docs/5.2/requests

* Shift configuration

Laravel 5.2 introduces the `env` app configuration option and removes
the `pretend` mail configuration option. In addition, a few of the
default `providers` and `aliases` bindings were removed.

* Shift Laravel dependencies

* Shift cleanup

* Updated composer.lock

* Updated Middleware to 5.2

* Config update for Laravel 5.2

* [Laravel 5.2] Updated validation strings

* Updated auth config

* Updated to use middleware groups

* Added laravel 5.2 sessions migration
2016-09-29 23:26:31 +01:00
Josef Citrine
9b31b48f37 Check if genre exists before creating a new one 2016-09-25 15:07:20 +01:00
Joe Citrine
abdfe2f698 Merge pull request #105 from Poniverse/feature/replace_master_track_file
Feature/replace master track file
2016-09-22 22:45:40 +01:00
Josef Citrine
d6a80cd684 Updated contact email 2016-09-21 01:32:47 +01:00
Peter Deltchev
78c2f4f6d1 Show archived tracks by default in the track browser.
Reverts part of 995cc40a5f.
2016-09-11 16:52:57 -07:00
Josef Citrine
995cc40a5f Hidden archived artists' tracks from recent tracks 2016-09-09 21:37:07 +01:00
Josef Citrine
d18d6bf23a Changing getMasterTrackFile back to protected 2016-08-30 21:17:34 -07:00
Josef Citrine
e6ee85d6d9 Album API now works with versioning system 2016-08-30 21:17:34 -07:00
Kelvin Zhang
775de16bfe [#9] Add functionality to add/change versions of tracks 2016-08-30 21:17:34 -07:00
Josef Citrine
726097bc7b Only show unclassified tracks if they are part of MLPMA 2016-08-29 01:03:26 +01:00
Josef Citrine
9de1d53cd7 Track classification queue and directified track list 2016-08-28 02:59:10 +01:00
Josef Citrine
d0b356be2c Notification API correctly handles invalid resources 2016-08-28 01:01:37 +01:00
Josef Citrine
5311577aa2 Fixed null detection 2016-08-28 00:40:25 +01:00
Josef Citrine
555aa35c34 Fixed notification thumbnail url being null 2016-08-28 00:39:24 +01:00
Peter Deltchev
efea3cda2f Fixes #102: Tagging tracks with multiple show songs works again.
This was broken during the MySQL -> PostgreSQL migration.
2016-08-07 16:31:09 -07:00
Peter Deltchev
d19e986a3e Fixed favouriting notification texts. 2016-08-07 08:42:36 -07:00
Josef Citrine
11e5bb0384 Fixed album favouriting 2016-07-19 16:23:06 +01:00
Josef Citrine
52cdf621b3 Merge pull request #96 from Poniverse/postgres
The switch to PostgreSQL
2016-07-18 00:59:40 +01:00
Josef Citrine
4c6aeb1a6e #86: Updated stats API to work with Postgres 2016-07-11 21:12:02 +01:00
Josef Citrine
a57c1640e8 #86: Fixed editing albums with more than 1 track 2016-07-11 21:07:45 +01:00
Peter Deltchev
8c58d2f3cb #25: Hide notifications for deleted content. 2016-07-11 18:18:03 +01:00
Kelvin
0ee7e4a315 #7: Implement front-end handling of mixed losslessness track collections 2016-07-11 13:40:31 +01:00
Josef Citrine
45dae68497 #86: Fixed track uploading SQL errors 2016-07-11 13:00:29 +01:00
Kelvin
63d4063ccc #7: Implement back-end handling of mixed losslessness track collections 2016-07-11 12:43:10 +01:00
Kelvin
2c3ef557af #7: Implement CR changes 2016-07-11 11:25:45 +01:00
Kelvin
05c66ca5dd [#7] Prevent completely lossy albums/playlists from being downloaded as lossless 2016-07-10 15:20:22 +01:00
Peter Deltchev
0427658dbf #86: Fixed more queries for PostgreSQL. 2016-07-09 06:44:49 -07:00
Josef Citrine
7b521f5733 #86: This causes some issue with Postgres. Commenting for now 2016-07-05 01:40:55 +01:00
Josef Citrine
c36a7145a5 Sanitise track numbers 2016-06-29 20:05:58 +01:00
Josef Citrine
4b0ed2fd1b #86: More Postgres tweaks 2016-06-28 18:53:53 +01:00
Peter Deltchev
6e8a9b34c6 #86: Modified a bunch of queries to work in PostgreSQL. 2016-06-26 19:20:10 -07:00
Josef Citrine
336e04a0c1 Disabling notifications until they're stable on Chrome 2016-06-20 01:38:07 +01:00
Peter Deltchev
64a44fff4f Made avatars optional. Useful for archived profiles!
Also took the opportunity to refactor SaveAccountSettingsCommand somewhat.
2016-06-19 13:13:47 -07:00
Josef Citrine
60f55e6223 Ignore requests with no subscription data 2016-06-15 13:44:54 +01:00
Josef Citrine
0c1a283867 Removed old developement API key 2016-06-15 13:44:54 +01:00
Josef Citrine
61520815de #25: Basic service worker notifications 2016-06-15 13:44:28 +01:00
Josef Citrine
2b72b4dcdb #25: Service worker subscription 2016-06-15 13:44:28 +01:00
Peter Deltchev
a482a183dc #2: Admins can now manage other users' content. 2016-06-14 01:27:56 -07:00
Peter Deltchev
185ead4ed0 Improved a bunch of use statements. 2016-06-12 04:49:24 -07:00
Peter Deltchev
09effb6955 #2: Implemented the user creation tool. 2016-06-12 04:16:03 -07:00
Josef Citrine
4714f04a80 Added follower count 2016-06-07 19:31:32 +01:00
Josef Citrine
bd330a1089 Mark as read and notification count 2016-06-07 17:49:00 +01:00
Josef Citrine
d33985325e New notification look. Mark as read feature (disabled for now due to issues) 2016-06-07 00:37:41 +01:00
Scrutinizer Auto-Fixer
3b1b03e12b Scrutinizer Auto-Fixes
This commit consists of patches automatically generated for this project on https://scrutinizer-ci.com
2016-06-06 06:29:37 +00:00
Peter Deltchev
9a9ac7e5a1 Lots of minor code cleanup. 2016-06-05 23:15:56 -07:00
Peter Deltchev
b46ba956d0 Fixes #51: Slugs are now unique and user-changeable. 2016-06-05 20:05:57 -07:00
Josef Citrine
59b0ebd64e Admins can modify show songs 2016-06-06 00:12:10 +01:00
Peter Deltchev
73de10cff4 Don't list albums and playlists with only one track. 2016-06-05 12:27:04 -07:00
Josef Citrine
9eac8153db Switched error handler to Whoops 2016-06-05 19:45:21 +01:00
Josef Citrine
4e564aed0c Merge pull request #88 from Poniverse/feature-playlist-sort
Feature playlist sort
2016-06-02 17:03:11 +01:00
Peter Deltchev
3b3863f030 #25: Notification texts are simple plaintext for now. 2016-06-01 20:12:56 -07:00
Maximilian Walter
d735cb6816 update: implemeted playlist sort functionality 2016-06-01 21:02:16 +02:00
Maximilian Walter
b73d1753b3 update: added playlist sort logic to laravel controller
update: implemented basic filter functions to angular
2016-06-01 19:40:49 +02:00
Maximilian Walter
2d458c3d80 Merge branch 'master' of https://github.com/Poniverse/Pony.fm into feature-playlist-sort 2016-05-31 15:03:26 +02:00
Peter Deltchev
716eff3955 Fixed a bad query. 2016-05-28 12:53:18 -07:00
Peter Deltchev
27f19f9dc7 Added a bunch of eager-loading. 2016-05-28 12:29:06 -07:00
Peter Deltchev
fc4ae856f8 #25: Made the SendNotifications job in line with the rest of the notification system's design. 2016-05-27 22:21:35 -07:00
Josef Citrine
ef598a72ef Test UI for notifications 2016-05-27 20:38:59 +01:00
Peter Deltchev
0109244115 Feature/notifications (#87)
* #25: Implemented enough of the notification system to start writing drivers.

* #25: Implemented most of the Pony.fm notification driver's backend.

* #25: Abstracted the logic for building lists of notification recipients.

* #25: Implemented notification API endpoints for the SPA.

* Front end setup for notifications

* #25: Implemented notification API endpoints for the SPA.
2016-05-27 20:12:40 +01:00
Josef Citrine
7786950990 Icon for admins 2016-05-25 23:57:46 +01:00
Maximilian Walter
950ef3b585 added: playlist sort by favourite_count on initial request
update: added composer lock file to gitignore
2016-05-25 22:58:41 +02:00
Peter Deltchev
060b8e7121 Fixes #83: Album shortlinks work again. 2016-05-21 00:22:47 -07:00
Josef Citrine
44bcf87ddb New profiles, works better on mobile 2016-05-19 22:31:04 +01:00
Josef Citrine
87d25bb8b8 Admin album editing 2016-05-18 01:27:59 +01:00
Josef Citrine
fb7f291f31 Switch admin check to Gate 2016-05-17 13:00:57 +01:00