Commit graph

1249 commits

Author SHA1 Message Date
daniel
907945a7a0
Merge pull request #2923 from Wv5twkFEKh54vo4tta9yu7dHa3/patch-1
Fix media upload
2021-09-10 20:55:55 -06:00
Wv5twkFEKh54vo4tta9yu7dHa3
13f65629e1 Fix error 500 on image upload
Without this missing import, the server threw "Class 'App\Http\Controllers\Api\UserSetting' not found" when trying to upload images.
2021-09-09 15:03:00 +02:00
Daniel Supernault
0584f9ee95
Update ApiV1Controller, fix empty public timeline bug 2021-09-07 21:07:20 -06:00
Daniel Supernault
00c32360ae
Update StoryController, fix postgres bug. Fixes #2904 2021-09-06 01:41:24 -06:00
Daniel Supernault
0f00be4d98
Update DirectMessageController, fix autocomplete bug 2021-09-04 03:22:05 -06:00
Daniel Supernault
7dee8f58fe
Update StoryComposeController, fix expiry bug 2021-09-04 01:55:29 -06:00
Daniel Supernault
dd7262d841
Update StoryController, add StoryComposeController 2021-09-03 22:08:15 -06:00
Daniel Supernault
1c59933c0a
Update ProfileController 2021-08-31 00:35:29 -06:00
Daniel Supernault
a4a1270e70
Add Stories to admin dashboard 2021-08-31 00:33:04 -06:00
Daniel Supernault
fee2857deb
Update ComposeController 2021-08-31 00:22:08 -06:00
Daniel Supernault
7709220074
Add Polls 2021-08-04 20:29:21 -06:00
Daniel Supernault
3f8acb1266
Update AccountService, add syncPostCount method 2021-07-26 23:59:38 -06:00
Daniel Supernault
e9ef0c887a
Add Archive Posts 2021-07-26 22:49:46 -06:00
Daniel Supernault
ee0028bc57
Update PublicApiController, use account service 2021-07-26 18:47:40 -06:00
Daniel Supernault
c4146a3040
Update RemoteProfile component, add follower modals 2021-07-25 05:06:38 -06:00
Daniel Supernault
f3d6023ef8
Update LikeController, improve query perf 2021-07-25 03:19:48 -06:00
Daniel Supernault
f9516ac316
Update ApiControllers, use NotificationService 2021-07-25 02:12:30 -06:00
Daniel Supernault
bce8edd994
Update PublicApiController, improve accountStatuses api perf 2021-07-25 01:39:03 -06:00
Daniel Supernault
2a791f1991
Update ApiV1Controller, add default license support 2021-07-24 22:20:05 -06:00
Daniel Supernault
ea0fc90c92
Add default licenses and license sync 2021-07-24 22:13:14 -06:00
Daniel Supernault
072d55d1a8
Update Compose Apis, make media descriptions/alt text length limit configurable. Default length: 1000 2021-07-24 21:15:15 -06:00
Daniel Supernault
67e3f6048f
Update Settings, add default license and enforced media descriptions 2021-07-23 09:47:14 -06:00
Daniel Supernault
8ac8fcad3f
Update LikeController, add UndoLikePipeline and federate Undo Like activities 2021-07-21 03:41:28 -06:00
Daniel Supernault
f39f32c866
Update ApiController, fix notification bug 2021-07-21 02:16:20 -06:00
Daniel Supernault
0153ed6d64
Update Timeline, make text-only posts opt-in by default 2021-07-21 02:00:57 -06:00
Daniel Supernault
08f492bd3d
Update PublicApiController, remove text only posts 2021-07-21 01:19:53 -06:00
Daniel Supernault
86219b57fc
Update PublicApiController, filter out text replies on home timeline 2021-07-21 01:03:43 -06:00
Daniel Supernault
9f4f983f27
Update ap helpers, set text type when appropriate 2021-07-20 22:17:31 -06:00
Daniel Supernault
ca6e491c83
Update PublicApiController, use fUserFilterService in public timeline endpoint 2021-07-15 22:39:40 -06:00
Daniel Supernault
135474ae11
Update DiscoverController, use UserFilterService on trendingApi 2021-07-15 20:48:39 -06:00
Daniel Supernault
7f4213924f
Update job queue, separate deletes into their own queue 2021-07-13 23:09:50 -06:00
Daniel Supernault
c8824d1b51
Update FollowerService 2021-07-11 07:43:29 -06:00
Daniel Supernault
26b9c1401c
Update ActivityPub helpers, fix comment threading in statusFetch() method 2021-07-08 21:30:59 -06:00
Daniel Supernault
9650b668e9
Update PublicApiController, fix public timeline filtering 2021-07-08 17:33:51 -06:00
Daniel Supernault
4fe42e5b57
Update PublicApiController, improve home timeline perf 2021-07-07 01:06:20 -06:00
Daniel Supernault
9017f7c4e1
Update Profile, fix unauthenticated private profiles 2021-07-07 00:40:01 -06:00
Daniel Supernault
f2686cacd2
Update AdminMediaController, improve perf and use simple pagination 2021-07-06 23:36:25 -06:00
Daniel Supernault
352aa57346
Update ApiV1Controller, use ProfileService for verify_credentials 2021-07-06 20:43:24 -06:00
Daniel Supernault
f67c67bce1
Update ApiV1Controller, use PublicTimelineService 2021-07-06 20:29:52 -06:00
Daniel Supernault
d43e6d8d07
Update NotificationService, use zrevrangebyscore for api 2021-07-06 20:10:42 -06:00
Daniel Supernault
f215ee26b3
Update moderator api, expire cached status 2021-07-05 23:00:59 -06:00
Daniel Supernault
78529cb1f8
Update PublicApiController 2021-07-02 03:05:33 -06:00
Daniel Supernault
82895591c3
Update PublicApiController, add LikeService to Network timeline 2021-07-02 01:34:35 -06:00
Daniel Supernault
64725ecce7
Add diagnostics to error page and admin dashboard 2021-07-01 21:46:45 -06:00
Daniel Supernault
9ac8bbde91
Update ApiController, fix hashtag endpoint 2021-06-30 17:10:33 -06:00
Daniel Supernault
6d956a86f4
Add mark as spammer mod tool, unlists and applies content warning to existing and future posts 2021-06-29 02:14:22 -06:00
Daniel Supernault
7b9e0eefd3
Update InternalApiController formatting 2021-06-29 01:46:04 -06:00
Daniel Supernault
e5f683fda4
Update PublicApiController, improve network timeline perf 2021-06-29 01:23:24 -06:00
Daniel Supernault
c8e40e0fd3
Update SharePipeline, add Undo->Announce support 2021-06-28 22:37:38 -06:00
Daniel Supernault
f1208de0ef
Update ApiController, fix nulls in hashtag endpoint 2021-06-28 21:01:45 -06:00
Daniel Supernault
d48ebb829c
Update StatusController, improve share api perf (11s to 72ms) 2021-06-28 20:19:57 -06:00
Daniel Supernault
c8c6b98380
Update like api, store status_profile_id and is_comment 2021-06-18 02:57:08 -06:00
Daniel Supernault
f37952d6cf
Update verify email screen, add contact admin link 2021-06-13 00:37:54 -06:00
Daniel Supernault
39e57f9506
Update StoryController, fix expiration time bug 2021-06-12 20:00:59 -06:00
Daniel Supernault
93c7af7464
Update routes, add legacy webfinger profile redirect 2021-06-11 00:03:41 -06:00
Daniel Supernault
8ee104363a
Update Profile, add linkified bio, joined date, follows you label and improved website handling 2021-06-10 22:54:31 -06:00
Daniel Supernault
68aa25400b
Add Auto Following support for admins 2021-06-10 21:07:35 -06:00
Daniel Supernault
069a0e4ae1
Add WebP support 2021-06-08 03:22:01 -06:00
Daniel Supernault
2d0a253e07
Update DirectMessageController, disable exception logging for invalid urls. Fixes #2752 2021-06-01 21:18:02 -06:00
Daniel Supernault
1e230e80fb
Update PublicApiController, add recent feed support to home timeline 2021-06-01 20:03:59 -06:00
Daniel Supernault
f3bf2fd41e
Update StatusController, add cache invalidation for timeline cursor 2021-06-01 19:51:22 -06:00
Daniel Supernault
7cbd6bc36d
Update StatusController, use transactions for status views 2021-05-31 23:54:20 -06:00
Daniel Supernault
f767d99ad5
Update liked by, fix remote username urls 2021-05-31 22:43:53 -06:00
Daniel Supernault
3c1e1f7e87
Update PublicApiController, fix likes bug 2021-05-31 21:49:44 -06:00
Daniel Supernault
c8e43c6094
Update api, remove auth requirement for hashtag timeline 2021-05-26 20:11:25 -06:00
Daniel Supernault
3de44f3392
Update Timeline.vue, batch api views 2021-05-24 00:37:52 -06:00
Daniel Supernault
92dc7af69b
Update landing and about page 2021-05-23 23:09:26 -06:00
Daniel Supernault
061b145b54
Update ComposeController, bail on empty attachments 2021-05-20 20:26:26 -06:00
Daniel Supernault
29947e157c
Update admin settings 2021-05-19 02:15:37 -06:00
Daniel Supernault
24e77f647d
Update admin settings 2021-05-19 02:01:33 -06:00
Daniel Supernault
41792eea56
Update config() to config_cache() 2021-05-18 22:45:04 -06:00
Daniel Supernault
241ae0368f
Add hashtag timeline to v1 api 2021-05-18 19:46:26 -06:00
Daniel Supernault
955696b8a0
Update site config, fix boolean casting 2021-05-18 17:53:59 -06:00
Daniel Supernault
a4efbb75d8
Update admin settings, add rules 2021-05-13 23:45:36 -06:00
Daniel Supernault
fabb57a9d5
Add profile pronouns 2021-05-11 23:25:10 -06:00
Daniel Supernault
8a73643277
Update PublicApiController, increase public timeline to 6 months from 3 2021-05-11 22:12:10 -06:00
Daniel Supernault
f2066b7401
Add admin config settings 2021-05-11 22:07:55 -06:00
Daniel Supernault
7895097fc1
Update config() to config_cache() 2021-05-11 20:14:51 -06:00
Daniel Supernault
3a9203e039
Update config() to config_cache() 2021-05-11 20:03:29 -06:00
Daniel Supernault
f4fc8347c9
Update config() to config_cache() 2021-05-11 19:59:24 -06:00
Daniel Supernault
c65d03788b
Update config() to config_cache() 2021-05-11 19:07:03 -06:00
Daniel Supernault
1c2baa8f2c
Update config() to config_cache() 2021-05-11 18:30:32 -06:00
Daniel Supernault
3e52458889
Update config() to config_cache() 2021-05-11 18:26:52 -06:00
Daniel Supernault
53134208fe
Update config() to config_cache() 2021-05-11 18:17:03 -06:00
Daniel Supernault
27b722e7a7
Update config() to config_cache() 2021-05-10 23:23:09 -06:00
Daniel Supernault
c0e693cc73
Update config() to config_cache() 2021-05-10 21:11:43 -06:00
Daniel Supernault
a9f009305c
Update config() to config_cache() 2021-05-10 21:04:23 -06:00
Daniel Supernault
1d54204635
Update config() to config_cache() 2021-05-10 20:04:13 -06:00
Daniel Supernault
35b92fd7c9
Update admin settings 2021-05-07 22:19:58 -06:00
Daniel Supernault
61254b907f
Update site name config 2021-05-07 21:47:51 -06:00
Daniel Supernault
ea68724054
Update LikeController, hide like counts 2021-05-01 16:01:32 -06:00
Daniel Supernault
9cf962fff5
Update Settings, remove reports page 2021-05-01 12:40:32 -06:00
Daniel Supernault
c799a01aa9
Update StatusController, allow license edits without 24 hour limit 2021-04-30 21:41:42 -06:00
Daniel Supernault
e66ed9a222
Update StoryController, optimize photo size by resizing to 9:16 aspect 2021-04-30 00:19:45 -06:00
Daniel Supernault
c2f8faaeee
Update StoryController, fix cache crop bug 2021-04-30 00:10:50 -06:00
Daniel Supernault
ae46bad70a
Update StoryController 2021-04-29 23:58:06 -06:00
Daniel Supernault
668e936eb5
Update instance endpoint, add custom description 2021-04-28 19:26:12 -06:00
Daniel Supernault
c8edca696b
Update Stories, add crop and duration settings to composer 2021-04-27 20:15:31 -06:00
Daniel Supernault
64b86546b9
Update ApiV1Controller, add missing instance api attributes 2021-04-22 22:46:05 -06:00
Daniel Supernault
66b4f8c773
Update AP Helpers, use instance filtering 2021-04-20 23:18:07 -06:00
Daniel Supernault
35393edfef
Update AdminInstanceController, invalidate banned domain cache when updated 2021-04-20 22:31:11 -06:00
Daniel Supernault
f582937300
Update admin instance page, add search and improve performance 2021-04-20 22:03:41 -06:00
Daniel Supernault
10119bbbea
Update PublicApiController, limit network pagination to 3 months 2021-04-06 23:37:53 -06:00
Daniel Supernault
af7face4da
Add Network Timeline 2021-04-06 21:17:42 -06:00
Daniel Supernault
552e950d7a
New License formats 2021-03-31 22:08:03 -06:00
Daniel Supernault
886ea6175d
Update ApiV1Controller, add missing variable 2021-03-19 21:22:37 -06:00
Daniel Supernault
e1c6297ee7
Update PublicApiController, show unlisted comments 2021-03-03 20:18:32 -07:00
Daniel Supernault
42375b3d79
Update Compose Apis, refactor rate limits 2021-03-01 20:58:35 -07:00
Daniel Supernault
b2501bfcc3
Update moderation api, invalidate profile embed 2021-02-28 23:14:27 -07:00
Daniel Supernault
9c8a87c331
Update StatusController, invalidate profile embed cache on status delete 2021-02-28 23:04:15 -07:00
Daniel Supernault
063558e3ac
Update comment apis 2021-02-28 22:41:07 -07:00
Daniel Supernault
f0e48a09a3
Update ComposeController, add autocomplete apis for hashtags and mentions 2021-02-28 22:38:07 -07:00
Daniel Supernault
f53bfa6fa6
Update Compose apis, prevent private accounts from posting public or unlisted scopes 2021-02-24 20:06:58 -07:00
Daniel Supernault
43201a70e6
Update user admin, fix pagination 2021-02-23 00:31:12 -07:00
Daniel Supernault
8feeadbf4e
Update user admin, remove expensive db query and add search 2021-02-22 23:03:49 -07:00
Daniel Supernault
2ab73e1e96
Update AdminController, update reports method 2021-02-15 21:07:18 -07:00
Daniel Supernault
5206b09627
Update ReportController, handle json reports 2021-02-15 20:23:06 -07:00
Daniel Supernault
d4c647cb4d
Update ReportController, add new report types 2021-02-15 02:49:17 -07:00
Daniel Supernault
b1fd99644b
Update AdminController, show open reports by default 2021-02-15 02:46:58 -07:00
Daniel Supernault
deb6f1153f
Update FederationController, return 404 for invalid webfinger addresses. Fixes #2647 2021-02-12 21:44:06 -07:00
Daniel Supernault
5ac9d0e8f2
Update Embeds. Fix Profile + Status embeds, remove following count and improve cache invalidation and hidden follower counts 2021-02-09 00:42:12 -07:00
Daniel Supernault
33b625f508
Update ComposeController, add mediaProcessingCheck method 2021-02-05 21:15:13 -07:00
Daniel Supernault
1404ac6e6f
Update Discover, allow public discover access 2021-02-05 21:09:03 -07:00
Daniel Supernault
ab5469ff70
Update ComposeController, use MediaStorageService for media deletes 2021-02-05 21:04:34 -07:00
Daniel Supernault
2d11317ceb
Update webfinger util, fail on invalid webfinger url 2021-02-03 20:55:49 -07:00
Daniel Supernault
1fb7e2b2c9
Update AccountController, add mutes and blocks endpoint to pixelfed api 2021-01-31 13:45:22 -07:00
Daniel Supernault
b16e9452bc
Update DiscoverController, deprecate unused endpoints 2021-01-30 23:13:54 -07:00
Daniel Supernault
9862a85599
Update InternalApiController, update discoverPosts method to improve performance 2021-01-30 21:39:31 -07:00
Daniel Supernault
090b6d0336
Update SeasonalController 2021-01-30 19:56:10 -07:00
Daniel Supernault
2eea04097a
Update DiscoverController, change api schema 2021-01-30 16:35:52 -07:00
Daniel Supernault
789ed4b498
Update ComposeController, use placeholder image for video media. Fixes #2595 2021-01-30 16:34:44 -07:00
Daniel Supernault
eab4370c84
Update Like, Status and Comment controllers to add StatusService del() method to update counts 2021-01-30 16:25:50 -07:00
Daniel Supernault
05b9445c8f
Update ApiV1Controller, add StatusService del calls to update likes_count, reblogs_count and reply_count 2021-01-30 16:15:56 -07:00
Daniel Supernault
6edaf94099
Update AdminController, fix variable name in updateSpam method 2021-01-30 09:36:09 -07:00
Daniel Supernault
7d376c64ec
Update SiteController, only allow redirects for logged in users 2021-01-28 21:25:43 -07:00
Daniel Supernault
10b178c8ee
Update SiteController, use url validator in redirect endpoint 2021-01-28 21:23:15 -07:00
Daniel Supernault
ab888b2e70
Add StatusLabelService 2021-01-27 22:25:14 -07:00
Daniel Supernault
cc2d4bf8d8
Update ComposeController, update media version 2021-01-25 22:22:01 -07:00
Daniel Supernault
889c3d8758
Update AvatarController, remove deprecated thumb_path 2021-01-24 18:22:13 -07:00
Daniel Supernault
febe9e1b6d
Add ComposeController 2021-01-24 14:11:58 -07:00
Daniel Supernault
2538673a7b
Update StatusController, unescape slashes in json response 2021-01-24 13:22:10 -07:00
Daniel Supernault
6d078377f1
Update AdminController 2021-01-23 23:12:05 -07:00
Daniel Supernault
cf40526ef9
Update mobile apis, add blurhash 2021-01-18 18:25:03 -07:00
Daniel Supernault
4415af1bf0
Update api controllers, deprecate old endpoints 2021-01-17 23:43:23 -07:00
Daniel Supernault
8132db74e5
Update MediaController, remove deprecated endpoint 2021-01-17 23:37:10 -07:00
Daniel Supernault
a98b65bf5c
Update DiscoverController 2021-01-17 22:02:27 -07:00
Daniel Supernault
0cfc12c5dd
Update StatusController, add view method 2021-01-17 21:38:34 -07:00
Daniel Supernault
5e13643246
Update MediaTagController 2021-01-17 21:27:55 -07:00
Daniel Supernault
f32072a396
Add Year in Review feature (mysql only) 2021-01-17 19:50:35 -07:00
Daniel Supernault
2159eecdbc
Add InstanceActorController 2021-01-17 01:38:01 -07:00
Daniel Supernault
51f8fe5bde
Update ApiV1Controller 2021-01-14 18:51:19 -07:00
Daniel Supernault
74ba326adb
Update DiscoverController, limit trending api to local posts 2021-01-12 22:04:25 -07:00
Daniel Supernault
d8d3331f3f
Update DiscoverController, improve trending api performance 2021-01-12 21:52:07 -07:00
Daniel Supernault
a443694dc0
Update PublicApiController 2021-01-11 18:47:16 -07:00
Daniel Supernault
b2fe219eec
Update DiscoverController, add albums and video to discover trending api 2021-01-11 00:31:21 -07:00
Daniel Supernault
96afc3e781
Update Controllers, add last_active_at logic 2021-01-09 02:41:17 -07:00
Daniel Supernault
cc3053ed5d
Update api controllers 2021-01-09 00:21:29 -07:00
Daniel Supernault
7dc3739c1d
Update StatusController, fix scope bug 2021-01-03 22:06:05 -07:00
Daniel Supernault
b9b84e6fa4
Update Follower model, increase hourly limit from 30 to 150 2020-12-27 18:15:10 -07:00
Daniel Supernault
f70826e18c
Update status model, use scope over deprecated visibility attribute 2020-12-27 18:00:43 -07:00
Daniel Supernault
0fbde91e87
Update StatusService, cast response to array 2020-12-27 17:54:55 -07:00
Daniel Supernault
6dcd472be6
Update Profile, fix status count 2020-12-27 14:45:31 -07:00
Daniel Supernault
b74e14c4e5
Update SiteController 2020-12-26 20:28:12 -07:00
Daniel Supernault
799a4cba12
Update LikeController, store status_profile_id and is_comment attributes 2020-12-26 20:18:48 -07:00
Daniel Supernault
7a68ee948a
Add StatusView model to store views for discover algorithm 2020-12-26 20:16:35 -07:00
Daniel Supernault
3244ca92ff
Update StatusController 2020-12-17 23:12:27 -07:00
Daniel Supernault
5fffe1d0dd
Update AvatarController 2020-12-17 13:14:38 -07:00
Daniel Supernault
f6528c8470
Update avatars, use jpeg default 2020-12-14 23:54:22 -07:00
Daniel Supernault
cd2661fc0b
Update 2FA setup, fix qrcode handler 2020-12-14 22:30:44 -07:00
Daniel Supernault
df9c3adff6
Update Timeline, remove simple mode and set labs deprecation date 2020-12-14 00:49:45 -07:00
Daniel Supernault
9fc5a80cd3
Update PublicApiController, add state endpoint 2020-12-13 22:51:44 -07:00
Daniel Supernault
a5019b8907
Update StatusController 2020-12-13 17:30:50 -07:00
Daniel Supernault
1325ce2cef
Update PublicApiController, use stateless transformer 2020-12-12 23:47:59 -07:00
Daniel Supernault
082c1ccb26
Add hCaptcha 2020-12-12 21:04:59 -07:00
Daniel Supernault
4a14e970f0
Update Profile model, improve counter caching 2020-12-10 22:58:13 -07:00
Daniel Supernault
c67f0c5784
Update AccountInterstitialController, add autospam type 2020-12-10 22:11:02 -07:00
Daniel Supernault
b892bcf0e8
Add autospam feature 2020-12-10 21:58:56 -07:00
Daniel Supernault
048642bead
Update Collections, add custom limit 2020-12-10 01:02:56 -07:00
Daniel Supernault
76353ca997
Update BaseApiController, add favourites method 2020-12-09 22:23:51 -07:00
Daniel Supernault
1b2fd665bf
Update compiled assets 2020-12-09 22:22:56 -07:00
Daniel Supernault
c95085ca31
Update AdminController, add appeals support 2020-12-09 22:08:32 -07:00
Daniel Supernault
19d6e7df65
Update middleware, add AccountInterstitial support 2020-12-09 21:59:16 -07:00
Daniel Supernault
003caf7e8a
Update StatusController, add interstitial logic 2020-12-09 21:43:09 -07:00
Daniel Supernault
342e7a50c9
Update PublicApiController, improve stateless object caching 2020-12-09 21:40:24 -07:00
Daniel Supernault
20681bcf14
Update InternalApiController, add interstitial logic 2020-12-09 21:36:32 -07:00
Daniel Supernault
0718711d09
Update ApiController, return status object after deletion 2020-12-09 21:34:43 -07:00
Daniel Supernault
8766ccfe4f
Add AccountInterstitial model and controller 2020-12-05 00:08:05 -07:00
Daniel Supernault
0a5a0e8616
Add federated photo filters 2020-11-27 19:52:40 -07:00
Daniel Supernault
78a8798ace
Update RegisterController, fixes #2436 2020-11-26 02:15:03 -07:00
Daniel Supernault
e2e32682fd
Update DirectMessageController, add sharedInbox support 2020-11-26 00:56:44 -07:00
Daniel Supernault
4733ca9fb9
Add shared inbox 2020-11-26 00:39:01 -07:00
Daniel Supernault
2ab2c9a974
Update DiscoverController, fix trending api 2020-11-25 17:59:13 -07:00
daniel
45458bd542
Merge pull request #2398 from delthas/feature-password-length
Make the minimum user password length configurable
2020-11-21 20:10:34 -07:00
Daniel Supernault
f8dc33cc81
Update InternalApiController 2020-11-21 19:56:25 -07:00
Daniel Supernault
e08f646008
Update DiscoverController 2020-11-21 18:58:08 -07:00
Daniel Supernault
f1c28e7d0c
Update DirectMessageController, fix pgsql bug 2020-11-21 18:33:22 -07:00
Daniel Supernault
9d07071ee0
Update DirectMessageController 2020-11-18 23:12:49 -07:00
Daniel Supernault
f796cc7c11
Update DirectMessageController 2020-11-18 23:07:00 -07:00
Daniel Supernault
4b90b1e0df
Update DirectMessageController 2020-11-18 19:51:08 -07:00
Daniel Supernault
d63569c120
Add Direct Messages 2020-11-18 14:19:02 -07:00