From 32c5fd987a06e11b14a4247d13187657c14adedd Mon Sep 17 00:00:00 2001 From: Tobi Smethurst <31960611+tsmethurst@users.noreply.github.com> Date: Mon, 19 Apr 2021 19:42:19 +0200 Subject: [PATCH] Api/v1/statuses (#11) This PR adds: Statuses New status creation. View existing status Delete a status Fave a status Unfave a status See who's faved a status Media Upload media attachment and store/retrieve it Upload custom emoji and store/retrieve it Fileserver Serve files from storage Testing Test models, testrig -- run a GTS test instance and play around with it. --- PROGRESS.md | 19 +- cmd/gotosocial/main.go | 114 +- internal/apimodule/account/account.go | 62 +- internal/apimodule/account/accountcreate.go | 6 +- .../apimodule/account/accountcreate_test.go | 59 +- internal/apimodule/account/accountget.go | 6 +- internal/apimodule/account/accountupdate.go | 33 +- .../apimodule/account/accountupdate_test.go | 48 +- internal/apimodule/account/accountverify.go | 2 +- internal/apimodule/admin/admin.go | 84 ++ internal/apimodule/admin/emojicreate.go | 130 +++ internal/apimodule/apimodule.go | 4 +- internal/apimodule/app/app.go | 25 +- internal/apimodule/app/appcreate.go | 14 +- internal/apimodule/auth/auth.go | 8 +- internal/apimodule/auth/auth_test.go | 49 +- internal/apimodule/auth/authorize.go | 10 +- internal/apimodule/auth/middleware.go | 8 +- internal/apimodule/auth/signin.go | 4 +- internal/apimodule/fileserver/fileserver.go | 56 +- internal/apimodule/fileserver/servefile.go | 243 +++++ .../fileserver/test/servefile_test.go | 157 +++ internal/apimodule/media/media.go | 73 ++ internal/apimodule/media/mediacreate.go | 192 ++++ .../apimodule/media/test/mediacreate_test.go | 194 ++++ internal/apimodule/mock_ClientAPIModule.go | 16 + internal/apimodule/security/flocblock.go | 27 + internal/apimodule/security/security.go | 50 + internal/apimodule/status/status.go | 138 +++ internal/apimodule/status/statuscreate.go | 463 ++++++++ internal/apimodule/status/statusdelete.go | 106 ++ internal/apimodule/status/statusfave.go | 136 +++ internal/apimodule/status/statusfavedby.go | 128 +++ internal/apimodule/status/statusget.go | 111 ++ internal/apimodule/status/statusunfave.go | 136 +++ .../status/test/statuscreate_test.go | 346 ++++++ .../apimodule/status/test/statusfave_test.go | 207 ++++ .../status/test/statusfavedby_test.go | 159 +++ .../apimodule/status/test/statusget_test.go | 168 +++ .../status/test/statusunfave_test.go | 219 ++++ internal/config/config.go | 116 +- internal/config/default.go | 177 ++++ internal/config/media.go | 4 + internal/config/statuses.go | 33 + internal/db/db.go | 136 ++- internal/db/{model => gtsmodel}/README.md | 0 internal/db/{model => gtsmodel}/account.go | 44 +- internal/db/gtsmodel/activitystreams.go | 127 +++ .../db/{model => gtsmodel}/application.go | 17 +- internal/db/gtsmodel/block.go | 19 + .../db/{model => gtsmodel}/domainblock.go | 2 +- .../{model => gtsmodel}/emaildomainblock.go | 2 +- internal/db/gtsmodel/emoji.go | 74 ++ internal/db/{model => gtsmodel}/follow.go | 2 +- .../db/{model => gtsmodel}/followrequest.go | 2 +- .../db/{model => gtsmodel}/mediaattachment.go | 22 +- internal/db/gtsmodel/mention.go | 39 + internal/db/gtsmodel/poll.go | 19 + internal/db/gtsmodel/status.go | 138 +++ internal/db/gtsmodel/statusbookmark.go | 35 + internal/db/gtsmodel/statusfave.go | 38 + internal/db/gtsmodel/statusmute.go | 35 + internal/db/gtsmodel/statuspin.go | 33 + internal/db/gtsmodel/tag.go | 41 + internal/db/{model => gtsmodel}/user.go | 2 +- internal/db/mock_DB.go | 185 +++- internal/db/model/status.go | 63 -- internal/db/pg.go | 756 +++++++++---- internal/distributor/distributor.go | 58 +- internal/distributor/mock_Distributor.go | 42 +- internal/gotosocial/actions.go | 39 +- internal/gotosocial/mock_Gotosocial.go | 14 + internal/mastotypes/converter.go | 544 ++++++++++ .../mastotypes/mastomodel}/README.md | 0 .../mastotypes/mastomodel}/account.go | 2 +- .../mastotypes/mastomodel}/activity.go | 0 .../mastotypes/mastomodel}/admin.go | 0 .../mastotypes/mastomodel}/announcement.go | 0 .../mastomodel}/announcementreaction.go | 0 .../mastotypes/mastomodel}/application.go | 2 +- .../mastotypes/mastomodel}/attachment.go | 4 +- .../mastotypes/mastomodel}/card.go | 0 .../mastotypes/mastomodel}/context.go | 0 .../mastotypes/mastomodel}/conversation.go | 0 .../mastotypes/mastomodel}/emoji.go | 10 + .../mastotypes/mastomodel}/error.go | 0 .../mastotypes/mastomodel}/featuredtag.go | 0 .../mastotypes/mastomodel}/field.go | 0 .../mastotypes/mastomodel}/filter.go | 0 .../mastotypes/mastomodel}/history.go | 0 .../mastotypes/mastomodel}/identityproof.go | 0 .../mastotypes/mastomodel}/instance.go | 0 .../mastotypes/mastomodel}/list.go | 0 .../mastotypes/mastomodel}/marker.go | 0 .../mastotypes/mastomodel}/mention.go | 0 .../mastotypes/mastomodel}/notification.go | 0 .../mastotypes/mastomodel}/oauth.go | 0 .../mastotypes/mastomodel}/poll.go | 0 .../mastotypes/mastomodel}/preferences.go | 0 .../mastomodel}/pushsubscription.go | 0 .../mastotypes/mastomodel}/relationship.go | 0 .../mastotypes/mastomodel}/results.go | 0 .../mastotypes/mastomodel}/scheduledstatus.go | 0 .../mastotypes/mastomodel}/source.go | 2 +- .../mastotypes/mastomodel}/status.go | 73 +- .../mastotypes/mastomodel}/tag.go | 4 + .../mastotypes/mastomodel}/token.go | 0 internal/mastotypes/mock_Converter.go | 148 +++ internal/media/media.go | 338 +++++- internal/media/media_test.go | 27 +- internal/media/mock_MediaHandler.go | 33 +- internal/media/test/rainbow-original.png | Bin 0 -> 36702 bytes internal/media/test/rainbow-static.png | Bin 0 -> 4389 bytes internal/media/util.go | 153 ++- internal/media/util_test.go | 2 +- internal/oauth/server.go | 17 +- internal/oauth/tokenstore.go | 16 +- internal/router/router.go | 12 +- internal/storage/inmem.go | 24 + internal/storage/local.go | 53 +- internal/storage/mock_Storage.go | 37 + internal/storage/storage.go | 6 + internal/util/parse.go | 98 +- internal/util/regexes.go | 36 + internal/util/status.go | 96 ++ internal/util/status_test.go | 105 ++ internal/util/validation.go | 10 + scripts/auth_flow.sh | 5 +- testrig/actions.go | 125 +++ testrig/config.go | 26 + testrig/db.go | 144 +++ testrig/distributor.go | 25 + testrig/log.go | 28 + testrig/mastoconverter.go | 29 + testrig/media/ohyou-original.jpeg | Bin 0 -> 27759 bytes testrig/media/ohyou-small.jpeg | Bin 0 -> 6177 bytes testrig/media/rainbow-original.png | Bin 0 -> 36702 bytes testrig/media/rainbow-static.png | Bin 0 -> 10413 bytes testrig/media/trent-original.gif | Bin 0 -> 1109138 bytes testrig/media/trent-small.jpeg | Bin 0 -> 8803 bytes testrig/media/welcome-original.jpeg | Bin 0 -> 62529 bytes testrig/media/welcome-small.jpeg | Bin 0 -> 6872 bytes testrig/media/zork-original.jpeg | Bin 0 -> 457680 bytes testrig/media/zork-small.jpeg | Bin 0 -> 15374 bytes testrig/mediahandler.go | 31 + testrig/oauthserver.go | 29 + testrig/router.go | 29 + testrig/storage.go | 105 ++ testrig/testmodels.go | 995 ++++++++++++++++++ testrig/util.go | 64 ++ 150 files changed, 9023 insertions(+), 788 deletions(-) create mode 100644 internal/apimodule/admin/admin.go create mode 100644 internal/apimodule/admin/emojicreate.go create mode 100644 internal/apimodule/fileserver/servefile.go create mode 100644 internal/apimodule/fileserver/test/servefile_test.go create mode 100644 internal/apimodule/media/media.go create mode 100644 internal/apimodule/media/mediacreate.go create mode 100644 internal/apimodule/media/test/mediacreate_test.go create mode 100644 internal/apimodule/security/flocblock.go create mode 100644 internal/apimodule/security/security.go create mode 100644 internal/apimodule/status/status.go create mode 100644 internal/apimodule/status/statuscreate.go create mode 100644 internal/apimodule/status/statusdelete.go create mode 100644 internal/apimodule/status/statusfave.go create mode 100644 internal/apimodule/status/statusfavedby.go create mode 100644 internal/apimodule/status/statusget.go create mode 100644 internal/apimodule/status/statusunfave.go create mode 100644 internal/apimodule/status/test/statuscreate_test.go create mode 100644 internal/apimodule/status/test/statusfave_test.go create mode 100644 internal/apimodule/status/test/statusfavedby_test.go create mode 100644 internal/apimodule/status/test/statusget_test.go create mode 100644 internal/apimodule/status/test/statusunfave_test.go create mode 100644 internal/config/default.go create mode 100644 internal/config/statuses.go rename internal/db/{model => gtsmodel}/README.md (100%) rename internal/db/{model => gtsmodel}/account.go (81%) create mode 100644 internal/db/gtsmodel/activitystreams.go rename internal/db/{model => gtsmodel}/application.go (78%) create mode 100644 internal/db/gtsmodel/block.go rename internal/db/{model => gtsmodel}/domainblock.go (99%) rename internal/db/{model => gtsmodel}/emaildomainblock.go (98%) create mode 100644 internal/db/gtsmodel/emoji.go rename internal/db/{model => gtsmodel}/follow.go (98%) rename internal/db/{model => gtsmodel}/followrequest.go (99%) rename internal/db/{model => gtsmodel}/mediaattachment.go (88%) create mode 100644 internal/db/gtsmodel/mention.go create mode 100644 internal/db/gtsmodel/poll.go create mode 100644 internal/db/gtsmodel/status.go create mode 100644 internal/db/gtsmodel/statusbookmark.go create mode 100644 internal/db/gtsmodel/statusfave.go create mode 100644 internal/db/gtsmodel/statusmute.go create mode 100644 internal/db/gtsmodel/statuspin.go create mode 100644 internal/db/gtsmodel/tag.go rename internal/db/{model => gtsmodel}/user.go (99%) delete mode 100644 internal/db/model/status.go create mode 100644 internal/mastotypes/converter.go rename {pkg/mastotypes => internal/mastotypes/mastomodel}/README.md (100%) rename {pkg/mastotypes => internal/mastotypes/mastomodel}/account.go (99%) rename {pkg/mastotypes => internal/mastotypes/mastomodel}/activity.go (100%) rename {pkg/mastotypes => internal/mastotypes/mastomodel}/admin.go (100%) rename {pkg/mastotypes => internal/mastotypes/mastomodel}/announcement.go (100%) rename {pkg/mastotypes => internal/mastotypes/mastomodel}/announcementreaction.go (100%) rename {pkg/mastotypes => internal/mastotypes/mastomodel}/application.go (98%) rename {pkg/mastotypes => internal/mastotypes/mastomodel}/attachment.go (96%) rename {pkg/mastotypes => internal/mastotypes/mastomodel}/card.go (100%) rename {pkg/mastotypes => internal/mastotypes/mastomodel}/context.go (100%) rename {pkg/mastotypes => internal/mastotypes/mastomodel}/conversation.go (100%) rename {pkg/mastotypes => internal/mastotypes/mastomodel}/emoji.go (74%) rename {pkg/mastotypes => internal/mastotypes/mastomodel}/error.go (100%) rename {pkg/mastotypes => internal/mastotypes/mastomodel}/featuredtag.go (100%) rename {pkg/mastotypes => internal/mastotypes/mastomodel}/field.go (100%) rename {pkg/mastotypes => internal/mastotypes/mastomodel}/filter.go (100%) rename {pkg/mastotypes => internal/mastotypes/mastomodel}/history.go (100%) rename {pkg/mastotypes => internal/mastotypes/mastomodel}/identityproof.go (100%) rename {pkg/mastotypes => internal/mastotypes/mastomodel}/instance.go (100%) rename {pkg/mastotypes => internal/mastotypes/mastomodel}/list.go (100%) rename {pkg/mastotypes => internal/mastotypes/mastomodel}/marker.go (100%) rename {pkg/mastotypes => internal/mastotypes/mastomodel}/mention.go (100%) rename {pkg/mastotypes => internal/mastotypes/mastomodel}/notification.go (100%) rename {pkg/mastotypes => internal/mastotypes/mastomodel}/oauth.go (100%) rename {pkg/mastotypes => internal/mastotypes/mastomodel}/poll.go (100%) rename {pkg/mastotypes => internal/mastotypes/mastomodel}/preferences.go (100%) rename {pkg/mastotypes => internal/mastotypes/mastomodel}/pushsubscription.go (100%) rename {pkg/mastotypes => internal/mastotypes/mastomodel}/relationship.go (100%) rename {pkg/mastotypes => internal/mastotypes/mastomodel}/results.go (100%) rename {pkg/mastotypes => internal/mastotypes/mastomodel}/scheduledstatus.go (100%) rename {pkg/mastotypes => internal/mastotypes/mastomodel}/source.go (97%) rename {pkg/mastotypes => internal/mastotypes/mastomodel}/status.go (84%) rename {pkg/mastotypes => internal/mastotypes/mastomodel}/tag.go (86%) rename {pkg/mastotypes => internal/mastotypes/mastomodel}/token.go (100%) create mode 100644 internal/mastotypes/mock_Converter.go create mode 100644 internal/media/test/rainbow-original.png create mode 100644 internal/media/test/rainbow-static.png create mode 100644 internal/util/regexes.go create mode 100644 internal/util/status.go create mode 100644 internal/util/status_test.go create mode 100644 testrig/actions.go create mode 100644 testrig/config.go create mode 100644 testrig/db.go create mode 100644 testrig/distributor.go create mode 100644 testrig/log.go create mode 100644 testrig/mastoconverter.go create mode 100755 testrig/media/ohyou-original.jpeg create mode 100755 testrig/media/ohyou-small.jpeg create mode 100755 testrig/media/rainbow-original.png create mode 100755 testrig/media/rainbow-static.png create mode 100755 testrig/media/trent-original.gif create mode 100755 testrig/media/trent-small.jpeg create mode 100755 testrig/media/welcome-original.jpeg create mode 100755 testrig/media/welcome-small.jpeg create mode 100644 testrig/media/zork-original.jpeg create mode 100644 testrig/media/zork-small.jpeg create mode 100644 testrig/mediahandler.go create mode 100644 testrig/oauthserver.go create mode 100644 testrig/router.go create mode 100644 testrig/storage.go create mode 100644 testrig/testmodels.go create mode 100644 testrig/util.go diff --git a/PROGRESS.md b/PROGRESS.md index 2d9c653a8..18bcedfa3 100644 --- a/PROGRESS.md +++ b/PROGRESS.md @@ -69,14 +69,14 @@ * [ ] /api/v1/suggestions GET (Get suggested accounts to follow) * [ ] /api/v1/suggestions/:account_id DELETE (Delete a suggestion) * [ ] Statuses - * [ ] /api/v1/statuses POST (Create a new status) - * [ ] /api/v1/statuses/:id GET (View an existing status) - * [ ] /api/v1/statuses/:id DELETE (Delete a status) + * [x] /api/v1/statuses POST (Create a new status) + * [x] /api/v1/statuses/:id GET (View an existing status) + * [x] /api/v1/statuses/:id DELETE (Delete a status) * [ ] /api/v1/statuses/:id/context GET (View statuses above and below status ID) * [ ] /api/v1/statuses/:id/reblogged_by GET (See who has reblogged a status) - * [ ] /api/v1/statuses/:id/favourited_by GET (See who has faved a status) - * [ ] /api/v1/statuses/:id/favourite POST (Fave a status) - * [ ] /api/v1/statuses/:id/favourite POST (Unfave a status) + * [x] /api/v1/statuses/:id/favourited_by GET (See who has faved a status) + * [x] /api/v1/statuses/:id/favourite POST (Fave a status) + * [x] /api/v1/statuses/:id/unfavourite POST (Unfave a status) * [ ] /api/v1/statuses/:id/reblog POST (Reblog a status) * [ ] /api/v1/statuses/:id/unreblog POST (Undo a reblog) * [ ] /api/v1/statuses/:id/bookmark POST (Bookmark a status) @@ -86,7 +86,7 @@ * [ ] /api/v1/statuses/:id/pin POST (Pin a status to profile) * [ ] /api/v1/statuses/:id/unpin POST (Unpin a status from profile) * [ ] Media - * [ ] /api/v1/media POST (Upload a media attachment) + * [x] /api/v1/media POST (Upload a media attachment) * [ ] /api/v1/media/:id GET (Get a media attachment) * [ ] /api/v1/media/:id PUT (Update an attachment) * [ ] Polls @@ -144,6 +144,7 @@ * [ ] Custom Emojis * [ ] /api/v1/custom_emojis GET (Show this server's custom emoji) * [ ] Admin + * [x] /api/v1/admin/custom_emojis POST (Upload a custom emoji for instance-wide usage) * [ ] /api/v1/admin/accounts GET (View accounts filtered by criteria) * [ ] /api/v1/admin/accounts/:id GET (View admin level info about an account) * [ ] /api/v1/admin/accounts/:id/action POST (Perform an admin action on account) @@ -178,8 +179,8 @@ * [ ] Storage * [x] Internal/statuses/preferences etc * [x] Postgres interface - * [ ] Media storage - * [ ] Local storage interface + * [x] Media storage + * [x] Local storage interface * [ ] S3 storage interface * [ ] Cache * [ ] In-memory cache diff --git a/cmd/gotosocial/main.go b/cmd/gotosocial/main.go index 983d49d40..337e7b785 100644 --- a/cmd/gotosocial/main.go +++ b/cmd/gotosocial/main.go @@ -28,6 +28,7 @@ import ( "github.com/superseriousbusiness/gotosocial/internal/db" "github.com/superseriousbusiness/gotosocial/internal/gotosocial" "github.com/superseriousbusiness/gotosocial/internal/log" + "github.com/superseriousbusiness/gotosocial/testrig" "github.com/urfave/cli/v2" ) @@ -35,6 +36,7 @@ import ( func main() { flagNames := config.GetFlagNames() envNames := config.GetEnvNames() + defaults := config.GetDefaults() app := &cli.App{ Usage: "a fediverse social media server", Flags: []cli.Flag{ @@ -42,32 +44,32 @@ func main() { &cli.StringFlag{ Name: flagNames.LogLevel, Usage: "Log level to run at: debug, info, warn, fatal", - Value: "info", - EnvVars: []string{"GTS_LOG_LEVEL"}, + Value: defaults.LogLevel, + EnvVars: []string{envNames.LogLevel}, }, &cli.StringFlag{ Name: flagNames.ApplicationName, Usage: "Name of the application, used in various places internally", - Value: "gotosocial", + Value: defaults.ApplicationName, EnvVars: []string{envNames.ApplicationName}, Hidden: true, }, &cli.StringFlag{ Name: flagNames.ConfigPath, Usage: "Path to a yaml file containing gotosocial configuration. Values set in this file will be overwritten by values set as env vars or arguments", - Value: "", + Value: defaults.ConfigPath, EnvVars: []string{envNames.ConfigPath}, }, &cli.StringFlag{ Name: flagNames.Host, Usage: "Hostname to use for the server (eg., example.org, gotosocial.whatever.com)", - Value: "localhost", + Value: defaults.Host, EnvVars: []string{envNames.Host}, }, &cli.StringFlag{ Name: flagNames.Protocol, Usage: "Protocol to use for the REST api of the server (only use http for debugging and tests!)", - Value: "https", + Value: defaults.Protocol, EnvVars: []string{envNames.Protocol}, }, @@ -75,36 +77,37 @@ func main() { &cli.StringFlag{ Name: flagNames.DbType, Usage: "Database type: eg., postgres", - Value: "postgres", + Value: defaults.DbType, EnvVars: []string{envNames.DbType}, }, &cli.StringFlag{ Name: flagNames.DbAddress, Usage: "Database ipv4 address or hostname", - Value: "localhost", + Value: defaults.DbAddress, EnvVars: []string{envNames.DbAddress}, }, &cli.IntFlag{ Name: flagNames.DbPort, Usage: "Database port", - Value: 5432, + Value: defaults.DbPort, EnvVars: []string{envNames.DbPort}, }, &cli.StringFlag{ Name: flagNames.DbUser, Usage: "Database username", - Value: "postgres", + Value: defaults.DbUser, EnvVars: []string{envNames.DbUser}, }, &cli.StringFlag{ Name: flagNames.DbPassword, Usage: "Database password", + Value: defaults.DbPassword, EnvVars: []string{envNames.DbPassword}, }, &cli.StringFlag{ Name: flagNames.DbDatabase, Usage: "Database name", - Value: "postgres", + Value: defaults.DbDatabase, EnvVars: []string{envNames.DbDatabase}, }, @@ -112,7 +115,7 @@ func main() { &cli.StringFlag{ Name: flagNames.TemplateBaseDir, Usage: "Basedir for html templating files for rendering pages and composing emails.", - Value: "./web/template/", + Value: defaults.TemplateBaseDir, EnvVars: []string{envNames.TemplateBaseDir}, }, @@ -120,61 +123,111 @@ func main() { &cli.BoolFlag{ Name: flagNames.AccountsOpenRegistration, Usage: "Allow anyone to submit an account signup request. If false, server will be invite-only.", - Value: true, + Value: defaults.AccountsOpenRegistration, EnvVars: []string{envNames.AccountsOpenRegistration}, }, &cli.BoolFlag{ - Name: flagNames.AccountsRequireApproval, + Name: flagNames.AccountsApprovalRequired, Usage: "Do account signups require approval by an admin or moderator before user can log in? If false, new registrations will be automatically approved.", - Value: true, - EnvVars: []string{envNames.AccountsRequireApproval}, + Value: defaults.AccountsRequireApproval, + EnvVars: []string{envNames.AccountsApprovalRequired}, + }, + &cli.BoolFlag{ + Name: flagNames.AccountsReasonRequired, + Usage: "Do new account signups require a reason to be submitted on registration?", + Value: defaults.AccountsReasonRequired, + EnvVars: []string{envNames.AccountsReasonRequired}, }, // MEDIA FLAGS &cli.IntFlag{ Name: flagNames.MediaMaxImageSize, Usage: "Max size of accepted images in bytes", - Value: 1048576, // 1mb + Value: defaults.MediaMaxImageSize, EnvVars: []string{envNames.MediaMaxImageSize}, }, &cli.IntFlag{ Name: flagNames.MediaMaxVideoSize, Usage: "Max size of accepted videos in bytes", - Value: 5242880, // 5mb + Value: defaults.MediaMaxVideoSize, EnvVars: []string{envNames.MediaMaxVideoSize}, }, + &cli.IntFlag{ + Name: flagNames.MediaMinDescriptionChars, + Usage: "Min required chars for an image description", + Value: defaults.MediaMinDescriptionChars, + EnvVars: []string{envNames.MediaMinDescriptionChars}, + }, + &cli.IntFlag{ + Name: flagNames.MediaMaxDescriptionChars, + Usage: "Max permitted chars for an image description", + Value: defaults.MediaMaxDescriptionChars, + EnvVars: []string{envNames.MediaMaxDescriptionChars}, + }, // STORAGE FLAGS &cli.StringFlag{ Name: flagNames.StorageBackend, Usage: "Storage backend to use for media attachments", - Value: "local", + Value: defaults.StorageBackend, EnvVars: []string{envNames.StorageBackend}, }, &cli.StringFlag{ Name: flagNames.StorageBasePath, - Usage: "Full path to an already-created directory where gts should store/retrieve media files", - Value: "/opt/gotosocial", + Usage: "Full path to an already-created directory where gts should store/retrieve media files. Subfolders will be created within this dir.", + Value: defaults.StorageBasePath, EnvVars: []string{envNames.StorageBasePath}, }, &cli.StringFlag{ Name: flagNames.StorageServeProtocol, Usage: "Protocol to use for serving media attachments (use https if storage is local)", - Value: "https", + Value: defaults.StorageServeProtocol, EnvVars: []string{envNames.StorageServeProtocol}, }, &cli.StringFlag{ Name: flagNames.StorageServeHost, Usage: "Hostname to serve media attachments from (use the same value as host if storage is local)", - Value: "localhost", + Value: defaults.StorageServeHost, EnvVars: []string{envNames.StorageServeHost}, }, &cli.StringFlag{ Name: flagNames.StorageServeBasePath, Usage: "Path to append to protocol and hostname to create the base path from which media files will be served (default will mostly be fine)", - Value: "/fileserver/media", + Value: defaults.StorageServeBasePath, EnvVars: []string{envNames.StorageServeBasePath}, }, + + // STATUSES FLAGS + &cli.IntFlag{ + Name: flagNames.StatusesMaxChars, + Usage: "Max permitted characters for posted statuses", + Value: defaults.StatusesMaxChars, + EnvVars: []string{envNames.StatusesMaxChars}, + }, + &cli.IntFlag{ + Name: flagNames.StatusesCWMaxChars, + Usage: "Max permitted characters for content/spoiler warnings on statuses", + Value: defaults.StatusesCWMaxChars, + EnvVars: []string{envNames.StatusesCWMaxChars}, + }, + &cli.IntFlag{ + Name: flagNames.StatusesPollMaxOptions, + Usage: "Max amount of options permitted on a poll", + Value: defaults.StatusesPollMaxOptions, + EnvVars: []string{envNames.StatusesPollMaxOptions}, + }, + &cli.IntFlag{ + Name: flagNames.StatusesPollOptionMaxChars, + Usage: "Max amount of characters for a poll option", + Value: defaults.StatusesPollOptionMaxChars, + EnvVars: []string{envNames.StatusesPollOptionMaxChars}, + }, + &cli.IntFlag{ + Name: flagNames.StatusesMaxMediaFiles, + Usage: "Maximum number of media files/attachments per status", + Value: defaults.StatusesMaxMediaFiles, + EnvVars: []string{envNames.StatusesMaxMediaFiles}, + }, }, Commands: []*cli.Command{ { @@ -203,6 +256,19 @@ func main() { }, }, }, + { + Name: "testrig", + Usage: "gotosocial testrig tasks", + Subcommands: []*cli.Command{ + { + Name: "start", + Usage: "start the gotosocial testrig", + Action: func(c *cli.Context) error { + return runAction(c, testrig.Run) + }, + }, + }, + }, }, } diff --git a/internal/apimodule/account/account.go b/internal/apimodule/account/account.go index 2d9ddbb72..f4a47f6a2 100644 --- a/internal/apimodule/account/account.go +++ b/internal/apimodule/account/account.go @@ -28,7 +28,9 @@ import ( "github.com/superseriousbusiness/gotosocial/internal/apimodule" "github.com/superseriousbusiness/gotosocial/internal/config" "github.com/superseriousbusiness/gotosocial/internal/db" - "github.com/superseriousbusiness/gotosocial/internal/db/model" + "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" + "github.com/superseriousbusiness/gotosocial/internal/mastotypes" + "github.com/superseriousbusiness/gotosocial/internal/media" "github.com/superseriousbusiness/gotosocial/internal/oauth" "github.com/superseriousbusiness/gotosocial/internal/router" @@ -43,21 +45,23 @@ const ( ) type accountModule struct { - config *config.Config - db db.DB - oauthServer oauth.Server - mediaHandler media.MediaHandler - log *logrus.Logger + config *config.Config + db db.DB + oauthServer oauth.Server + mediaHandler media.MediaHandler + mastoConverter mastotypes.Converter + log *logrus.Logger } // New returns a new account module -func New(config *config.Config, db db.DB, oauthServer oauth.Server, mediaHandler media.MediaHandler, log *logrus.Logger) apimodule.ClientAPIModule { +func New(config *config.Config, db db.DB, oauthServer oauth.Server, mediaHandler media.MediaHandler, mastoConverter mastotypes.Converter, log *logrus.Logger) apimodule.ClientAPIModule { return &accountModule{ - config: config, - db: db, - oauthServer: oauthServer, - mediaHandler: mediaHandler, - log: log, + config: config, + db: db, + oauthServer: oauthServer, + mediaHandler: mediaHandler, + mastoConverter: mastoConverter, + log: log, } } @@ -65,19 +69,20 @@ func New(config *config.Config, db db.DB, oauthServer oauth.Server, mediaHandler func (m *accountModule) Route(r router.Router) error { r.AttachHandler(http.MethodPost, basePath, m.accountCreatePOSTHandler) r.AttachHandler(http.MethodGet, basePathWithID, m.muxHandler) + r.AttachHandler(http.MethodPatch, basePathWithID, m.muxHandler) return nil } func (m *accountModule) CreateTables(db db.DB) error { models := []interface{}{ - &model.User{}, - &model.Account{}, - &model.Follow{}, - &model.FollowRequest{}, - &model.Status{}, - &model.Application{}, - &model.EmailDomainBlock{}, - &model.MediaAttachment{}, + >smodel.User{}, + >smodel.Account{}, + >smodel.Follow{}, + >smodel.FollowRequest{}, + >smodel.Status{}, + >smodel.Application{}, + >smodel.EmailDomainBlock{}, + >smodel.MediaAttachment{}, } for _, m := range models { @@ -90,11 +95,16 @@ func (m *accountModule) CreateTables(db db.DB) error { func (m *accountModule) muxHandler(c *gin.Context) { ru := c.Request.RequestURI - if strings.HasPrefix(ru, verifyPath) { - m.accountVerifyGETHandler(c) - } else if strings.HasPrefix(ru, updateCredentialsPath) { - m.accountUpdateCredentialsPATCHHandler(c) - } else { - m.accountGETHandler(c) + switch c.Request.Method { + case http.MethodGet: + if strings.HasPrefix(ru, verifyPath) { + m.accountVerifyGETHandler(c) + } else { + m.accountGETHandler(c) + } + case http.MethodPatch: + if strings.HasPrefix(ru, updateCredentialsPath) { + m.accountUpdateCredentialsPATCHHandler(c) + } } } diff --git a/internal/apimodule/account/accountcreate.go b/internal/apimodule/account/accountcreate.go index 58b98c0e4..266d820af 100644 --- a/internal/apimodule/account/accountcreate.go +++ b/internal/apimodule/account/accountcreate.go @@ -27,10 +27,10 @@ import ( "github.com/gin-gonic/gin" "github.com/superseriousbusiness/gotosocial/internal/config" "github.com/superseriousbusiness/gotosocial/internal/db" - "github.com/superseriousbusiness/gotosocial/internal/db/model" + "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" + mastotypes "github.com/superseriousbusiness/gotosocial/internal/mastotypes/mastomodel" "github.com/superseriousbusiness/gotosocial/internal/oauth" "github.com/superseriousbusiness/gotosocial/internal/util" - "github.com/superseriousbusiness/gotosocial/pkg/mastotypes" "github.com/superseriousbusiness/oauth2/v4" ) @@ -83,7 +83,7 @@ func (m *accountModule) accountCreatePOSTHandler(c *gin.Context) { // accountCreate does the dirty work of making an account and user in the database. // It then returns a token to the caller, for use with the new account, as per the // spec here: https://docs.joinmastodon.org/methods/accounts/ -func (m *accountModule) accountCreate(form *mastotypes.AccountCreateRequest, signUpIP net.IP, token oauth2.TokenInfo, app *model.Application) (*mastotypes.Token, error) { +func (m *accountModule) accountCreate(form *mastotypes.AccountCreateRequest, signUpIP net.IP, token oauth2.TokenInfo, app *gtsmodel.Application) (*mastotypes.Token, error) { l := m.log.WithField("func", "accountCreate") // don't store a reason if we don't require one diff --git a/internal/apimodule/account/accountcreate_test.go b/internal/apimodule/account/accountcreate_test.go index d14ae3852..8677e3573 100644 --- a/internal/apimodule/account/accountcreate_test.go +++ b/internal/apimodule/account/accountcreate_test.go @@ -41,11 +41,13 @@ import ( "github.com/stretchr/testify/suite" "github.com/superseriousbusiness/gotosocial/internal/config" "github.com/superseriousbusiness/gotosocial/internal/db" - "github.com/superseriousbusiness/gotosocial/internal/db/model" + "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" + "github.com/superseriousbusiness/gotosocial/internal/mastotypes" + mastomodel "github.com/superseriousbusiness/gotosocial/internal/mastotypes/mastomodel" + "github.com/superseriousbusiness/gotosocial/internal/media" "github.com/superseriousbusiness/gotosocial/internal/oauth" "github.com/superseriousbusiness/gotosocial/internal/storage" - "github.com/superseriousbusiness/gotosocial/pkg/mastotypes" "github.com/superseriousbusiness/oauth2/v4" "github.com/superseriousbusiness/oauth2/v4/models" oauthmodels "github.com/superseriousbusiness/oauth2/v4/models" @@ -56,12 +58,13 @@ type AccountCreateTestSuite struct { suite.Suite config *config.Config log *logrus.Logger - testAccountLocal *model.Account - testApplication *model.Application + testAccountLocal *gtsmodel.Account + testApplication *gtsmodel.Application testToken oauth2.TokenInfo mockOauthServer *oauth.MockServer mockStorage *storage.MockStorage mediaHandler media.MediaHandler + mastoConverter mastotypes.Converter db db.DB accountModule *accountModule newUserFormHappyPath url.Values @@ -78,13 +81,13 @@ func (suite *AccountCreateTestSuite) SetupSuite() { log.SetLevel(logrus.TraceLevel) suite.log = log - suite.testAccountLocal = &model.Account{ + suite.testAccountLocal = >smodel.Account{ ID: uuid.NewString(), Username: "test_user", } // can use this test application throughout - suite.testApplication = &model.Application{ + suite.testApplication = >smodel.Application{ ID: "weeweeeeeeeeeeeeee", Name: "a test application", Website: "https://some-application-website.com", @@ -148,7 +151,7 @@ func (suite *AccountCreateTestSuite) SetupSuite() { userID := args.Get(2).(string) l.Infof("received userID %+v", userID) }).Return(&models.Token{ - Code: "we're authorized now!", + Access: "we're authorized now!", }, nil) suite.mockStorage = &storage.MockStorage{} @@ -158,8 +161,10 @@ func (suite *AccountCreateTestSuite) SetupSuite() { // set a media handler because some handlers (eg update credentials) need to upload media (new header/avatar) suite.mediaHandler = media.New(suite.config, suite.db, suite.mockStorage, log) + suite.mastoConverter = mastotypes.New(suite.config, suite.db) + // and finally here's the thing we're actually testing! - suite.accountModule = New(suite.config, suite.db, suite.mockOauthServer, suite.mediaHandler, suite.log).(*accountModule) + suite.accountModule = New(suite.config, suite.db, suite.mockOauthServer, suite.mediaHandler, suite.mastoConverter, suite.log).(*accountModule) } func (suite *AccountCreateTestSuite) TearDownSuite() { @@ -172,14 +177,14 @@ func (suite *AccountCreateTestSuite) TearDownSuite() { func (suite *AccountCreateTestSuite) SetupTest() { // create all the tables we might need in thie suite models := []interface{}{ - &model.User{}, - &model.Account{}, - &model.Follow{}, - &model.FollowRequest{}, - &model.Status{}, - &model.Application{}, - &model.EmailDomainBlock{}, - &model.MediaAttachment{}, + >smodel.User{}, + >smodel.Account{}, + >smodel.Follow{}, + >smodel.FollowRequest{}, + >smodel.Status{}, + >smodel.Application{}, + >smodel.EmailDomainBlock{}, + >smodel.MediaAttachment{}, } for _, m := range models { if err := suite.db.CreateTable(m); err != nil { @@ -210,14 +215,14 @@ func (suite *AccountCreateTestSuite) TearDownTest() { // remove all the tables we might have used so it's clear for the next test models := []interface{}{ - &model.User{}, - &model.Account{}, - &model.Follow{}, - &model.FollowRequest{}, - &model.Status{}, - &model.Application{}, - &model.EmailDomainBlock{}, - &model.MediaAttachment{}, + >smodel.User{}, + >smodel.Account{}, + >smodel.Follow{}, + >smodel.FollowRequest{}, + >smodel.Status{}, + >smodel.Application{}, + >smodel.EmailDomainBlock{}, + >smodel.MediaAttachment{}, } for _, m := range models { if err := suite.db.DropTable(m); err != nil { @@ -259,7 +264,7 @@ func (suite *AccountCreateTestSuite) TestAccountCreatePOSTHandlerSuccessful() { defer result.Body.Close() b, err := ioutil.ReadAll(result.Body) assert.NoError(suite.T(), err) - t := &mastotypes.Token{} + t := &mastomodel.Token{} err = json.Unmarshal(b, t) assert.NoError(suite.T(), err) assert.Equal(suite.T(), "we're authorized now!", t.AccessToken) @@ -267,7 +272,7 @@ func (suite *AccountCreateTestSuite) TestAccountCreatePOSTHandlerSuccessful() { // check new account // 1. we should be able to get the new account from the db - acct := &model.Account{} + acct := >smodel.Account{} err = suite.db.GetWhere("username", "test_user", acct) assert.NoError(suite.T(), err) assert.NotNil(suite.T(), acct) @@ -288,7 +293,7 @@ func (suite *AccountCreateTestSuite) TestAccountCreatePOSTHandlerSuccessful() { // check new user // 1. we should be able to get the new user from the db - usr := &model.User{} + usr := >smodel.User{} err = suite.db.GetWhere("unconfirmed_email", suite.newUserFormHappyPath.Get("email"), usr) assert.Nil(suite.T(), err) assert.NotNil(suite.T(), usr) diff --git a/internal/apimodule/account/accountget.go b/internal/apimodule/account/accountget.go index 5ee93386d..cd4aed22e 100644 --- a/internal/apimodule/account/accountget.go +++ b/internal/apimodule/account/accountget.go @@ -23,7 +23,7 @@ import ( "github.com/gin-gonic/gin" "github.com/superseriousbusiness/gotosocial/internal/db" - "github.com/superseriousbusiness/gotosocial/internal/db/model" + "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" ) // accountGetHandler serves the account information held by the server in response to a GET @@ -37,7 +37,7 @@ func (m *accountModule) accountGETHandler(c *gin.Context) { return } - targetAccount := &model.Account{} + targetAccount := >smodel.Account{} if err := m.db.GetByID(targetAcctID, targetAccount); err != nil { if _, ok := err.(db.ErrNoEntries); ok { c.JSON(http.StatusNotFound, gin.H{"error": "Record not found"}) @@ -47,7 +47,7 @@ func (m *accountModule) accountGETHandler(c *gin.Context) { return } - acctInfo, err := m.db.AccountToMastoPublic(targetAccount) + acctInfo, err := m.mastoConverter.AccountToMastoPublic(targetAccount) if err != nil { c.JSON(http.StatusInternalServerError, gin.H{"error": err.Error()}) return diff --git a/internal/apimodule/account/accountupdate.go b/internal/apimodule/account/accountupdate.go index 6686d3a50..15e9cf0d1 100644 --- a/internal/apimodule/account/accountupdate.go +++ b/internal/apimodule/account/accountupdate.go @@ -27,10 +27,11 @@ import ( "net/http" "github.com/gin-gonic/gin" - "github.com/superseriousbusiness/gotosocial/internal/db/model" + "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" + mastotypes "github.com/superseriousbusiness/gotosocial/internal/mastotypes/mastomodel" + "github.com/superseriousbusiness/gotosocial/internal/media" "github.com/superseriousbusiness/gotosocial/internal/oauth" "github.com/superseriousbusiness/gotosocial/internal/util" - "github.com/superseriousbusiness/gotosocial/pkg/mastotypes" ) // accountUpdateCredentialsPATCHHandler allows a user to modify their account/profile settings. @@ -67,7 +68,7 @@ func (m *accountModule) accountUpdateCredentialsPATCHHandler(c *gin.Context) { } if form.Discoverable != nil { - if err := m.db.UpdateOneByID(authed.Account.ID, "discoverable", *form.Discoverable, &model.Account{}); err != nil { + if err := m.db.UpdateOneByID(authed.Account.ID, "discoverable", *form.Discoverable, >smodel.Account{}); err != nil { l.Debugf("error updating discoverable: %s", err) c.JSON(http.StatusInternalServerError, gin.H{"error": err.Error()}) return @@ -75,7 +76,7 @@ func (m *accountModule) accountUpdateCredentialsPATCHHandler(c *gin.Context) { } if form.Bot != nil { - if err := m.db.UpdateOneByID(authed.Account.ID, "bot", *form.Bot, &model.Account{}); err != nil { + if err := m.db.UpdateOneByID(authed.Account.ID, "bot", *form.Bot, >smodel.Account{}); err != nil { l.Debugf("error updating bot: %s", err) c.JSON(http.StatusInternalServerError, gin.H{"error": err.Error()}) return @@ -87,7 +88,7 @@ func (m *accountModule) accountUpdateCredentialsPATCHHandler(c *gin.Context) { c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()}) return } - if err := m.db.UpdateOneByID(authed.Account.ID, "display_name", *form.DisplayName, &model.Account{}); err != nil { + if err := m.db.UpdateOneByID(authed.Account.ID, "display_name", *form.DisplayName, >smodel.Account{}); err != nil { c.JSON(http.StatusInternalServerError, gin.H{"error": err.Error()}) return } @@ -98,7 +99,7 @@ func (m *accountModule) accountUpdateCredentialsPATCHHandler(c *gin.Context) { c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()}) return } - if err := m.db.UpdateOneByID(authed.Account.ID, "note", *form.Note, &model.Account{}); err != nil { + if err := m.db.UpdateOneByID(authed.Account.ID, "note", *form.Note, >smodel.Account{}); err != nil { l.Debugf("error updating note: %s", err) c.JSON(http.StatusInternalServerError, gin.H{"error": err.Error()}) return @@ -126,7 +127,7 @@ func (m *accountModule) accountUpdateCredentialsPATCHHandler(c *gin.Context) { } if form.Locked != nil { - if err := m.db.UpdateOneByID(authed.Account.ID, "locked", *form.Locked, &model.Account{}); err != nil { + if err := m.db.UpdateOneByID(authed.Account.ID, "locked", *form.Locked, >smodel.Account{}); err != nil { c.JSON(http.StatusInternalServerError, gin.H{"error": err.Error()}) return } @@ -138,14 +139,14 @@ func (m *accountModule) accountUpdateCredentialsPATCHHandler(c *gin.Context) { c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()}) return } - if err := m.db.UpdateOneByID(authed.Account.ID, "language", *form.Source.Language, &model.Account{}); err != nil { + if err := m.db.UpdateOneByID(authed.Account.ID, "language", *form.Source.Language, >smodel.Account{}); err != nil { c.JSON(http.StatusInternalServerError, gin.H{"error": err.Error()}) return } } if form.Source.Sensitive != nil { - if err := m.db.UpdateOneByID(authed.Account.ID, "locked", *form.Locked, &model.Account{}); err != nil { + if err := m.db.UpdateOneByID(authed.Account.ID, "locked", *form.Locked, >smodel.Account{}); err != nil { c.JSON(http.StatusInternalServerError, gin.H{"error": err.Error()}) return } @@ -156,7 +157,7 @@ func (m *accountModule) accountUpdateCredentialsPATCHHandler(c *gin.Context) { c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()}) return } - if err := m.db.UpdateOneByID(authed.Account.ID, "privacy", *form.Source.Privacy, &model.Account{}); err != nil { + if err := m.db.UpdateOneByID(authed.Account.ID, "privacy", *form.Source.Privacy, >smodel.Account{}); err != nil { c.JSON(http.StatusInternalServerError, gin.H{"error": err.Error()}) return } @@ -168,14 +169,14 @@ func (m *accountModule) accountUpdateCredentialsPATCHHandler(c *gin.Context) { // } // fetch the account with all updated values set - updatedAccount := &model.Account{} + updatedAccount := >smodel.Account{} if err := m.db.GetByID(authed.Account.ID, updatedAccount); err != nil { l.Debugf("could not fetch updated account %s: %s", authed.Account.ID, err) c.JSON(http.StatusInternalServerError, gin.H{"error": err.Error()}) return } - acctSensitive, err := m.db.AccountToMastoSensitive(updatedAccount) + acctSensitive, err := m.mastoConverter.AccountToMastoSensitive(updatedAccount) if err != nil { l.Tracef("could not convert account into mastosensitive account: %s", err) c.JSON(http.StatusInternalServerError, gin.H{"error": err.Error()}) @@ -195,7 +196,7 @@ func (m *accountModule) accountUpdateCredentialsPATCHHandler(c *gin.Context) { // UpdateAccountAvatar does the dirty work of checking the avatar part of an account update form, // parsing and checking the image, and doing the necessary updates in the database for this to become // the account's new avatar image. -func (m *accountModule) UpdateAccountAvatar(avatar *multipart.FileHeader, accountID string) (*model.MediaAttachment, error) { +func (m *accountModule) UpdateAccountAvatar(avatar *multipart.FileHeader, accountID string) (*gtsmodel.MediaAttachment, error) { var err error if int(avatar.Size) > m.config.MediaConfig.MaxImageSize { err = fmt.Errorf("avatar with size %d exceeded max image size of %d bytes", avatar.Size, m.config.MediaConfig.MaxImageSize) @@ -217,7 +218,7 @@ func (m *accountModule) UpdateAccountAvatar(avatar *multipart.FileHeader, accoun } // do the setting - avatarInfo, err := m.mediaHandler.SetHeaderOrAvatarForAccountID(buf.Bytes(), accountID, "avatar") + avatarInfo, err := m.mediaHandler.ProcessHeaderOrAvatar(buf.Bytes(), accountID, media.MediaAvatar) if err != nil { return nil, fmt.Errorf("error processing avatar: %s", err) } @@ -228,7 +229,7 @@ func (m *accountModule) UpdateAccountAvatar(avatar *multipart.FileHeader, accoun // UpdateAccountHeader does the dirty work of checking the header part of an account update form, // parsing and checking the image, and doing the necessary updates in the database for this to become // the account's new header image. -func (m *accountModule) UpdateAccountHeader(header *multipart.FileHeader, accountID string) (*model.MediaAttachment, error) { +func (m *accountModule) UpdateAccountHeader(header *multipart.FileHeader, accountID string) (*gtsmodel.MediaAttachment, error) { var err error if int(header.Size) > m.config.MediaConfig.MaxImageSize { err = fmt.Errorf("header with size %d exceeded max image size of %d bytes", header.Size, m.config.MediaConfig.MaxImageSize) @@ -250,7 +251,7 @@ func (m *accountModule) UpdateAccountHeader(header *multipart.FileHeader, accoun } // do the setting - headerInfo, err := m.mediaHandler.SetHeaderOrAvatarForAccountID(buf.Bytes(), accountID, "header") + headerInfo, err := m.mediaHandler.ProcessHeaderOrAvatar(buf.Bytes(), accountID, media.MediaHeader) if err != nil { return nil, fmt.Errorf("error processing header: %s", err) } diff --git a/internal/apimodule/account/accountupdate_test.go b/internal/apimodule/account/accountupdate_test.go index 651b4d29d..7ca2190d8 100644 --- a/internal/apimodule/account/accountupdate_test.go +++ b/internal/apimodule/account/accountupdate_test.go @@ -39,7 +39,8 @@ import ( "github.com/stretchr/testify/suite" "github.com/superseriousbusiness/gotosocial/internal/config" "github.com/superseriousbusiness/gotosocial/internal/db" - "github.com/superseriousbusiness/gotosocial/internal/db/model" + "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" + "github.com/superseriousbusiness/gotosocial/internal/mastotypes" "github.com/superseriousbusiness/gotosocial/internal/media" "github.com/superseriousbusiness/gotosocial/internal/oauth" "github.com/superseriousbusiness/gotosocial/internal/storage" @@ -52,12 +53,13 @@ type AccountUpdateTestSuite struct { suite.Suite config *config.Config log *logrus.Logger - testAccountLocal *model.Account - testApplication *model.Application + testAccountLocal *gtsmodel.Account + testApplication *gtsmodel.Application testToken oauth2.TokenInfo mockOauthServer *oauth.MockServer mockStorage *storage.MockStorage mediaHandler media.MediaHandler + mastoConverter mastotypes.Converter db db.DB accountModule *accountModule newUserFormHappyPath url.Values @@ -74,13 +76,13 @@ func (suite *AccountUpdateTestSuite) SetupSuite() { log.SetLevel(logrus.TraceLevel) suite.log = log - suite.testAccountLocal = &model.Account{ + suite.testAccountLocal = >smodel.Account{ ID: uuid.NewString(), Username: "test_user", } // can use this test application throughout - suite.testApplication = &model.Application{ + suite.testApplication = >smodel.Application{ ID: "weeweeeeeeeeeeeeee", Name: "a test application", Website: "https://some-application-website.com", @@ -154,8 +156,10 @@ func (suite *AccountUpdateTestSuite) SetupSuite() { // set a media handler because some handlers (eg update credentials) need to upload media (new header/avatar) suite.mediaHandler = media.New(suite.config, suite.db, suite.mockStorage, log) + suite.mastoConverter = mastotypes.New(suite.config, suite.db) + // and finally here's the thing we're actually testing! - suite.accountModule = New(suite.config, suite.db, suite.mockOauthServer, suite.mediaHandler, suite.log).(*accountModule) + suite.accountModule = New(suite.config, suite.db, suite.mockOauthServer, suite.mediaHandler, suite.mastoConverter, suite.log).(*accountModule) } func (suite *AccountUpdateTestSuite) TearDownSuite() { @@ -168,14 +172,14 @@ func (suite *AccountUpdateTestSuite) TearDownSuite() { func (suite *AccountUpdateTestSuite) SetupTest() { // create all the tables we might need in thie suite models := []interface{}{ - &model.User{}, - &model.Account{}, - &model.Follow{}, - &model.FollowRequest{}, - &model.Status{}, - &model.Application{}, - &model.EmailDomainBlock{}, - &model.MediaAttachment{}, + >smodel.User{}, + >smodel.Account{}, + >smodel.Follow{}, + >smodel.FollowRequest{}, + >smodel.Status{}, + >smodel.Application{}, + >smodel.EmailDomainBlock{}, + >smodel.MediaAttachment{}, } for _, m := range models { if err := suite.db.CreateTable(m); err != nil { @@ -206,14 +210,14 @@ func (suite *AccountUpdateTestSuite) TearDownTest() { // remove all the tables we might have used so it's clear for the next test models := []interface{}{ - &model.User{}, - &model.Account{}, - &model.Follow{}, - &model.FollowRequest{}, - &model.Status{}, - &model.Application{}, - &model.EmailDomainBlock{}, - &model.MediaAttachment{}, + >smodel.User{}, + >smodel.Account{}, + >smodel.Follow{}, + >smodel.FollowRequest{}, + >smodel.Status{}, + >smodel.Application{}, + >smodel.EmailDomainBlock{}, + >smodel.MediaAttachment{}, } for _, m := range models { if err := suite.db.DropTable(m); err != nil { diff --git a/internal/apimodule/account/accountverify.go b/internal/apimodule/account/accountverify.go index fe8d24b22..584ab6122 100644 --- a/internal/apimodule/account/accountverify.go +++ b/internal/apimodule/account/accountverify.go @@ -38,7 +38,7 @@ func (m *accountModule) accountVerifyGETHandler(c *gin.Context) { } l.Tracef("retrieved account %+v, converting to mastosensitive...", authed.Account.ID) - acctSensitive, err := m.db.AccountToMastoSensitive(authed.Account) + acctSensitive, err := m.mastoConverter.AccountToMastoSensitive(authed.Account) if err != nil { l.Tracef("could not convert account into mastosensitive account: %s", err) c.JSON(http.StatusInternalServerError, gin.H{"error": err.Error()}) diff --git a/internal/apimodule/admin/admin.go b/internal/apimodule/admin/admin.go new file mode 100644 index 000000000..34a0aa2c8 --- /dev/null +++ b/internal/apimodule/admin/admin.go @@ -0,0 +1,84 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package admin + +import ( + "fmt" + "net/http" + + "github.com/sirupsen/logrus" + "github.com/superseriousbusiness/gotosocial/internal/apimodule" + "github.com/superseriousbusiness/gotosocial/internal/config" + "github.com/superseriousbusiness/gotosocial/internal/db" + "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" + "github.com/superseriousbusiness/gotosocial/internal/mastotypes" + "github.com/superseriousbusiness/gotosocial/internal/media" + "github.com/superseriousbusiness/gotosocial/internal/router" +) + +const ( + basePath = "/api/v1/admin" + emojiPath = basePath + "/custom_emojis" +) + +type adminModule struct { + config *config.Config + db db.DB + mediaHandler media.MediaHandler + mastoConverter mastotypes.Converter + log *logrus.Logger +} + +// New returns a new account module +func New(config *config.Config, db db.DB, mediaHandler media.MediaHandler, mastoConverter mastotypes.Converter, log *logrus.Logger) apimodule.ClientAPIModule { + return &adminModule{ + config: config, + db: db, + mediaHandler: mediaHandler, + mastoConverter: mastoConverter, + log: log, + } +} + +// Route attaches all routes from this module to the given router +func (m *adminModule) Route(r router.Router) error { + r.AttachHandler(http.MethodPost, emojiPath, m.emojiCreatePOSTHandler) + return nil +} + +func (m *adminModule) CreateTables(db db.DB) error { + models := []interface{}{ + >smodel.User{}, + >smodel.Account{}, + >smodel.Follow{}, + >smodel.FollowRequest{}, + >smodel.Status{}, + >smodel.Application{}, + >smodel.EmailDomainBlock{}, + >smodel.MediaAttachment{}, + >smodel.Emoji{}, + } + + for _, m := range models { + if err := db.CreateTable(m); err != nil { + return fmt.Errorf("error creating table: %s", err) + } + } + return nil +} diff --git a/internal/apimodule/admin/emojicreate.go b/internal/apimodule/admin/emojicreate.go new file mode 100644 index 000000000..91457c07c --- /dev/null +++ b/internal/apimodule/admin/emojicreate.go @@ -0,0 +1,130 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package admin + +import ( + "bytes" + "errors" + "fmt" + "io" + "net/http" + + "github.com/gin-gonic/gin" + "github.com/sirupsen/logrus" + mastotypes "github.com/superseriousbusiness/gotosocial/internal/mastotypes/mastomodel" + "github.com/superseriousbusiness/gotosocial/internal/media" + "github.com/superseriousbusiness/gotosocial/internal/oauth" + "github.com/superseriousbusiness/gotosocial/internal/util" +) + +func (m *adminModule) emojiCreatePOSTHandler(c *gin.Context) { + l := m.log.WithFields(logrus.Fields{ + "func": "emojiCreatePOSTHandler", + "request_uri": c.Request.RequestURI, + "user_agent": c.Request.UserAgent(), + "origin_ip": c.ClientIP(), + }) + + // make sure we're authed with an admin account + authed, err := oauth.MustAuth(c, true, true, true, true) // posting a status is serious business so we want *everything* + if err != nil { + l.Debugf("couldn't auth: %s", err) + c.JSON(http.StatusForbidden, gin.H{"error": err.Error()}) + return + } + if !authed.User.Admin { + l.Debugf("user %s not an admin", authed.User.ID) + c.JSON(http.StatusForbidden, gin.H{"error": "not an admin"}) + return + } + + // extract the media create form from the request context + l.Tracef("parsing request form: %+v", c.Request.Form) + form := &mastotypes.EmojiCreateRequest{} + if err := c.ShouldBind(form); err != nil { + l.Debugf("error parsing form %+v: %s", c.Request.Form, err) + c.JSON(http.StatusBadRequest, gin.H{"error": fmt.Sprintf("could not parse form: %s", err)}) + return + } + + // Give the fields on the request form a first pass to make sure the request is superficially valid. + l.Tracef("validating form %+v", form) + if err := validateCreateEmoji(form); err != nil { + l.Debugf("error validating form: %s", err) + c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()}) + return + } + + // open the emoji and extract the bytes from it + f, err := form.Image.Open() + if err != nil { + l.Debugf("error opening emoji: %s", err) + c.JSON(http.StatusBadRequest, gin.H{"error": fmt.Sprintf("could not open provided emoji: %s", err)}) + return + } + buf := new(bytes.Buffer) + size, err := io.Copy(buf, f) + if err != nil { + l.Debugf("error reading emoji: %s", err) + c.JSON(http.StatusBadRequest, gin.H{"error": fmt.Sprintf("could not read provided emoji: %s", err)}) + return + } + if size == 0 { + l.Debug("could not read provided emoji: size 0 bytes") + c.JSON(http.StatusBadRequest, gin.H{"error": "could not read provided emoji: size 0 bytes"}) + return + } + + // allow the mediaHandler to work its magic of processing the emoji bytes, and putting them in whatever storage backend we're using + emoji, err := m.mediaHandler.ProcessLocalEmoji(buf.Bytes(), form.Shortcode) + if err != nil { + l.Debugf("error reading emoji: %s", err) + c.JSON(http.StatusBadRequest, gin.H{"error": fmt.Sprintf("could not process emoji: %s", err)}) + return + } + + mastoEmoji, err := m.mastoConverter.EmojiToMasto(emoji) + if err != nil { + l.Debugf("error converting emoji to mastotype: %s", err) + c.JSON(http.StatusInternalServerError, gin.H{"error": fmt.Sprintf("could not convert emoji: %s", err)}) + return + } + + if err := m.db.Put(emoji); err != nil { + l.Debugf("database error while processing emoji: %s", err) + c.JSON(http.StatusInternalServerError, gin.H{"error": fmt.Sprintf("database error while processing emoji: %s", err)}) + return + } + + c.JSON(http.StatusOK, mastoEmoji) +} + +func validateCreateEmoji(form *mastotypes.EmojiCreateRequest) error { + // check there actually is an image attached and it's not size 0 + if form.Image == nil || form.Image.Size == 0 { + return errors.New("no emoji given") + } + + // a very superficial check to see if the media size limit is exceeded + if form.Image.Size > media.EmojiMaxBytes { + return fmt.Errorf("file size limit exceeded: limit is %d bytes but emoji was %d bytes", media.EmojiMaxBytes, form.Image.Size) + } + + return util.ValidateEmojiShortcode(form.Shortcode) +} diff --git a/internal/apimodule/apimodule.go b/internal/apimodule/apimodule.go index 52275c6df..6d7dbdb83 100644 --- a/internal/apimodule/apimodule.go +++ b/internal/apimodule/apimodule.go @@ -25,8 +25,8 @@ import ( ) // ClientAPIModule represents a chunk of code (usually contained in a single package) that adds a set -// of functionalities and side effects to a router, by mapping routes and handlers onto it--in other words, a REST API ;) -// A ClientAPIMpdule corresponds roughly to one main path of the gotosocial REST api, for example /api/v1/accounts/ or /oauth/ +// of functionalities and/or side effects to a router, by mapping routes and/or middlewares onto it--in other words, a REST API ;) +// A ClientAPIMpdule with routes corresponds roughly to one main path of the gotosocial REST api, for example /api/v1/accounts/ or /oauth/ type ClientAPIModule interface { Route(s router.Router) error CreateTables(db db.DB) error diff --git a/internal/apimodule/app/app.go b/internal/apimodule/app/app.go index 534f4cd3e..08292acd1 100644 --- a/internal/apimodule/app/app.go +++ b/internal/apimodule/app/app.go @@ -25,7 +25,8 @@ import ( "github.com/sirupsen/logrus" "github.com/superseriousbusiness/gotosocial/internal/apimodule" "github.com/superseriousbusiness/gotosocial/internal/db" - "github.com/superseriousbusiness/gotosocial/internal/db/model" + "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" + "github.com/superseriousbusiness/gotosocial/internal/mastotypes" "github.com/superseriousbusiness/gotosocial/internal/oauth" "github.com/superseriousbusiness/gotosocial/internal/router" ) @@ -33,17 +34,19 @@ import ( const appsPath = "/api/v1/apps" type appModule struct { - server oauth.Server - db db.DB - log *logrus.Logger + server oauth.Server + db db.DB + mastoConverter mastotypes.Converter + log *logrus.Logger } // New returns a new auth module -func New(srv oauth.Server, db db.DB, log *logrus.Logger) apimodule.ClientAPIModule { +func New(srv oauth.Server, db db.DB, mastoConverter mastotypes.Converter, log *logrus.Logger) apimodule.ClientAPIModule { return &appModule{ - server: srv, - db: db, - log: log, + server: srv, + db: db, + mastoConverter: mastoConverter, + log: log, } } @@ -57,9 +60,9 @@ func (m *appModule) CreateTables(db db.DB) error { models := []interface{}{ &oauth.Client{}, &oauth.Token{}, - &model.User{}, - &model.Account{}, - &model.Application{}, + >smodel.User{}, + >smodel.Account{}, + >smodel.Application{}, } for _, m := range models { diff --git a/internal/apimodule/app/appcreate.go b/internal/apimodule/app/appcreate.go index cd5aff701..ec52a9d37 100644 --- a/internal/apimodule/app/appcreate.go +++ b/internal/apimodule/app/appcreate.go @@ -24,9 +24,9 @@ import ( "github.com/gin-gonic/gin" "github.com/google/uuid" - "github.com/superseriousbusiness/gotosocial/internal/db/model" + "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" + mastotypes "github.com/superseriousbusiness/gotosocial/internal/mastotypes/mastomodel" "github.com/superseriousbusiness/gotosocial/internal/oauth" - "github.com/superseriousbusiness/gotosocial/pkg/mastotypes" ) // appsPOSTHandler should be served at https://example.org/api/v1/apps @@ -78,7 +78,7 @@ func (m *appModule) appsPOSTHandler(c *gin.Context) { vapidKey := uuid.NewString() // generate the application to put in the database - app := &model.Application{ + app := >smodel.Application{ Name: form.ClientName, Website: form.Website, RedirectURI: form.RedirectURIs, @@ -108,6 +108,12 @@ func (m *appModule) appsPOSTHandler(c *gin.Context) { return } + mastoApp, err := m.mastoConverter.AppToMastoSensitive(app) + if err != nil { + c.JSON(http.StatusInternalServerError, gin.H{"error": err.Error()}) + return + } + // done, return the new app information per the spec here: https://docs.joinmastodon.org/methods/apps/ - c.JSON(http.StatusOK, app.ToMasto()) + c.JSON(http.StatusOK, mastoApp) } diff --git a/internal/apimodule/auth/auth.go b/internal/apimodule/auth/auth.go index 3a85a4364..b70adeb43 100644 --- a/internal/apimodule/auth/auth.go +++ b/internal/apimodule/auth/auth.go @@ -31,7 +31,7 @@ import ( "github.com/sirupsen/logrus" "github.com/superseriousbusiness/gotosocial/internal/apimodule" "github.com/superseriousbusiness/gotosocial/internal/db" - "github.com/superseriousbusiness/gotosocial/internal/db/model" + "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" "github.com/superseriousbusiness/gotosocial/internal/oauth" "github.com/superseriousbusiness/gotosocial/internal/router" ) @@ -75,9 +75,9 @@ func (m *authModule) CreateTables(db db.DB) error { models := []interface{}{ &oauth.Client{}, &oauth.Token{}, - &model.User{}, - &model.Account{}, - &model.Application{}, + >smodel.User{}, + >smodel.Account{}, + >smodel.Application{}, } for _, m := range models { diff --git a/internal/apimodule/auth/auth_test.go b/internal/apimodule/auth/auth_test.go index 0ec9b4a41..2c272e985 100644 --- a/internal/apimodule/auth/auth_test.go +++ b/internal/apimodule/auth/auth_test.go @@ -22,16 +22,14 @@ import ( "context" "fmt" "testing" - "time" "github.com/google/uuid" "github.com/sirupsen/logrus" "github.com/stretchr/testify/suite" "github.com/superseriousbusiness/gotosocial/internal/config" "github.com/superseriousbusiness/gotosocial/internal/db" - "github.com/superseriousbusiness/gotosocial/internal/db/model" + "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" "github.com/superseriousbusiness/gotosocial/internal/oauth" - "github.com/superseriousbusiness/gotosocial/internal/router" "golang.org/x/crypto/bcrypt" ) @@ -39,9 +37,9 @@ type AuthTestSuite struct { suite.Suite oauthServer oauth.Server db db.DB - testAccount *model.Account - testApplication *model.Application - testUser *model.User + testAccount *gtsmodel.Account + testApplication *gtsmodel.Application + testUser *gtsmodel.User testClient *oauth.Client config *config.Config } @@ -75,11 +73,11 @@ func (suite *AuthTestSuite) SetupSuite() { acctID := uuid.NewString() - suite.testAccount = &model.Account{ + suite.testAccount = >smodel.Account{ ID: acctID, Username: "test_user", } - suite.testUser = &model.User{ + suite.testUser = >smodel.User{ EncryptedPassword: string(encryptedPassword), Email: "user@example.org", AccountID: acctID, @@ -89,7 +87,7 @@ func (suite *AuthTestSuite) SetupSuite() { Secret: "some-secret", Domain: fmt.Sprintf("%s://%s", c.Protocol, c.Host), } - suite.testApplication = &model.Application{ + suite.testApplication = >smodel.Application{ Name: "a test application", Website: "https://some-application-website.com", RedirectURI: "http://localhost:8080", @@ -115,9 +113,9 @@ func (suite *AuthTestSuite) SetupTest() { models := []interface{}{ &oauth.Client{}, &oauth.Token{}, - &model.User{}, - &model.Account{}, - &model.Application{}, + >smodel.User{}, + >smodel.Account{}, + >smodel.Application{}, } for _, m := range models { @@ -148,9 +146,9 @@ func (suite *AuthTestSuite) TearDownTest() { models := []interface{}{ &oauth.Client{}, &oauth.Token{}, - &model.User{}, - &model.Account{}, - &model.Application{}, + >smodel.User{}, + >smodel.Account{}, + >smodel.Application{}, } for _, m := range models { if err := suite.db.DropTable(m); err != nil { @@ -163,27 +161,6 @@ func (suite *AuthTestSuite) TearDownTest() { suite.db = nil } -func (suite *AuthTestSuite) TestAPIInitialize() { - log := logrus.New() - log.SetLevel(logrus.TraceLevel) - - r, err := router.New(suite.config, log) - if err != nil { - suite.FailNow(fmt.Sprintf("error mapping routes onto router: %s", err)) - } - - api := New(suite.oauthServer, suite.db, log) - if err := api.Route(r); err != nil { - suite.FailNow(fmt.Sprintf("error mapping routes onto router: %s", err)) - } - - r.Start() - time.Sleep(60 * time.Second) - if err := r.Stop(context.Background()); err != nil { - suite.FailNow(fmt.Sprintf("error stopping router: %s", err)) - } -} - func TestAuthTestSuite(t *testing.T) { suite.Run(t, new(AuthTestSuite)) } diff --git a/internal/apimodule/auth/authorize.go b/internal/apimodule/auth/authorize.go index 4a27cc20e..bf525e09e 100644 --- a/internal/apimodule/auth/authorize.go +++ b/internal/apimodule/auth/authorize.go @@ -27,8 +27,8 @@ import ( "github.com/gin-contrib/sessions" "github.com/gin-gonic/gin" "github.com/sirupsen/logrus" - "github.com/superseriousbusiness/gotosocial/internal/db/model" - "github.com/superseriousbusiness/gotosocial/pkg/mastotypes" + "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" + "github.com/superseriousbusiness/gotosocial/internal/mastotypes/mastomodel" ) // authorizeGETHandler should be served as GET at https://example.org/oauth/authorize @@ -57,7 +57,7 @@ func (m *authModule) authorizeGETHandler(c *gin.Context) { c.JSON(http.StatusInternalServerError, gin.H{"error": "no client_id found in session"}) return } - app := &model.Application{ + app := >smodel.Application{ ClientID: clientID, } if err := m.db.GetWhere("client_id", app.ClientID, app); err != nil { @@ -66,7 +66,7 @@ func (m *authModule) authorizeGETHandler(c *gin.Context) { } // we can also use the userid of the user to fetch their username from the db to greet them nicely <3 - user := &model.User{ + user := >smodel.User{ ID: userID, } if err := m.db.GetByID(user.ID, user); err != nil { @@ -74,7 +74,7 @@ func (m *authModule) authorizeGETHandler(c *gin.Context) { return } - acct := &model.Account{ + acct := >smodel.Account{ ID: user.AccountID, } diff --git a/internal/apimodule/auth/middleware.go b/internal/apimodule/auth/middleware.go index 32fc24d52..4ca1f47a2 100644 --- a/internal/apimodule/auth/middleware.go +++ b/internal/apimodule/auth/middleware.go @@ -20,7 +20,7 @@ package auth import ( "github.com/gin-gonic/gin" - "github.com/superseriousbusiness/gotosocial/internal/db/model" + "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" "github.com/superseriousbusiness/gotosocial/internal/oauth" ) @@ -46,7 +46,7 @@ func (m *authModule) oauthTokenMiddleware(c *gin.Context) { l.Tracef("authenticated user %s with bearer token, scope is %s", uid, ti.GetScope()) // fetch user's and account for this user id - user := &model.User{} + user := >smodel.User{} if err := m.db.GetByID(uid, user); err != nil || user == nil { l.Warnf("no user found for validated uid %s", uid) return @@ -54,7 +54,7 @@ func (m *authModule) oauthTokenMiddleware(c *gin.Context) { c.Set(oauth.SessionAuthorizedUser, user) l.Tracef("set gin context %s to %+v", oauth.SessionAuthorizedUser, user) - acct := &model.Account{} + acct := >smodel.Account{} if err := m.db.GetByID(user.AccountID, acct); err != nil || acct == nil { l.Warnf("no account found for validated user %s", uid) return @@ -66,7 +66,7 @@ func (m *authModule) oauthTokenMiddleware(c *gin.Context) { // check for application token if cid := ti.GetClientID(); cid != "" { l.Tracef("authenticated client %s with bearer token, scope is %s", cid, ti.GetScope()) - app := &model.Application{} + app := >smodel.Application{} if err := m.db.GetWhere("client_id", cid, app); err != nil { l.Tracef("no app found for client %s", cid) } diff --git a/internal/apimodule/auth/signin.go b/internal/apimodule/auth/signin.go index 34146cbfc..a6994c90e 100644 --- a/internal/apimodule/auth/signin.go +++ b/internal/apimodule/auth/signin.go @@ -24,7 +24,7 @@ import ( "github.com/gin-contrib/sessions" "github.com/gin-gonic/gin" - "github.com/superseriousbusiness/gotosocial/internal/db/model" + "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" "golang.org/x/crypto/bcrypt" ) @@ -84,7 +84,7 @@ func (m *authModule) validatePassword(email string, password string) (userid str } // first we select the user from the database based on email address, bail if no user found for that email - gtsUser := &model.User{} + gtsUser := >smodel.User{} if err := m.db.GetWhere("email", email, gtsUser); err != nil { l.Debugf("user %s was not retrievable from db during oauth authorization attempt: %s", email, err) diff --git a/internal/apimodule/fileserver/fileserver.go b/internal/apimodule/fileserver/fileserver.go index bbafff76f..25f3be864 100644 --- a/internal/apimodule/fileserver/fileserver.go +++ b/internal/apimodule/fileserver/fileserver.go @@ -1,20 +1,48 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + package fileserver import ( "fmt" + "net/http" "github.com/sirupsen/logrus" "github.com/superseriousbusiness/gotosocial/internal/apimodule" "github.com/superseriousbusiness/gotosocial/internal/config" "github.com/superseriousbusiness/gotosocial/internal/db" - "github.com/superseriousbusiness/gotosocial/internal/db/model" + "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" "github.com/superseriousbusiness/gotosocial/internal/router" "github.com/superseriousbusiness/gotosocial/internal/storage" ) -// fileServer implements the RESTAPIModule interface. +const ( + AccountIDKey = "account_id" + MediaTypeKey = "media_type" + MediaSizeKey = "media_size" + FileNameKey = "file_name" + + FilesPath = "files" +) + +// FileServer implements the RESTAPIModule interface. // The goal here is to serve requested media files if the gotosocial server is configured to use local storage. -type fileServer struct { +type FileServer struct { config *config.Config db db.DB storage storage.Storage @@ -24,34 +52,24 @@ type fileServer struct { // New returns a new fileServer module func New(config *config.Config, db db.DB, storage storage.Storage, log *logrus.Logger) apimodule.ClientAPIModule { - - storageBase := config.StorageConfig.BasePath // TODO: do this properly - - return &fileServer{ + return &FileServer{ config: config, db: db, storage: storage, log: log, - storageBase: storageBase, + storageBase: config.StorageConfig.ServeBasePath, } } // Route satisfies the RESTAPIModule interface -func (m *fileServer) Route(s router.Router) error { - // s.AttachHandler(http.MethodPost, appsPath, m.appsPOSTHandler) +func (m *FileServer) Route(s router.Router) error { + s.AttachHandler(http.MethodGet, fmt.Sprintf("%s/:%s/:%s/:%s/:%s", m.storageBase, AccountIDKey, MediaTypeKey, MediaSizeKey, FileNameKey), m.ServeFile) return nil } -func (m *fileServer) CreateTables(db db.DB) error { +func (m *FileServer) CreateTables(db db.DB) error { models := []interface{}{ - &model.User{}, - &model.Account{}, - &model.Follow{}, - &model.FollowRequest{}, - &model.Status{}, - &model.Application{}, - &model.EmailDomainBlock{}, - &model.MediaAttachment{}, + >smodel.MediaAttachment{}, } for _, m := range models { diff --git a/internal/apimodule/fileserver/servefile.go b/internal/apimodule/fileserver/servefile.go new file mode 100644 index 000000000..0421c5095 --- /dev/null +++ b/internal/apimodule/fileserver/servefile.go @@ -0,0 +1,243 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package fileserver + +import ( + "bytes" + "net/http" + "strings" + + "github.com/gin-gonic/gin" + "github.com/sirupsen/logrus" + "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" + "github.com/superseriousbusiness/gotosocial/internal/media" +) + +// ServeFile is for serving attachments, headers, and avatars to the requester from instance storage. +// +// Note: to mitigate scraping attempts, no information should be given out on a bad request except "404 page not found". +// Don't give away account ids or media ids or anything like that; callers shouldn't be able to infer anything. +func (m *FileServer) ServeFile(c *gin.Context) { + l := m.log.WithFields(logrus.Fields{ + "func": "ServeFile", + "request_uri": c.Request.RequestURI, + "user_agent": c.Request.UserAgent(), + "origin_ip": c.ClientIP(), + }) + l.Trace("received request") + + // We use request params to check what to pull out of the database/storage so check everything. A request URL should be formatted as follows: + // "https://example.org/fileserver/[ACCOUNT_ID]/[MEDIA_TYPE]/[MEDIA_SIZE]/[FILE_NAME]" + // "FILE_NAME" consists of two parts, the attachment's database id, a period, and the file extension. + accountID := c.Param(AccountIDKey) + if accountID == "" { + l.Debug("missing accountID from request") + c.String(http.StatusNotFound, "404 page not found") + return + } + + mediaType := c.Param(MediaTypeKey) + if mediaType == "" { + l.Debug("missing mediaType from request") + c.String(http.StatusNotFound, "404 page not found") + return + } + + mediaSize := c.Param(MediaSizeKey) + if mediaSize == "" { + l.Debug("missing mediaSize from request") + c.String(http.StatusNotFound, "404 page not found") + return + } + + fileName := c.Param(FileNameKey) + if fileName == "" { + l.Debug("missing fileName from request") + c.String(http.StatusNotFound, "404 page not found") + return + } + + // Only serve media types that are defined in our internal media module + switch mediaType { + case media.MediaHeader, media.MediaAvatar, media.MediaAttachment: + m.serveAttachment(c, accountID, mediaType, mediaSize, fileName) + return + case media.MediaEmoji: + m.serveEmoji(c, accountID, mediaType, mediaSize, fileName) + return + } + l.Debugf("mediatype %s not recognized", mediaType) + c.String(http.StatusNotFound, "404 page not found") +} + +func (m *FileServer) serveAttachment(c *gin.Context, accountID string, mediaType string, mediaSize string, fileName string) { + l := m.log.WithFields(logrus.Fields{ + "func": "serveAttachment", + "request_uri": c.Request.RequestURI, + "user_agent": c.Request.UserAgent(), + "origin_ip": c.ClientIP(), + }) + + // This corresponds to original-sized image as it was uploaded, small (which is the thumbnail), or static + switch mediaSize { + case media.MediaOriginal, media.MediaSmall, media.MediaStatic: + default: + l.Debugf("mediasize %s not recognized", mediaSize) + c.String(http.StatusNotFound, "404 page not found") + return + } + + // derive the media id and the file extension from the last part of the request + spl := strings.Split(fileName, ".") + if len(spl) != 2 { + l.Debugf("filename %s not parseable", fileName) + c.String(http.StatusNotFound, "404 page not found") + return + } + wantedMediaID := spl[0] + fileExtension := spl[1] + if wantedMediaID == "" || fileExtension == "" { + l.Debugf("filename %s not parseable", fileName) + c.String(http.StatusNotFound, "404 page not found") + return + } + + // now we know the attachment ID that the caller is asking for we can use it to pull the attachment out of the db + attachment := >smodel.MediaAttachment{} + if err := m.db.GetByID(wantedMediaID, attachment); err != nil { + l.Debugf("attachment with id %s not retrievable: %s", wantedMediaID, err) + c.String(http.StatusNotFound, "404 page not found") + return + } + + // make sure the given account id owns the requested attachment + if accountID != attachment.AccountID { + l.Debugf("account %s does not own attachment with id %s", accountID, wantedMediaID) + c.String(http.StatusNotFound, "404 page not found") + return + } + + // now we can start preparing the response depending on whether we're serving a thumbnail or a larger attachment + var storagePath string + var contentType string + var contentLength int + switch mediaSize { + case media.MediaOriginal: + storagePath = attachment.File.Path + contentType = attachment.File.ContentType + contentLength = attachment.File.FileSize + case media.MediaSmall: + storagePath = attachment.Thumbnail.Path + contentType = attachment.Thumbnail.ContentType + contentLength = attachment.Thumbnail.FileSize + } + + // use the path listed on the attachment we pulled out of the database to retrieve the object from storage + attachmentBytes, err := m.storage.RetrieveFileFrom(storagePath) + if err != nil { + l.Debugf("error retrieving from storage: %s", err) + c.String(http.StatusNotFound, "404 page not found") + return + } + + l.Errorf("about to serve content length: %d attachment bytes is: %d", int64(contentLength), int64(len(attachmentBytes))) + + // finally we can return with all the information we derived above + c.DataFromReader(http.StatusOK, int64(contentLength), contentType, bytes.NewReader(attachmentBytes), map[string]string{}) +} + +func (m *FileServer) serveEmoji(c *gin.Context, accountID string, mediaType string, mediaSize string, fileName string) { + l := m.log.WithFields(logrus.Fields{ + "func": "serveEmoji", + "request_uri": c.Request.RequestURI, + "user_agent": c.Request.UserAgent(), + "origin_ip": c.ClientIP(), + }) + + // This corresponds to original-sized emoji as it was uploaded, or static + switch mediaSize { + case media.MediaOriginal, media.MediaStatic: + default: + l.Debugf("mediasize %s not recognized", mediaSize) + c.String(http.StatusNotFound, "404 page not found") + return + } + + // derive the media id and the file extension from the last part of the request + spl := strings.Split(fileName, ".") + if len(spl) != 2 { + l.Debugf("filename %s not parseable", fileName) + c.String(http.StatusNotFound, "404 page not found") + return + } + wantedEmojiID := spl[0] + fileExtension := spl[1] + if wantedEmojiID == "" || fileExtension == "" { + l.Debugf("filename %s not parseable", fileName) + c.String(http.StatusNotFound, "404 page not found") + return + } + + // now we know the attachment ID that the caller is asking for we can use it to pull the attachment out of the db + emoji := >smodel.Emoji{} + if err := m.db.GetByID(wantedEmojiID, emoji); err != nil { + l.Debugf("emoji with id %s not retrievable: %s", wantedEmojiID, err) + c.String(http.StatusNotFound, "404 page not found") + return + } + + // make sure the instance account id owns the requested emoji + instanceAccount := >smodel.Account{} + if err := m.db.GetWhere("username", m.config.Host, instanceAccount); err != nil { + l.Debugf("error fetching instance account: %s", err) + c.String(http.StatusNotFound, "404 page not found") + return + } + if accountID != instanceAccount.ID { + l.Debugf("account %s does not own emoji with id %s", accountID, wantedEmojiID) + c.String(http.StatusNotFound, "404 page not found") + return + } + + // now we can start preparing the response depending on whether we're serving a thumbnail or a larger attachment + var storagePath string + var contentType string + var contentLength int + switch mediaSize { + case media.MediaOriginal: + storagePath = emoji.ImagePath + contentType = emoji.ImageContentType + contentLength = emoji.ImageFileSize + case media.MediaStatic: + storagePath = emoji.ImageStaticPath + contentType = "image/png" + contentLength = emoji.ImageStaticFileSize + } + + // use the path listed on the emoji we pulled out of the database to retrieve the object from storage + emojiBytes, err := m.storage.RetrieveFileFrom(storagePath) + if err != nil { + l.Debugf("error retrieving emoji from storage: %s", err) + c.String(http.StatusNotFound, "404 page not found") + return + } + + // finally we can return with all the information we derived above + c.DataFromReader(http.StatusOK, int64(contentLength), contentType, bytes.NewReader(emojiBytes), map[string]string{}) +} diff --git a/internal/apimodule/fileserver/test/servefile_test.go b/internal/apimodule/fileserver/test/servefile_test.go new file mode 100644 index 000000000..8af2b40b3 --- /dev/null +++ b/internal/apimodule/fileserver/test/servefile_test.go @@ -0,0 +1,157 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package test + +import ( + "context" + "fmt" + "io/ioutil" + "net/http" + "net/http/httptest" + "testing" + + "github.com/gin-gonic/gin" + "github.com/sirupsen/logrus" + "github.com/stretchr/testify/assert" + "github.com/stretchr/testify/suite" + "github.com/superseriousbusiness/gotosocial/internal/apimodule/fileserver" + "github.com/superseriousbusiness/gotosocial/internal/config" + "github.com/superseriousbusiness/gotosocial/internal/db" + "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" + "github.com/superseriousbusiness/gotosocial/internal/mastotypes" + "github.com/superseriousbusiness/gotosocial/internal/media" + "github.com/superseriousbusiness/gotosocial/internal/oauth" + "github.com/superseriousbusiness/gotosocial/internal/storage" + "github.com/superseriousbusiness/gotosocial/testrig" +) + +type ServeFileTestSuite struct { + // standard suite interfaces + suite.Suite + config *config.Config + db db.DB + log *logrus.Logger + storage storage.Storage + mastoConverter mastotypes.Converter + mediaHandler media.MediaHandler + oauthServer oauth.Server + + // standard suite models + testTokens map[string]*oauth.Token + testClients map[string]*oauth.Client + testApplications map[string]*gtsmodel.Application + testUsers map[string]*gtsmodel.User + testAccounts map[string]*gtsmodel.Account + testAttachments map[string]*gtsmodel.MediaAttachment + + // item being tested + fileServer *fileserver.FileServer +} + +/* + TEST INFRASTRUCTURE +*/ + +func (suite *ServeFileTestSuite) SetupSuite() { + // setup standard items + suite.config = testrig.NewTestConfig() + suite.db = testrig.NewTestDB() + suite.log = testrig.NewTestLog() + suite.storage = testrig.NewTestStorage() + suite.mastoConverter = testrig.NewTestMastoConverter(suite.db) + suite.mediaHandler = testrig.NewTestMediaHandler(suite.db, suite.storage) + suite.oauthServer = testrig.NewTestOauthServer(suite.db) + + // setup module being tested + suite.fileServer = fileserver.New(suite.config, suite.db, suite.storage, suite.log).(*fileserver.FileServer) +} + +func (suite *ServeFileTestSuite) TearDownSuite() { + if err := suite.db.Stop(context.Background()); err != nil { + logrus.Panicf("error closing db connection: %s", err) + } +} + +func (suite *ServeFileTestSuite) SetupTest() { + testrig.StandardDBSetup(suite.db) + testrig.StandardStorageSetup(suite.storage, "../../../../testrig/media") + suite.testTokens = testrig.NewTestTokens() + suite.testClients = testrig.NewTestClients() + suite.testApplications = testrig.NewTestApplications() + suite.testUsers = testrig.NewTestUsers() + suite.testAccounts = testrig.NewTestAccounts() + suite.testAttachments = testrig.NewTestAttachments() +} + +func (suite *ServeFileTestSuite) TearDownTest() { + testrig.StandardDBTeardown(suite.db) + testrig.StandardStorageTeardown(suite.storage) +} + +/* + ACTUAL TESTS +*/ + +func (suite *ServeFileTestSuite) TestServeOriginalFileSuccessful() { + targetAttachment, ok := suite.testAttachments["admin_account_status_1_attachment_1"] + assert.True(suite.T(), ok) + assert.NotNil(suite.T(), targetAttachment) + + recorder := httptest.NewRecorder() + ctx, _ := gin.CreateTestContext(recorder) + ctx.Request = httptest.NewRequest(http.MethodGet, targetAttachment.URL, nil) + + // normally the router would populate these params from the path values, + // but because we're calling the ServeFile function directly, we need to set them manually. + ctx.Params = gin.Params{ + gin.Param{ + Key: fileserver.AccountIDKey, + Value: targetAttachment.AccountID, + }, + gin.Param{ + Key: fileserver.MediaTypeKey, + Value: media.MediaAttachment, + }, + gin.Param{ + Key: fileserver.MediaSizeKey, + Value: media.MediaOriginal, + }, + gin.Param{ + Key: fileserver.FileNameKey, + Value: fmt.Sprintf("%s.jpeg", targetAttachment.ID), + }, + } + + // call the function we're testing and check status code + suite.fileServer.ServeFile(ctx) + suite.EqualValues(http.StatusOK, recorder.Code) + + b, err := ioutil.ReadAll(recorder.Body) + assert.NoError(suite.T(), err) + assert.NotNil(suite.T(), b) + + fileInStorage, err := suite.storage.RetrieveFileFrom(targetAttachment.File.Path) + assert.NoError(suite.T(), err) + assert.NotNil(suite.T(), fileInStorage) + assert.Equal(suite.T(), b, fileInStorage) +} + +func TestServeFileTestSuite(t *testing.T) { + suite.Run(t, new(ServeFileTestSuite)) +} diff --git a/internal/apimodule/media/media.go b/internal/apimodule/media/media.go new file mode 100644 index 000000000..c8d3d7425 --- /dev/null +++ b/internal/apimodule/media/media.go @@ -0,0 +1,73 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package media + +import ( + "fmt" + "net/http" + + "github.com/sirupsen/logrus" + "github.com/superseriousbusiness/gotosocial/internal/apimodule" + "github.com/superseriousbusiness/gotosocial/internal/config" + "github.com/superseriousbusiness/gotosocial/internal/db" + "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" + "github.com/superseriousbusiness/gotosocial/internal/mastotypes" + "github.com/superseriousbusiness/gotosocial/internal/media" + "github.com/superseriousbusiness/gotosocial/internal/router" +) + +const BasePath = "/api/v1/media" + +type MediaModule struct { + mediaHandler media.MediaHandler + config *config.Config + db db.DB + mastoConverter mastotypes.Converter + log *logrus.Logger +} + +// New returns a new auth module +func New(db db.DB, mediaHandler media.MediaHandler, mastoConverter mastotypes.Converter, config *config.Config, log *logrus.Logger) apimodule.ClientAPIModule { + return &MediaModule{ + mediaHandler: mediaHandler, + config: config, + db: db, + mastoConverter: mastoConverter, + log: log, + } +} + +// Route satisfies the RESTAPIModule interface +func (m *MediaModule) Route(s router.Router) error { + s.AttachHandler(http.MethodPost, BasePath, m.MediaCreatePOSTHandler) + return nil +} + +func (m *MediaModule) CreateTables(db db.DB) error { + models := []interface{}{ + >smodel.MediaAttachment{}, + } + + for _, m := range models { + if err := db.CreateTable(m); err != nil { + return fmt.Errorf("error creating table: %s", err) + } + } + return nil +} diff --git a/internal/apimodule/media/mediacreate.go b/internal/apimodule/media/mediacreate.go new file mode 100644 index 000000000..06b6d5be6 --- /dev/null +++ b/internal/apimodule/media/mediacreate.go @@ -0,0 +1,192 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package media + +import ( + "bytes" + "errors" + "fmt" + "io" + "net/http" + "strconv" + "strings" + + "github.com/gin-gonic/gin" + "github.com/superseriousbusiness/gotosocial/internal/config" + mastotypes "github.com/superseriousbusiness/gotosocial/internal/mastotypes/mastomodel" + "github.com/superseriousbusiness/gotosocial/internal/oauth" +) + +func (m *MediaModule) MediaCreatePOSTHandler(c *gin.Context) { + l := m.log.WithField("func", "statusCreatePOSTHandler") + authed, err := oauth.MustAuth(c, true, true, true, true) // posting new media is serious business so we want *everything* + if err != nil { + l.Debugf("couldn't auth: %s", err) + c.JSON(http.StatusForbidden, gin.H{"error": err.Error()}) + return + } + + // First check this user/account is permitted to create media + // There's no point continuing otherwise. + if authed.User.Disabled || !authed.User.Approved || !authed.Account.SuspendedAt.IsZero() { + l.Debugf("couldn't auth: %s", err) + c.JSON(http.StatusForbidden, gin.H{"error": "account is disabled, not yet approved, or suspended"}) + return + } + + // extract the media create form from the request context + l.Tracef("parsing request form: %s", c.Request.Form) + form := &mastotypes.AttachmentRequest{} + if err := c.ShouldBind(form); err != nil || form == nil { + l.Debugf("could not parse form from request: %s", err) + c.JSON(http.StatusBadRequest, gin.H{"error": "missing one or more required form values"}) + return + } + + // Give the fields on the request form a first pass to make sure the request is superficially valid. + l.Tracef("validating form %+v", form) + if err := validateCreateMedia(form, m.config.MediaConfig); err != nil { + l.Debugf("error validating form: %s", err) + c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()}) + return + } + + // open the attachment and extract the bytes from it + f, err := form.File.Open() + if err != nil { + l.Debugf("error opening attachment: %s", err) + c.JSON(http.StatusBadRequest, gin.H{"error": fmt.Sprintf("could not open provided attachment: %s", err)}) + return + } + buf := new(bytes.Buffer) + size, err := io.Copy(buf, f) + if err != nil { + l.Debugf("error reading attachment: %s", err) + c.JSON(http.StatusBadRequest, gin.H{"error": fmt.Sprintf("could not read provided attachment: %s", err)}) + return + } + if size == 0 { + l.Debug("could not read provided attachment: size 0 bytes") + c.JSON(http.StatusBadRequest, gin.H{"error": "could not read provided attachment: size 0 bytes"}) + return + } + + // allow the mediaHandler to work its magic of processing the attachment bytes, and putting them in whatever storage backend we're using + attachment, err := m.mediaHandler.ProcessLocalAttachment(buf.Bytes(), authed.Account.ID) + if err != nil { + l.Debugf("error reading attachment: %s", err) + c.JSON(http.StatusBadRequest, gin.H{"error": fmt.Sprintf("could not process attachment: %s", err)}) + return + } + + // now we need to add extra fields that the attachment processor doesn't know (from the form) + // TODO: handle this inside mediaHandler.ProcessAttachment (just pass more params to it) + + // first description + attachment.Description = form.Description + + // now parse the focus parameter + // TODO: tidy this up into a separate function and just return an error so all the c.JSON and return calls are obviated + var focusx, focusy float32 + if form.Focus != "" { + spl := strings.Split(form.Focus, ",") + if len(spl) != 2 { + l.Debugf("improperly formatted focus %s", form.Focus) + c.JSON(http.StatusBadRequest, gin.H{"error": fmt.Sprintf("improperly formatted focus %s", form.Focus)}) + return + } + xStr := spl[0] + yStr := spl[1] + if xStr == "" || yStr == "" { + l.Debugf("improperly formatted focus %s", form.Focus) + c.JSON(http.StatusBadRequest, gin.H{"error": fmt.Sprintf("improperly formatted focus %s", form.Focus)}) + return + } + fx, err := strconv.ParseFloat(xStr, 32) + if err != nil { + l.Debugf("improperly formatted focus %s: %s", form.Focus, err) + c.JSON(http.StatusBadRequest, gin.H{"error": fmt.Sprintf("improperly formatted focus %s", form.Focus)}) + return + } + if fx > 1 || fx < -1 { + l.Debugf("improperly formatted focus %s", form.Focus) + c.JSON(http.StatusBadRequest, gin.H{"error": fmt.Sprintf("improperly formatted focus %s", form.Focus)}) + return + } + focusx = float32(fx) + fy, err := strconv.ParseFloat(yStr, 32) + if err != nil { + l.Debugf("improperly formatted focus %s: %s", form.Focus, err) + c.JSON(http.StatusBadRequest, gin.H{"error": fmt.Sprintf("improperly formatted focus %s", form.Focus)}) + return + } + if fy > 1 || fy < -1 { + l.Debugf("improperly formatted focus %s", form.Focus) + c.JSON(http.StatusBadRequest, gin.H{"error": fmt.Sprintf("improperly formatted focus %s", form.Focus)}) + return + } + focusy = float32(fy) + } + attachment.FileMeta.Focus.X = focusx + attachment.FileMeta.Focus.Y = focusy + + // prepare the frontend representation now -- if there are any errors here at least we can bail without + // having already put something in the database and then having to clean it up again (eugh) + mastoAttachment, err := m.mastoConverter.AttachmentToMasto(attachment) + if err != nil { + l.Debugf("error parsing media attachment to frontend type: %s", err) + c.JSON(http.StatusInternalServerError, gin.H{"error": fmt.Sprintf("error parsing media attachment to frontend type: %s", err)}) + return + } + + // now we can confidently put the attachment in the database + if err := m.db.Put(attachment); err != nil { + l.Debugf("error storing media attachment in db: %s", err) + c.JSON(http.StatusInternalServerError, gin.H{"error": fmt.Sprintf("error storing media attachment in db: %s", err)}) + return + } + + // and return its frontend representation + c.JSON(http.StatusAccepted, mastoAttachment) +} + +func validateCreateMedia(form *mastotypes.AttachmentRequest, config *config.MediaConfig) error { + // check there actually is a file attached and it's not size 0 + if form.File == nil || form.File.Size == 0 { + return errors.New("no attachment given") + } + + // a very superficial check to see if no size limits are exceeded + // we still don't actually know which media types we're dealing with but the other handlers will go into more detail there + maxSize := config.MaxVideoSize + if config.MaxImageSize > maxSize { + maxSize = config.MaxImageSize + } + if form.File.Size > int64(maxSize) { + return fmt.Errorf("file size limit exceeded: limit is %d bytes but attachment was %d bytes", maxSize, form.File.Size) + } + + if len(form.Description) < config.MinDescriptionChars || len(form.Description) > config.MaxDescriptionChars { + return fmt.Errorf("image description length must be between %d and %d characters (inclusive), but provided image description was %d chars", config.MinDescriptionChars, config.MaxDescriptionChars, len(form.Description)) + } + + // TODO: validate focus here + + return nil +} diff --git a/internal/apimodule/media/test/mediacreate_test.go b/internal/apimodule/media/test/mediacreate_test.go new file mode 100644 index 000000000..01a0a6a31 --- /dev/null +++ b/internal/apimodule/media/test/mediacreate_test.go @@ -0,0 +1,194 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package test + +import ( + "bytes" + "context" + "encoding/json" + "fmt" + "io/ioutil" + "net/http" + "net/http/httptest" + "testing" + + "github.com/gin-gonic/gin" + "github.com/sirupsen/logrus" + "github.com/stretchr/testify/assert" + "github.com/stretchr/testify/suite" + mediamodule "github.com/superseriousbusiness/gotosocial/internal/apimodule/media" + "github.com/superseriousbusiness/gotosocial/internal/config" + "github.com/superseriousbusiness/gotosocial/internal/db" + "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" + "github.com/superseriousbusiness/gotosocial/internal/mastotypes" + mastomodel "github.com/superseriousbusiness/gotosocial/internal/mastotypes/mastomodel" + "github.com/superseriousbusiness/gotosocial/internal/media" + "github.com/superseriousbusiness/gotosocial/internal/oauth" + "github.com/superseriousbusiness/gotosocial/internal/storage" + "github.com/superseriousbusiness/gotosocial/testrig" +) + +type MediaCreateTestSuite struct { + // standard suite interfaces + suite.Suite + config *config.Config + db db.DB + log *logrus.Logger + storage storage.Storage + mastoConverter mastotypes.Converter + mediaHandler media.MediaHandler + oauthServer oauth.Server + + // standard suite models + testTokens map[string]*oauth.Token + testClients map[string]*oauth.Client + testApplications map[string]*gtsmodel.Application + testUsers map[string]*gtsmodel.User + testAccounts map[string]*gtsmodel.Account + testAttachments map[string]*gtsmodel.MediaAttachment + + // item being tested + mediaModule *mediamodule.MediaModule +} + +/* + TEST INFRASTRUCTURE +*/ + +func (suite *MediaCreateTestSuite) SetupSuite() { + // setup standard items + suite.config = testrig.NewTestConfig() + suite.db = testrig.NewTestDB() + suite.log = testrig.NewTestLog() + suite.storage = testrig.NewTestStorage() + suite.mastoConverter = testrig.NewTestMastoConverter(suite.db) + suite.mediaHandler = testrig.NewTestMediaHandler(suite.db, suite.storage) + suite.oauthServer = testrig.NewTestOauthServer(suite.db) + + // setup module being tested + suite.mediaModule = mediamodule.New(suite.db, suite.mediaHandler, suite.mastoConverter, suite.config, suite.log).(*mediamodule.MediaModule) +} + +func (suite *MediaCreateTestSuite) TearDownSuite() { + if err := suite.db.Stop(context.Background()); err != nil { + logrus.Panicf("error closing db connection: %s", err) + } +} + +func (suite *MediaCreateTestSuite) SetupTest() { + testrig.StandardDBSetup(suite.db) + testrig.StandardStorageSetup(suite.storage, "../../../../testrig/media") + suite.testTokens = testrig.NewTestTokens() + suite.testClients = testrig.NewTestClients() + suite.testApplications = testrig.NewTestApplications() + suite.testUsers = testrig.NewTestUsers() + suite.testAccounts = testrig.NewTestAccounts() + suite.testAttachments = testrig.NewTestAttachments() +} + +func (suite *MediaCreateTestSuite) TearDownTest() { + testrig.StandardDBTeardown(suite.db) + testrig.StandardStorageTeardown(suite.storage) +} + +/* + ACTUAL TESTS +*/ + +func (suite *MediaCreateTestSuite) TestStatusCreatePOSTImageHandlerSuccessful() { + + // set up the context for the request + t := suite.testTokens["local_account_1"] + oauthToken := oauth.PGTokenToOauthToken(t) + recorder := httptest.NewRecorder() + ctx, _ := gin.CreateTestContext(recorder) + ctx.Set(oauth.SessionAuthorizedApplication, suite.testApplications["application_1"]) + ctx.Set(oauth.SessionAuthorizedToken, oauthToken) + ctx.Set(oauth.SessionAuthorizedUser, suite.testUsers["local_account_1"]) + ctx.Set(oauth.SessionAuthorizedAccount, suite.testAccounts["local_account_1"]) + + // see what's in storage *before* the request + storageKeysBeforeRequest, err := suite.storage.ListKeys() + if err != nil { + panic(err) + } + + // create the request + buf, w, err := testrig.CreateMultipartFormData("file", "../../../../testrig/media/test-jpeg.jpg", map[string]string{ + "description": "this is a test image -- a cool background from somewhere", + "focus": "-0.5,0.5", + }) + if err != nil { + panic(err) + } + ctx.Request = httptest.NewRequest(http.MethodPost, fmt.Sprintf("http://localhost:8080/%s", mediamodule.BasePath), bytes.NewReader(buf.Bytes())) // the endpoint we're hitting + ctx.Request.Header.Set("Content-Type", w.FormDataContentType()) + + // do the actual request + suite.mediaModule.MediaCreatePOSTHandler(ctx) + + // check what's in storage *after* the request + storageKeysAfterRequest, err := suite.storage.ListKeys() + if err != nil { + panic(err) + } + + // check response + suite.EqualValues(http.StatusAccepted, recorder.Code) + + result := recorder.Result() + defer result.Body.Close() + b, err := ioutil.ReadAll(result.Body) + assert.NoError(suite.T(), err) + fmt.Println(string(b)) + + attachmentReply := &mastomodel.Attachment{} + err = json.Unmarshal(b, attachmentReply) + assert.NoError(suite.T(), err) + + assert.Equal(suite.T(), "this is a test image -- a cool background from somewhere", attachmentReply.Description) + assert.Equal(suite.T(), "image", attachmentReply.Type) + assert.EqualValues(suite.T(), mastomodel.MediaMeta{ + Original: mastomodel.MediaDimensions{ + Width: 1920, + Height: 1080, + Size: "1920x1080", + Aspect: 1.7777778, + }, + Small: mastomodel.MediaDimensions{ + Width: 256, + Height: 144, + Size: "256x144", + Aspect: 1.7777778, + }, + Focus: mastomodel.MediaFocus{ + X: -0.5, + Y: 0.5, + }, + }, attachmentReply.Meta) + assert.Equal(suite.T(), "LjCZnlvyRkRn_NvzRjWF?urqV@f9", attachmentReply.Blurhash) + assert.NotEmpty(suite.T(), attachmentReply.ID) + assert.NotEmpty(suite.T(), attachmentReply.URL) + assert.NotEmpty(suite.T(), attachmentReply.PreviewURL) + assert.Equal(suite.T(), len(storageKeysBeforeRequest)+2, len(storageKeysAfterRequest)) // 2 images should be added to storage: the original and the thumbnail +} + +func TestMediaCreateTestSuite(t *testing.T) { + suite.Run(t, new(MediaCreateTestSuite)) +} diff --git a/internal/apimodule/mock_ClientAPIModule.go b/internal/apimodule/mock_ClientAPIModule.go index 85c7b6ac6..2d4293d0e 100644 --- a/internal/apimodule/mock_ClientAPIModule.go +++ b/internal/apimodule/mock_ClientAPIModule.go @@ -4,6 +4,8 @@ package apimodule import ( mock "github.com/stretchr/testify/mock" + db "github.com/superseriousbusiness/gotosocial/internal/db" + router "github.com/superseriousbusiness/gotosocial/internal/router" ) @@ -12,6 +14,20 @@ type MockClientAPIModule struct { mock.Mock } +// CreateTables provides a mock function with given fields: _a0 +func (_m *MockClientAPIModule) CreateTables(_a0 db.DB) error { + ret := _m.Called(_a0) + + var r0 error + if rf, ok := ret.Get(0).(func(db.DB) error); ok { + r0 = rf(_a0) + } else { + r0 = ret.Error(0) + } + + return r0 +} + // Route provides a mock function with given fields: s func (_m *MockClientAPIModule) Route(s router.Router) error { ret := _m.Called(s) diff --git a/internal/apimodule/security/flocblock.go b/internal/apimodule/security/flocblock.go new file mode 100644 index 000000000..4bb011d4d --- /dev/null +++ b/internal/apimodule/security/flocblock.go @@ -0,0 +1,27 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package security + +import "github.com/gin-gonic/gin" + +// flocBlock prevents google chrome cohort tracking by writing the Permissions-Policy header after all other parts of the request have been completed. +// See: https://plausible.io/blog/google-floc +func (m *module) flocBlock(c *gin.Context) { + c.Header("Permissions-Policy", "interest-cohort=()") +} diff --git a/internal/apimodule/security/security.go b/internal/apimodule/security/security.go new file mode 100644 index 000000000..cfac2ce1e --- /dev/null +++ b/internal/apimodule/security/security.go @@ -0,0 +1,50 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package security + +import ( + "github.com/sirupsen/logrus" + "github.com/superseriousbusiness/gotosocial/internal/apimodule" + "github.com/superseriousbusiness/gotosocial/internal/config" + "github.com/superseriousbusiness/gotosocial/internal/db" + "github.com/superseriousbusiness/gotosocial/internal/router" +) + +// module implements the apiclient interface +type module struct { + config *config.Config + log *logrus.Logger +} + +// New returns a new security module +func New(config *config.Config, log *logrus.Logger) apimodule.ClientAPIModule { + return &module{ + config: config, + log: log, + } +} + +func (m *module) Route(s router.Router) error { + s.AttachMiddleware(m.flocBlock) + return nil +} + +func (m *module) CreateTables(db db.DB) error { + return nil +} diff --git a/internal/apimodule/status/status.go b/internal/apimodule/status/status.go new file mode 100644 index 000000000..e65293b62 --- /dev/null +++ b/internal/apimodule/status/status.go @@ -0,0 +1,138 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package status + +import ( + "fmt" + "net/http" + "strings" + + "github.com/gin-gonic/gin" + "github.com/sirupsen/logrus" + "github.com/superseriousbusiness/gotosocial/internal/apimodule" + "github.com/superseriousbusiness/gotosocial/internal/config" + "github.com/superseriousbusiness/gotosocial/internal/db" + "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" + "github.com/superseriousbusiness/gotosocial/internal/distributor" + "github.com/superseriousbusiness/gotosocial/internal/mastotypes" + "github.com/superseriousbusiness/gotosocial/internal/media" + "github.com/superseriousbusiness/gotosocial/internal/router" +) + +const ( + IDKey = "id" + BasePath = "/api/v1/statuses" + BasePathWithID = BasePath + "/:" + IDKey + + ContextPath = BasePathWithID + "/context" + + FavouritedPath = BasePathWithID + "/favourited_by" + FavouritePath = BasePathWithID + "/favourite" + UnfavouritePath = BasePathWithID + "/unfavourite" + + RebloggedPath = BasePathWithID + "/reblogged_by" + ReblogPath = BasePathWithID + "/reblog" + UnreblogPath = BasePathWithID + "/unreblog" + + BookmarkPath = BasePathWithID + "/bookmark" + UnbookmarkPath = BasePathWithID + "/unbookmark" + + MutePath = BasePathWithID + "/mute" + UnmutePath = BasePathWithID + "/unmute" + + PinPath = BasePathWithID + "/pin" + UnpinPath = BasePathWithID + "/unpin" +) + +type StatusModule struct { + config *config.Config + db db.DB + mediaHandler media.MediaHandler + mastoConverter mastotypes.Converter + distributor distributor.Distributor + log *logrus.Logger +} + +// New returns a new account module +func New(config *config.Config, db db.DB, mediaHandler media.MediaHandler, mastoConverter mastotypes.Converter, distributor distributor.Distributor, log *logrus.Logger) apimodule.ClientAPIModule { + return &StatusModule{ + config: config, + db: db, + mediaHandler: mediaHandler, + mastoConverter: mastoConverter, + distributor: distributor, + log: log, + } +} + +// Route attaches all routes from this module to the given router +func (m *StatusModule) Route(r router.Router) error { + r.AttachHandler(http.MethodPost, BasePath, m.StatusCreatePOSTHandler) + r.AttachHandler(http.MethodDelete, BasePathWithID, m.StatusDELETEHandler) + + r.AttachHandler(http.MethodPost, FavouritePath, m.StatusFavePOSTHandler) + r.AttachHandler(http.MethodPost, UnfavouritePath, m.StatusFavePOSTHandler) + + r.AttachHandler(http.MethodGet, BasePathWithID, m.muxHandler) + return nil +} + +func (m *StatusModule) CreateTables(db db.DB) error { + models := []interface{}{ + >smodel.User{}, + >smodel.Account{}, + >smodel.Block{}, + >smodel.Follow{}, + >smodel.FollowRequest{}, + >smodel.Status{}, + >smodel.StatusFave{}, + >smodel.StatusBookmark{}, + >smodel.StatusMute{}, + >smodel.StatusPin{}, + >smodel.Application{}, + >smodel.EmailDomainBlock{}, + >smodel.MediaAttachment{}, + >smodel.Emoji{}, + >smodel.Tag{}, + >smodel.Mention{}, + } + + for _, m := range models { + if err := db.CreateTable(m); err != nil { + return fmt.Errorf("error creating table: %s", err) + } + } + return nil +} + +func (m *StatusModule) muxHandler(c *gin.Context) { + m.log.Debug("entering mux handler") + ru := c.Request.RequestURI + + switch c.Request.Method { + case http.MethodGet: + if strings.HasPrefix(ru, ContextPath) { + // TODO + } else if strings.HasPrefix(ru, FavouritedPath) { + m.StatusFavedByGETHandler(c) + } else { + m.StatusGETHandler(c) + } + } +} diff --git a/internal/apimodule/status/statuscreate.go b/internal/apimodule/status/statuscreate.go new file mode 100644 index 000000000..ce1cc6da7 --- /dev/null +++ b/internal/apimodule/status/statuscreate.go @@ -0,0 +1,463 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package status + +import ( + "errors" + "fmt" + "net/http" + "time" + + "github.com/gin-gonic/gin" + "github.com/google/uuid" + "github.com/superseriousbusiness/gotosocial/internal/config" + "github.com/superseriousbusiness/gotosocial/internal/db" + "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" + "github.com/superseriousbusiness/gotosocial/internal/distributor" + mastotypes "github.com/superseriousbusiness/gotosocial/internal/mastotypes/mastomodel" + "github.com/superseriousbusiness/gotosocial/internal/oauth" + "github.com/superseriousbusiness/gotosocial/internal/util" +) + +type advancedStatusCreateForm struct { + mastotypes.StatusCreateRequest + advancedVisibilityFlagsForm +} + +type advancedVisibilityFlagsForm struct { + // The gotosocial visibility model + VisibilityAdvanced *gtsmodel.Visibility `form:"visibility_advanced"` + // This status will be federated beyond the local timeline(s) + Federated *bool `form:"federated"` + // This status can be boosted/reblogged + Boostable *bool `form:"boostable"` + // This status can be replied to + Replyable *bool `form:"replyable"` + // This status can be liked/faved + Likeable *bool `form:"likeable"` +} + +func (m *StatusModule) StatusCreatePOSTHandler(c *gin.Context) { + l := m.log.WithField("func", "statusCreatePOSTHandler") + authed, err := oauth.MustAuth(c, true, true, true, true) // posting a status is serious business so we want *everything* + if err != nil { + l.Debugf("couldn't auth: %s", err) + c.JSON(http.StatusForbidden, gin.H{"error": err.Error()}) + return + } + + // First check this user/account is permitted to post new statuses. + // There's no point continuing otherwise. + if authed.User.Disabled || !authed.User.Approved || !authed.Account.SuspendedAt.IsZero() { + l.Debugf("couldn't auth: %s", err) + c.JSON(http.StatusForbidden, gin.H{"error": "account is disabled, not yet approved, or suspended"}) + return + } + + // extract the status create form from the request context + l.Tracef("parsing request form: %s", c.Request.Form) + form := &advancedStatusCreateForm{} + if err := c.ShouldBind(form); err != nil || form == nil { + l.Debugf("could not parse form from request: %s", err) + c.JSON(http.StatusBadRequest, gin.H{"error": "missing one or more required form values"}) + return + } + + // Give the fields on the request form a first pass to make sure the request is superficially valid. + l.Tracef("validating form %+v", form) + if err := validateCreateStatus(form, m.config.StatusesConfig); err != nil { + l.Debugf("error validating form: %s", err) + c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()}) + return + } + + // At this point we know the account is permitted to post, and we know the request form + // is valid (at least according to the API specifications and the instance configuration). + // So now we can start digging a bit deeper into the form and building up the new status from it. + + // first we create a new status and add some basic info to it + uris := util.GenerateURIs(authed.Account.Username, m.config.Protocol, m.config.Host) + thisStatusID := uuid.NewString() + thisStatusURI := fmt.Sprintf("%s/%s", uris.StatusesURI, thisStatusID) + thisStatusURL := fmt.Sprintf("%s/%s", uris.StatusesURL, thisStatusID) + newStatus := >smodel.Status{ + ID: thisStatusID, + URI: thisStatusURI, + URL: thisStatusURL, + Content: util.HTMLFormat(form.Status), + CreatedAt: time.Now(), + UpdatedAt: time.Now(), + Local: true, + AccountID: authed.Account.ID, + ContentWarning: form.SpoilerText, + ActivityStreamsType: gtsmodel.ActivityStreamsNote, + Sensitive: form.Sensitive, + Language: form.Language, + CreatedWithApplicationID: authed.Application.ID, + Text: form.Status, + } + + // check if replyToID is ok + if err := m.parseReplyToID(form, authed.Account.ID, newStatus); err != nil { + c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()}) + return + } + + // check if mediaIDs are ok + if err := m.parseMediaIDs(form, authed.Account.ID, newStatus); err != nil { + c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()}) + return + } + + // check if visibility settings are ok + if err := parseVisibility(form, authed.Account.Privacy, newStatus); err != nil { + c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()}) + return + } + + // handle language settings + if err := parseLanguage(form, authed.Account.Language, newStatus); err != nil { + c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()}) + return + } + + // handle mentions + if err := m.parseMentions(form, authed.Account.ID, newStatus); err != nil { + c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()}) + return + } + + if err := m.parseTags(form, authed.Account.ID, newStatus); err != nil { + c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()}) + return + } + + if err := m.parseEmojis(form, authed.Account.ID, newStatus); err != nil { + c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()}) + return + } + + /* + FROM THIS POINT ONWARDS WE ARE HAPPY WITH THE STATUS -- it is valid and we will try to create it + */ + + // put the new status in the database, generating an ID for it in the process + if err := m.db.Put(newStatus); err != nil { + c.JSON(http.StatusInternalServerError, gin.H{"error": err.Error()}) + return + } + + // change the status ID of the media attachments to the new status + for _, a := range newStatus.GTSMediaAttachments { + a.StatusID = newStatus.ID + a.UpdatedAt = time.Now() + if err := m.db.UpdateByID(a.ID, a); err != nil { + c.JSON(http.StatusInternalServerError, gin.H{"error": err.Error()}) + return + } + } + + // pass to the distributor to take care of side effects asynchronously -- federation, mentions, updating metadata, etc, etc + m.distributor.FromClientAPI() <- distributor.FromClientAPI{ + APObjectType: gtsmodel.ActivityStreamsNote, + APActivityType: gtsmodel.ActivityStreamsCreate, + Activity: newStatus, + } + + // return the frontend representation of the new status to the submitter + mastoStatus, err := m.mastoConverter.StatusToMasto(newStatus, authed.Account, authed.Account, nil, newStatus.GTSReplyToAccount, nil) + if err != nil { + c.JSON(http.StatusInternalServerError, gin.H{"error": err.Error()}) + return + } + c.JSON(http.StatusOK, mastoStatus) +} + +func validateCreateStatus(form *advancedStatusCreateForm, config *config.StatusesConfig) error { + // validate that, structurally, we have a valid status/post + if form.Status == "" && form.MediaIDs == nil && form.Poll == nil { + return errors.New("no status, media, or poll provided") + } + + if form.MediaIDs != nil && form.Poll != nil { + return errors.New("can't post media + poll in same status") + } + + // validate status + if form.Status != "" { + if len(form.Status) > config.MaxChars { + return fmt.Errorf("status too long, %d characters provided but limit is %d", len(form.Status), config.MaxChars) + } + } + + // validate media attachments + if len(form.MediaIDs) > config.MaxMediaFiles { + return fmt.Errorf("too many media files attached to status, %d attached but limit is %d", len(form.MediaIDs), config.MaxMediaFiles) + } + + // validate poll + if form.Poll != nil { + if form.Poll.Options == nil { + return errors.New("poll with no options") + } + if len(form.Poll.Options) > config.PollMaxOptions { + return fmt.Errorf("too many poll options provided, %d provided but limit is %d", len(form.Poll.Options), config.PollMaxOptions) + } + for _, p := range form.Poll.Options { + if len(p) > config.PollOptionMaxChars { + return fmt.Errorf("poll option too long, %d characters provided but limit is %d", len(p), config.PollOptionMaxChars) + } + } + } + + // validate spoiler text/cw + if form.SpoilerText != "" { + if len(form.SpoilerText) > config.CWMaxChars { + return fmt.Errorf("content-warning/spoilertext too long, %d characters provided but limit is %d", len(form.SpoilerText), config.CWMaxChars) + } + } + + // validate post language + if form.Language != "" { + if err := util.ValidateLanguage(form.Language); err != nil { + return err + } + } + + return nil +} + +func parseVisibility(form *advancedStatusCreateForm, accountDefaultVis gtsmodel.Visibility, status *gtsmodel.Status) error { + // by default all flags are set to true + gtsAdvancedVis := >smodel.VisibilityAdvanced{ + Federated: true, + Boostable: true, + Replyable: true, + Likeable: true, + } + + var gtsBasicVis gtsmodel.Visibility + // Advanced takes priority if it's set. + // If it's not set, take whatever masto visibility is set. + // If *that's* not set either, then just take the account default. + // If that's also not set, take the default for the whole instance. + if form.VisibilityAdvanced != nil { + gtsBasicVis = *form.VisibilityAdvanced + } else if form.Visibility != "" { + gtsBasicVis = util.ParseGTSVisFromMastoVis(form.Visibility) + } else if accountDefaultVis != "" { + gtsBasicVis = accountDefaultVis + } else { + gtsBasicVis = gtsmodel.VisibilityDefault + } + + switch gtsBasicVis { + case gtsmodel.VisibilityPublic: + // for public, there's no need to change any of the advanced flags from true regardless of what the user filled out + break + case gtsmodel.VisibilityUnlocked: + // for unlocked the user can set any combination of flags they like so look at them all to see if they're set and then apply them + if form.Federated != nil { + gtsAdvancedVis.Federated = *form.Federated + } + + if form.Boostable != nil { + gtsAdvancedVis.Boostable = *form.Boostable + } + + if form.Replyable != nil { + gtsAdvancedVis.Replyable = *form.Replyable + } + + if form.Likeable != nil { + gtsAdvancedVis.Likeable = *form.Likeable + } + + case gtsmodel.VisibilityFollowersOnly, gtsmodel.VisibilityMutualsOnly: + // for followers or mutuals only, boostable will *always* be false, but the other fields can be set so check and apply them + gtsAdvancedVis.Boostable = false + + if form.Federated != nil { + gtsAdvancedVis.Federated = *form.Federated + } + + if form.Replyable != nil { + gtsAdvancedVis.Replyable = *form.Replyable + } + + if form.Likeable != nil { + gtsAdvancedVis.Likeable = *form.Likeable + } + + case gtsmodel.VisibilityDirect: + // direct is pretty easy: there's only one possible setting so return it + gtsAdvancedVis.Federated = true + gtsAdvancedVis.Boostable = false + gtsAdvancedVis.Federated = true + gtsAdvancedVis.Likeable = true + } + + status.Visibility = gtsBasicVis + status.VisibilityAdvanced = gtsAdvancedVis + return nil +} + +func (m *StatusModule) parseReplyToID(form *advancedStatusCreateForm, thisAccountID string, status *gtsmodel.Status) error { + if form.InReplyToID == "" { + return nil + } + + // If this status is a reply to another status, we need to do a bit of work to establish whether or not this status can be posted: + // + // 1. Does the replied status exist in the database? + // 2. Is the replied status marked as replyable? + // 3. Does a block exist between either the current account or the account that posted the status it's replying to? + // + // If this is all OK, then we fetch the repliedStatus and the repliedAccount for later processing. + repliedStatus := >smodel.Status{} + repliedAccount := >smodel.Account{} + // check replied status exists + is replyable + if err := m.db.GetByID(form.InReplyToID, repliedStatus); err != nil { + if _, ok := err.(db.ErrNoEntries); ok { + return fmt.Errorf("status with id %s not replyable because it doesn't exist", form.InReplyToID) + } else { + return fmt.Errorf("status with id %s not replyable: %s", form.InReplyToID, err) + } + } + + if !repliedStatus.VisibilityAdvanced.Replyable { + return fmt.Errorf("status with id %s is marked as not replyable", form.InReplyToID) + } + + // check replied account is known to us + if err := m.db.GetByID(repliedStatus.AccountID, repliedAccount); err != nil { + if _, ok := err.(db.ErrNoEntries); ok { + return fmt.Errorf("status with id %s not replyable because account id %s is not known", form.InReplyToID, repliedStatus.AccountID) + } else { + return fmt.Errorf("status with id %s not replyable: %s", form.InReplyToID, err) + } + } + // check if a block exists + if blocked, err := m.db.Blocked(thisAccountID, repliedAccount.ID); err != nil { + if _, ok := err.(db.ErrNoEntries); !ok { + return fmt.Errorf("status with id %s not replyable: %s", form.InReplyToID, err) + } + } else if blocked { + return fmt.Errorf("status with id %s not replyable", form.InReplyToID) + } + status.InReplyToID = repliedStatus.ID + status.InReplyToAccountID = repliedAccount.ID + + return nil +} + +func (m *StatusModule) parseMediaIDs(form *advancedStatusCreateForm, thisAccountID string, status *gtsmodel.Status) error { + if form.MediaIDs == nil { + return nil + } + + gtsMediaAttachments := []*gtsmodel.MediaAttachment{} + attachments := []string{} + for _, mediaID := range form.MediaIDs { + // check these attachments exist + a := >smodel.MediaAttachment{} + if err := m.db.GetByID(mediaID, a); err != nil { + return fmt.Errorf("invalid media type or media not found for media id %s", mediaID) + } + // check they belong to the requesting account id + if a.AccountID != thisAccountID { + return fmt.Errorf("media with id %s does not belong to account %s", mediaID, thisAccountID) + } + // check they're not already used in a status + if a.StatusID != "" || a.ScheduledStatusID != "" { + return fmt.Errorf("media with id %s is already attached to a status", mediaID) + } + gtsMediaAttachments = append(gtsMediaAttachments, a) + attachments = append(attachments, a.ID) + } + status.GTSMediaAttachments = gtsMediaAttachments + status.Attachments = attachments + return nil +} + +func parseLanguage(form *advancedStatusCreateForm, accountDefaultLanguage string, status *gtsmodel.Status) error { + if form.Language != "" { + status.Language = form.Language + } else { + status.Language = accountDefaultLanguage + } + if status.Language == "" { + return errors.New("no language given either in status create form or account default") + } + return nil +} + +func (m *StatusModule) parseMentions(form *advancedStatusCreateForm, accountID string, status *gtsmodel.Status) error { + menchies := []string{} + gtsMenchies, err := m.db.MentionStringsToMentions(util.DeriveMentions(form.Status), accountID, status.ID) + if err != nil { + return fmt.Errorf("error generating mentions from status: %s", err) + } + for _, menchie := range gtsMenchies { + if err := m.db.Put(menchie); err != nil { + return fmt.Errorf("error putting mentions in db: %s", err) + } + menchies = append(menchies, menchie.TargetAccountID) + } + // add full populated gts menchies to the status for passing them around conveniently + status.GTSMentions = gtsMenchies + // add just the ids of the mentioned accounts to the status for putting in the db + status.Mentions = menchies + return nil +} + +func (m *StatusModule) parseTags(form *advancedStatusCreateForm, accountID string, status *gtsmodel.Status) error { + tags := []string{} + gtsTags, err := m.db.TagStringsToTags(util.DeriveHashtags(form.Status), accountID, status.ID) + if err != nil { + return fmt.Errorf("error generating hashtags from status: %s", err) + } + for _, tag := range gtsTags { + if err := m.db.Upsert(tag, "name"); err != nil { + return fmt.Errorf("error putting tags in db: %s", err) + } + tags = append(tags, tag.ID) + } + // add full populated gts tags to the status for passing them around conveniently + status.GTSTags = gtsTags + // add just the ids of the used tags to the status for putting in the db + status.Tags = tags + return nil +} + +func (m *StatusModule) parseEmojis(form *advancedStatusCreateForm, accountID string, status *gtsmodel.Status) error { + emojis := []string{} + gtsEmojis, err := m.db.EmojiStringsToEmojis(util.DeriveEmojis(form.Status), accountID, status.ID) + if err != nil { + return fmt.Errorf("error generating emojis from status: %s", err) + } + for _, e := range gtsEmojis { + emojis = append(emojis, e.ID) + } + // add full populated gts emojis to the status for passing them around conveniently + status.GTSEmojis = gtsEmojis + // add just the ids of the used emojis to the status for putting in the db + status.Emojis = emojis + return nil +} diff --git a/internal/apimodule/status/statusdelete.go b/internal/apimodule/status/statusdelete.go new file mode 100644 index 000000000..f67d035d8 --- /dev/null +++ b/internal/apimodule/status/statusdelete.go @@ -0,0 +1,106 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package status + +import ( + "fmt" + "net/http" + + "github.com/gin-gonic/gin" + "github.com/sirupsen/logrus" + "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" + "github.com/superseriousbusiness/gotosocial/internal/distributor" + "github.com/superseriousbusiness/gotosocial/internal/oauth" +) + +func (m *StatusModule) StatusDELETEHandler(c *gin.Context) { + l := m.log.WithFields(logrus.Fields{ + "func": "StatusDELETEHandler", + "request_uri": c.Request.RequestURI, + "user_agent": c.Request.UserAgent(), + "origin_ip": c.ClientIP(), + }) + l.Debugf("entering function") + + authed, err := oauth.MustAuth(c, true, false, true, true) // we don't really need an app here but we want everything else + if err != nil { + l.Debug("not authed so can't delete status") + c.JSON(http.StatusUnauthorized, gin.H{"error": "not authorized"}) + return + } + + targetStatusID := c.Param(IDKey) + if targetStatusID == "" { + c.JSON(http.StatusBadRequest, gin.H{"error": "no status id provided"}) + return + } + + l.Tracef("going to search for target status %s", targetStatusID) + targetStatus := >smodel.Status{} + if err := m.db.GetByID(targetStatusID, targetStatus); err != nil { + l.Errorf("error fetching status %s: %s", targetStatusID, err) + c.JSON(http.StatusNotFound, gin.H{"error": fmt.Sprintf("status %s not found", targetStatusID)}) + return + } + + if targetStatus.AccountID != authed.Account.ID { + l.Debug("status doesn't belong to requesting account") + c.JSON(http.StatusForbidden, gin.H{"error": "not allowed"}) + return + } + + l.Trace("going to get relevant accounts") + relevantAccounts, err := m.db.PullRelevantAccountsFromStatus(targetStatus) + if err != nil { + l.Errorf("error fetching related accounts for status %s: %s", targetStatusID, err) + c.JSON(http.StatusNotFound, gin.H{"error": fmt.Sprintf("status %s not found", targetStatusID)}) + return + } + + var boostOfStatus *gtsmodel.Status + if targetStatus.BoostOfID != "" { + boostOfStatus = >smodel.Status{} + if err := m.db.GetByID(targetStatus.BoostOfID, boostOfStatus); err != nil { + l.Errorf("error fetching boosted status %s: %s", targetStatus.BoostOfID, err) + c.JSON(http.StatusNotFound, gin.H{"error": fmt.Sprintf("status %s not found", targetStatusID)}) + return + } + } + + mastoStatus, err := m.mastoConverter.StatusToMasto(targetStatus, authed.Account, authed.Account, relevantAccounts.BoostedAccount, relevantAccounts.ReplyToAccount, boostOfStatus) + if err != nil { + l.Errorf("error converting status %s to frontend representation: %s", targetStatus.ID, err) + c.JSON(http.StatusNotFound, gin.H{"error": fmt.Sprintf("status %s not found", targetStatusID)}) + return + } + + if err := m.db.DeleteByID(targetStatus.ID, targetStatus); err != nil { + l.Errorf("error deleting status from the database: %s", err) + c.JSON(http.StatusInternalServerError, gin.H{"error": err.Error()}) + return + } + + m.distributor.FromClientAPI() <- distributor.FromClientAPI{ + APObjectType: gtsmodel.ActivityStreamsNote, + APActivityType: gtsmodel.ActivityStreamsDelete, + Activity: targetStatus, + } + + c.JSON(http.StatusOK, mastoStatus) +} diff --git a/internal/apimodule/status/statusfave.go b/internal/apimodule/status/statusfave.go new file mode 100644 index 000000000..de475b905 --- /dev/null +++ b/internal/apimodule/status/statusfave.go @@ -0,0 +1,136 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package status + +import ( + "fmt" + "net/http" + + "github.com/gin-gonic/gin" + "github.com/sirupsen/logrus" + "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" + "github.com/superseriousbusiness/gotosocial/internal/distributor" + "github.com/superseriousbusiness/gotosocial/internal/oauth" +) + +func (m *StatusModule) StatusFavePOSTHandler(c *gin.Context) { + l := m.log.WithFields(logrus.Fields{ + "func": "StatusFavePOSTHandler", + "request_uri": c.Request.RequestURI, + "user_agent": c.Request.UserAgent(), + "origin_ip": c.ClientIP(), + }) + l.Debugf("entering function") + + authed, err := oauth.MustAuth(c, true, false, true, true) // we don't really need an app here but we want everything else + if err != nil { + l.Debug("not authed so can't fave status") + c.JSON(http.StatusUnauthorized, gin.H{"error": "not authorized"}) + return + } + + targetStatusID := c.Param(IDKey) + if targetStatusID == "" { + c.JSON(http.StatusBadRequest, gin.H{"error": "no status id provided"}) + return + } + + l.Tracef("going to search for target status %s", targetStatusID) + targetStatus := >smodel.Status{} + if err := m.db.GetByID(targetStatusID, targetStatus); err != nil { + l.Errorf("error fetching status %s: %s", targetStatusID, err) + c.JSON(http.StatusNotFound, gin.H{"error": fmt.Sprintf("status %s not found", targetStatusID)}) + return + } + + l.Tracef("going to search for target account %s", targetStatus.AccountID) + targetAccount := >smodel.Account{} + if err := m.db.GetByID(targetStatus.AccountID, targetAccount); err != nil { + l.Errorf("error fetching target account %s: %s", targetStatus.AccountID, err) + c.JSON(http.StatusNotFound, gin.H{"error": fmt.Sprintf("status %s not found", targetStatusID)}) + return + } + + l.Trace("going to get relevant accounts") + relevantAccounts, err := m.db.PullRelevantAccountsFromStatus(targetStatus) + if err != nil { + l.Errorf("error fetching related accounts for status %s: %s", targetStatusID, err) + c.JSON(http.StatusNotFound, gin.H{"error": fmt.Sprintf("status %s not found", targetStatusID)}) + return + } + + l.Trace("going to see if status is visible") + visible, err := m.db.StatusVisible(targetStatus, targetAccount, authed.Account, relevantAccounts) // requestingAccount might well be nil here, but StatusVisible knows how to take care of that + if err != nil { + l.Errorf("error seeing if status %s is visible: %s", targetStatus.ID, err) + c.JSON(http.StatusNotFound, gin.H{"error": fmt.Sprintf("status %s not found", targetStatusID)}) + return + } + + if !visible { + l.Trace("status is not visible") + c.JSON(http.StatusNotFound, gin.H{"error": fmt.Sprintf("status %s not found", targetStatusID)}) + return + } + + // is the status faveable? + if !targetStatus.VisibilityAdvanced.Likeable { + l.Debug("status is not faveable") + c.JSON(http.StatusForbidden, gin.H{"error": fmt.Sprintf("status %s not faveable", targetStatusID)}) + return + } + + // it's visible! it's faveable! so let's fave the FUCK out of it + fave, err := m.db.FaveStatus(targetStatus, authed.Account.ID) + if err != nil { + l.Debugf("error faveing status: %s", err) + c.JSON(http.StatusInternalServerError, gin.H{"error": err.Error()}) + return + } + + var boostOfStatus *gtsmodel.Status + if targetStatus.BoostOfID != "" { + boostOfStatus = >smodel.Status{} + if err := m.db.GetByID(targetStatus.BoostOfID, boostOfStatus); err != nil { + l.Errorf("error fetching boosted status %s: %s", targetStatus.BoostOfID, err) + c.JSON(http.StatusNotFound, gin.H{"error": fmt.Sprintf("status %s not found", targetStatusID)}) + return + } + } + + mastoStatus, err := m.mastoConverter.StatusToMasto(targetStatus, targetAccount, authed.Account, relevantAccounts.BoostedAccount, relevantAccounts.ReplyToAccount, boostOfStatus) + if err != nil { + l.Errorf("error converting status %s to frontend representation: %s", targetStatus.ID, err) + c.JSON(http.StatusNotFound, gin.H{"error": fmt.Sprintf("status %s not found", targetStatusID)}) + return + } + + // if the targeted status was already faved, faved will be nil + // only put the fave in the distributor if something actually changed + if fave != nil { + fave.FavedStatus = targetStatus // attach the status pointer to the fave for easy retrieval in the distributor + m.distributor.FromClientAPI() <- distributor.FromClientAPI{ + APObjectType: gtsmodel.ActivityStreamsNote, // status is a note + APActivityType: gtsmodel.ActivityStreamsLike, // we're creating a like/fave on the note + Activity: fave, // pass the fave along for processing + } + } + + c.JSON(http.StatusOK, mastoStatus) +} diff --git a/internal/apimodule/status/statusfavedby.go b/internal/apimodule/status/statusfavedby.go new file mode 100644 index 000000000..76a50b2ca --- /dev/null +++ b/internal/apimodule/status/statusfavedby.go @@ -0,0 +1,128 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package status + +import ( + "fmt" + "net/http" + + "github.com/gin-gonic/gin" + "github.com/sirupsen/logrus" + "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" + mastotypes "github.com/superseriousbusiness/gotosocial/internal/mastotypes/mastomodel" + "github.com/superseriousbusiness/gotosocial/internal/oauth" +) + +func (m *StatusModule) StatusFavedByGETHandler(c *gin.Context) { + l := m.log.WithFields(logrus.Fields{ + "func": "statusGETHandler", + "request_uri": c.Request.RequestURI, + "user_agent": c.Request.UserAgent(), + "origin_ip": c.ClientIP(), + }) + l.Debugf("entering function") + + var requestingAccount *gtsmodel.Account + authed, err := oauth.MustAuth(c, true, false, true, true) // we don't really need an app here but we want everything else + if err != nil { + l.Debug("not authed but will continue to serve anyway if public status") + requestingAccount = nil + } else { + requestingAccount = authed.Account + } + + targetStatusID := c.Param(IDKey) + if targetStatusID == "" { + c.JSON(http.StatusBadRequest, gin.H{"error": "no status id provided"}) + return + } + + l.Tracef("going to search for target status %s", targetStatusID) + targetStatus := >smodel.Status{} + if err := m.db.GetByID(targetStatusID, targetStatus); err != nil { + l.Errorf("error fetching status %s: %s", targetStatusID, err) + c.JSON(http.StatusNotFound, gin.H{"error": fmt.Sprintf("status %s not found", targetStatusID)}) + return + } + + l.Tracef("going to search for target account %s", targetStatus.AccountID) + targetAccount := >smodel.Account{} + if err := m.db.GetByID(targetStatus.AccountID, targetAccount); err != nil { + l.Errorf("error fetching target account %s: %s", targetStatus.AccountID, err) + c.JSON(http.StatusNotFound, gin.H{"error": fmt.Sprintf("status %s not found", targetStatusID)}) + return + } + + l.Trace("going to get relevant accounts") + relevantAccounts, err := m.db.PullRelevantAccountsFromStatus(targetStatus) + if err != nil { + l.Errorf("error fetching related accounts for status %s: %s", targetStatusID, err) + c.JSON(http.StatusNotFound, gin.H{"error": fmt.Sprintf("status %s not found", targetStatusID)}) + return + } + + l.Trace("going to see if status is visible") + visible, err := m.db.StatusVisible(targetStatus, targetAccount, requestingAccount, relevantAccounts) // requestingAccount might well be nil here, but StatusVisible knows how to take care of that + if err != nil { + l.Errorf("error seeing if status %s is visible: %s", targetStatus.ID, err) + c.JSON(http.StatusNotFound, gin.H{"error": fmt.Sprintf("status %s not found", targetStatusID)}) + return + } + + if !visible { + l.Trace("status is not visible") + c.JSON(http.StatusNotFound, gin.H{"error": fmt.Sprintf("status %s not found", targetStatusID)}) + return + } + + // get ALL accounts that faved a status -- doesn't take account of blocks and mutes and stuff + favingAccounts, err := m.db.WhoFavedStatus(targetStatus) + if err != nil { + c.JSON(http.StatusInternalServerError, gin.H{"error": err.Error()}) + return + } + + // filter the list so the user doesn't see accounts they blocked or which blocked them + filteredAccounts := []*gtsmodel.Account{} + for _, acc := range favingAccounts { + blocked, err := m.db.Blocked(authed.Account.ID, acc.ID) + if err != nil { + c.JSON(http.StatusInternalServerError, gin.H{"error": err.Error()}) + return + } + if !blocked { + filteredAccounts = append(filteredAccounts, acc) + } + } + + // TODO: filter other things here? suspended? muted? silenced? + + // now we can return the masto representation of those accounts + mastoAccounts := []*mastotypes.Account{} + for _, acc := range filteredAccounts { + mastoAccount, err := m.mastoConverter.AccountToMastoPublic(acc) + if err != nil { + c.JSON(http.StatusInternalServerError, gin.H{"error": err.Error()}) + return + } + mastoAccounts = append(mastoAccounts, mastoAccount) + } + + c.JSON(http.StatusOK, mastoAccounts) +} diff --git a/internal/apimodule/status/statusget.go b/internal/apimodule/status/statusget.go new file mode 100644 index 000000000..ed2e89159 --- /dev/null +++ b/internal/apimodule/status/statusget.go @@ -0,0 +1,111 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package status + +import ( + "fmt" + "net/http" + + "github.com/gin-gonic/gin" + "github.com/sirupsen/logrus" + "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" + "github.com/superseriousbusiness/gotosocial/internal/oauth" +) + +func (m *StatusModule) StatusGETHandler(c *gin.Context) { + l := m.log.WithFields(logrus.Fields{ + "func": "statusGETHandler", + "request_uri": c.Request.RequestURI, + "user_agent": c.Request.UserAgent(), + "origin_ip": c.ClientIP(), + }) + l.Debugf("entering function") + + var requestingAccount *gtsmodel.Account + authed, err := oauth.MustAuth(c, true, false, true, true) // we don't really need an app here but we want everything else + if err != nil { + l.Debug("not authed but will continue to serve anyway if public status") + requestingAccount = nil + } else { + requestingAccount = authed.Account + } + + targetStatusID := c.Param(IDKey) + if targetStatusID == "" { + c.JSON(http.StatusBadRequest, gin.H{"error": "no status id provided"}) + return + } + + l.Tracef("going to search for target status %s", targetStatusID) + targetStatus := >smodel.Status{} + if err := m.db.GetByID(targetStatusID, targetStatus); err != nil { + l.Errorf("error fetching status %s: %s", targetStatusID, err) + c.JSON(http.StatusNotFound, gin.H{"error": fmt.Sprintf("status %s not found", targetStatusID)}) + return + } + + l.Tracef("going to search for target account %s", targetStatus.AccountID) + targetAccount := >smodel.Account{} + if err := m.db.GetByID(targetStatus.AccountID, targetAccount); err != nil { + l.Errorf("error fetching target account %s: %s", targetStatus.AccountID, err) + c.JSON(http.StatusNotFound, gin.H{"error": fmt.Sprintf("status %s not found", targetStatusID)}) + return + } + + l.Trace("going to get relevant accounts") + relevantAccounts, err := m.db.PullRelevantAccountsFromStatus(targetStatus) + if err != nil { + l.Errorf("error fetching related accounts for status %s: %s", targetStatusID, err) + c.JSON(http.StatusNotFound, gin.H{"error": fmt.Sprintf("status %s not found", targetStatusID)}) + return + } + + l.Trace("going to see if status is visible") + visible, err := m.db.StatusVisible(targetStatus, targetAccount, requestingAccount, relevantAccounts) // requestingAccount might well be nil here, but StatusVisible knows how to take care of that + if err != nil { + l.Errorf("error seeing if status %s is visible: %s", targetStatus.ID, err) + c.JSON(http.StatusNotFound, gin.H{"error": fmt.Sprintf("status %s not found", targetStatusID)}) + return + } + + if !visible { + l.Trace("status is not visible") + c.JSON(http.StatusNotFound, gin.H{"error": fmt.Sprintf("status %s not found", targetStatusID)}) + return + } + + var boostOfStatus *gtsmodel.Status + if targetStatus.BoostOfID != "" { + boostOfStatus = >smodel.Status{} + if err := m.db.GetByID(targetStatus.BoostOfID, boostOfStatus); err != nil { + l.Errorf("error fetching boosted status %s: %s", targetStatus.BoostOfID, err) + c.JSON(http.StatusNotFound, gin.H{"error": fmt.Sprintf("status %s not found", targetStatusID)}) + return + } + } + + mastoStatus, err := m.mastoConverter.StatusToMasto(targetStatus, targetAccount, requestingAccount, relevantAccounts.BoostedAccount, relevantAccounts.ReplyToAccount, boostOfStatus) + if err != nil { + l.Errorf("error converting status %s to frontend representation: %s", targetStatus.ID, err) + c.JSON(http.StatusNotFound, gin.H{"error": fmt.Sprintf("status %s not found", targetStatusID)}) + return + } + + c.JSON(http.StatusOK, mastoStatus) +} diff --git a/internal/apimodule/status/statusunfave.go b/internal/apimodule/status/statusunfave.go new file mode 100644 index 000000000..61ffd8e4c --- /dev/null +++ b/internal/apimodule/status/statusunfave.go @@ -0,0 +1,136 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package status + +import ( + "fmt" + "net/http" + + "github.com/gin-gonic/gin" + "github.com/sirupsen/logrus" + "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" + "github.com/superseriousbusiness/gotosocial/internal/distributor" + "github.com/superseriousbusiness/gotosocial/internal/oauth" +) + +func (m *StatusModule) StatusUnfavePOSTHandler(c *gin.Context) { + l := m.log.WithFields(logrus.Fields{ + "func": "StatusUnfavePOSTHandler", + "request_uri": c.Request.RequestURI, + "user_agent": c.Request.UserAgent(), + "origin_ip": c.ClientIP(), + }) + l.Debugf("entering function") + + authed, err := oauth.MustAuth(c, true, false, true, true) // we don't really need an app here but we want everything else + if err != nil { + l.Debug("not authed so can't unfave status") + c.JSON(http.StatusUnauthorized, gin.H{"error": "not authorized"}) + return + } + + targetStatusID := c.Param(IDKey) + if targetStatusID == "" { + c.JSON(http.StatusBadRequest, gin.H{"error": "no status id provided"}) + return + } + + l.Tracef("going to search for target status %s", targetStatusID) + targetStatus := >smodel.Status{} + if err := m.db.GetByID(targetStatusID, targetStatus); err != nil { + l.Errorf("error fetching status %s: %s", targetStatusID, err) + c.JSON(http.StatusNotFound, gin.H{"error": fmt.Sprintf("status %s not found", targetStatusID)}) + return + } + + l.Tracef("going to search for target account %s", targetStatus.AccountID) + targetAccount := >smodel.Account{} + if err := m.db.GetByID(targetStatus.AccountID, targetAccount); err != nil { + l.Errorf("error fetching target account %s: %s", targetStatus.AccountID, err) + c.JSON(http.StatusNotFound, gin.H{"error": fmt.Sprintf("status %s not found", targetStatusID)}) + return + } + + l.Trace("going to get relevant accounts") + relevantAccounts, err := m.db.PullRelevantAccountsFromStatus(targetStatus) + if err != nil { + l.Errorf("error fetching related accounts for status %s: %s", targetStatusID, err) + c.JSON(http.StatusNotFound, gin.H{"error": fmt.Sprintf("status %s not found", targetStatusID)}) + return + } + + l.Trace("going to see if status is visible") + visible, err := m.db.StatusVisible(targetStatus, targetAccount, authed.Account, relevantAccounts) // requestingAccount might well be nil here, but StatusVisible knows how to take care of that + if err != nil { + l.Errorf("error seeing if status %s is visible: %s", targetStatus.ID, err) + c.JSON(http.StatusNotFound, gin.H{"error": fmt.Sprintf("status %s not found", targetStatusID)}) + return + } + + if !visible { + l.Trace("status is not visible") + c.JSON(http.StatusNotFound, gin.H{"error": fmt.Sprintf("status %s not found", targetStatusID)}) + return + } + + // is the status faveable? + if !targetStatus.VisibilityAdvanced.Likeable { + l.Debug("status is not faveable") + c.JSON(http.StatusForbidden, gin.H{"error": fmt.Sprintf("status %s not faveable so therefore not unfave-able", targetStatusID)}) + return + } + + // it's visible! it's faveable! so let's unfave the FUCK out of it + fave, err := m.db.UnfaveStatus(targetStatus, authed.Account.ID) + if err != nil { + l.Debugf("error unfaveing status: %s", err) + c.JSON(http.StatusInternalServerError, gin.H{"error": err.Error()}) + return + } + + var boostOfStatus *gtsmodel.Status + if targetStatus.BoostOfID != "" { + boostOfStatus = >smodel.Status{} + if err := m.db.GetByID(targetStatus.BoostOfID, boostOfStatus); err != nil { + l.Errorf("error fetching boosted status %s: %s", targetStatus.BoostOfID, err) + c.JSON(http.StatusNotFound, gin.H{"error": fmt.Sprintf("status %s not found", targetStatusID)}) + return + } + } + + mastoStatus, err := m.mastoConverter.StatusToMasto(targetStatus, targetAccount, authed.Account, relevantAccounts.BoostedAccount, relevantAccounts.ReplyToAccount, boostOfStatus) + if err != nil { + l.Errorf("error converting status %s to frontend representation: %s", targetStatus.ID, err) + c.JSON(http.StatusNotFound, gin.H{"error": fmt.Sprintf("status %s not found", targetStatusID)}) + return + } + + // fave might be nil if this status wasn't faved in the first place + // we only want to pass the message to the distributor if something actually changed + if fave != nil { + fave.FavedStatus = targetStatus // attach the status pointer to the fave for easy retrieval in the distributor + m.distributor.FromClientAPI() <- distributor.FromClientAPI{ + APObjectType: gtsmodel.ActivityStreamsNote, // status is a note + APActivityType: gtsmodel.ActivityStreamsUndo, // undo the fave + Activity: fave, // pass the undone fave along + } + } + + c.JSON(http.StatusOK, mastoStatus) +} diff --git a/internal/apimodule/status/test/statuscreate_test.go b/internal/apimodule/status/test/statuscreate_test.go new file mode 100644 index 000000000..6c5aa6b7d --- /dev/null +++ b/internal/apimodule/status/test/statuscreate_test.go @@ -0,0 +1,346 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package status + +import ( + "encoding/json" + "fmt" + "io/ioutil" + "net/http" + "net/http/httptest" + "net/url" + "testing" + + "github.com/gin-gonic/gin" + "github.com/sirupsen/logrus" + "github.com/stretchr/testify/assert" + "github.com/stretchr/testify/suite" + "github.com/superseriousbusiness/gotosocial/internal/apimodule/status" + "github.com/superseriousbusiness/gotosocial/internal/config" + "github.com/superseriousbusiness/gotosocial/internal/db" + "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" + "github.com/superseriousbusiness/gotosocial/internal/distributor" + "github.com/superseriousbusiness/gotosocial/internal/mastotypes" + mastomodel "github.com/superseriousbusiness/gotosocial/internal/mastotypes/mastomodel" + "github.com/superseriousbusiness/gotosocial/internal/media" + "github.com/superseriousbusiness/gotosocial/internal/oauth" + "github.com/superseriousbusiness/gotosocial/internal/storage" + "github.com/superseriousbusiness/gotosocial/testrig" +) + +type StatusCreateTestSuite struct { + // standard suite interfaces + suite.Suite + config *config.Config + db db.DB + log *logrus.Logger + storage storage.Storage + mastoConverter mastotypes.Converter + mediaHandler media.MediaHandler + oauthServer oauth.Server + distributor distributor.Distributor + + // standard suite models + testTokens map[string]*oauth.Token + testClients map[string]*oauth.Client + testApplications map[string]*gtsmodel.Application + testUsers map[string]*gtsmodel.User + testAccounts map[string]*gtsmodel.Account + testAttachments map[string]*gtsmodel.MediaAttachment + + // module being tested + statusModule *status.StatusModule +} + +/* + TEST INFRASTRUCTURE +*/ + +// SetupSuite sets some variables on the suite that we can use as consts (more or less) throughout +func (suite *StatusCreateTestSuite) SetupSuite() { + // setup standard items + suite.config = testrig.NewTestConfig() + suite.db = testrig.NewTestDB() + suite.log = testrig.NewTestLog() + suite.storage = testrig.NewTestStorage() + suite.mastoConverter = testrig.NewTestMastoConverter(suite.db) + suite.mediaHandler = testrig.NewTestMediaHandler(suite.db, suite.storage) + suite.oauthServer = testrig.NewTestOauthServer(suite.db) + suite.distributor = testrig.NewTestDistributor() + + // setup module being tested + suite.statusModule = status.New(suite.config, suite.db, suite.mediaHandler, suite.mastoConverter, suite.distributor, suite.log).(*status.StatusModule) +} + +func (suite *StatusCreateTestSuite) TearDownSuite() { + testrig.StandardDBTeardown(suite.db) + testrig.StandardStorageTeardown(suite.storage) +} + +func (suite *StatusCreateTestSuite) SetupTest() { + testrig.StandardDBSetup(suite.db) + testrig.StandardStorageSetup(suite.storage, "../../../testrig/media") + suite.testTokens = testrig.NewTestTokens() + suite.testClients = testrig.NewTestClients() + suite.testApplications = testrig.NewTestApplications() + suite.testUsers = testrig.NewTestUsers() + suite.testAccounts = testrig.NewTestAccounts() + suite.testAttachments = testrig.NewTestAttachments() +} + +// TearDownTest drops tables to make sure there's no data in the db +func (suite *StatusCreateTestSuite) TearDownTest() { + testrig.StandardDBTeardown(suite.db) +} + +/* + ACTUAL TESTS +*/ + +/* + TESTING: StatusCreatePOSTHandler +*/ + +// Post a new status with some custom visibility settings +func (suite *StatusCreateTestSuite) TestPostNewStatus() { + + t := suite.testTokens["local_account_1"] + oauthToken := oauth.PGTokenToOauthToken(t) + + // setup + recorder := httptest.NewRecorder() + ctx, _ := gin.CreateTestContext(recorder) + ctx.Set(oauth.SessionAuthorizedApplication, suite.testApplications["application_1"]) + ctx.Set(oauth.SessionAuthorizedToken, oauthToken) + ctx.Set(oauth.SessionAuthorizedUser, suite.testUsers["local_account_1"]) + ctx.Set(oauth.SessionAuthorizedAccount, suite.testAccounts["local_account_1"]) + ctx.Request = httptest.NewRequest(http.MethodPost, fmt.Sprintf("http://localhost:8080/%s", status.BasePath), nil) // the endpoint we're hitting + ctx.Request.Form = url.Values{ + "status": {"this is a brand new status! #helloworld"}, + "spoiler_text": {"hello hello"}, + "sensitive": {"true"}, + "visibility_advanced": {"mutuals_only"}, + "likeable": {"false"}, + "replyable": {"false"}, + "federated": {"false"}, + } + suite.statusModule.StatusCreatePOSTHandler(ctx) + + // check response + + // 1. we should have OK from our call to the function + suite.EqualValues(http.StatusOK, recorder.Code) + + result := recorder.Result() + defer result.Body.Close() + b, err := ioutil.ReadAll(result.Body) + assert.NoError(suite.T(), err) + + statusReply := &mastomodel.Status{} + err = json.Unmarshal(b, statusReply) + assert.NoError(suite.T(), err) + + assert.Equal(suite.T(), "hello hello", statusReply.SpoilerText) + assert.Equal(suite.T(), "this is a brand new status! #helloworld", statusReply.Content) + assert.True(suite.T(), statusReply.Sensitive) + assert.Equal(suite.T(), mastomodel.VisibilityPrivate, statusReply.Visibility) + assert.Len(suite.T(), statusReply.Tags, 1) + assert.Equal(suite.T(), mastomodel.Tag{ + Name: "helloworld", + URL: "http://localhost:8080/tags/helloworld", + }, statusReply.Tags[0]) + + gtsTag := >smodel.Tag{} + err = suite.db.GetWhere("name", "helloworld", gtsTag) + assert.NoError(suite.T(), err) + assert.Equal(suite.T(), statusReply.Account.ID, gtsTag.FirstSeenFromAccountID) +} + +func (suite *StatusCreateTestSuite) TestPostNewStatusWithEmoji() { + + t := suite.testTokens["local_account_1"] + oauthToken := oauth.PGTokenToOauthToken(t) + + // setup + recorder := httptest.NewRecorder() + ctx, _ := gin.CreateTestContext(recorder) + ctx.Set(oauth.SessionAuthorizedApplication, suite.testApplications["application_1"]) + ctx.Set(oauth.SessionAuthorizedToken, oauthToken) + ctx.Set(oauth.SessionAuthorizedUser, suite.testUsers["local_account_1"]) + ctx.Set(oauth.SessionAuthorizedAccount, suite.testAccounts["local_account_1"]) + ctx.Request = httptest.NewRequest(http.MethodPost, fmt.Sprintf("http://localhost:8080/%s", status.BasePath), nil) // the endpoint we're hitting + ctx.Request.Form = url.Values{ + "status": {"here is a rainbow emoji a few times! :rainbow: :rainbow: :rainbow: \n here's an emoji that isn't in the db: :test_emoji: "}, + } + suite.statusModule.StatusCreatePOSTHandler(ctx) + + suite.EqualValues(http.StatusOK, recorder.Code) + + result := recorder.Result() + defer result.Body.Close() + b, err := ioutil.ReadAll(result.Body) + assert.NoError(suite.T(), err) + + statusReply := &mastomodel.Status{} + err = json.Unmarshal(b, statusReply) + assert.NoError(suite.T(), err) + + assert.Equal(suite.T(), "", statusReply.SpoilerText) + assert.Equal(suite.T(), "here is a rainbow emoji a few times! :rainbow: :rainbow: :rainbow: \n here's an emoji that isn't in the db: :test_emoji: ", statusReply.Content) + + assert.Len(suite.T(), statusReply.Emojis, 1) + mastoEmoji := statusReply.Emojis[0] + gtsEmoji := testrig.NewTestEmojis()["rainbow"] + + assert.Equal(suite.T(), gtsEmoji.Shortcode, mastoEmoji.Shortcode) + assert.Equal(suite.T(), gtsEmoji.ImageURL, mastoEmoji.URL) + assert.Equal(suite.T(), gtsEmoji.ImageStaticURL, mastoEmoji.StaticURL) +} + +// Try to reply to a status that doesn't exist +func (suite *StatusCreateTestSuite) TestReplyToNonexistentStatus() { + t := suite.testTokens["local_account_1"] + oauthToken := oauth.PGTokenToOauthToken(t) + + // setup + recorder := httptest.NewRecorder() + ctx, _ := gin.CreateTestContext(recorder) + ctx.Set(oauth.SessionAuthorizedApplication, suite.testApplications["application_1"]) + ctx.Set(oauth.SessionAuthorizedToken, oauthToken) + ctx.Set(oauth.SessionAuthorizedUser, suite.testUsers["local_account_1"]) + ctx.Set(oauth.SessionAuthorizedAccount, suite.testAccounts["local_account_1"]) + ctx.Request = httptest.NewRequest(http.MethodPost, fmt.Sprintf("http://localhost:8080/%s", status.BasePath), nil) // the endpoint we're hitting + ctx.Request.Form = url.Values{ + "status": {"this is a reply to a status that doesn't exist"}, + "spoiler_text": {"don't open cuz it won't work"}, + "in_reply_to_id": {"3759e7ef-8ee1-4c0c-86f6-8b70b9ad3d50"}, + } + suite.statusModule.StatusCreatePOSTHandler(ctx) + + // check response + + suite.EqualValues(http.StatusBadRequest, recorder.Code) + + result := recorder.Result() + defer result.Body.Close() + b, err := ioutil.ReadAll(result.Body) + assert.NoError(suite.T(), err) + assert.Equal(suite.T(), `{"error":"status with id 3759e7ef-8ee1-4c0c-86f6-8b70b9ad3d50 not replyable because it doesn't exist"}`, string(b)) +} + +// Post a reply to the status of a local user that allows replies. +func (suite *StatusCreateTestSuite) TestReplyToLocalStatus() { + t := suite.testTokens["local_account_1"] + oauthToken := oauth.PGTokenToOauthToken(t) + + // setup + recorder := httptest.NewRecorder() + ctx, _ := gin.CreateTestContext(recorder) + ctx.Set(oauth.SessionAuthorizedApplication, suite.testApplications["application_1"]) + ctx.Set(oauth.SessionAuthorizedToken, oauthToken) + ctx.Set(oauth.SessionAuthorizedUser, suite.testUsers["local_account_1"]) + ctx.Set(oauth.SessionAuthorizedAccount, suite.testAccounts["local_account_1"]) + ctx.Request = httptest.NewRequest(http.MethodPost, fmt.Sprintf("http://localhost:8080/%s", status.BasePath), nil) // the endpoint we're hitting + ctx.Request.Form = url.Values{ + "status": {fmt.Sprintf("hello @%s this reply should work!", testrig.NewTestAccounts()["local_account_2"].Username)}, + "in_reply_to_id": {testrig.NewTestStatuses()["local_account_2_status_1"].ID}, + } + suite.statusModule.StatusCreatePOSTHandler(ctx) + + // check response + suite.EqualValues(http.StatusOK, recorder.Code) + + result := recorder.Result() + defer result.Body.Close() + b, err := ioutil.ReadAll(result.Body) + assert.NoError(suite.T(), err) + + statusReply := &mastomodel.Status{} + err = json.Unmarshal(b, statusReply) + assert.NoError(suite.T(), err) + + assert.Equal(suite.T(), "", statusReply.SpoilerText) + assert.Equal(suite.T(), fmt.Sprintf("hello @%s this reply should work!", testrig.NewTestAccounts()["local_account_2"].Username), statusReply.Content) + assert.False(suite.T(), statusReply.Sensitive) + assert.Equal(suite.T(), mastomodel.VisibilityPublic, statusReply.Visibility) + assert.Equal(suite.T(), testrig.NewTestStatuses()["local_account_2_status_1"].ID, statusReply.InReplyToID) + assert.Equal(suite.T(), testrig.NewTestAccounts()["local_account_2"].ID, statusReply.InReplyToAccountID) + assert.Len(suite.T(), statusReply.Mentions, 1) +} + +// Take a media file which is currently not associated with a status, and attach it to a new status. +func (suite *StatusCreateTestSuite) TestAttachNewMediaSuccess() { + t := suite.testTokens["local_account_1"] + oauthToken := oauth.PGTokenToOauthToken(t) + + // setup + recorder := httptest.NewRecorder() + ctx, _ := gin.CreateTestContext(recorder) + ctx.Set(oauth.SessionAuthorizedApplication, suite.testApplications["application_1"]) + ctx.Set(oauth.SessionAuthorizedToken, oauthToken) + ctx.Set(oauth.SessionAuthorizedUser, suite.testUsers["local_account_1"]) + ctx.Set(oauth.SessionAuthorizedAccount, suite.testAccounts["local_account_1"]) + ctx.Request = httptest.NewRequest(http.MethodPost, fmt.Sprintf("http://localhost:8080/%s", status.BasePath), nil) // the endpoint we're hitting + ctx.Request.Form = url.Values{ + "status": {"here's an image attachment"}, + "media_ids": {"7a3b9f77-ab30-461e-bdd8-e64bd1db3008"}, + } + suite.statusModule.StatusCreatePOSTHandler(ctx) + + // check response + suite.EqualValues(http.StatusOK, recorder.Code) + + result := recorder.Result() + defer result.Body.Close() + b, err := ioutil.ReadAll(result.Body) + assert.NoError(suite.T(), err) + + fmt.Println(string(b)) + + statusReply := &mastomodel.Status{} + err = json.Unmarshal(b, statusReply) + assert.NoError(suite.T(), err) + + assert.Equal(suite.T(), "", statusReply.SpoilerText) + assert.Equal(suite.T(), "here's an image attachment", statusReply.Content) + assert.False(suite.T(), statusReply.Sensitive) + assert.Equal(suite.T(), mastomodel.VisibilityPublic, statusReply.Visibility) + + // there should be one media attachment + assert.Len(suite.T(), statusReply.MediaAttachments, 1) + + // get the updated media attachment from the database + gtsAttachment := >smodel.MediaAttachment{} + err = suite.db.GetByID(statusReply.MediaAttachments[0].ID, gtsAttachment) + assert.NoError(suite.T(), err) + + // convert it to a masto attachment + gtsAttachmentAsMasto, err := suite.mastoConverter.AttachmentToMasto(gtsAttachment) + assert.NoError(suite.T(), err) + + // compare it with what we have now + assert.EqualValues(suite.T(), statusReply.MediaAttachments[0], gtsAttachmentAsMasto) + + // the status id of the attachment should now be set to the id of the status we just created + assert.Equal(suite.T(), statusReply.ID, gtsAttachment.StatusID) +} + +func TestStatusCreateTestSuite(t *testing.T) { + suite.Run(t, new(StatusCreateTestSuite)) +} diff --git a/internal/apimodule/status/test/statusfave_test.go b/internal/apimodule/status/test/statusfave_test.go new file mode 100644 index 000000000..b15e57e77 --- /dev/null +++ b/internal/apimodule/status/test/statusfave_test.go @@ -0,0 +1,207 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package status + +import ( + "encoding/json" + "fmt" + "io/ioutil" + "net/http" + "net/http/httptest" + "strings" + "testing" + + "github.com/gin-gonic/gin" + "github.com/sirupsen/logrus" + "github.com/stretchr/testify/assert" + "github.com/stretchr/testify/suite" + "github.com/superseriousbusiness/gotosocial/internal/apimodule/status" + "github.com/superseriousbusiness/gotosocial/internal/config" + "github.com/superseriousbusiness/gotosocial/internal/db" + "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" + "github.com/superseriousbusiness/gotosocial/internal/distributor" + "github.com/superseriousbusiness/gotosocial/internal/mastotypes" + mastomodel "github.com/superseriousbusiness/gotosocial/internal/mastotypes/mastomodel" + "github.com/superseriousbusiness/gotosocial/internal/media" + "github.com/superseriousbusiness/gotosocial/internal/oauth" + "github.com/superseriousbusiness/gotosocial/internal/storage" + "github.com/superseriousbusiness/gotosocial/testrig" +) + +type StatusFaveTestSuite struct { + // standard suite interfaces + suite.Suite + config *config.Config + db db.DB + log *logrus.Logger + storage storage.Storage + mastoConverter mastotypes.Converter + mediaHandler media.MediaHandler + oauthServer oauth.Server + distributor distributor.Distributor + + // standard suite models + testTokens map[string]*oauth.Token + testClients map[string]*oauth.Client + testApplications map[string]*gtsmodel.Application + testUsers map[string]*gtsmodel.User + testAccounts map[string]*gtsmodel.Account + testAttachments map[string]*gtsmodel.MediaAttachment + testStatuses map[string]*gtsmodel.Status + + // module being tested + statusModule *status.StatusModule +} + +/* + TEST INFRASTRUCTURE +*/ + +// SetupSuite sets some variables on the suite that we can use as consts (more or less) throughout +func (suite *StatusFaveTestSuite) SetupSuite() { + // setup standard items + suite.config = testrig.NewTestConfig() + suite.db = testrig.NewTestDB() + suite.log = testrig.NewTestLog() + suite.storage = testrig.NewTestStorage() + suite.mastoConverter = testrig.NewTestMastoConverter(suite.db) + suite.mediaHandler = testrig.NewTestMediaHandler(suite.db, suite.storage) + suite.oauthServer = testrig.NewTestOauthServer(suite.db) + suite.distributor = testrig.NewTestDistributor() + + // setup module being tested + suite.statusModule = status.New(suite.config, suite.db, suite.mediaHandler, suite.mastoConverter, suite.distributor, suite.log).(*status.StatusModule) +} + +func (suite *StatusFaveTestSuite) TearDownSuite() { + testrig.StandardDBTeardown(suite.db) + testrig.StandardStorageTeardown(suite.storage) +} + +func (suite *StatusFaveTestSuite) SetupTest() { + testrig.StandardDBSetup(suite.db) + testrig.StandardStorageSetup(suite.storage, "../../../../testrig/media") + suite.testTokens = testrig.NewTestTokens() + suite.testClients = testrig.NewTestClients() + suite.testApplications = testrig.NewTestApplications() + suite.testUsers = testrig.NewTestUsers() + suite.testAccounts = testrig.NewTestAccounts() + suite.testAttachments = testrig.NewTestAttachments() + suite.testStatuses = testrig.NewTestStatuses() +} + +// TearDownTest drops tables to make sure there's no data in the db +func (suite *StatusFaveTestSuite) TearDownTest() { + testrig.StandardDBTeardown(suite.db) + testrig.StandardStorageTeardown(suite.storage) +} + +/* + ACTUAL TESTS +*/ + +// fave a status +func (suite *StatusFaveTestSuite) TestPostFave() { + + t := suite.testTokens["local_account_1"] + oauthToken := oauth.PGTokenToOauthToken(t) + + targetStatus := suite.testStatuses["admin_account_status_2"] + + // setup + recorder := httptest.NewRecorder() + ctx, _ := gin.CreateTestContext(recorder) + ctx.Set(oauth.SessionAuthorizedApplication, suite.testApplications["application_1"]) + ctx.Set(oauth.SessionAuthorizedToken, oauthToken) + ctx.Set(oauth.SessionAuthorizedUser, suite.testUsers["local_account_1"]) + ctx.Set(oauth.SessionAuthorizedAccount, suite.testAccounts["local_account_1"]) + ctx.Request = httptest.NewRequest(http.MethodPost, fmt.Sprintf("http://localhost:8080%s", strings.Replace(status.FavouritePath, ":id", targetStatus.ID, 1)), nil) // the endpoint we're hitting + + // normally the router would populate these params from the path values, + // but because we're calling the function directly, we need to set them manually. + ctx.Params = gin.Params{ + gin.Param{ + Key: status.IDKey, + Value: targetStatus.ID, + }, + } + + suite.statusModule.StatusFavePOSTHandler(ctx) + + // check response + suite.EqualValues(http.StatusOK, recorder.Code) + + result := recorder.Result() + defer result.Body.Close() + b, err := ioutil.ReadAll(result.Body) + assert.NoError(suite.T(), err) + + statusReply := &mastomodel.Status{} + err = json.Unmarshal(b, statusReply) + assert.NoError(suite.T(), err) + + assert.Equal(suite.T(), targetStatus.ContentWarning, statusReply.SpoilerText) + assert.Equal(suite.T(), targetStatus.Content, statusReply.Content) + assert.True(suite.T(), statusReply.Sensitive) + assert.Equal(suite.T(), mastomodel.VisibilityPublic, statusReply.Visibility) + assert.True(suite.T(), statusReply.Favourited) + assert.Equal(suite.T(), 1, statusReply.FavouritesCount) +} + +// try to fave a status that's not faveable +func (suite *StatusFaveTestSuite) TestPostUnfaveable() { + + t := suite.testTokens["local_account_1"] + oauthToken := oauth.PGTokenToOauthToken(t) + + targetStatus := suite.testStatuses["local_account_2_status_3"] // this one is unlikeable and unreplyable + + // setup + recorder := httptest.NewRecorder() + ctx, _ := gin.CreateTestContext(recorder) + ctx.Set(oauth.SessionAuthorizedApplication, suite.testApplications["application_1"]) + ctx.Set(oauth.SessionAuthorizedToken, oauthToken) + ctx.Set(oauth.SessionAuthorizedUser, suite.testUsers["local_account_1"]) + ctx.Set(oauth.SessionAuthorizedAccount, suite.testAccounts["local_account_1"]) + ctx.Request = httptest.NewRequest(http.MethodPost, fmt.Sprintf("http://localhost:8080%s", strings.Replace(status.FavouritePath, ":id", targetStatus.ID, 1)), nil) // the endpoint we're hitting + + // normally the router would populate these params from the path values, + // but because we're calling the function directly, we need to set them manually. + ctx.Params = gin.Params{ + gin.Param{ + Key: status.IDKey, + Value: targetStatus.ID, + }, + } + + suite.statusModule.StatusFavePOSTHandler(ctx) + + // check response + suite.EqualValues(http.StatusForbidden, recorder.Code) // we 403 unlikeable statuses + + result := recorder.Result() + defer result.Body.Close() + b, err := ioutil.ReadAll(result.Body) + assert.NoError(suite.T(), err) + assert.Equal(suite.T(), fmt.Sprintf(`{"error":"status %s not faveable"}`, targetStatus.ID), string(b)) +} + +func TestStatusFaveTestSuite(t *testing.T) { + suite.Run(t, new(StatusFaveTestSuite)) +} diff --git a/internal/apimodule/status/test/statusfavedby_test.go b/internal/apimodule/status/test/statusfavedby_test.go new file mode 100644 index 000000000..83f66562b --- /dev/null +++ b/internal/apimodule/status/test/statusfavedby_test.go @@ -0,0 +1,159 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package status + +import ( + "encoding/json" + "fmt" + "io/ioutil" + "net/http" + "net/http/httptest" + "strings" + "testing" + + "github.com/gin-gonic/gin" + "github.com/sirupsen/logrus" + "github.com/stretchr/testify/assert" + "github.com/stretchr/testify/suite" + "github.com/superseriousbusiness/gotosocial/internal/apimodule/status" + "github.com/superseriousbusiness/gotosocial/internal/config" + "github.com/superseriousbusiness/gotosocial/internal/db" + "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" + "github.com/superseriousbusiness/gotosocial/internal/distributor" + "github.com/superseriousbusiness/gotosocial/internal/mastotypes" + mastomodel "github.com/superseriousbusiness/gotosocial/internal/mastotypes/mastomodel" + "github.com/superseriousbusiness/gotosocial/internal/media" + "github.com/superseriousbusiness/gotosocial/internal/oauth" + "github.com/superseriousbusiness/gotosocial/internal/storage" + "github.com/superseriousbusiness/gotosocial/testrig" +) + +type StatusFavedByTestSuite struct { + // standard suite interfaces + suite.Suite + config *config.Config + db db.DB + log *logrus.Logger + storage storage.Storage + mastoConverter mastotypes.Converter + mediaHandler media.MediaHandler + oauthServer oauth.Server + distributor distributor.Distributor + + // standard suite models + testTokens map[string]*oauth.Token + testClients map[string]*oauth.Client + testApplications map[string]*gtsmodel.Application + testUsers map[string]*gtsmodel.User + testAccounts map[string]*gtsmodel.Account + testAttachments map[string]*gtsmodel.MediaAttachment + testStatuses map[string]*gtsmodel.Status + + // module being tested + statusModule *status.StatusModule +} + +// SetupSuite sets some variables on the suite that we can use as consts (more or less) throughout +func (suite *StatusFavedByTestSuite) SetupSuite() { + // setup standard items + suite.config = testrig.NewTestConfig() + suite.db = testrig.NewTestDB() + suite.log = testrig.NewTestLog() + suite.storage = testrig.NewTestStorage() + suite.mastoConverter = testrig.NewTestMastoConverter(suite.db) + suite.mediaHandler = testrig.NewTestMediaHandler(suite.db, suite.storage) + suite.oauthServer = testrig.NewTestOauthServer(suite.db) + suite.distributor = testrig.NewTestDistributor() + + // setup module being tested + suite.statusModule = status.New(suite.config, suite.db, suite.mediaHandler, suite.mastoConverter, suite.distributor, suite.log).(*status.StatusModule) +} + +func (suite *StatusFavedByTestSuite) TearDownSuite() { + testrig.StandardDBTeardown(suite.db) + testrig.StandardStorageTeardown(suite.storage) +} + +func (suite *StatusFavedByTestSuite) SetupTest() { + testrig.StandardDBSetup(suite.db) + testrig.StandardStorageSetup(suite.storage, "../../../../testrig/media") + suite.testTokens = testrig.NewTestTokens() + suite.testClients = testrig.NewTestClients() + suite.testApplications = testrig.NewTestApplications() + suite.testUsers = testrig.NewTestUsers() + suite.testAccounts = testrig.NewTestAccounts() + suite.testAttachments = testrig.NewTestAttachments() + suite.testStatuses = testrig.NewTestStatuses() +} + +// TearDownTest drops tables to make sure there's no data in the db +func (suite *StatusFavedByTestSuite) TearDownTest() { + testrig.StandardDBTeardown(suite.db) + testrig.StandardStorageTeardown(suite.storage) +} + +/* + ACTUAL TESTS +*/ + +func (suite *StatusFavedByTestSuite) TestGetFavedBy() { + t := suite.testTokens["local_account_2"] + oauthToken := oauth.PGTokenToOauthToken(t) + + targetStatus := suite.testStatuses["admin_account_status_1"] // this status is faved by local_account_1 + + // setup + recorder := httptest.NewRecorder() + ctx, _ := gin.CreateTestContext(recorder) + ctx.Set(oauth.SessionAuthorizedApplication, suite.testApplications["application_2"]) + ctx.Set(oauth.SessionAuthorizedToken, oauthToken) + ctx.Set(oauth.SessionAuthorizedUser, suite.testUsers["local_account_2"]) + ctx.Set(oauth.SessionAuthorizedAccount, suite.testAccounts["local_account_2"]) + ctx.Request = httptest.NewRequest(http.MethodPost, fmt.Sprintf("http://localhost:8080%s", strings.Replace(status.FavouritedPath, ":id", targetStatus.ID, 1)), nil) // the endpoint we're hitting + + // normally the router would populate these params from the path values, + // but because we're calling the function directly, we need to set them manually. + ctx.Params = gin.Params{ + gin.Param{ + Key: status.IDKey, + Value: targetStatus.ID, + }, + } + + suite.statusModule.StatusFavedByGETHandler(ctx) + + // check response + suite.EqualValues(http.StatusOK, recorder.Code) + + result := recorder.Result() + defer result.Body.Close() + b, err := ioutil.ReadAll(result.Body) + assert.NoError(suite.T(), err) + + accts := []mastomodel.Account{} + err = json.Unmarshal(b, &accts) + assert.NoError(suite.T(), err) + + assert.Len(suite.T(), accts, 1) + assert.Equal(suite.T(), "the_mighty_zork", accts[0].Username) +} + +func TestStatusFavedByTestSuite(t *testing.T) { + suite.Run(t, new(StatusFavedByTestSuite)) +} diff --git a/internal/apimodule/status/test/statusget_test.go b/internal/apimodule/status/test/statusget_test.go new file mode 100644 index 000000000..2c2e98acd --- /dev/null +++ b/internal/apimodule/status/test/statusget_test.go @@ -0,0 +1,168 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package status + +import ( + "testing" + + "github.com/sirupsen/logrus" + "github.com/stretchr/testify/suite" + "github.com/superseriousbusiness/gotosocial/internal/apimodule/status" + "github.com/superseriousbusiness/gotosocial/internal/config" + "github.com/superseriousbusiness/gotosocial/internal/db" + "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" + "github.com/superseriousbusiness/gotosocial/internal/distributor" + "github.com/superseriousbusiness/gotosocial/internal/mastotypes" + "github.com/superseriousbusiness/gotosocial/internal/media" + "github.com/superseriousbusiness/gotosocial/internal/oauth" + "github.com/superseriousbusiness/gotosocial/internal/storage" + "github.com/superseriousbusiness/gotosocial/testrig" +) + +type StatusGetTestSuite struct { + // standard suite interfaces + suite.Suite + config *config.Config + db db.DB + log *logrus.Logger + storage storage.Storage + mastoConverter mastotypes.Converter + mediaHandler media.MediaHandler + oauthServer oauth.Server + distributor distributor.Distributor + + // standard suite models + testTokens map[string]*oauth.Token + testClients map[string]*oauth.Client + testApplications map[string]*gtsmodel.Application + testUsers map[string]*gtsmodel.User + testAccounts map[string]*gtsmodel.Account + testAttachments map[string]*gtsmodel.MediaAttachment + + // module being tested + statusModule *status.StatusModule +} + +/* + TEST INFRASTRUCTURE +*/ + +// SetupSuite sets some variables on the suite that we can use as consts (more or less) throughout +func (suite *StatusGetTestSuite) SetupSuite() { + // setup standard items + suite.config = testrig.NewTestConfig() + suite.db = testrig.NewTestDB() + suite.log = testrig.NewTestLog() + suite.storage = testrig.NewTestStorage() + suite.mastoConverter = testrig.NewTestMastoConverter(suite.db) + suite.mediaHandler = testrig.NewTestMediaHandler(suite.db, suite.storage) + suite.oauthServer = testrig.NewTestOauthServer(suite.db) + suite.distributor = testrig.NewTestDistributor() + + // setup module being tested + suite.statusModule = status.New(suite.config, suite.db, suite.mediaHandler, suite.mastoConverter, suite.distributor, suite.log).(*status.StatusModule) +} + +func (suite *StatusGetTestSuite) TearDownSuite() { + testrig.StandardDBTeardown(suite.db) + testrig.StandardStorageTeardown(suite.storage) +} + +func (suite *StatusGetTestSuite) SetupTest() { + testrig.StandardDBSetup(suite.db) + testrig.StandardStorageSetup(suite.storage, "../../../testrig/media") + suite.testTokens = testrig.NewTestTokens() + suite.testClients = testrig.NewTestClients() + suite.testApplications = testrig.NewTestApplications() + suite.testUsers = testrig.NewTestUsers() + suite.testAccounts = testrig.NewTestAccounts() + suite.testAttachments = testrig.NewTestAttachments() +} + +// TearDownTest drops tables to make sure there's no data in the db +func (suite *StatusGetTestSuite) TearDownTest() { + testrig.StandardDBTeardown(suite.db) +} + +/* + ACTUAL TESTS +*/ + +/* + TESTING: StatusGetPOSTHandler +*/ + +// Post a new status with some custom visibility settings +func (suite *StatusGetTestSuite) TestPostNewStatus() { + + // t := suite.testTokens["local_account_1"] + // oauthToken := oauth.PGTokenToOauthToken(t) + + // // setup + // recorder := httptest.NewRecorder() + // ctx, _ := gin.CreateTestContext(recorder) + // ctx.Set(oauth.SessionAuthorizedApplication, suite.testApplications["application_1"]) + // ctx.Set(oauth.SessionAuthorizedToken, oauthToken) + // ctx.Set(oauth.SessionAuthorizedUser, suite.testUsers["local_account_1"]) + // ctx.Set(oauth.SessionAuthorizedAccount, suite.testAccounts["local_account_1"]) + // ctx.Request = httptest.NewRequest(http.MethodPost, fmt.Sprintf("http://localhost:8080/%s", basePath), nil) // the endpoint we're hitting + // ctx.Request.Form = url.Values{ + // "status": {"this is a brand new status! #helloworld"}, + // "spoiler_text": {"hello hello"}, + // "sensitive": {"true"}, + // "visibility_advanced": {"mutuals_only"}, + // "likeable": {"false"}, + // "replyable": {"false"}, + // "federated": {"false"}, + // } + // suite.statusModule.statusGETHandler(ctx) + + // // check response + + // // 1. we should have OK from our call to the function + // suite.EqualValues(http.StatusOK, recorder.Code) + + // result := recorder.Result() + // defer result.Body.Close() + // b, err := ioutil.ReadAll(result.Body) + // assert.NoError(suite.T(), err) + + // statusReply := &mastomodel.Status{} + // err = json.Unmarshal(b, statusReply) + // assert.NoError(suite.T(), err) + + // assert.Equal(suite.T(), "hello hello", statusReply.SpoilerText) + // assert.Equal(suite.T(), "this is a brand new status! #helloworld", statusReply.Content) + // assert.True(suite.T(), statusReply.Sensitive) + // assert.Equal(suite.T(), mastomodel.VisibilityPrivate, statusReply.Visibility) + // assert.Len(suite.T(), statusReply.Tags, 1) + // assert.Equal(suite.T(), mastomodel.Tag{ + // Name: "helloworld", + // URL: "http://localhost:8080/tags/helloworld", + // }, statusReply.Tags[0]) + + // gtsTag := >smodel.Tag{} + // err = suite.db.GetWhere("name", "helloworld", gtsTag) + // assert.NoError(suite.T(), err) + // assert.Equal(suite.T(), statusReply.Account.ID, gtsTag.FirstSeenFromAccountID) +} + +func TestStatusGetTestSuite(t *testing.T) { + suite.Run(t, new(StatusGetTestSuite)) +} diff --git a/internal/apimodule/status/test/statusunfave_test.go b/internal/apimodule/status/test/statusunfave_test.go new file mode 100644 index 000000000..81276a1ed --- /dev/null +++ b/internal/apimodule/status/test/statusunfave_test.go @@ -0,0 +1,219 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package status + +import ( + "encoding/json" + "fmt" + "io/ioutil" + "net/http" + "net/http/httptest" + "strings" + "testing" + + "github.com/gin-gonic/gin" + "github.com/sirupsen/logrus" + "github.com/stretchr/testify/assert" + "github.com/stretchr/testify/suite" + "github.com/superseriousbusiness/gotosocial/internal/apimodule/status" + "github.com/superseriousbusiness/gotosocial/internal/config" + "github.com/superseriousbusiness/gotosocial/internal/db" + "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" + "github.com/superseriousbusiness/gotosocial/internal/distributor" + "github.com/superseriousbusiness/gotosocial/internal/mastotypes" + mastomodel "github.com/superseriousbusiness/gotosocial/internal/mastotypes/mastomodel" + "github.com/superseriousbusiness/gotosocial/internal/media" + "github.com/superseriousbusiness/gotosocial/internal/oauth" + "github.com/superseriousbusiness/gotosocial/internal/storage" + "github.com/superseriousbusiness/gotosocial/testrig" +) + +type StatusUnfaveTestSuite struct { + // standard suite interfaces + suite.Suite + config *config.Config + db db.DB + log *logrus.Logger + storage storage.Storage + mastoConverter mastotypes.Converter + mediaHandler media.MediaHandler + oauthServer oauth.Server + distributor distributor.Distributor + + // standard suite models + testTokens map[string]*oauth.Token + testClients map[string]*oauth.Client + testApplications map[string]*gtsmodel.Application + testUsers map[string]*gtsmodel.User + testAccounts map[string]*gtsmodel.Account + testAttachments map[string]*gtsmodel.MediaAttachment + testStatuses map[string]*gtsmodel.Status + + // module being tested + statusModule *status.StatusModule +} + +/* + TEST INFRASTRUCTURE +*/ + +// SetupSuite sets some variables on the suite that we can use as consts (more or less) throughout +func (suite *StatusUnfaveTestSuite) SetupSuite() { + // setup standard items + suite.config = testrig.NewTestConfig() + suite.db = testrig.NewTestDB() + suite.log = testrig.NewTestLog() + suite.storage = testrig.NewTestStorage() + suite.mastoConverter = testrig.NewTestMastoConverter(suite.db) + suite.mediaHandler = testrig.NewTestMediaHandler(suite.db, suite.storage) + suite.oauthServer = testrig.NewTestOauthServer(suite.db) + suite.distributor = testrig.NewTestDistributor() + + // setup module being tested + suite.statusModule = status.New(suite.config, suite.db, suite.mediaHandler, suite.mastoConverter, suite.distributor, suite.log).(*status.StatusModule) +} + +func (suite *StatusUnfaveTestSuite) TearDownSuite() { + testrig.StandardDBTeardown(suite.db) + testrig.StandardStorageTeardown(suite.storage) +} + +func (suite *StatusUnfaveTestSuite) SetupTest() { + testrig.StandardDBSetup(suite.db) + testrig.StandardStorageSetup(suite.storage, "../../../../testrig/media") + suite.testTokens = testrig.NewTestTokens() + suite.testClients = testrig.NewTestClients() + suite.testApplications = testrig.NewTestApplications() + suite.testUsers = testrig.NewTestUsers() + suite.testAccounts = testrig.NewTestAccounts() + suite.testAttachments = testrig.NewTestAttachments() + suite.testStatuses = testrig.NewTestStatuses() +} + +// TearDownTest drops tables to make sure there's no data in the db +func (suite *StatusUnfaveTestSuite) TearDownTest() { + testrig.StandardDBTeardown(suite.db) + testrig.StandardStorageTeardown(suite.storage) +} + +/* + ACTUAL TESTS +*/ + +// unfave a status +func (suite *StatusUnfaveTestSuite) TestPostUnfave() { + + t := suite.testTokens["local_account_1"] + oauthToken := oauth.PGTokenToOauthToken(t) + + // this is the status we wanna unfave: in the testrig it's already faved by this account + targetStatus := suite.testStatuses["admin_account_status_1"] + + // setup + recorder := httptest.NewRecorder() + ctx, _ := gin.CreateTestContext(recorder) + ctx.Set(oauth.SessionAuthorizedApplication, suite.testApplications["application_1"]) + ctx.Set(oauth.SessionAuthorizedToken, oauthToken) + ctx.Set(oauth.SessionAuthorizedUser, suite.testUsers["local_account_1"]) + ctx.Set(oauth.SessionAuthorizedAccount, suite.testAccounts["local_account_1"]) + ctx.Request = httptest.NewRequest(http.MethodPost, fmt.Sprintf("http://localhost:8080%s", strings.Replace(status.UnfavouritePath, ":id", targetStatus.ID, 1)), nil) // the endpoint we're hitting + + // normally the router would populate these params from the path values, + // but because we're calling the function directly, we need to set them manually. + ctx.Params = gin.Params{ + gin.Param{ + Key: status.IDKey, + Value: targetStatus.ID, + }, + } + + suite.statusModule.StatusUnfavePOSTHandler(ctx) + + // check response + suite.EqualValues(http.StatusOK, recorder.Code) + + result := recorder.Result() + defer result.Body.Close() + b, err := ioutil.ReadAll(result.Body) + assert.NoError(suite.T(), err) + + statusReply := &mastomodel.Status{} + err = json.Unmarshal(b, statusReply) + assert.NoError(suite.T(), err) + + assert.Equal(suite.T(), targetStatus.ContentWarning, statusReply.SpoilerText) + assert.Equal(suite.T(), targetStatus.Content, statusReply.Content) + assert.False(suite.T(), statusReply.Sensitive) + assert.Equal(suite.T(), mastomodel.VisibilityPublic, statusReply.Visibility) + assert.False(suite.T(), statusReply.Favourited) + assert.Equal(suite.T(), 0, statusReply.FavouritesCount) +} + +// try to unfave a status that's already not faved +func (suite *StatusUnfaveTestSuite) TestPostAlreadyNotFaved() { + + t := suite.testTokens["local_account_1"] + oauthToken := oauth.PGTokenToOauthToken(t) + + // this is the status we wanna unfave: in the testrig it's not faved by this account + targetStatus := suite.testStatuses["admin_account_status_2"] + + // setup + recorder := httptest.NewRecorder() + ctx, _ := gin.CreateTestContext(recorder) + ctx.Set(oauth.SessionAuthorizedApplication, suite.testApplications["application_1"]) + ctx.Set(oauth.SessionAuthorizedToken, oauthToken) + ctx.Set(oauth.SessionAuthorizedUser, suite.testUsers["local_account_1"]) + ctx.Set(oauth.SessionAuthorizedAccount, suite.testAccounts["local_account_1"]) + ctx.Request = httptest.NewRequest(http.MethodPost, fmt.Sprintf("http://localhost:8080%s", strings.Replace(status.UnfavouritePath, ":id", targetStatus.ID, 1)), nil) // the endpoint we're hitting + + // normally the router would populate these params from the path values, + // but because we're calling the function directly, we need to set them manually. + ctx.Params = gin.Params{ + gin.Param{ + Key: status.IDKey, + Value: targetStatus.ID, + }, + } + + suite.statusModule.StatusUnfavePOSTHandler(ctx) + + // check response + suite.EqualValues(http.StatusOK, recorder.Code) + + result := recorder.Result() + defer result.Body.Close() + b, err := ioutil.ReadAll(result.Body) + assert.NoError(suite.T(), err) + + statusReply := &mastomodel.Status{} + err = json.Unmarshal(b, statusReply) + assert.NoError(suite.T(), err) + + assert.Equal(suite.T(), targetStatus.ContentWarning, statusReply.SpoilerText) + assert.Equal(suite.T(), targetStatus.Content, statusReply.Content) + assert.True(suite.T(), statusReply.Sensitive) + assert.Equal(suite.T(), mastomodel.VisibilityPublic, statusReply.Visibility) + assert.False(suite.T(), statusReply.Favourited) + assert.Equal(suite.T(), 0, statusReply.FavouritesCount) +} + +func TestStatusUnfaveTestSuite(t *testing.T) { + suite.Run(t, new(StatusUnfaveTestSuite)) +} diff --git a/internal/config/config.go b/internal/config/config.go index 811cf166d..a21eaa589 100644 --- a/internal/config/config.go +++ b/internal/config/config.go @@ -36,6 +36,7 @@ type Config struct { AccountsConfig *AccountsConfig `yaml:"accounts"` MediaConfig *MediaConfig `yaml:"media"` StorageConfig *StorageConfig `yaml:"storage"` + StatusesConfig *StatusesConfig `yaml:"statuses"` } // FromFile returns a new config from a file, or an error if something goes amiss. @@ -50,7 +51,7 @@ func FromFile(path string) (*Config, error) { return Empty(), nil } -// Empty just returns an empty config +// Empty just returns a new empty config func Empty() *Config { return &Config{ DBConfig: &DBConfig{}, @@ -58,6 +59,7 @@ func Empty() *Config { AccountsConfig: &AccountsConfig{}, MediaConfig: &MediaConfig{}, StorageConfig: &StorageConfig{}, + StatusesConfig: &StatusesConfig{}, } } @@ -140,8 +142,8 @@ func (c *Config) ParseCLIFlags(f KeyedFlags) { c.AccountsConfig.OpenRegistration = f.Bool(fn.AccountsOpenRegistration) } - if f.IsSet(fn.AccountsRequireApproval) { - c.AccountsConfig.RequireApproval = f.Bool(fn.AccountsRequireApproval) + if f.IsSet(fn.AccountsApprovalRequired) { + c.AccountsConfig.RequireApproval = f.Bool(fn.AccountsApprovalRequired) } // media flags @@ -153,6 +155,14 @@ func (c *Config) ParseCLIFlags(f KeyedFlags) { c.MediaConfig.MaxVideoSize = f.Int(fn.MediaMaxVideoSize) } + if c.MediaConfig.MinDescriptionChars == 0 || f.IsSet(fn.MediaMinDescriptionChars) { + c.MediaConfig.MinDescriptionChars = f.Int(fn.MediaMinDescriptionChars) + } + + if c.MediaConfig.MaxDescriptionChars == 0 || f.IsSet(fn.MediaMaxDescriptionChars) { + c.MediaConfig.MaxDescriptionChars = f.Int(fn.MediaMaxDescriptionChars) + } + // storage flags if c.StorageConfig.Backend == "" || f.IsSet(fn.StorageBackend) { c.StorageConfig.Backend = f.String(fn.StorageBackend) @@ -173,6 +183,23 @@ func (c *Config) ParseCLIFlags(f KeyedFlags) { if c.StorageConfig.ServeBasePath == "" || f.IsSet(fn.StorageServeBasePath) { c.StorageConfig.ServeBasePath = f.String(fn.StorageServeBasePath) } + + // statuses flags + if c.StatusesConfig.MaxChars == 0 || f.IsSet(fn.StatusesMaxChars) { + c.StatusesConfig.MaxChars = f.Int(fn.StatusesMaxChars) + } + if c.StatusesConfig.CWMaxChars == 0 || f.IsSet(fn.StatusesCWMaxChars) { + c.StatusesConfig.CWMaxChars = f.Int(fn.StatusesCWMaxChars) + } + if c.StatusesConfig.PollMaxOptions == 0 || f.IsSet(fn.StatusesPollMaxOptions) { + c.StatusesConfig.PollMaxOptions = f.Int(fn.StatusesPollMaxOptions) + } + if c.StatusesConfig.PollOptionMaxChars == 0 || f.IsSet(fn.StatusesPollOptionMaxChars) { + c.StatusesConfig.PollOptionMaxChars = f.Int(fn.StatusesPollOptionMaxChars) + } + if c.StatusesConfig.MaxMediaFiles == 0 || f.IsSet(fn.StatusesMaxMediaFiles) { + c.StatusesConfig.MaxMediaFiles = f.Int(fn.StatusesMaxMediaFiles) + } } // KeyedFlags is a wrapper for any type that can store keyed flags and give them back. @@ -203,16 +230,63 @@ type Flags struct { TemplateBaseDir string AccountsOpenRegistration string - AccountsRequireApproval string + AccountsApprovalRequired string + AccountsReasonRequired string - MediaMaxImageSize string - MediaMaxVideoSize string + MediaMaxImageSize string + MediaMaxVideoSize string + MediaMinDescriptionChars string + MediaMaxDescriptionChars string StorageBackend string StorageBasePath string StorageServeProtocol string StorageServeHost string StorageServeBasePath string + + StatusesMaxChars string + StatusesCWMaxChars string + StatusesPollMaxOptions string + StatusesPollOptionMaxChars string + StatusesMaxMediaFiles string +} + +type Defaults struct { + LogLevel string + ApplicationName string + ConfigPath string + Host string + Protocol string + + DbType string + DbAddress string + DbPort int + DbUser string + DbPassword string + DbDatabase string + + TemplateBaseDir string + + AccountsOpenRegistration bool + AccountsRequireApproval bool + AccountsReasonRequired bool + + MediaMaxImageSize int + MediaMaxVideoSize int + MediaMinDescriptionChars int + MediaMaxDescriptionChars int + + StorageBackend string + StorageBasePath string + StorageServeProtocol string + StorageServeHost string + StorageServeBasePath string + + StatusesMaxChars int + StatusesCWMaxChars int + StatusesPollMaxOptions int + StatusesPollOptionMaxChars int + StatusesMaxMediaFiles int } // GetFlagNames returns a struct containing the names of the various flags used for @@ -235,16 +309,25 @@ func GetFlagNames() Flags { TemplateBaseDir: "template-basedir", AccountsOpenRegistration: "accounts-open-registration", - AccountsRequireApproval: "accounts-require-approval", + AccountsApprovalRequired: "accounts-approval-required", + AccountsReasonRequired: "accounts-reason-required", - MediaMaxImageSize: "media-max-image-size", - MediaMaxVideoSize: "media-max-video-size", + MediaMaxImageSize: "media-max-image-size", + MediaMaxVideoSize: "media-max-video-size", + MediaMinDescriptionChars: "media-min-description-chars", + MediaMaxDescriptionChars: "media-max-description-chars", StorageBackend: "storage-backend", StorageBasePath: "storage-base-path", StorageServeProtocol: "storage-serve-protocol", StorageServeHost: "storage-serve-host", StorageServeBasePath: "storage-serve-base-path", + + StatusesMaxChars: "statuses-max-chars", + StatusesCWMaxChars: "statuses-cw-max-chars", + StatusesPollMaxOptions: "statuses-poll-max-options", + StatusesPollOptionMaxChars: "statuses-poll-option-max-chars", + StatusesMaxMediaFiles: "statuses-max-media-files", } } @@ -268,15 +351,24 @@ func GetEnvNames() Flags { TemplateBaseDir: "GTS_TEMPLATE_BASEDIR", AccountsOpenRegistration: "GTS_ACCOUNTS_OPEN_REGISTRATION", - AccountsRequireApproval: "GTS_ACCOUNTS_REQUIRE_APPROVAL", + AccountsApprovalRequired: "GTS_ACCOUNTS_APPROVAL_REQUIRED", + AccountsReasonRequired: "GTS_ACCOUNTS_REASON_REQUIRED", - MediaMaxImageSize: "GTS_MEDIA_MAX_IMAGE_SIZE", - MediaMaxVideoSize: "GTS_MEDIA_MAX_VIDEO_SIZE", + MediaMaxImageSize: "GTS_MEDIA_MAX_IMAGE_SIZE", + MediaMaxVideoSize: "GTS_MEDIA_MAX_VIDEO_SIZE", + MediaMinDescriptionChars: "GTS_MEDIA_MIN_DESCRIPTION_CHARS", + MediaMaxDescriptionChars: "GTS_MEDIA_MAX_DESCRIPTION_CHARS", StorageBackend: "GTS_STORAGE_BACKEND", StorageBasePath: "GTS_STORAGE_BASE_PATH", StorageServeProtocol: "GTS_STORAGE_SERVE_PROTOCOL", StorageServeHost: "GTS_STORAGE_SERVE_HOST", StorageServeBasePath: "GTS_STORAGE_SERVE_BASE_PATH", + + StatusesMaxChars: "GTS_STATUSES_MAX_CHARS", + StatusesCWMaxChars: "GTS_STATUSES_CW_MAX_CHARS", + StatusesPollMaxOptions: "GTS_STATUSES_POLL_MAX_OPTIONS", + StatusesPollOptionMaxChars: "GTS_STATUSES_POLL_OPTION_MAX_CHARS", + StatusesMaxMediaFiles: "GTS_STATUSES_MAX_MEDIA_FILES", } } diff --git a/internal/config/default.go b/internal/config/default.go new file mode 100644 index 000000000..16a7ec46d --- /dev/null +++ b/internal/config/default.go @@ -0,0 +1,177 @@ +package config + +// TestDefault returns a default config for testing +func TestDefault() *Config { + defaults := GetTestDefaults() + return &Config{ + LogLevel: defaults.LogLevel, + ApplicationName: defaults.ApplicationName, + Host: defaults.Host, + Protocol: defaults.Protocol, + DBConfig: &DBConfig{ + Type: defaults.DbType, + Address: defaults.DbAddress, + Port: defaults.DbPort, + User: defaults.DbUser, + Password: defaults.DbPassword, + Database: defaults.DbDatabase, + ApplicationName: defaults.ApplicationName, + }, + TemplateConfig: &TemplateConfig{ + BaseDir: defaults.TemplateBaseDir, + }, + AccountsConfig: &AccountsConfig{ + OpenRegistration: defaults.AccountsOpenRegistration, + RequireApproval: defaults.AccountsRequireApproval, + ReasonRequired: defaults.AccountsReasonRequired, + }, + MediaConfig: &MediaConfig{ + MaxImageSize: defaults.MediaMaxImageSize, + MaxVideoSize: defaults.MediaMaxVideoSize, + MinDescriptionChars: defaults.MediaMinDescriptionChars, + MaxDescriptionChars: defaults.MediaMaxDescriptionChars, + }, + StorageConfig: &StorageConfig{ + Backend: defaults.StorageBackend, + BasePath: defaults.StorageBasePath, + ServeProtocol: defaults.StorageServeProtocol, + ServeHost: defaults.StorageServeHost, + ServeBasePath: defaults.StorageServeBasePath, + }, + StatusesConfig: &StatusesConfig{ + MaxChars: defaults.StatusesMaxChars, + CWMaxChars: defaults.StatusesCWMaxChars, + PollMaxOptions: defaults.StatusesPollMaxOptions, + PollOptionMaxChars: defaults.StatusesPollOptionMaxChars, + MaxMediaFiles: defaults.StatusesMaxMediaFiles, + }, + } +} + +// Default returns a config with all default values set +func Default() *Config { + defaults := GetDefaults() + return &Config{ + LogLevel: defaults.LogLevel, + ApplicationName: defaults.ApplicationName, + Host: defaults.Host, + Protocol: defaults.Protocol, + DBConfig: &DBConfig{ + Type: defaults.DbType, + Address: defaults.DbAddress, + Port: defaults.DbPort, + User: defaults.DbUser, + Password: defaults.DbPassword, + Database: defaults.DbDatabase, + ApplicationName: defaults.ApplicationName, + }, + TemplateConfig: &TemplateConfig{ + BaseDir: defaults.TemplateBaseDir, + }, + AccountsConfig: &AccountsConfig{ + OpenRegistration: defaults.AccountsOpenRegistration, + RequireApproval: defaults.AccountsRequireApproval, + ReasonRequired: defaults.AccountsReasonRequired, + }, + MediaConfig: &MediaConfig{ + MaxImageSize: defaults.MediaMaxImageSize, + MaxVideoSize: defaults.MediaMaxVideoSize, + MinDescriptionChars: defaults.MediaMinDescriptionChars, + MaxDescriptionChars: defaults.MediaMaxDescriptionChars, + }, + StorageConfig: &StorageConfig{ + Backend: defaults.StorageBackend, + BasePath: defaults.StorageBasePath, + ServeProtocol: defaults.StorageServeProtocol, + ServeHost: defaults.StorageServeHost, + ServeBasePath: defaults.StorageServeBasePath, + }, + StatusesConfig: &StatusesConfig{ + MaxChars: defaults.StatusesMaxChars, + CWMaxChars: defaults.StatusesCWMaxChars, + PollMaxOptions: defaults.StatusesPollMaxOptions, + PollOptionMaxChars: defaults.StatusesPollOptionMaxChars, + MaxMediaFiles: defaults.StatusesMaxMediaFiles, + }, + } +} + +func GetDefaults() Defaults { + return Defaults{ + LogLevel: "info", + ApplicationName: "gotosocial", + ConfigPath: "", + Host: "", + Protocol: "https", + + DbType: "postgres", + DbAddress: "localhost", + DbPort: 5432, + DbUser: "postgres", + DbPassword: "postgres", + DbDatabase: "postgres", + + TemplateBaseDir: "./web/template/", + + AccountsOpenRegistration: true, + AccountsRequireApproval: true, + AccountsReasonRequired: true, + + MediaMaxImageSize: 2097152, //2mb + MediaMaxVideoSize: 10485760, //10mb + MediaMinDescriptionChars: 0, + MediaMaxDescriptionChars: 500, + + StorageBackend: "local", + StorageBasePath: "/gotosocial/storage", + StorageServeProtocol: "https", + StorageServeHost: "localhost", + StorageServeBasePath: "/fileserver", + + StatusesMaxChars: 5000, + StatusesCWMaxChars: 100, + StatusesPollMaxOptions: 6, + StatusesPollOptionMaxChars: 50, + StatusesMaxMediaFiles: 6, + } +} + +func GetTestDefaults() Defaults { + return Defaults{ + LogLevel: "trace", + ApplicationName: "gotosocial", + ConfigPath: "", + Host: "localhost:8080", + Protocol: "http", + + DbType: "postgres", + DbAddress: "localhost", + DbPort: 5432, + DbUser: "postgres", + DbPassword: "postgres", + DbDatabase: "postgres", + + TemplateBaseDir: "./web/template/", + + AccountsOpenRegistration: true, + AccountsRequireApproval: true, + AccountsReasonRequired: true, + + MediaMaxImageSize: 1048576, //1mb + MediaMaxVideoSize: 5242880, //5mb + MediaMinDescriptionChars: 0, + MediaMaxDescriptionChars: 500, + + StorageBackend: "local", + StorageBasePath: "/gotosocial/storage", + StorageServeProtocol: "http", + StorageServeHost: "localhost:8080", + StorageServeBasePath: "/fileserver", + + StatusesMaxChars: 5000, + StatusesCWMaxChars: 100, + StatusesPollMaxOptions: 6, + StatusesPollOptionMaxChars: 50, + StatusesMaxMediaFiles: 6, + } +} diff --git a/internal/config/media.go b/internal/config/media.go index 816e236b2..136dba528 100644 --- a/internal/config/media.go +++ b/internal/config/media.go @@ -24,4 +24,8 @@ type MediaConfig struct { MaxImageSize int `yaml:"maxImageSize"` // Max size of uploaded video in bytes MaxVideoSize int `yaml:"maxVideoSize"` + // Minimum amount of chars required in an image description + MinDescriptionChars int `yaml:"minDescriptionChars"` + // Max amount of chars allowed in an image description + MaxDescriptionChars int `yaml:"maxDescriptionChars"` } diff --git a/internal/config/statuses.go b/internal/config/statuses.go new file mode 100644 index 000000000..fbb5225b4 --- /dev/null +++ b/internal/config/statuses.go @@ -0,0 +1,33 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package config + +// StatusesConfig pertains to posting/deleting/interacting with statuses +type StatusesConfig struct { + // Maximum amount of characters allowed in a status, excluding CW + MaxChars int `yaml:"max_chars"` + // Maximum amount of characters allowed in a content-warning/spoiler field + CWMaxChars int `yaml:"cw_max_chars"` + // Maximum number of options allowed in a poll + PollMaxOptions int `yaml:"poll_max_options"` + // Maximum characters allowed per poll option + PollOptionMaxChars int `yaml:"poll_option_max_chars"` + // Maximum amount of media files allowed to be attached to one status + MaxMediaFiles int `yaml:"max_media_files"` +} diff --git a/internal/db/db.go b/internal/db/db.go index 4921270e7..69ad7b822 100644 --- a/internal/db/db.go +++ b/internal/db/db.go @@ -27,8 +27,7 @@ import ( "github.com/go-fed/activity/pub" "github.com/sirupsen/logrus" "github.com/superseriousbusiness/gotosocial/internal/config" - "github.com/superseriousbusiness/gotosocial/internal/db/model" - "github.com/superseriousbusiness/gotosocial/pkg/mastotypes" + "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" ) const dbTypePostgres string = "POSTGRES" @@ -79,6 +78,11 @@ type DB interface { // In case of no entries, a 'no entries' error will be returned GetWhere(key string, value interface{}, i interface{}) error + // // GetWhereMany gets one entry where key = value for *ALL* parameters passed as "where". + // // That is, if you pass 2 'where' entries, with 1 being Key username and Value test, and the second + // // being Key domain and Value example.org, only entries will be returned where BOTH conditions are true. + // GetWhereMany(i interface{}, where ...model.Where) error + // GetAll will try to get all entries of type i. // The given interface i will be set to the result of the query, whatever it is. Use a pointer or a slice. // In case of no entries, a 'no entries' error will be returned @@ -88,6 +92,11 @@ type DB interface { // The given interface i will be set to the result of the query, whatever it is. Use a pointer or a slice. Put(i interface{}) error + // Upsert stores or updates i based on the given conflict column, as in https://www.postgresqltutorial.com/postgresql-upsert/ + // It is up to the implementation to figure out how to store it, and using what key. + // The given interface i will be set to the result of the query, whatever it is. Use a pointer or a slice. + Upsert(i interface{}, conflictColumn string) error + // UpdateByID updates i with id id. // The given interface i will be set to the result of the query, whatever it is. Use a pointer or a slice. UpdateByID(id string, i interface{}) error @@ -107,41 +116,46 @@ type DB interface { HANDY SHORTCUTS */ + // CreateInstanceAccount creates an account in the database with the same username as the instance host value. + // Ie., if the instance is hosted at 'example.org' the instance user will have a username of 'example.org'. + // This is needed for things like serving files that belong to the instance and not an individual user/account. + CreateInstanceAccount() error + // GetAccountByUserID is a shortcut for the common action of fetching an account corresponding to a user ID. // The given account pointer will be set to the result of the query, whatever it is. // In case of no entries, a 'no entries' error will be returned - GetAccountByUserID(userID string, account *model.Account) error + GetAccountByUserID(userID string, account *gtsmodel.Account) error // GetFollowRequestsForAccountID is a shortcut for the common action of fetching a list of follow requests targeting the given account ID. // The given slice 'followRequests' will be set to the result of the query, whatever it is. // In case of no entries, a 'no entries' error will be returned - GetFollowRequestsForAccountID(accountID string, followRequests *[]model.FollowRequest) error + GetFollowRequestsForAccountID(accountID string, followRequests *[]gtsmodel.FollowRequest) error // GetFollowingByAccountID is a shortcut for the common action of fetching a list of accounts that accountID is following. // The given slice 'following' will be set to the result of the query, whatever it is. // In case of no entries, a 'no entries' error will be returned - GetFollowingByAccountID(accountID string, following *[]model.Follow) error + GetFollowingByAccountID(accountID string, following *[]gtsmodel.Follow) error // GetFollowersByAccountID is a shortcut for the common action of fetching a list of accounts that accountID is followed by. // The given slice 'followers' will be set to the result of the query, whatever it is. // In case of no entries, a 'no entries' error will be returned - GetFollowersByAccountID(accountID string, followers *[]model.Follow) error + GetFollowersByAccountID(accountID string, followers *[]gtsmodel.Follow) error // GetStatusesByAccountID is a shortcut for the common action of fetching a list of statuses produced by accountID. // The given slice 'statuses' will be set to the result of the query, whatever it is. // In case of no entries, a 'no entries' error will be returned - GetStatusesByAccountID(accountID string, statuses *[]model.Status) error + GetStatusesByAccountID(accountID string, statuses *[]gtsmodel.Status) error // GetStatusesByTimeDescending is a shortcut for getting the most recent statuses. accountID is optional, if not provided // then all statuses will be returned. If limit is set to 0, the size of the returned slice will not be limited. This can // be very memory intensive so you probably shouldn't do this! // In case of no entries, a 'no entries' error will be returned - GetStatusesByTimeDescending(accountID string, statuses *[]model.Status, limit int) error + GetStatusesByTimeDescending(accountID string, statuses *[]gtsmodel.Status, limit int) error // GetLastStatusForAccountID simply gets the most recent status by the given account. // The given slice 'status' pointer will be set to the result of the query, whatever it is. // In case of no entries, a 'no entries' error will be returned - GetLastStatusForAccountID(accountID string, status *model.Status) error + GetLastStatusForAccountID(accountID string, status *gtsmodel.Status) error // IsUsernameAvailable checks whether a given username is available on our domain. // Returns an error if the username is already taken, or something went wrong in the db. @@ -156,32 +170,112 @@ type DB interface { // NewSignup creates a new user in the database with the given parameters, with an *unconfirmed* email address. // By the time this function is called, it should be assumed that all the parameters have passed validation! - NewSignup(username string, reason string, requireApproval bool, email string, password string, signUpIP net.IP, locale string, appID string) (*model.User, error) + NewSignup(username string, reason string, requireApproval bool, email string, password string, signUpIP net.IP, locale string, appID string) (*gtsmodel.User, error) // SetHeaderOrAvatarForAccountID sets the header or avatar for the given accountID to the given media attachment. - SetHeaderOrAvatarForAccountID(mediaAttachment *model.MediaAttachment, accountID string) error + SetHeaderOrAvatarForAccountID(mediaAttachment *gtsmodel.MediaAttachment, accountID string) error // GetHeaderAvatarForAccountID gets the current avatar for the given account ID. // The passed mediaAttachment pointer will be populated with the value of the avatar, if it exists. - GetAvatarForAccountID(avatar *model.MediaAttachment, accountID string) error + GetAvatarForAccountID(avatar *gtsmodel.MediaAttachment, accountID string) error // GetHeaderForAccountID gets the current header for the given account ID. // The passed mediaAttachment pointer will be populated with the value of the header, if it exists. - GetHeaderForAccountID(header *model.MediaAttachment, accountID string) error + GetHeaderForAccountID(header *gtsmodel.MediaAttachment, accountID string) error + + // Blocked checks whether a block exists in eiher direction between two accounts. + // That is, it returns true if account1 blocks account2, OR if account2 blocks account1. + Blocked(account1 string, account2 string) (bool, error) + + // StatusVisible returns true if targetStatus is visible to requestingAccount, based on the + // privacy settings of the status, and any blocks/mutes that might exist between the two accounts + // or account domains. + // + // StatusVisible will also check through the given slice of 'otherRelevantAccounts', which should include: + // + // 1. Accounts mentioned in the targetStatus + // + // 2. Accounts replied to by the target status + // + // 3. Accounts boosted by the target status + // + // Will return an error if something goes wrong while pulling stuff out of the database. + StatusVisible(targetStatus *gtsmodel.Status, targetAccount *gtsmodel.Account, requestingAccount *gtsmodel.Account, relevantAccounts *gtsmodel.RelevantAccounts) (bool, error) + + // Follows returns true if sourceAccount follows target account, or an error if something goes wrong while finding out. + Follows(sourceAccount *gtsmodel.Account, targetAccount *gtsmodel.Account) (bool, error) + + // Mutuals returns true if account1 and account2 both follow each other, or an error if something goes wrong while finding out. + Mutuals(account1 *gtsmodel.Account, account2 *gtsmodel.Account) (bool, error) + + // PullRelevantAccountsFromStatus returns all accounts mentioned in a status, replied to by a status, or boosted by a status + PullRelevantAccountsFromStatus(status *gtsmodel.Status) (*gtsmodel.RelevantAccounts, error) + + // GetReplyCountForStatus returns the amount of replies recorded for a status, or an error if something goes wrong + GetReplyCountForStatus(status *gtsmodel.Status) (int, error) + + // GetReblogCountForStatus returns the amount of reblogs/boosts recorded for a status, or an error if something goes wrong + GetReblogCountForStatus(status *gtsmodel.Status) (int, error) + + // GetFaveCountForStatus returns the amount of faves/likes recorded for a status, or an error if something goes wrong + GetFaveCountForStatus(status *gtsmodel.Status) (int, error) + + // StatusFavedBy checks if a given status has been faved by a given account ID + StatusFavedBy(status *gtsmodel.Status, accountID string) (bool, error) + + // StatusRebloggedBy checks if a given status has been reblogged/boosted by a given account ID + StatusRebloggedBy(status *gtsmodel.Status, accountID string) (bool, error) + + // StatusMutedBy checks if a given status has been muted by a given account ID + StatusMutedBy(status *gtsmodel.Status, accountID string) (bool, error) + + // StatusBookmarkedBy checks if a given status has been bookmarked by a given account ID + StatusBookmarkedBy(status *gtsmodel.Status, accountID string) (bool, error) + + // StatusPinnedBy checks if a given status has been pinned by a given account ID + StatusPinnedBy(status *gtsmodel.Status, accountID string) (bool, error) + + // FaveStatus faves the given status, using accountID as the faver. + // The returned fave will be nil if the status was already faved. + FaveStatus(status *gtsmodel.Status, accountID string) (*gtsmodel.StatusFave, error) + + // UnfaveStatus unfaves the given status, using accountID as the unfaver (sure, that's a word). + // The returned fave will be nil if the status was already not faved. + UnfaveStatus(status *gtsmodel.Status, accountID string) (*gtsmodel.StatusFave, error) + + // WhoFavedStatus returns a slice of accounts who faved the given status. + // This slice will be unfiltered, not taking account of blocks and whatnot, so filter it before serving it back to a user. + WhoFavedStatus(status *gtsmodel.Status) ([]*gtsmodel.Account, error) /* USEFUL CONVERSION FUNCTIONS */ - // AccountToMastoSensitive takes a db model account as a param, and returns a populated mastotype account, or an error - // if something goes wrong. The returned account should be ready to serialize on an API level, and may have sensitive fields, - // so serve it only to an authorized user who should have permission to see it. - AccountToMastoSensitive(account *model.Account) (*mastotypes.Account, error) + // MentionStringsToMentions takes a slice of deduplicated, lowercase account names in the form "@test@whatever.example.org" for a remote account, + // or @test for a local account, which have been mentioned in a status. + // It takes the id of the account that wrote the status, and the id of the status itself, and then + // checks in the database for the mentioned accounts, and returns a slice of mentions generated based on the given parameters. + // + // Note: this func doesn't/shouldn't do any manipulation of the accounts in the DB, it's just for checking + // if they exist in the db and conveniently returning them if they do. + MentionStringsToMentions(targetAccounts []string, originAccountID string, statusID string) ([]*gtsmodel.Mention, error) - // AccountToMastoPublic takes a db model account as a param, and returns a populated mastotype account, or an error - // if something goes wrong. The returned account should be ready to serialize on an API level, and may NOT have sensitive fields. - // In other words, this is the public record that the server has of an account. - AccountToMastoPublic(account *model.Account) (*mastotypes.Account, error) + // TagStringsToTags takes a slice of deduplicated, lowercase tags in the form "somehashtag", which have been + // used in a status. It takes the id of the account that wrote the status, and the id of the status itself, and then + // returns a slice of *model.Tag corresponding to the given tags. If the tag already exists in database, that tag + // will be returned. Otherwise a pointer to a new tag struct will be created and returned. + // + // Note: this func doesn't/shouldn't do any manipulation of the tags in the DB, it's just for checking + // if they exist in the db already, and conveniently returning them, or creating new tag structs. + TagStringsToTags(tags []string, originAccountID string, statusID string) ([]*gtsmodel.Tag, error) + + // EmojiStringsToEmojis takes a slice of deduplicated, lowercase emojis in the form ":emojiname:", which have been + // used in a status. It takes the id of the account that wrote the status, and the id of the status itself, and then + // returns a slice of *model.Emoji corresponding to the given emojis. + // + // Note: this func doesn't/shouldn't do any manipulation of the emoji in the DB, it's just for checking + // if they exist in the db and conveniently returning them if they do. + EmojiStringsToEmojis(emojis []string, originAccountID string, statusID string) ([]*gtsmodel.Emoji, error) } // New returns a new database service that satisfies the DB interface and, by extension, diff --git a/internal/db/model/README.md b/internal/db/gtsmodel/README.md similarity index 100% rename from internal/db/model/README.md rename to internal/db/gtsmodel/README.md diff --git a/internal/db/model/account.go b/internal/db/gtsmodel/account.go similarity index 81% rename from internal/db/model/account.go rename to internal/db/gtsmodel/account.go index 70ee92929..4bf5a9d33 100644 --- a/internal/db/model/account.go +++ b/internal/db/gtsmodel/account.go @@ -16,15 +16,14 @@ along with this program. If not, see . */ -// Package model contains types used *internally* by GoToSocial and added/removed/selected from the database. +// Package gtsmodel contains types used *internally* by GoToSocial and added/removed/selected from the database. // These types should never be serialized and/or sent out via public APIs, as they contain sensitive information. // The annotation used on these structs is for handling them via the go-pg ORM (hence why they're in this db subdir). // See here for more info on go-pg model annotations: https://pg.uptrace.dev/models/ -package model +package gtsmodel import ( "crypto/rsa" - "net/url" "time" ) @@ -38,33 +37,17 @@ type Account struct { ID string `pg:"type:uuid,default:gen_random_uuid(),pk,notnull,unique"` // Username of the account, should just be a string of [a-z0-9_]. Can be added to domain to create the full username in the form ``[username]@[domain]`` eg., ``user_96@example.org`` Username string `pg:",notnull,unique:userdomain"` // username and domain should be unique *with* each other - // Domain of the account, will be empty if this is a local account, otherwise something like ``example.org`` or ``mastodon.social``. Should be unique with username. + // Domain of the account, will be null if this is a local account, otherwise something like ``example.org`` or ``mastodon.social``. Should be unique with username. Domain string `pg:",unique:userdomain"` // username and domain should be unique *with* each other /* ACCOUNT METADATA */ - // File name of the avatar on local storage - AvatarFileName string - // Gif? png? jpeg? - AvatarContentType string - // Size of the avatar in bytes - AvatarFileSize int - // When was the avatar last updated? - AvatarUpdatedAt time.Time `pg:"type:timestamp"` - // Where can the avatar be retrieved? - AvatarRemoteURL *url.URL `pg:"type:text"` - // File name of the header on local storage - HeaderFileName string - // Gif? png? jpeg? - HeaderContentType string - // Size of the header in bytes - HeaderFileSize int - // When was the header last updated? - HeaderUpdatedAt time.Time `pg:"type:timestamp"` - // Where can the header be retrieved? - HeaderRemoteURL *url.URL `pg:"type:text"` + // ID of the avatar as a media attachment + AvatarMediaAttachmentID string + // ID of the header as a media attachment + HeaderMediaAttachmentID string // DisplayName for this account. Can be empty, then just the Username will be used for display purposes. DisplayName string // a key/value map of fields that this account has added to their profile @@ -74,13 +57,11 @@ type Account struct { // Is this a memorial account, ie., has the user passed away? Memorial bool // This account has moved this account id in the database - MovedToAccountID int + MovedToAccountID string // When was this account created? CreatedAt time.Time `pg:"type:timestamp,notnull,default:now()"` // When was this account last updated? UpdatedAt time.Time `pg:"type:timestamp,notnull,default:now()"` - // When should this account function until - SubscriptionExpiresAt time.Time `pg:"type:timestamp"` // Does this account identify itself as a bot? Bot bool // What reason was given for signing up when this account was created? @@ -95,7 +76,7 @@ type Account struct { // Should this account be shown in the instance's profile directory? Discoverable bool // Default post privacy for this account - Privacy string + Privacy Visibility // Set posts from this account to sensitive by default? Sensitive bool // What language does this account post in? @@ -122,7 +103,7 @@ type Account struct { // URL for getting the featured collection list of this account FeaturedCollectionURL string `pg:",unique"` // What type of activitypub actor is this account? - ActorType string + ActorType ActivityStreamsActor // This account is associated with x account id AlsoKnownAs string @@ -130,7 +111,6 @@ type Account struct { CRYPTO FIELDS */ - Secret string // Privatekey for validating activitypub requests, will obviously only be defined for local accounts PrivateKey *rsa.PrivateKey // Publickey for encoding activitypub requests, will be defined for both local and remote accounts @@ -146,12 +126,10 @@ type Account struct { SilencedAt time.Time `pg:"type:timestamp"` // When was this account suspended (eg., don't allow it to log in/post, don't accept media/posts from this account) SuspendedAt time.Time `pg:"type:timestamp"` - // How much do we trust this account 🤔 - TrustLevel int // Should we hide this account's collections? HideCollections bool // id of the user that suspended this account through an admin action - SuspensionOrigin int + SuspensionOrigin string } // Field represents a key value field on an account, for things like pronouns, website, etc. diff --git a/internal/db/gtsmodel/activitystreams.go b/internal/db/gtsmodel/activitystreams.go new file mode 100644 index 000000000..059588a57 --- /dev/null +++ b/internal/db/gtsmodel/activitystreams.go @@ -0,0 +1,127 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package gtsmodel + +// ActivityStreamsObject refers to https://www.w3.org/TR/activitystreams-vocabulary/#object-types +type ActivityStreamsObject string + +const ( + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-article + ActivityStreamsArticle ActivityStreamsObject = "Article" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-audio + ActivityStreamsAudio ActivityStreamsObject = "Audio" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-document + ActivityStreamsDocument ActivityStreamsObject = "Event" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-event + ActivityStreamsEvent ActivityStreamsObject = "Event" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-image + ActivityStreamsImage ActivityStreamsObject = "Image" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-note + ActivityStreamsNote ActivityStreamsObject = "Note" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-page + ActivityStreamsPage ActivityStreamsObject = "Page" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-place + ActivityStreamsPlace ActivityStreamsObject = "Place" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-profile + ActivityStreamsProfile ActivityStreamsObject = "Profile" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-relationship + ActivityStreamsRelationship ActivityStreamsObject = "Relationship" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-tombstone + ActivityStreamsTombstone ActivityStreamsObject = "Tombstone" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-video + ActivityStreamsVideo ActivityStreamsObject = "Video" +) + +// ActivityStreamsActor refers to https://www.w3.org/TR/activitystreams-vocabulary/#actor-types +type ActivityStreamsActor string + +const ( + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-application + ActivityStreamsApplication ActivityStreamsActor = "Application" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-group + ActivityStreamsGroup ActivityStreamsActor = "Group" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-organization + ActivityStreamsOrganization ActivityStreamsActor = "Organization" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-person + ActivityStreamsPerson ActivityStreamsActor = "Person" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-service + ActivityStreamsService ActivityStreamsActor = "Service" +) + +// ActivityStreamsActivity refers to https://www.w3.org/TR/activitystreams-vocabulary/#activity-types +type ActivityStreamsActivity string + +const ( + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-accept + ActivityStreamsAccept ActivityStreamsActivity = "Accept" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-add + ActivityStreamsAdd ActivityStreamsActivity = "Add" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-announce + ActivityStreamsAnnounce ActivityStreamsActivity = "Announce" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-arrive + ActivityStreamsArrive ActivityStreamsActivity = "Arrive" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-block + ActivityStreamsBlock ActivityStreamsActivity = "Block" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-create + ActivityStreamsCreate ActivityStreamsActivity = "Create" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-delete + ActivityStreamsDelete ActivityStreamsActivity = "Delete" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-dislike + ActivityStreamsDislike ActivityStreamsActivity = "Dislike" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-flag + ActivityStreamsFlag ActivityStreamsActivity = "Flag" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-follow + ActivityStreamsFollow ActivityStreamsActivity = "Follow" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-ignore + ActivityStreamsIgnore ActivityStreamsActivity = "Ignore" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-invite + ActivityStreamsInvite ActivityStreamsActivity = "Invite" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-join + ActivityStreamsJoin ActivityStreamsActivity = "Join" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-leave + ActivityStreamsLeave ActivityStreamsActivity = "Leave" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-like + ActivityStreamsLike ActivityStreamsActivity = "Like" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-listen + ActivityStreamsListen ActivityStreamsActivity = "Listen" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-move + ActivityStreamsMove ActivityStreamsActivity = "Move" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-offer + ActivityStreamsOffer ActivityStreamsActivity = "Offer" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-question + ActivityStreamsQuestion ActivityStreamsActivity = "Question" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-reject + ActivityStreamsReject ActivityStreamsActivity = "Reject" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-read + ActivityStreamsRead ActivityStreamsActivity = "Read" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-remove + ActivityStreamsRemove ActivityStreamsActivity = "Remove" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-tentativereject + ActivityStreamsTentativeReject ActivityStreamsActivity = "TentativeReject" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-tentativeaccept + ActivityStreamsTentativeAccept ActivityStreamsActivity = "TentativeAccept" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-travel + ActivityStreamsTravel ActivityStreamsActivity = "Travel" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-undo + ActivityStreamsUndo ActivityStreamsActivity = "Undo" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-update + ActivityStreamsUpdate ActivityStreamsActivity = "Update" + // https://www.w3.org/TR/activitystreams-vocabulary/#dfn-view + ActivityStreamsView ActivityStreamsActivity = "View" +) diff --git a/internal/db/model/application.go b/internal/db/gtsmodel/application.go similarity index 78% rename from internal/db/model/application.go rename to internal/db/gtsmodel/application.go index c8eea6430..8e1398beb 100644 --- a/internal/db/model/application.go +++ b/internal/db/gtsmodel/application.go @@ -16,9 +16,7 @@ along with this program. If not, see . */ -package model - -import "github.com/superseriousbusiness/gotosocial/pkg/mastotypes" +package gtsmodel // Application represents an application that can perform actions on behalf of a user. // It is used to authorize tokens etc, and is associated with an oauth client id in the database. @@ -40,16 +38,3 @@ type Application struct { // a vapid key generated for this app when it was created VapidKey string } - -// ToMasto returns this application as a mastodon api type, ready for serialization -func (a *Application) ToMasto() *mastotypes.Application { - return &mastotypes.Application{ - ID: a.ID, - Name: a.Name, - Website: a.Website, - RedirectURI: a.RedirectURI, - ClientID: a.ClientID, - ClientSecret: a.ClientSecret, - VapidKey: a.VapidKey, - } -} diff --git a/internal/db/gtsmodel/block.go b/internal/db/gtsmodel/block.go new file mode 100644 index 000000000..fae43fbef --- /dev/null +++ b/internal/db/gtsmodel/block.go @@ -0,0 +1,19 @@ +package gtsmodel + +import "time" + +// Block refers to the blocking of one account by another. +type Block struct { + // id of this block in the database + ID string `pg:"type:uuid,default:gen_random_uuid(),pk,notnull"` + // When was this block created + CreatedAt time.Time `pg:"type:timestamp,notnull,default:now()"` + // When was this block updated + UpdatedAt time.Time `pg:"type:timestamp,notnull,default:now()"` + // Who created this block? + AccountID string `pg:",notnull"` + // Who is targeted by this block? + TargetAccountID string `pg:",notnull"` + // Activitypub URI for this block + URI string +} diff --git a/internal/db/model/domainblock.go b/internal/db/gtsmodel/domainblock.go similarity index 99% rename from internal/db/model/domainblock.go rename to internal/db/gtsmodel/domainblock.go index e6e89bc20..dcfb2acee 100644 --- a/internal/db/model/domainblock.go +++ b/internal/db/gtsmodel/domainblock.go @@ -16,7 +16,7 @@ along with this program. If not, see . */ -package model +package gtsmodel import "time" diff --git a/internal/db/model/emaildomainblock.go b/internal/db/gtsmodel/emaildomainblock.go similarity index 98% rename from internal/db/model/emaildomainblock.go rename to internal/db/gtsmodel/emaildomainblock.go index 6610a2075..4cda68b02 100644 --- a/internal/db/model/emaildomainblock.go +++ b/internal/db/gtsmodel/emaildomainblock.go @@ -16,7 +16,7 @@ along with this program. If not, see . */ -package model +package gtsmodel import "time" diff --git a/internal/db/gtsmodel/emoji.go b/internal/db/gtsmodel/emoji.go new file mode 100644 index 000000000..da1e2e02c --- /dev/null +++ b/internal/db/gtsmodel/emoji.go @@ -0,0 +1,74 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package gtsmodel + +import "time" + +type Emoji struct { + // database ID of this emoji + ID string `pg:"type:uuid,default:gen_random_uuid(),pk,notnull"` + // String shortcode for this emoji -- the part that's between colons. This should be lowercase a-z_ + // eg., 'blob_hug' 'purple_heart' Must be unique with domain. + Shortcode string `pg:",notnull,unique:shortcodedomain"` + // Origin domain of this emoji, eg 'example.org', 'queer.party'. empty string for local emojis. + Domain string `pg:",notnull,default:'',use_zero,unique:shortcodedomain"` + // When was this emoji created. Must be unique with shortcode. + CreatedAt time.Time `pg:"type:timestamp,notnull,default:now()"` + // When was this emoji updated + UpdatedAt time.Time `pg:"type:timestamp,notnull,default:now()"` + // Where can this emoji be retrieved remotely? Null for local emojis. + // For remote emojis, it'll be something like: + // https://hackers.town/system/custom_emojis/images/000/049/842/original/1b74481204feabfd.png + ImageRemoteURL string + // Where can a static / non-animated version of this emoji be retrieved remotely? Null for local emojis. + // For remote emojis, it'll be something like: + // https://hackers.town/system/custom_emojis/images/000/049/842/static/1b74481204feabfd.png + ImageStaticRemoteURL string + // Where can this emoji be retrieved from the local server? Null for remote emojis. + // Assuming our server is hosted at 'example.org', this will be something like: + // 'https://example.org/fileserver/6339820e-ef65-4166-a262-5a9f46adb1a7/emoji/original/bfa6c9c5-6c25-4ea4-98b4-d78b8126fb52.png' + ImageURL string + // Where can a static version of this emoji be retrieved from the local server? Null for remote emojis. + // Assuming our server is hosted at 'example.org', this will be something like: + // 'https://example.org/fileserver/6339820e-ef65-4166-a262-5a9f46adb1a7/emoji/small/bfa6c9c5-6c25-4ea4-98b4-d78b8126fb52.png' + ImageStaticURL string + // Path of the emoji image in the server storage system. Will be something like: + // '/gotosocial/storage/6339820e-ef65-4166-a262-5a9f46adb1a7/emoji/original/bfa6c9c5-6c25-4ea4-98b4-d78b8126fb52.png' + ImagePath string `pg:",notnull"` + // Path of a static version of the emoji image in the server storage system. Will be something like: + // '/gotosocial/storage/6339820e-ef65-4166-a262-5a9f46adb1a7/emoji/small/bfa6c9c5-6c25-4ea4-98b4-d78b8126fb52.png' + ImageStaticPath string `pg:",notnull"` + // MIME content type of the emoji image + // Probably "image/png" + ImageContentType string `pg:",notnull"` + // Size of the emoji image file in bytes, for serving purposes. + ImageFileSize int `pg:",notnull"` + // Size of the static version of the emoji image file in bytes, for serving purposes. + ImageStaticFileSize int `pg:",notnull"` + // When was the emoji image last updated? + ImageUpdatedAt time.Time `pg:"type:timestamp,notnull,default:now()"` + // Has a moderation action disabled this emoji from being shown? + Disabled bool `pg:",notnull,default:false"` + // ActivityStreams uri of this emoji. Something like 'https://example.org/emojis/1234' + URI string `pg:",notnull,unique"` + // Is this emoji visible in the admin emoji picker? + VisibleInPicker bool `pg:",notnull,default:true"` + // In which emoji category is this emoji visible? + CategoryID string +} diff --git a/internal/db/model/follow.go b/internal/db/gtsmodel/follow.go similarity index 98% rename from internal/db/model/follow.go rename to internal/db/gtsmodel/follow.go index 36e19e72e..90080da6e 100644 --- a/internal/db/model/follow.go +++ b/internal/db/gtsmodel/follow.go @@ -16,7 +16,7 @@ along with this program. If not, see . */ -package model +package gtsmodel import "time" diff --git a/internal/db/model/followrequest.go b/internal/db/gtsmodel/followrequest.go similarity index 99% rename from internal/db/model/followrequest.go rename to internal/db/gtsmodel/followrequest.go index 50d8a5f03..1401a26f1 100644 --- a/internal/db/model/followrequest.go +++ b/internal/db/gtsmodel/followrequest.go @@ -16,7 +16,7 @@ along with this program. If not, see . */ -package model +package gtsmodel import "time" diff --git a/internal/db/model/mediaattachment.go b/internal/db/gtsmodel/mediaattachment.go similarity index 88% rename from internal/db/model/mediaattachment.go rename to internal/db/gtsmodel/mediaattachment.go index 3aff18d80..d2b028b18 100644 --- a/internal/db/model/mediaattachment.go +++ b/internal/db/gtsmodel/mediaattachment.go @@ -16,7 +16,7 @@ along with this program. If not, see . */ -package model +package gtsmodel import ( "time" @@ -29,7 +29,9 @@ type MediaAttachment struct { ID string `pg:"type:uuid,default:gen_random_uuid(),pk,notnull,unique"` // ID of the status to which this is attached StatusID string - // Where can the attachment be retrieved on a remote server + // Where can the attachment be retrieved on *this* server + URL string + // Where can the attachment be retrieved on a remote server (empty for local media) RemoteURL string // When was the attachment created CreatedAt time.Time `pg:"type:timestamp,notnull,default:now()"` @@ -81,7 +83,9 @@ type Thumbnail struct { FileSize int // When was the file last updated UpdatedAt time.Time `pg:"type:timestamp,notnull,default:now()"` - // What is the remote URL of the thumbnail + // What is the URL of the thumbnail on the local server + URL string + // What is the remote URL of the thumbnail (empty for local media) RemoteURL string } @@ -111,15 +115,18 @@ const ( FileTypeAudio FileType = "audio" // FileTypeVideo is for files with audio + visual FileTypeVideo FileType = "video" + // FileTypeUnknown is for unknown file types (surprise surprise!) + FileTypeUnknown FileType = "unknown" ) // FileMeta describes metadata about the actual contents of the file. type FileMeta struct { Original Original Small Small + Focus Focus } -// Small implements SmallMeta and can be used for a thumbnail of any media type +// Small can be used for a thumbnail of any media type type Small struct { Width int Height int @@ -127,10 +134,15 @@ type Small struct { Aspect float64 } -// ImageOriginal implements OriginalMeta for still images +// Original can be used for original metadata for any media type type Original struct { Width int Height int Size int Aspect float64 } + +type Focus struct { + X float32 + Y float32 +} diff --git a/internal/db/gtsmodel/mention.go b/internal/db/gtsmodel/mention.go new file mode 100644 index 000000000..18eb11082 --- /dev/null +++ b/internal/db/gtsmodel/mention.go @@ -0,0 +1,39 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package gtsmodel + +import "time" + +// Mention refers to the 'tagging' or 'mention' of a user within a status. +type Mention struct { + // ID of this mention in the database + ID string `pg:"type:uuid,default:gen_random_uuid(),pk,notnull,unique"` + // ID of the status this mention originates from + StatusID string `pg:",notnull"` + // When was this mention created? + CreatedAt time.Time `pg:"type:timestamp,notnull,default:now()"` + // When was this mention last updated? + UpdatedAt time.Time `pg:"type:timestamp,notnull,default:now()"` + // Who created this mention? + OriginAccountID string `pg:",notnull"` + // Who does this mention target? + TargetAccountID string `pg:",notnull"` + // Prevent this mention from generating a notification? + Silent bool +} diff --git a/internal/db/gtsmodel/poll.go b/internal/db/gtsmodel/poll.go new file mode 100644 index 000000000..c39497cdd --- /dev/null +++ b/internal/db/gtsmodel/poll.go @@ -0,0 +1,19 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package gtsmodel diff --git a/internal/db/gtsmodel/status.go b/internal/db/gtsmodel/status.go new file mode 100644 index 000000000..3b4b84405 --- /dev/null +++ b/internal/db/gtsmodel/status.go @@ -0,0 +1,138 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package gtsmodel + +import "time" + +// Status represents a user-created 'post' or 'status' in the database, either remote or local +type Status struct { + // id of the status in the database + ID string `pg:"type:uuid,default:gen_random_uuid(),pk,notnull"` + // uri at which this status is reachable + URI string `pg:",unique"` + // web url for viewing this status + URL string `pg:",unique"` + // the html-formatted content of this status + Content string + // Database IDs of any media attachments associated with this status + Attachments []string `pg:",array"` + // Database IDs of any tags used in this status + Tags []string `pg:",array"` + // Database IDs of any accounts mentioned in this status + Mentions []string `pg:",array"` + // Database IDs of any emojis used in this status + Emojis []string `pg:",array"` + // when was this status created? + CreatedAt time.Time `pg:"type:timestamp,notnull,default:now()"` + // when was this status updated? + UpdatedAt time.Time `pg:"type:timestamp,notnull,default:now()"` + // is this status from a local account? + Local bool + // which account posted this status? + AccountID string + // id of the status this status is a reply to + InReplyToID string + // id of the account that this status replies to + InReplyToAccountID string + // id of the status this status is a boost of + BoostOfID string + // cw string for this status + ContentWarning string + // visibility entry for this status + Visibility Visibility `pg:",notnull"` + // mark the status as sensitive? + Sensitive bool + // what language is this status written in? + Language string + // Which application was used to create this status? + CreatedWithApplicationID string + // advanced visibility for this status + VisibilityAdvanced *VisibilityAdvanced + // What is the activitystreams type of this status? See: https://www.w3.org/TR/activitystreams-vocabulary/#object-types + // Will probably almost always be Note but who knows!. + ActivityStreamsType ActivityStreamsObject + // Original text of the status without formatting + Text string + + /* + NON-DATABASE FIELDS + + These are for convenience while passing the status around internally, + but these fields should *never* be put in the db. + */ + + // Mentions created in this status + GTSMentions []*Mention `pg:"-"` + // Hashtags used in this status + GTSTags []*Tag `pg:"-"` + // Emojis used in this status + GTSEmojis []*Emoji `pg:"-"` + // MediaAttachments used in this status + GTSMediaAttachments []*MediaAttachment `pg:"-"` + // Status being replied to + GTSReplyToStatus *Status `pg:"-"` + // Account being replied to + GTSReplyToAccount *Account `pg:"-"` +} + +// Visibility represents the visibility granularity of a status. +type Visibility string + +const ( + // This status will be visible to everyone on all timelines. + VisibilityPublic Visibility = "public" + // This status will be visible to everyone, but will only show on home timeline to followers, and in lists. + VisibilityUnlocked Visibility = "unlocked" + // This status is viewable to followers only. + VisibilityFollowersOnly Visibility = "followers_only" + // This status is visible to mutual followers only. + VisibilityMutualsOnly Visibility = "mutuals_only" + // This status is visible only to mentioned recipients + VisibilityDirect Visibility = "direct" + // Default visibility to use when no other setting can be found + VisibilityDefault Visibility = "public" +) + +// VisibilityAdvanced denotes a set of flags that can be set on a status for fine-tuning visibility and interactivity of the status. +type VisibilityAdvanced struct { + /* + ADVANCED SETTINGS -- These should all default to TRUE. + + If PUBLIC is selected, they will all be overwritten to TRUE regardless of what is selected. + If UNLOCKED is selected, any of them can be turned on or off in any combination. + If FOLLOWERS-ONLY or MUTUALS-ONLY are selected, boostable will always be FALSE. The others can be turned on or off as desired. + If DIRECT is selected, boostable will be FALSE, and all other flags will be TRUE. + */ + // This status will be federated beyond the local timeline(s) + Federated bool `pg:"default:true"` + // This status can be boosted/reblogged + Boostable bool `pg:"default:true"` + // This status can be replied to + Replyable bool `pg:"default:true"` + // This status can be liked/faved + Likeable bool `pg:"default:true"` +} + +// RelevantAccounts denotes accounts that are replied to, boosted by, or mentioned in a status. +type RelevantAccounts struct { + ReplyToAccount *Account + BoostedAccount *Account + BoostedReplyToAccount *Account + MentionedAccounts []*Account +} diff --git a/internal/db/gtsmodel/statusbookmark.go b/internal/db/gtsmodel/statusbookmark.go new file mode 100644 index 000000000..6246334e3 --- /dev/null +++ b/internal/db/gtsmodel/statusbookmark.go @@ -0,0 +1,35 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package gtsmodel + +import "time" + +// StatusBookmark refers to one account having a 'bookmark' of the status of another account +type StatusBookmark struct { + // id of this bookmark in the database + ID string `pg:"type:uuid,default:gen_random_uuid(),pk,notnull,unique"` + // when was this bookmark created + CreatedAt time.Time `pg:"type:timestamp,notnull,default:now()"` + // id of the account that created ('did') the bookmarking + AccountID string `pg:",notnull"` + // id the account owning the bookmarked status + TargetAccountID string `pg:",notnull"` + // database id of the status that has been bookmarked + StatusID string `pg:",notnull"` +} diff --git a/internal/db/gtsmodel/statusfave.go b/internal/db/gtsmodel/statusfave.go new file mode 100644 index 000000000..9fb92b931 --- /dev/null +++ b/internal/db/gtsmodel/statusfave.go @@ -0,0 +1,38 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package gtsmodel + +import "time" + +// StatusFave refers to a 'fave' or 'like' in the database, from one account, targeting the status of another account +type StatusFave struct { + // id of this fave in the database + ID string `pg:"type:uuid,default:gen_random_uuid(),pk,notnull,unique"` + // when was this fave created + CreatedAt time.Time `pg:"type:timestamp,notnull,default:now()"` + // id of the account that created ('did') the fave + AccountID string `pg:",notnull"` + // id the account owning the faved status + TargetAccountID string `pg:",notnull"` + // database id of the status that has been 'faved' + StatusID string `pg:",notnull"` + + // FavedStatus is the status being interacted with. It won't be put or retrieved from the db, it's just for conveniently passing a pointer around. + FavedStatus *Status `pg:"-"` +} diff --git a/internal/db/gtsmodel/statusmute.go b/internal/db/gtsmodel/statusmute.go new file mode 100644 index 000000000..53c15e5b5 --- /dev/null +++ b/internal/db/gtsmodel/statusmute.go @@ -0,0 +1,35 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package gtsmodel + +import "time" + +// StatusMute refers to one account having muted the status of another account or its own +type StatusMute struct { + // id of this mute in the database + ID string `pg:"type:uuid,default:gen_random_uuid(),pk,notnull,unique"` + // when was this mute created + CreatedAt time.Time `pg:"type:timestamp,notnull,default:now()"` + // id of the account that created ('did') the mute + AccountID string `pg:",notnull"` + // id the account owning the muted status (can be the same as accountID) + TargetAccountID string `pg:",notnull"` + // database id of the status that has been muted + StatusID string `pg:",notnull"` +} diff --git a/internal/db/gtsmodel/statuspin.go b/internal/db/gtsmodel/statuspin.go new file mode 100644 index 000000000..1df333387 --- /dev/null +++ b/internal/db/gtsmodel/statuspin.go @@ -0,0 +1,33 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package gtsmodel + +import "time" + +// StatusPin refers to a status 'pinned' to the top of an account +type StatusPin struct { + // id of this pin in the database + ID string `pg:"type:uuid,default:gen_random_uuid(),pk,notnull,unique"` + // when was this pin created + CreatedAt time.Time `pg:"type:timestamp,notnull,default:now()"` + // id of the account that created ('did') the pinning (this should always be the same as the author of the status) + AccountID string `pg:",notnull"` + // database id of the status that has been pinned + StatusID string `pg:",notnull"` +} diff --git a/internal/db/gtsmodel/tag.go b/internal/db/gtsmodel/tag.go new file mode 100644 index 000000000..83c471958 --- /dev/null +++ b/internal/db/gtsmodel/tag.go @@ -0,0 +1,41 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package gtsmodel + +import "time" + +// Tag represents a hashtag for gathering public statuses together +type Tag struct { + // id of this tag in the database + ID string `pg:",unique,type:uuid,default:gen_random_uuid(),pk,notnull"` + // name of this tag -- the tag without the hash part + Name string `pg:",unique,pk,notnull"` + // Which account ID is the first one we saw using this tag? + FirstSeenFromAccountID string + // when was this tag created + CreatedAt time.Time `pg:"type:timestamp,notnull,default:now()"` + // when was this tag last updated + UpdatedAt time.Time `pg:"type:timestamp,notnull,default:now()"` + // can our instance users use this tag? + Useable bool `pg:",notnull,default:true"` + // can our instance users look up this tag? + Listable bool `pg:",notnull,default:true"` + // when was this tag last used? + LastStatusAt time.Time `pg:"type:timestamp,notnull,default:now()"` +} diff --git a/internal/db/model/user.go b/internal/db/gtsmodel/user.go similarity index 99% rename from internal/db/model/user.go rename to internal/db/gtsmodel/user.go index 61e9954d5..a72569945 100644 --- a/internal/db/model/user.go +++ b/internal/db/gtsmodel/user.go @@ -16,7 +16,7 @@ along with this program. If not, see . */ -package model +package gtsmodel import ( "net" diff --git a/internal/db/mock_DB.go b/internal/db/mock_DB.go index d4c25bb79..df2e41907 100644 --- a/internal/db/mock_DB.go +++ b/internal/db/mock_DB.go @@ -6,9 +6,7 @@ import ( context "context" mock "github.com/stretchr/testify/mock" - mastotypes "github.com/superseriousbusiness/gotosocial/pkg/mastotypes" - - model "github.com/superseriousbusiness/gotosocial/internal/db/model" + gtsmodel "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" net "net" @@ -20,22 +18,20 @@ type MockDB struct { mock.Mock } -// AccountToMastoSensitive provides a mock function with given fields: account -func (_m *MockDB) AccountToMastoSensitive(account *model.Account) (*mastotypes.Account, error) { - ret := _m.Called(account) +// Blocked provides a mock function with given fields: account1, account2 +func (_m *MockDB) Blocked(account1 string, account2 string) (bool, error) { + ret := _m.Called(account1, account2) - var r0 *mastotypes.Account - if rf, ok := ret.Get(0).(func(*model.Account) *mastotypes.Account); ok { - r0 = rf(account) + var r0 bool + if rf, ok := ret.Get(0).(func(string, string) bool); ok { + r0 = rf(account1, account2) } else { - if ret.Get(0) != nil { - r0 = ret.Get(0).(*mastotypes.Account) - } + r0 = ret.Get(0).(bool) } var r1 error - if rf, ok := ret.Get(1).(func(*model.Account) error); ok { - r1 = rf(account) + if rf, ok := ret.Get(1).(func(string, string) error); ok { + r1 = rf(account1, account2) } else { r1 = ret.Error(1) } @@ -99,6 +95,29 @@ func (_m *MockDB) DropTable(i interface{}) error { return r0 } +// EmojiStringsToEmojis provides a mock function with given fields: emojis, originAccountID, statusID +func (_m *MockDB) EmojiStringsToEmojis(emojis []string, originAccountID string, statusID string) ([]*gtsmodel.Emoji, error) { + ret := _m.Called(emojis, originAccountID, statusID) + + var r0 []*gtsmodel.Emoji + if rf, ok := ret.Get(0).(func([]string, string, string) []*gtsmodel.Emoji); ok { + r0 = rf(emojis, originAccountID, statusID) + } else { + if ret.Get(0) != nil { + r0 = ret.Get(0).([]*gtsmodel.Emoji) + } + } + + var r1 error + if rf, ok := ret.Get(1).(func([]string, string, string) error); ok { + r1 = rf(emojis, originAccountID, statusID) + } else { + r1 = ret.Error(1) + } + + return r0, r1 +} + // Federation provides a mock function with given fields: func (_m *MockDB) Federation() pub.Database { ret := _m.Called() @@ -116,11 +135,11 @@ func (_m *MockDB) Federation() pub.Database { } // GetAccountByUserID provides a mock function with given fields: userID, account -func (_m *MockDB) GetAccountByUserID(userID string, account *model.Account) error { +func (_m *MockDB) GetAccountByUserID(userID string, account *gtsmodel.Account) error { ret := _m.Called(userID, account) var r0 error - if rf, ok := ret.Get(0).(func(string, *model.Account) error); ok { + if rf, ok := ret.Get(0).(func(string, *gtsmodel.Account) error); ok { r0 = rf(userID, account) } else { r0 = ret.Error(0) @@ -143,6 +162,20 @@ func (_m *MockDB) GetAll(i interface{}) error { return r0 } +// GetAvatarForAccountID provides a mock function with given fields: avatar, accountID +func (_m *MockDB) GetAvatarForAccountID(avatar *gtsmodel.MediaAttachment, accountID string) error { + ret := _m.Called(avatar, accountID) + + var r0 error + if rf, ok := ret.Get(0).(func(*gtsmodel.MediaAttachment, string) error); ok { + r0 = rf(avatar, accountID) + } else { + r0 = ret.Error(0) + } + + return r0 +} + // GetByID provides a mock function with given fields: id, i func (_m *MockDB) GetByID(id string, i interface{}) error { ret := _m.Called(id, i) @@ -158,11 +191,11 @@ func (_m *MockDB) GetByID(id string, i interface{}) error { } // GetFollowRequestsForAccountID provides a mock function with given fields: accountID, followRequests -func (_m *MockDB) GetFollowRequestsForAccountID(accountID string, followRequests *[]model.FollowRequest) error { +func (_m *MockDB) GetFollowRequestsForAccountID(accountID string, followRequests *[]gtsmodel.FollowRequest) error { ret := _m.Called(accountID, followRequests) var r0 error - if rf, ok := ret.Get(0).(func(string, *[]model.FollowRequest) error); ok { + if rf, ok := ret.Get(0).(func(string, *[]gtsmodel.FollowRequest) error); ok { r0 = rf(accountID, followRequests) } else { r0 = ret.Error(0) @@ -172,11 +205,11 @@ func (_m *MockDB) GetFollowRequestsForAccountID(accountID string, followRequests } // GetFollowersByAccountID provides a mock function with given fields: accountID, followers -func (_m *MockDB) GetFollowersByAccountID(accountID string, followers *[]model.Follow) error { +func (_m *MockDB) GetFollowersByAccountID(accountID string, followers *[]gtsmodel.Follow) error { ret := _m.Called(accountID, followers) var r0 error - if rf, ok := ret.Get(0).(func(string, *[]model.Follow) error); ok { + if rf, ok := ret.Get(0).(func(string, *[]gtsmodel.Follow) error); ok { r0 = rf(accountID, followers) } else { r0 = ret.Error(0) @@ -186,11 +219,11 @@ func (_m *MockDB) GetFollowersByAccountID(accountID string, followers *[]model.F } // GetFollowingByAccountID provides a mock function with given fields: accountID, following -func (_m *MockDB) GetFollowingByAccountID(accountID string, following *[]model.Follow) error { +func (_m *MockDB) GetFollowingByAccountID(accountID string, following *[]gtsmodel.Follow) error { ret := _m.Called(accountID, following) var r0 error - if rf, ok := ret.Get(0).(func(string, *[]model.Follow) error); ok { + if rf, ok := ret.Get(0).(func(string, *[]gtsmodel.Follow) error); ok { r0 = rf(accountID, following) } else { r0 = ret.Error(0) @@ -199,12 +232,26 @@ func (_m *MockDB) GetFollowingByAccountID(accountID string, following *[]model.F return r0 } +// GetHeaderForAccountID provides a mock function with given fields: header, accountID +func (_m *MockDB) GetHeaderForAccountID(header *gtsmodel.MediaAttachment, accountID string) error { + ret := _m.Called(header, accountID) + + var r0 error + if rf, ok := ret.Get(0).(func(*gtsmodel.MediaAttachment, string) error); ok { + r0 = rf(header, accountID) + } else { + r0 = ret.Error(0) + } + + return r0 +} + // GetLastStatusForAccountID provides a mock function with given fields: accountID, status -func (_m *MockDB) GetLastStatusForAccountID(accountID string, status *model.Status) error { +func (_m *MockDB) GetLastStatusForAccountID(accountID string, status *gtsmodel.Status) error { ret := _m.Called(accountID, status) var r0 error - if rf, ok := ret.Get(0).(func(string, *model.Status) error); ok { + if rf, ok := ret.Get(0).(func(string, *gtsmodel.Status) error); ok { r0 = rf(accountID, status) } else { r0 = ret.Error(0) @@ -214,11 +261,11 @@ func (_m *MockDB) GetLastStatusForAccountID(accountID string, status *model.Stat } // GetStatusesByAccountID provides a mock function with given fields: accountID, statuses -func (_m *MockDB) GetStatusesByAccountID(accountID string, statuses *[]model.Status) error { +func (_m *MockDB) GetStatusesByAccountID(accountID string, statuses *[]gtsmodel.Status) error { ret := _m.Called(accountID, statuses) var r0 error - if rf, ok := ret.Get(0).(func(string, *[]model.Status) error); ok { + if rf, ok := ret.Get(0).(func(string, *[]gtsmodel.Status) error); ok { r0 = rf(accountID, statuses) } else { r0 = ret.Error(0) @@ -228,11 +275,11 @@ func (_m *MockDB) GetStatusesByAccountID(accountID string, statuses *[]model.Sta } // GetStatusesByTimeDescending provides a mock function with given fields: accountID, statuses, limit -func (_m *MockDB) GetStatusesByTimeDescending(accountID string, statuses *[]model.Status, limit int) error { +func (_m *MockDB) GetStatusesByTimeDescending(accountID string, statuses *[]gtsmodel.Status, limit int) error { ret := _m.Called(accountID, statuses, limit) var r0 error - if rf, ok := ret.Get(0).(func(string, *[]model.Status, int) error); ok { + if rf, ok := ret.Get(0).(func(string, *[]gtsmodel.Status, int) error); ok { r0 = rf(accountID, statuses, limit) } else { r0 = ret.Error(0) @@ -297,16 +344,39 @@ func (_m *MockDB) IsUsernameAvailable(username string) error { return r0 } +// MentionStringsToMentions provides a mock function with given fields: targetAccounts, originAccountID, statusID +func (_m *MockDB) MentionStringsToMentions(targetAccounts []string, originAccountID string, statusID string) ([]*gtsmodel.Mention, error) { + ret := _m.Called(targetAccounts, originAccountID, statusID) + + var r0 []*gtsmodel.Mention + if rf, ok := ret.Get(0).(func([]string, string, string) []*gtsmodel.Mention); ok { + r0 = rf(targetAccounts, originAccountID, statusID) + } else { + if ret.Get(0) != nil { + r0 = ret.Get(0).([]*gtsmodel.Mention) + } + } + + var r1 error + if rf, ok := ret.Get(1).(func([]string, string, string) error); ok { + r1 = rf(targetAccounts, originAccountID, statusID) + } else { + r1 = ret.Error(1) + } + + return r0, r1 +} + // NewSignup provides a mock function with given fields: username, reason, requireApproval, email, password, signUpIP, locale, appID -func (_m *MockDB) NewSignup(username string, reason string, requireApproval bool, email string, password string, signUpIP net.IP, locale string, appID string) (*model.User, error) { +func (_m *MockDB) NewSignup(username string, reason string, requireApproval bool, email string, password string, signUpIP net.IP, locale string, appID string) (*gtsmodel.User, error) { ret := _m.Called(username, reason, requireApproval, email, password, signUpIP, locale, appID) - var r0 *model.User - if rf, ok := ret.Get(0).(func(string, string, bool, string, string, net.IP, string, string) *model.User); ok { + var r0 *gtsmodel.User + if rf, ok := ret.Get(0).(func(string, string, bool, string, string, net.IP, string, string) *gtsmodel.User); ok { r0 = rf(username, reason, requireApproval, email, password, signUpIP, locale, appID) } else { if ret.Get(0) != nil { - r0 = ret.Get(0).(*model.User) + r0 = ret.Get(0).(*gtsmodel.User) } } @@ -334,6 +404,20 @@ func (_m *MockDB) Put(i interface{}) error { return r0 } +// SetHeaderOrAvatarForAccountID provides a mock function with given fields: mediaAttachment, accountID +func (_m *MockDB) SetHeaderOrAvatarForAccountID(mediaAttachment *gtsmodel.MediaAttachment, accountID string) error { + ret := _m.Called(mediaAttachment, accountID) + + var r0 error + if rf, ok := ret.Get(0).(func(*gtsmodel.MediaAttachment, string) error); ok { + r0 = rf(mediaAttachment, accountID) + } else { + r0 = ret.Error(0) + } + + return r0 +} + // Stop provides a mock function with given fields: ctx func (_m *MockDB) Stop(ctx context.Context) error { ret := _m.Called(ctx) @@ -348,6 +432,29 @@ func (_m *MockDB) Stop(ctx context.Context) error { return r0 } +// TagStringsToTags provides a mock function with given fields: tags, originAccountID, statusID +func (_m *MockDB) TagStringsToTags(tags []string, originAccountID string, statusID string) ([]*gtsmodel.Tag, error) { + ret := _m.Called(tags, originAccountID, statusID) + + var r0 []*gtsmodel.Tag + if rf, ok := ret.Get(0).(func([]string, string, string) []*gtsmodel.Tag); ok { + r0 = rf(tags, originAccountID, statusID) + } else { + if ret.Get(0) != nil { + r0 = ret.Get(0).([]*gtsmodel.Tag) + } + } + + var r1 error + if rf, ok := ret.Get(1).(func([]string, string, string) error); ok { + r1 = rf(tags, originAccountID, statusID) + } else { + r1 = ret.Error(1) + } + + return r0, r1 +} + // UpdateByID provides a mock function with given fields: id, i func (_m *MockDB) UpdateByID(id string, i interface{}) error { ret := _m.Called(id, i) @@ -361,3 +468,17 @@ func (_m *MockDB) UpdateByID(id string, i interface{}) error { return r0 } + +// UpdateOneByID provides a mock function with given fields: id, key, value, i +func (_m *MockDB) UpdateOneByID(id string, key string, value interface{}, i interface{}) error { + ret := _m.Called(id, key, value, i) + + var r0 error + if rf, ok := ret.Get(0).(func(string, string, interface{}, interface{}) error); ok { + r0 = rf(id, key, value, i) + } else { + r0 = ret.Error(0) + } + + return r0 +} diff --git a/internal/db/model/status.go b/internal/db/model/status.go deleted file mode 100644 index d15258727..000000000 --- a/internal/db/model/status.go +++ /dev/null @@ -1,63 +0,0 @@ -/* - GoToSocial - Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU Affero General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU Affero General Public License for more details. - - You should have received a copy of the GNU Affero General Public License - along with this program. If not, see . -*/ - -package model - -import "time" - -// Status represents a user-created 'post' or 'status' in the database, either remote or local -type Status struct { - // id of the status in the database - ID string `pg:"type:uuid,default:gen_random_uuid(),pk,notnull"` - // uri at which this status is reachable - URI string `pg:",unique"` - // web url for viewing this status - URL string `pg:",unique"` - // the html-formatted content of this status - Content string - // when was this status created? - CreatedAt time.Time `pg:"type:timestamp,notnull,default:now()"` - // when was this status updated? - UpdatedAt time.Time `pg:"type:timestamp,notnull,default:now()"` - // is this status from a local account? - Local bool - // which account posted this status? - AccountID string - // id of the status this status is a reply to - InReplyToID string - // id of the status this status is a boost of - BoostOfID string - // cw string for this status - ContentWarning string - // visibility entry for this status - Visibility *Visibility -} - -// Visibility represents the visibility granularity of a status. It is a combination of flags. -type Visibility struct { - // Is this status viewable as a direct message? - Direct bool - // Is this status viewable to followers? - Followers bool - // Is this status viewable on the local timeline? - Local bool - // Is this status boostable but not shown on public timelines? - Unlisted bool - // Is this status shown on public and federated timelines? - Public bool -} diff --git a/internal/db/pg.go b/internal/db/pg.go index df01132c2..a12529d00 100644 --- a/internal/db/pg.go +++ b/internal/db/pg.go @@ -34,11 +34,11 @@ import ( "github.com/go-pg/pg/extra/pgdebug" "github.com/go-pg/pg/v10" "github.com/go-pg/pg/v10/orm" + "github.com/google/uuid" "github.com/sirupsen/logrus" "github.com/superseriousbusiness/gotosocial/internal/config" - "github.com/superseriousbusiness/gotosocial/internal/db/model" + "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" "github.com/superseriousbusiness/gotosocial/internal/util" - "github.com/superseriousbusiness/gotosocial/pkg/mastotypes" "golang.org/x/crypto/bcrypt" ) @@ -60,12 +60,6 @@ func newPostgresService(ctx context.Context, c *config.Config, log *logrus.Entry } log.Debugf("using pg options: %+v", opts) - readyChan := make(chan interface{}) - opts.OnConnect = func(ctx context.Context, c *pg.Conn) error { - close(readyChan) - return nil - } - // create a connection pgCtx, cancel := context.WithCancel(ctx) conn := pg.Connect(opts).WithContext(pgCtx) @@ -80,8 +74,7 @@ func newPostgresService(ctx context.Context, c *config.Config, log *logrus.Entry }) } - // actually *begin* the connection so that we can tell if the db is there - // and listening, and also trigger the opts.OnConnect function passed in above + // actually *begin* the connection so that we can tell if the db is there and listening if err := conn.Ping(ctx); err != nil { cancel() return nil, fmt.Errorf("db connection error: %s", err) @@ -95,16 +88,6 @@ func newPostgresService(ctx context.Context, c *config.Config, log *logrus.Entry } log.Infof("connected to postgres version: %s", version) - // make sure the opts.OnConnect function has been triggered - // and closed the ready channel - select { - case <-readyChan: - log.Infof("postgres connection ready") - case <-time.After(5 * time.Second): - cancel() - return nil, errors.New("db connection timeout") - } - ps := &postgresService{ config: c, conn: conn, @@ -214,9 +197,9 @@ func (ps *postgresService) IsHealthy(ctx context.Context) error { func (ps *postgresService) CreateSchema(ctx context.Context) error { models := []interface{}{ - (*model.Account)(nil), - (*model.Status)(nil), - (*model.User)(nil), + (*gtsmodel.Account)(nil), + (*gtsmodel.Status)(nil), + (*gtsmodel.User)(nil), } ps.log.Info("creating db schema") @@ -254,6 +237,10 @@ func (ps *postgresService) GetWhere(key string, value interface{}, i interface{} return nil } +// func (ps *postgresService) GetWhereMany(i interface{}, where ...model.Where) error { +// return nil +// } + func (ps *postgresService) GetAll(i interface{}) error { if err := ps.conn.Model(i).Select(); err != nil { if err == pg.ErrNoRows { @@ -269,8 +256,18 @@ func (ps *postgresService) Put(i interface{}) error { return err } +func (ps *postgresService) Upsert(i interface{}, conflictColumn string) error { + if _, err := ps.conn.Model(i).OnConflict(fmt.Sprintf("(%s) DO UPDATE", conflictColumn)).Insert(); err != nil { + if err == pg.ErrNoRows { + return ErrNoEntries{} + } + return err + } + return nil +} + func (ps *postgresService) UpdateByID(id string, i interface{}) error { - if _, err := ps.conn.Model(i).OnConflict("(id) DO UPDATE").Insert(); err != nil { + if _, err := ps.conn.Model(i).Where("id = ?", id).OnConflict("(id) DO UPDATE").Insert(); err != nil { if err == pg.ErrNoRows { return ErrNoEntries{} } @@ -308,8 +305,25 @@ func (ps *postgresService) DeleteWhere(key string, value interface{}, i interfac HANDY SHORTCUTS */ -func (ps *postgresService) GetAccountByUserID(userID string, account *model.Account) error { - user := &model.User{ +func (ps *postgresService) CreateInstanceAccount() error { + username := ps.config.Host + instanceAccount := >smodel.Account{ + Username: username, + } + inserted, err := ps.conn.Model(instanceAccount).Where("username = ?", username).SelectOrInsert() + if err != nil { + return err + } + if inserted { + ps.log.Infof("created instance account %s with id %s", username, instanceAccount.ID) + } else { + ps.log.Infof("instance account %s already exists with id %s", username, instanceAccount.ID) + } + return nil +} + +func (ps *postgresService) GetAccountByUserID(userID string, account *gtsmodel.Account) error { + user := >smodel.User{ ID: userID, } if err := ps.conn.Model(user).Where("id = ?", userID).Select(); err != nil { @@ -327,7 +341,7 @@ func (ps *postgresService) GetAccountByUserID(userID string, account *model.Acco return nil } -func (ps *postgresService) GetFollowRequestsForAccountID(accountID string, followRequests *[]model.FollowRequest) error { +func (ps *postgresService) GetFollowRequestsForAccountID(accountID string, followRequests *[]gtsmodel.FollowRequest) error { if err := ps.conn.Model(followRequests).Where("target_account_id = ?", accountID).Select(); err != nil { if err == pg.ErrNoRows { return ErrNoEntries{} @@ -337,7 +351,7 @@ func (ps *postgresService) GetFollowRequestsForAccountID(accountID string, follo return nil } -func (ps *postgresService) GetFollowingByAccountID(accountID string, following *[]model.Follow) error { +func (ps *postgresService) GetFollowingByAccountID(accountID string, following *[]gtsmodel.Follow) error { if err := ps.conn.Model(following).Where("account_id = ?", accountID).Select(); err != nil { if err == pg.ErrNoRows { return ErrNoEntries{} @@ -347,7 +361,7 @@ func (ps *postgresService) GetFollowingByAccountID(accountID string, following * return nil } -func (ps *postgresService) GetFollowersByAccountID(accountID string, followers *[]model.Follow) error { +func (ps *postgresService) GetFollowersByAccountID(accountID string, followers *[]gtsmodel.Follow) error { if err := ps.conn.Model(followers).Where("target_account_id = ?", accountID).Select(); err != nil { if err == pg.ErrNoRows { return ErrNoEntries{} @@ -357,7 +371,7 @@ func (ps *postgresService) GetFollowersByAccountID(accountID string, followers * return nil } -func (ps *postgresService) GetStatusesByAccountID(accountID string, statuses *[]model.Status) error { +func (ps *postgresService) GetStatusesByAccountID(accountID string, statuses *[]gtsmodel.Status) error { if err := ps.conn.Model(statuses).Where("account_id = ?", accountID).Select(); err != nil { if err == pg.ErrNoRows { return ErrNoEntries{} @@ -367,7 +381,7 @@ func (ps *postgresService) GetStatusesByAccountID(accountID string, statuses *[] return nil } -func (ps *postgresService) GetStatusesByTimeDescending(accountID string, statuses *[]model.Status, limit int) error { +func (ps *postgresService) GetStatusesByTimeDescending(accountID string, statuses *[]gtsmodel.Status, limit int) error { q := ps.conn.Model(statuses).Order("created_at DESC") if limit != 0 { q = q.Limit(limit) @@ -384,7 +398,7 @@ func (ps *postgresService) GetStatusesByTimeDescending(accountID string, statuse return nil } -func (ps *postgresService) GetLastStatusForAccountID(accountID string, status *model.Status) error { +func (ps *postgresService) GetLastStatusForAccountID(accountID string, status *gtsmodel.Status) error { if err := ps.conn.Model(status).Order("created_at DESC").Limit(1).Where("account_id = ?", accountID).Select(); err != nil { if err == pg.ErrNoRows { return ErrNoEntries{} @@ -399,7 +413,7 @@ func (ps *postgresService) IsUsernameAvailable(username string) error { // if no error we fail because it means we found something // if error but it's not pg.ErrNoRows then we fail // if err is pg.ErrNoRows we're good, we found nothing so continue - if err := ps.conn.Model(&model.Account{}).Where("username = ?", username).Where("domain = ?", nil).Select(); err == nil { + if err := ps.conn.Model(>smodel.Account{}).Where("username = ?", username).Where("domain = ?", nil).Select(); err == nil { return fmt.Errorf("username %s already in use", username) } else if err != pg.ErrNoRows { return fmt.Errorf("db error: %s", err) @@ -416,7 +430,7 @@ func (ps *postgresService) IsEmailAvailable(email string) error { domain := strings.Split(m.Address, "@")[1] // domain will always be the second part after @ // check if the email domain is blocked - if err := ps.conn.Model(&model.EmailDomainBlock{}).Where("domain = ?", domain).Select(); err == nil { + if err := ps.conn.Model(>smodel.EmailDomainBlock{}).Where("domain = ?", domain).Select(); err == nil { // fail because we found something return fmt.Errorf("email domain %s is blocked", domain) } else if err != pg.ErrNoRows { @@ -425,7 +439,7 @@ func (ps *postgresService) IsEmailAvailable(email string) error { } // check if this email is associated with a user already - if err := ps.conn.Model(&model.User{}).Where("email = ?", email).WhereOr("unconfirmed_email = ?", email).Select(); err == nil { + if err := ps.conn.Model(>smodel.User{}).Where("email = ?", email).WhereOr("unconfirmed_email = ?", email).Select(); err == nil { // fail because we found something return fmt.Errorf("email %s already in use", email) } else if err != pg.ErrNoRows { @@ -435,7 +449,7 @@ func (ps *postgresService) IsEmailAvailable(email string) error { return nil } -func (ps *postgresService) NewSignup(username string, reason string, requireApproval bool, email string, password string, signUpIP net.IP, locale string, appID string) (*model.User, error) { +func (ps *postgresService) NewSignup(username string, reason string, requireApproval bool, email string, password string, signUpIP net.IP, locale string, appID string) (*gtsmodel.User, error) { key, err := rsa.GenerateKey(rand.Reader, 2048) if err != nil { ps.log.Errorf("error creating new rsa key: %s", err) @@ -444,19 +458,19 @@ func (ps *postgresService) NewSignup(username string, reason string, requireAppr uris := util.GenerateURIs(username, ps.config.Protocol, ps.config.Host) - a := &model.Account{ + a := >smodel.Account{ Username: username, DisplayName: username, Reason: reason, URL: uris.UserURL, PrivateKey: key, PublicKey: &key.PublicKey, - ActorType: "Person", + ActorType: gtsmodel.ActivityStreamsPerson, URI: uris.UserURI, - InboxURL: uris.InboxURL, - OutboxURL: uris.OutboxURL, - FollowersURL: uris.FollowersURL, - FeaturedCollectionURL: uris.CollectionURL, + InboxURL: uris.InboxURI, + OutboxURL: uris.OutboxURI, + FollowersURL: uris.FollowersURI, + FeaturedCollectionURL: uris.CollectionURI, } if _, err = ps.conn.Model(a).Insert(); err != nil { return nil, err @@ -466,7 +480,7 @@ func (ps *postgresService) NewSignup(username string, reason string, requireAppr if err != nil { return nil, fmt.Errorf("error hashing password: %s", err) } - u := &model.User{ + u := >smodel.User{ AccountID: a.ID, EncryptedPassword: string(pw), SignUpIP: signUpIP, @@ -482,13 +496,45 @@ func (ps *postgresService) NewSignup(username string, reason string, requireAppr return u, nil } -func (ps *postgresService) SetHeaderOrAvatarForAccountID(mediaAttachment *model.MediaAttachment, accountID string) error { - _, err := ps.conn.Model(mediaAttachment).Insert() - return err +func (ps *postgresService) SetHeaderOrAvatarForAccountID(mediaAttachment *gtsmodel.MediaAttachment, accountID string) error { + if mediaAttachment.Avatar && mediaAttachment.Header { + return errors.New("one media attachment cannot be both header and avatar") + } + + var headerOrAVI string + if mediaAttachment.Avatar { + headerOrAVI = "avatar" + } else if mediaAttachment.Header { + headerOrAVI = "header" + } else { + return errors.New("given media attachment was neither a header nor an avatar") + } + + // TODO: there are probably more side effects here that need to be handled + if _, err := ps.conn.Model(mediaAttachment).OnConflict("(id) DO UPDATE").Insert(); err != nil { + return err + } + + if _, err := ps.conn.Model(>smodel.Account{}).Set(fmt.Sprintf("%s_media_attachment_id = ?", headerOrAVI), mediaAttachment.ID).Where("id = ?", accountID).Update(); err != nil { + return err + } + return nil } -func (ps *postgresService) GetHeaderForAccountID(header *model.MediaAttachment, accountID string) error { - if err := ps.conn.Model(header).Where("account_id = ?", accountID).Where("header = ?", true).Select(); err != nil { +func (ps *postgresService) GetHeaderForAccountID(header *gtsmodel.MediaAttachment, accountID string) error { + acct := >smodel.Account{} + if err := ps.conn.Model(acct).Where("id = ?", accountID).Select(); err != nil { + if err == pg.ErrNoRows { + return ErrNoEntries{} + } + return err + } + + if acct.HeaderMediaAttachmentID == "" { + return ErrNoEntries{} + } + + if err := ps.conn.Model(header).Where("id = ?", acct.HeaderMediaAttachmentID).Select(); err != nil { if err == pg.ErrNoRows { return ErrNoEntries{} } @@ -497,8 +543,20 @@ func (ps *postgresService) GetHeaderForAccountID(header *model.MediaAttachment, return nil } -func (ps *postgresService) GetAvatarForAccountID(avatar *model.MediaAttachment, accountID string) error { - if err := ps.conn.Model(avatar).Where("account_id = ?", accountID).Where("avatar = ?", true).Select(); err != nil { +func (ps *postgresService) GetAvatarForAccountID(avatar *gtsmodel.MediaAttachment, accountID string) error { + acct := >smodel.Account{} + if err := ps.conn.Model(acct).Where("id = ?", accountID).Select(); err != nil { + if err == pg.ErrNoRows { + return ErrNoEntries{} + } + return err + } + + if acct.AvatarMediaAttachmentID == "" { + return ErrNoEntries{} + } + + if err := ps.conn.Model(avatar).Where("id = ?", acct.AvatarMediaAttachmentID).Select(); err != nil { if err == pg.ErrNoRows { return ErrNoEntries{} } @@ -507,156 +565,480 @@ func (ps *postgresService) GetAvatarForAccountID(avatar *model.MediaAttachment, return nil } +func (ps *postgresService) Blocked(account1 string, account2 string) (bool, error) { + var blocked bool + if err := ps.conn.Model(>smodel.Block{}). + Where("account_id = ?", account1).Where("target_account_id = ?", account2). + WhereOr("target_account_id = ?", account1).Where("account_id = ?", account2). + Select(); err != nil { + if err == pg.ErrNoRows { + blocked = false + return blocked, nil + } else { + return blocked, err + } + } + blocked = true + return blocked, nil +} + +func (ps *postgresService) StatusVisible(targetStatus *gtsmodel.Status, targetAccount *gtsmodel.Account, requestingAccount *gtsmodel.Account, relevantAccounts *gtsmodel.RelevantAccounts) (bool, error) { + l := ps.log.WithField("func", "StatusVisible") + + // if target account is suspended then don't show the status + if !targetAccount.SuspendedAt.IsZero() { + l.Debug("target account suspended at is not zero") + return false, nil + } + + // if the target user doesn't exist (anymore) then the status also shouldn't be visible + targetUser := >smodel.User{} + if err := ps.conn.Model(targetUser).Where("account_id = ?", targetAccount.ID).Select(); err != nil { + l.Debug("target user could not be selected") + if err == pg.ErrNoRows { + return false, ErrNoEntries{} + } else { + return false, err + } + } + + // if target user is disabled, not yet approved, or not confirmed then don't show the status + // (although in the latter two cases it's unlikely they posted a status yet anyway, but you never know!) + if targetUser.Disabled || !targetUser.Approved || targetUser.ConfirmedAt.IsZero() { + l.Debug("target user is disabled, not approved, or not confirmed") + return false, nil + } + + // If requesting account is nil, that means whoever requested the status didn't auth, or their auth failed. + // In this case, we can still serve the status if it's public, otherwise we definitely shouldn't. + if requestingAccount == nil { + + if targetStatus.Visibility == gtsmodel.VisibilityPublic { + return true, nil + } + l.Debug("requesting account is nil but the target status isn't public") + return false, nil + } + + // if requesting account is suspended then don't show the status -- although they probably shouldn't have gotten + // this far (ie., been authed) in the first place: this is just for safety. + if !requestingAccount.SuspendedAt.IsZero() { + l.Debug("requesting account is suspended") + return false, nil + } + + // check if we have a local account -- if so we can check the user for that account in the DB + if requestingAccount.Domain == "" { + requestingUser := >smodel.User{} + if err := ps.conn.Model(requestingUser).Where("account_id = ?", requestingAccount.ID).Select(); err != nil { + // if the requesting account is local but doesn't have a corresponding user in the db this is a problem + if err == pg.ErrNoRows { + l.Debug("requesting account is local but there's no corresponding user") + return false, nil + } else { + l.Debugf("requesting account is local but there was an error getting the corresponding user: %s", err) + return false, err + } + } + // okay, user exists, so make sure it has full privileges/is confirmed/approved + if requestingUser.Disabled || !requestingUser.Approved || requestingUser.ConfirmedAt.IsZero() { + l.Debug("requesting account is local but corresponding user is either disabled, not approved, or not confirmed") + return false, nil + } + } + + // if the target status belongs to the requesting account, they should always be able to view it at this point + if targetStatus.AccountID == requestingAccount.ID { + return true, nil + } + + // At this point we have a populated targetAccount, targetStatus, and requestingAccount, so we can check for blocks and whathaveyou + // First check if a block exists directly between the target account (which authored the status) and the requesting account. + if blocked, err := ps.Blocked(targetAccount.ID, requestingAccount.ID); err != nil { + l.Debugf("something went wrong figuring out if the accounts have a block: %s", err) + return false, err + } else if blocked { + // don't allow the status to be viewed if a block exists in *either* direction between these two accounts, no creepy stalking please + l.Debug("a block exists between requesting account and target account") + return false, nil + } + + // check other accounts mentioned/boosted by/replied to by the status, if they exist + if relevantAccounts != nil { + // status replies to account id + if relevantAccounts.ReplyToAccount != nil { + if blocked, err := ps.Blocked(relevantAccounts.ReplyToAccount.ID, requestingAccount.ID); err != nil { + return false, err + } else if blocked { + return false, nil + } + } + + // status boosts accounts id + if relevantAccounts.BoostedAccount != nil { + if blocked, err := ps.Blocked(relevantAccounts.BoostedAccount.ID, requestingAccount.ID); err != nil { + return false, err + } else if blocked { + return false, nil + } + } + + // status boosts a reply to account id + if relevantAccounts.BoostedReplyToAccount != nil { + if blocked, err := ps.Blocked(relevantAccounts.BoostedReplyToAccount.ID, requestingAccount.ID); err != nil { + return false, err + } else if blocked { + return false, nil + } + } + + // status mentions accounts + for _, a := range relevantAccounts.MentionedAccounts { + if blocked, err := ps.Blocked(a.ID, requestingAccount.ID); err != nil { + return false, err + } else if blocked { + return false, nil + } + } + } + + // at this point we know neither account blocks the other, or another account mentioned or otherwise referred to in the status + // that means it's now just a matter of checking the visibility settings of the status itself + switch targetStatus.Visibility { + case gtsmodel.VisibilityPublic, gtsmodel.VisibilityUnlocked: + // no problem here, just return OK + return true, nil + case gtsmodel.VisibilityFollowersOnly: + // check one-way follow + follows, err := ps.Follows(requestingAccount, targetAccount) + if err != nil { + return false, err + } + if !follows { + return false, nil + } + return true, nil + case gtsmodel.VisibilityMutualsOnly: + // check mutual follow + mutuals, err := ps.Mutuals(requestingAccount, targetAccount) + if err != nil { + return false, err + } + if !mutuals { + return false, nil + } + return true, nil + case gtsmodel.VisibilityDirect: + // make sure the requesting account is mentioned in the status + for _, menchie := range targetStatus.Mentions { + if menchie == requestingAccount.ID { + return true, nil // yep it's mentioned! + } + } + return false, nil // it's not mentioned -_- + } + + return false, errors.New("reached the end of StatusVisible with no result") +} + +func (ps *postgresService) Follows(sourceAccount *gtsmodel.Account, targetAccount *gtsmodel.Account) (bool, error) { + return ps.conn.Model(>smodel.Follow{}).Where("account_id = ?", sourceAccount.ID).Where("target_account_id = ?", targetAccount.ID).Exists() +} + +func (ps *postgresService) Mutuals(account1 *gtsmodel.Account, account2 *gtsmodel.Account) (bool, error) { + // make sure account 1 follows account 2 + f1, err := ps.conn.Model(>smodel.Follow{}).Where("account_id = ?", account1.ID).Where("target_account_id = ?", account2.ID).Exists() + if err != nil { + if err == pg.ErrNoRows { + return false, nil + } else { + return false, err + } + } + + // make sure account 2 follows account 1 + f2, err := ps.conn.Model(>smodel.Follow{}).Where("account_id = ?", account2.ID).Where("target_account_id = ?", account1.ID).Exists() + if err != nil { + if err == pg.ErrNoRows { + return false, nil + } else { + return false, err + } + } + + return f1 && f2, nil +} + +func (ps *postgresService) PullRelevantAccountsFromStatus(targetStatus *gtsmodel.Status) (*gtsmodel.RelevantAccounts, error) { + accounts := >smodel.RelevantAccounts{ + MentionedAccounts: []*gtsmodel.Account{}, + } + + // get the replied to account from the status and add it to the pile + if targetStatus.InReplyToAccountID != "" { + repliedToAccount := >smodel.Account{} + if err := ps.conn.Model(repliedToAccount).Where("id = ?", targetStatus.InReplyToAccountID).Select(); err != nil { + return accounts, err + } + accounts.ReplyToAccount = repliedToAccount + } + + // get the boosted account from the status and add it to the pile + if targetStatus.BoostOfID != "" { + // retrieve the boosted status first + boostedStatus := >smodel.Status{} + if err := ps.conn.Model(boostedStatus).Where("id = ?", targetStatus.BoostOfID).Select(); err != nil { + return accounts, err + } + boostedAccount := >smodel.Account{} + if err := ps.conn.Model(boostedAccount).Where("id = ?", boostedStatus.AccountID).Select(); err != nil { + return accounts, err + } + accounts.BoostedAccount = boostedAccount + + // the boosted status might be a reply to another account so we should get that too + if boostedStatus.InReplyToAccountID != "" { + boostedStatusRepliedToAccount := >smodel.Account{} + if err := ps.conn.Model(boostedStatusRepliedToAccount).Where("id = ?", boostedStatus.InReplyToAccountID).Select(); err != nil { + return accounts, err + } + accounts.BoostedReplyToAccount = boostedStatusRepliedToAccount + } + } + + // now get all accounts with IDs that are mentioned in the status + for _, mentionedAccountID := range targetStatus.Mentions { + mentionedAccount := >smodel.Account{} + if err := ps.conn.Model(mentionedAccount).Where("id = ?", mentionedAccountID).Select(); err != nil { + return accounts, err + } + accounts.MentionedAccounts = append(accounts.MentionedAccounts, mentionedAccount) + } + + return accounts, nil +} + +func (ps *postgresService) GetReplyCountForStatus(status *gtsmodel.Status) (int, error) { + return ps.conn.Model(>smodel.Status{}).Where("in_reply_to_id = ?", status.ID).Count() +} + +func (ps *postgresService) GetReblogCountForStatus(status *gtsmodel.Status) (int, error) { + return ps.conn.Model(>smodel.Status{}).Where("boost_of_id = ?", status.ID).Count() +} + +func (ps *postgresService) GetFaveCountForStatus(status *gtsmodel.Status) (int, error) { + return ps.conn.Model(>smodel.StatusFave{}).Where("status_id = ?", status.ID).Count() +} + +func (ps *postgresService) StatusFavedBy(status *gtsmodel.Status, accountID string) (bool, error) { + return ps.conn.Model(>smodel.StatusFave{}).Where("status_id = ?", status.ID).Where("account_id = ?", accountID).Exists() +} + +func (ps *postgresService) StatusRebloggedBy(status *gtsmodel.Status, accountID string) (bool, error) { + return ps.conn.Model(>smodel.Status{}).Where("boost_of_id = ?", status.ID).Where("account_id = ?", accountID).Exists() +} + +func (ps *postgresService) StatusMutedBy(status *gtsmodel.Status, accountID string) (bool, error) { + return ps.conn.Model(>smodel.StatusMute{}).Where("status_id = ?", status.ID).Where("account_id = ?", accountID).Exists() +} + +func (ps *postgresService) StatusBookmarkedBy(status *gtsmodel.Status, accountID string) (bool, error) { + return ps.conn.Model(>smodel.StatusBookmark{}).Where("status_id = ?", status.ID).Where("account_id = ?", accountID).Exists() +} + +func (ps *postgresService) StatusPinnedBy(status *gtsmodel.Status, accountID string) (bool, error) { + return ps.conn.Model(>smodel.StatusPin{}).Where("status_id = ?", status.ID).Where("account_id = ?", accountID).Exists() +} + +func (ps *postgresService) FaveStatus(status *gtsmodel.Status, accountID string) (*gtsmodel.StatusFave, error) { + // first check if a fave already exists, we can just return if so + existingFave := >smodel.StatusFave{} + err := ps.conn.Model(existingFave).Where("status_id = ?", status.ID).Where("account_id = ?", accountID).Select() + if err == nil { + // fave already exists so just return nothing at all + return nil, nil + } + + // an error occurred so it might exist or not, we don't know + if err != pg.ErrNoRows { + return nil, err + } + + // it doesn't exist so create it + newFave := >smodel.StatusFave{ + AccountID: accountID, + TargetAccountID: status.AccountID, + StatusID: status.ID, + } + if _, err = ps.conn.Model(newFave).Insert(); err != nil { + return nil, err + } + + return newFave, nil +} + +func (ps *postgresService) UnfaveStatus(status *gtsmodel.Status, accountID string) (*gtsmodel.StatusFave, error) { + // if a fave doesn't exist, we don't need to do anything + existingFave := >smodel.StatusFave{} + err := ps.conn.Model(existingFave).Where("status_id = ?", status.ID).Where("account_id = ?", accountID).Select() + // the fave doesn't exist so return nothing at all + if err == pg.ErrNoRows { + return nil, nil + } + + // an error occurred so it might exist or not, we don't know + if err != nil && err != pg.ErrNoRows { + return nil, err + } + + // the fave exists so remove it + if _, err = ps.conn.Model(>smodel.StatusFave{}).Where("status_id = ?", status.ID).Where("account_id = ?", accountID).Delete(); err != nil { + return nil, err + } + + return existingFave, nil +} + +func (ps *postgresService) WhoFavedStatus(status *gtsmodel.Status) ([]*gtsmodel.Account, error) { + accounts := []*gtsmodel.Account{} + + faves := []*gtsmodel.StatusFave{} + if err := ps.conn.Model(&faves).Where("status_id = ?", status.ID).Select(); err != nil { + if err == pg.ErrNoRows { + return accounts, nil // no rows just means nobody has faved this status, so that's fine + } + return nil, err // an actual error has occurred + } + + for _, f := range faves { + acc := >smodel.Account{} + if err := ps.conn.Model(acc).Where("id = ?", f.AccountID).Select(); err != nil { + if err == pg.ErrNoRows { + continue // the account doesn't exist for some reason??? but this isn't the place to worry about that so just skip it + } + return nil, err // an actual error has occurred + } + accounts = append(accounts, acc) + } + return accounts, nil +} + /* CONVERSION FUNCTIONS */ -// AccountToMastoSensitive takes an internal account model and transforms it into an account ready to be served through the API. -// The resulting account fits the specifications for the path /api/v1/accounts/verify_credentials, as described here: -// https://docs.joinmastodon.org/methods/accounts/. Note that it's *sensitive* because it's only meant to be exposed to the user -// that the account actually belongs to. -func (ps *postgresService) AccountToMastoSensitive(a *model.Account) (*mastotypes.Account, error) { - // we can build this sensitive account easily by first getting the public account.... - mastoAccount, err := ps.AccountToMastoPublic(a) - if err != nil { - return nil, err - } +func (ps *postgresService) MentionStringsToMentions(targetAccounts []string, originAccountID string, statusID string) ([]*gtsmodel.Mention, error) { + menchies := []*gtsmodel.Mention{} + for _, a := range targetAccounts { + // A mentioned account looks like "@test@example.org" or just "@test" for a local account + // -- we can guarantee this from the regex that targetAccounts should have been derived from. + // But we still need to do a bit of fiddling to get what we need here -- the username and domain (if given). - // then adding the Source object to it... + // 1. trim off the first @ + t := strings.TrimPrefix(a, "@") - // check pending follow requests aimed at this account - fr := []model.FollowRequest{} - if err := ps.GetFollowRequestsForAccountID(a.ID, &fr); err != nil { - if _, ok := err.(ErrNoEntries); !ok { - return nil, fmt.Errorf("error getting follow requests: %s", err) + // 2. split the username and domain + s := strings.Split(t, "@") + + // 3. if it's length 1 it's a local account, length 2 means remote, anything else means something is wrong + var local bool + switch len(s) { + case 1: + local = true + case 2: + local = false + default: + return nil, fmt.Errorf("mentioned account format '%s' was not valid", a) } - } - var frc int - if fr != nil { - frc = len(fr) - } - mastoAccount.Source = &mastotypes.Source{ - Privacy: a.Privacy, - Sensitive: a.Sensitive, - Language: a.Language, - Note: a.Note, - Fields: mastoAccount.Fields, - FollowRequestsCount: frc, - } + var username, domain string + username = s[0] + if !local { + domain = s[1] + } - return mastoAccount, nil + // 4. check we now have a proper username and domain + if username == "" || (!local && domain == "") { + return nil, fmt.Errorf("username or domain for '%s' was nil", a) + } + + // okay we're good now, we can start pulling accounts out of the database + mentionedAccount := >smodel.Account{} + var err error + if local { + // local user -- should have a null domain + err = ps.conn.Model(mentionedAccount).Where("username = ?", username).Where("? IS NULL", pg.Ident("domain")).Select() + } else { + // remote user -- should have domain defined + err = ps.conn.Model(mentionedAccount).Where("username = ?", username).Where("? = ?", pg.Ident("domain"), domain).Select() + } + + if err != nil { + if err == pg.ErrNoRows { + // no result found for this username/domain so just don't include it as a mencho and carry on about our business + ps.log.Debugf("no account found with username '%s' and domain '%s', skipping it", username, domain) + continue + } + // a serious error has happened so bail + return nil, fmt.Errorf("error getting account with username '%s' and domain '%s': %s", username, domain, err) + } + + // id, createdAt and updatedAt will be populated by the db, so we have everything we need! + menchies = append(menchies, >smodel.Mention{ + StatusID: statusID, + OriginAccountID: originAccountID, + TargetAccountID: mentionedAccount.ID, + }) + } + return menchies, nil } -func (ps *postgresService) AccountToMastoPublic(a *model.Account) (*mastotypes.Account, error) { - // count followers - followers := []model.Follow{} - if err := ps.GetFollowersByAccountID(a.ID, &followers); err != nil { - if _, ok := err.(ErrNoEntries); !ok { - return nil, fmt.Errorf("error getting followers: %s", err) +func (ps *postgresService) TagStringsToTags(tags []string, originAccountID string, statusID string) ([]*gtsmodel.Tag, error) { + newTags := []*gtsmodel.Tag{} + for _, t := range tags { + tag := >smodel.Tag{} + // we can use selectorinsert here to create the new tag if it doesn't exist already + // inserted will be true if this is a new tag we just created + if err := ps.conn.Model(tag).Where("name = ?", t).Select(); err != nil { + if err == pg.ErrNoRows { + // tag doesn't exist yet so populate it + tag.ID = uuid.NewString() + tag.Name = t + tag.FirstSeenFromAccountID = originAccountID + tag.CreatedAt = time.Now() + tag.UpdatedAt = time.Now() + tag.Useable = true + tag.Listable = true + } else { + return nil, fmt.Errorf("error getting tag with name %s: %s", t, err) + } } - } - var followersCount int - if followers != nil { - followersCount = len(followers) - } - // count following - following := []model.Follow{} - if err := ps.GetFollowingByAccountID(a.ID, &following); err != nil { - if _, ok := err.(ErrNoEntries); !ok { - return nil, fmt.Errorf("error getting following: %s", err) + // bail already if the tag isn't useable + if !tag.Useable { + continue } + tag.LastStatusAt = time.Now() + newTags = append(newTags, tag) } - var followingCount int - if following != nil { - followingCount = len(following) - } - - // count statuses - statuses := []model.Status{} - if err := ps.GetStatusesByAccountID(a.ID, &statuses); err != nil { - if _, ok := err.(ErrNoEntries); !ok { - return nil, fmt.Errorf("error getting last statuses: %s", err) - } - } - var statusesCount int - if statuses != nil { - statusesCount = len(statuses) - } - - // check when the last status was - lastStatus := &model.Status{} - if err := ps.GetLastStatusForAccountID(a.ID, lastStatus); err != nil { - if _, ok := err.(ErrNoEntries); !ok { - return nil, fmt.Errorf("error getting last status: %s", err) - } - } - var lastStatusAt string - if lastStatus != nil { - lastStatusAt = lastStatus.CreatedAt.Format(time.RFC3339) - } - - // build the avatar and header URLs - avi := &model.MediaAttachment{} - if err := ps.GetAvatarForAccountID(avi, a.ID); err != nil { - if _, ok := err.(ErrNoEntries); !ok { - return nil, fmt.Errorf("error getting avatar: %s", err) - } - } - aviURL := avi.File.Path - aviURLStatic := avi.Thumbnail.Path - - header := &model.MediaAttachment{} - if err := ps.GetHeaderForAccountID(avi, a.ID); err != nil { - if _, ok := err.(ErrNoEntries); !ok { - return nil, fmt.Errorf("error getting header: %s", err) - } - } - headerURL := header.File.Path - headerURLStatic := header.Thumbnail.Path - - // get the fields set on this account - fields := []mastotypes.Field{} - for _, f := range a.Fields { - mField := mastotypes.Field{ - Name: f.Name, - Value: f.Value, - } - if !f.VerifiedAt.IsZero() { - mField.VerifiedAt = f.VerifiedAt.Format(time.RFC3339) - } - fields = append(fields, mField) - } - - var acct string - if a.Domain != "" { - // this is a remote user - acct = fmt.Sprintf("%s@%s", a.Username, a.Domain) - } else { - // this is a local user - acct = a.Username - } - - return &mastotypes.Account{ - ID: a.ID, - Username: a.Username, - Acct: acct, - DisplayName: a.DisplayName, - Locked: a.Locked, - Bot: a.Bot, - CreatedAt: a.CreatedAt.Format(time.RFC3339), - Note: a.Note, - URL: a.URL, - Avatar: aviURL, - AvatarStatic: aviURLStatic, - Header: headerURL, - HeaderStatic: headerURLStatic, - FollowersCount: followersCount, - FollowingCount: followingCount, - StatusesCount: statusesCount, - LastStatusAt: lastStatusAt, - Emojis: nil, // TODO: implement this - Fields: fields, - }, nil + return newTags, nil +} + +func (ps *postgresService) EmojiStringsToEmojis(emojis []string, originAccountID string, statusID string) ([]*gtsmodel.Emoji, error) { + newEmojis := []*gtsmodel.Emoji{} + for _, e := range emojis { + emoji := >smodel.Emoji{} + err := ps.conn.Model(emoji).Where("shortcode = ?", e).Where("visible_in_picker = true").Where("disabled = false").Select() + if err != nil { + if err == pg.ErrNoRows { + // no result found for this username/domain so just don't include it as an emoji and carry on about our business + ps.log.Debugf("no emoji found with shortcode %s, skipping it", e) + continue + } + // a serious error has happened so bail + return nil, fmt.Errorf("error getting emoji with shortcode %s: %s", e, err) + } + newEmojis = append(newEmojis, emoji) + } + return newEmojis, nil } diff --git a/internal/distributor/distributor.go b/internal/distributor/distributor.go index ab092907f..74b69c5b0 100644 --- a/internal/distributor/distributor.go +++ b/internal/distributor/distributor.go @@ -19,8 +19,8 @@ package distributor import ( - "github.com/go-fed/activity/pub" "github.com/sirupsen/logrus" + "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" ) // Distributor should be passed to api modules (see internal/apimodule/...). It is used for @@ -30,10 +30,10 @@ import ( // fire messages into the distributor and not wait for a reply before proceeding with other work. This allows // for clean distribution of messages without slowing down the client API and harming the user experience. type Distributor interface { - // ClientAPIIn returns a channel for accepting messages that come from the gts client API. - ClientAPIIn() chan interface{} + // FromClientAPI returns a channel for accepting messages that come from the gts client API. + FromClientAPI() chan FromClientAPI // ClientAPIOut returns a channel for putting in messages that need to go to the gts client API. - ClientAPIOut() chan interface{} + ToClientAPI() chan ToClientAPI // Start starts the Distributor, reading from its channels and passing messages back and forth. Start() error // Stop stops the distributor cleanly, finishing handling any remaining messages before closing down. @@ -42,32 +42,32 @@ type Distributor interface { // distributor just implements the Distributor interface type distributor struct { - federator pub.FederatingActor - clientAPIIn chan interface{} - clientAPIOut chan interface{} - stop chan interface{} - log *logrus.Logger + // federator pub.FederatingActor + fromClientAPI chan FromClientAPI + toClientAPI chan ToClientAPI + stop chan interface{} + log *logrus.Logger } // New returns a new Distributor that uses the given federator and logger -func New(federator pub.FederatingActor, log *logrus.Logger) Distributor { +func New(log *logrus.Logger) Distributor { return &distributor{ - federator: federator, - clientAPIIn: make(chan interface{}, 100), - clientAPIOut: make(chan interface{}, 100), - stop: make(chan interface{}), - log: log, + // federator: federator, + fromClientAPI: make(chan FromClientAPI, 100), + toClientAPI: make(chan ToClientAPI, 100), + stop: make(chan interface{}), + log: log, } } // ClientAPIIn returns a channel for accepting messages that come from the gts client API. -func (d *distributor) ClientAPIIn() chan interface{} { - return d.clientAPIIn +func (d *distributor) FromClientAPI() chan FromClientAPI { + return d.fromClientAPI } // ClientAPIOut returns a channel for putting in messages that need to go to the gts client API. -func (d *distributor) ClientAPIOut() chan interface{} { - return d.clientAPIOut +func (d *distributor) ToClientAPI() chan ToClientAPI { + return d.toClientAPI } // Start starts the Distributor, reading from its channels and passing messages back and forth. @@ -76,10 +76,10 @@ func (d *distributor) Start() error { DistLoop: for { select { - case clientMsgIn := <-d.clientAPIIn: - d.log.Infof("received clientMsgIn: %+v", clientMsgIn) - case clientMsgOut := <-d.clientAPIOut: - d.log.Infof("received clientMsgOut: %+v", clientMsgOut) + case clientMsg := <-d.fromClientAPI: + d.log.Infof("received message FROM client API: %+v", clientMsg) + case clientMsg := <-d.toClientAPI: + d.log.Infof("received message TO client API: %+v", clientMsg) case <-d.stop: break DistLoop } @@ -94,3 +94,15 @@ func (d *distributor) Stop() error { close(d.stop) return nil } + +type FromClientAPI struct { + APObjectType gtsmodel.ActivityStreamsObject + APActivityType gtsmodel.ActivityStreamsActivity + Activity interface{} +} + +type ToClientAPI struct { + APObjectType gtsmodel.ActivityStreamsObject + APActivityType gtsmodel.ActivityStreamsActivity + Activity interface{} +} diff --git a/internal/distributor/mock_Distributor.go b/internal/distributor/mock_Distributor.go index 93d7dd8d2..42248c3f2 100644 --- a/internal/distributor/mock_Distributor.go +++ b/internal/distributor/mock_Distributor.go @@ -9,32 +9,16 @@ type MockDistributor struct { mock.Mock } -// ClientAPIIn provides a mock function with given fields: -func (_m *MockDistributor) ClientAPIIn() chan interface{} { +// FromClientAPI provides a mock function with given fields: +func (_m *MockDistributor) FromClientAPI() chan FromClientAPI { ret := _m.Called() - var r0 chan interface{} - if rf, ok := ret.Get(0).(func() chan interface{}); ok { + var r0 chan FromClientAPI + if rf, ok := ret.Get(0).(func() chan FromClientAPI); ok { r0 = rf() } else { if ret.Get(0) != nil { - r0 = ret.Get(0).(chan interface{}) - } - } - - return r0 -} - -// ClientAPIOut provides a mock function with given fields: -func (_m *MockDistributor) ClientAPIOut() chan interface{} { - ret := _m.Called() - - var r0 chan interface{} - if rf, ok := ret.Get(0).(func() chan interface{}); ok { - r0 = rf() - } else { - if ret.Get(0) != nil { - r0 = ret.Get(0).(chan interface{}) + r0 = ret.Get(0).(chan FromClientAPI) } } @@ -68,3 +52,19 @@ func (_m *MockDistributor) Stop() error { return r0 } + +// ToClientAPI provides a mock function with given fields: +func (_m *MockDistributor) ToClientAPI() chan ToClientAPI { + ret := _m.Called() + + var r0 chan ToClientAPI + if rf, ok := ret.Get(0).(func() chan ToClientAPI); ok { + r0 = rf() + } else { + if ret.Get(0) != nil { + r0 = ret.Get(0).(chan ToClientAPI) + } + } + + return r0 +} diff --git a/internal/gotosocial/actions.go b/internal/gotosocial/actions.go index 03d90217e..2f90858b4 100644 --- a/internal/gotosocial/actions.go +++ b/internal/gotosocial/actions.go @@ -29,12 +29,19 @@ import ( "github.com/superseriousbusiness/gotosocial/internal/action" "github.com/superseriousbusiness/gotosocial/internal/apimodule" "github.com/superseriousbusiness/gotosocial/internal/apimodule/account" + "github.com/superseriousbusiness/gotosocial/internal/apimodule/admin" "github.com/superseriousbusiness/gotosocial/internal/apimodule/app" "github.com/superseriousbusiness/gotosocial/internal/apimodule/auth" + "github.com/superseriousbusiness/gotosocial/internal/apimodule/fileserver" + mediaModule "github.com/superseriousbusiness/gotosocial/internal/apimodule/media" + "github.com/superseriousbusiness/gotosocial/internal/apimodule/security" + "github.com/superseriousbusiness/gotosocial/internal/apimodule/status" "github.com/superseriousbusiness/gotosocial/internal/cache" "github.com/superseriousbusiness/gotosocial/internal/config" "github.com/superseriousbusiness/gotosocial/internal/db" + "github.com/superseriousbusiness/gotosocial/internal/distributor" "github.com/superseriousbusiness/gotosocial/internal/federation" + "github.com/superseriousbusiness/gotosocial/internal/mastotypes" "github.com/superseriousbusiness/gotosocial/internal/media" "github.com/superseriousbusiness/gotosocial/internal/oauth" "github.com/superseriousbusiness/gotosocial/internal/router" @@ -53,7 +60,7 @@ var Run action.GTSAction = func(ctx context.Context, c *config.Config, log *logr return fmt.Errorf("error creating router: %s", err) } - storageBackend, err := storage.NewInMem(c, log) + storageBackend, err := storage.NewLocal(c, log) if err != nil { return fmt.Errorf("error creating storage backend: %s", err) } @@ -61,16 +68,36 @@ var Run action.GTSAction = func(ctx context.Context, c *config.Config, log *logr // build backend handlers mediaHandler := media.New(c, dbService, storageBackend, log) oauthServer := oauth.New(dbService, log) + distributor := distributor.New(log) + if err := distributor.Start(); err != nil { + return fmt.Errorf("error starting distributor: %s", err) + } + + // build converters and util + mastoConverter := mastotypes.New(c, dbService) // build client api modules authModule := auth.New(oauthServer, dbService, log) - accountModule := account.New(c, dbService, oauthServer, mediaHandler, log) - appsModule := app.New(oauthServer, dbService, log) + accountModule := account.New(c, dbService, oauthServer, mediaHandler, mastoConverter, log) + appsModule := app.New(oauthServer, dbService, mastoConverter, log) + mm := mediaModule.New(dbService, mediaHandler, mastoConverter, c, log) + fileServerModule := fileserver.New(c, dbService, storageBackend, log) + adminModule := admin.New(c, dbService, mediaHandler, mastoConverter, log) + statusModule := status.New(c, dbService, mediaHandler, mastoConverter, distributor, log) + securityModule := security.New(c, log) apiModules := []apimodule.ClientAPIModule{ - authModule, // this one has to go first so the other modules use its middleware + // modules with middleware go first + securityModule, + authModule, + + // now everything else accountModule, appsModule, + mm, + fileServerModule, + adminModule, + statusModule, } for _, m := range apiModules { @@ -82,6 +109,10 @@ var Run action.GTSAction = func(ctx context.Context, c *config.Config, log *logr } } + if err := dbService.CreateInstanceAccount(); err != nil { + return fmt.Errorf("error creating instance account: %s", err) + } + gts, err := New(dbService, &cache.MockCache{}, router, federation.New(dbService, log), c) if err != nil { return fmt.Errorf("error creating gotosocial service: %s", err) diff --git a/internal/gotosocial/mock_Gotosocial.go b/internal/gotosocial/mock_Gotosocial.go index 8aca69bfc..66f776e5c 100644 --- a/internal/gotosocial/mock_Gotosocial.go +++ b/internal/gotosocial/mock_Gotosocial.go @@ -26,3 +26,17 @@ func (_m *MockGotosocial) Start(_a0 context.Context) error { return r0 } + +// Stop provides a mock function with given fields: _a0 +func (_m *MockGotosocial) Stop(_a0 context.Context) error { + ret := _m.Called(_a0) + + var r0 error + if rf, ok := ret.Get(0).(func(context.Context) error); ok { + r0 = rf(_a0) + } else { + r0 = ret.Error(0) + } + + return r0 +} diff --git a/internal/mastotypes/converter.go b/internal/mastotypes/converter.go new file mode 100644 index 000000000..e689b62da --- /dev/null +++ b/internal/mastotypes/converter.go @@ -0,0 +1,544 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package mastotypes + +import ( + "fmt" + "time" + + "github.com/superseriousbusiness/gotosocial/internal/config" + "github.com/superseriousbusiness/gotosocial/internal/db" + "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" + mastotypes "github.com/superseriousbusiness/gotosocial/internal/mastotypes/mastomodel" + "github.com/superseriousbusiness/gotosocial/internal/util" +) + +// Converter is an interface for the common action of converting between mastotypes (frontend, serializable) models and internal gts models used in the database. +// It requires access to the database because many of the conversions require pulling out database entries and counting them etc. +type Converter interface { + // AccountToMastoSensitive takes a db model account as a param, and returns a populated mastotype account, or an error + // if something goes wrong. The returned account should be ready to serialize on an API level, and may have sensitive fields, + // so serve it only to an authorized user who should have permission to see it. + AccountToMastoSensitive(account *gtsmodel.Account) (*mastotypes.Account, error) + + // AccountToMastoPublic takes a db model account as a param, and returns a populated mastotype account, or an error + // if something goes wrong. The returned account should be ready to serialize on an API level, and may NOT have sensitive fields. + // In other words, this is the public record that the server has of an account. + AccountToMastoPublic(account *gtsmodel.Account) (*mastotypes.Account, error) + + // AppToMastoSensitive takes a db model application as a param, and returns a populated mastotype application, or an error + // if something goes wrong. The returned application should be ready to serialize on an API level, and may have sensitive fields + // (such as client id and client secret), so serve it only to an authorized user who should have permission to see it. + AppToMastoSensitive(application *gtsmodel.Application) (*mastotypes.Application, error) + + // AppToMastoPublic takes a db model application as a param, and returns a populated mastotype application, or an error + // if something goes wrong. The returned application should be ready to serialize on an API level, and has sensitive + // fields sanitized so that it can be served to non-authorized accounts without revealing any private information. + AppToMastoPublic(application *gtsmodel.Application) (*mastotypes.Application, error) + + // AttachmentToMasto converts a gts model media attacahment into its mastodon representation for serialization on the API. + AttachmentToMasto(attachment *gtsmodel.MediaAttachment) (mastotypes.Attachment, error) + + // MentionToMasto converts a gts model mention into its mastodon (frontend) representation for serialization on the API. + MentionToMasto(m *gtsmodel.Mention) (mastotypes.Mention, error) + + // EmojiToMasto converts a gts model emoji into its mastodon (frontend) representation for serialization on the API. + EmojiToMasto(e *gtsmodel.Emoji) (mastotypes.Emoji, error) + + // TagToMasto converts a gts model tag into its mastodon (frontend) representation for serialization on the API. + TagToMasto(t *gtsmodel.Tag) (mastotypes.Tag, error) + + // StatusToMasto converts a gts model status into its mastodon (frontend) representation for serialization on the API. + StatusToMasto(s *gtsmodel.Status, targetAccount *gtsmodel.Account, requestingAccount *gtsmodel.Account, boostOfAccount *gtsmodel.Account, replyToAccount *gtsmodel.Account, reblogOfStatus *gtsmodel.Status) (*mastotypes.Status, error) +} + +type converter struct { + config *config.Config + db db.DB +} + +// New returns a new Converter +func New(config *config.Config, db db.DB) Converter { + return &converter{ + config: config, + db: db, + } +} + +func (c *converter) AccountToMastoSensitive(a *gtsmodel.Account) (*mastotypes.Account, error) { + // we can build this sensitive account easily by first getting the public account.... + mastoAccount, err := c.AccountToMastoPublic(a) + if err != nil { + return nil, err + } + + // then adding the Source object to it... + + // check pending follow requests aimed at this account + fr := []gtsmodel.FollowRequest{} + if err := c.db.GetFollowRequestsForAccountID(a.ID, &fr); err != nil { + if _, ok := err.(db.ErrNoEntries); !ok { + return nil, fmt.Errorf("error getting follow requests: %s", err) + } + } + var frc int + if fr != nil { + frc = len(fr) + } + + mastoAccount.Source = &mastotypes.Source{ + Privacy: util.ParseMastoVisFromGTSVis(a.Privacy), + Sensitive: a.Sensitive, + Language: a.Language, + Note: a.Note, + Fields: mastoAccount.Fields, + FollowRequestsCount: frc, + } + + return mastoAccount, nil +} + +func (c *converter) AccountToMastoPublic(a *gtsmodel.Account) (*mastotypes.Account, error) { + // count followers + followers := []gtsmodel.Follow{} + if err := c.db.GetFollowersByAccountID(a.ID, &followers); err != nil { + if _, ok := err.(db.ErrNoEntries); !ok { + return nil, fmt.Errorf("error getting followers: %s", err) + } + } + var followersCount int + if followers != nil { + followersCount = len(followers) + } + + // count following + following := []gtsmodel.Follow{} + if err := c.db.GetFollowingByAccountID(a.ID, &following); err != nil { + if _, ok := err.(db.ErrNoEntries); !ok { + return nil, fmt.Errorf("error getting following: %s", err) + } + } + var followingCount int + if following != nil { + followingCount = len(following) + } + + // count statuses + statuses := []gtsmodel.Status{} + if err := c.db.GetStatusesByAccountID(a.ID, &statuses); err != nil { + if _, ok := err.(db.ErrNoEntries); !ok { + return nil, fmt.Errorf("error getting last statuses: %s", err) + } + } + var statusesCount int + if statuses != nil { + statusesCount = len(statuses) + } + + // check when the last status was + lastStatus := >smodel.Status{} + if err := c.db.GetLastStatusForAccountID(a.ID, lastStatus); err != nil { + if _, ok := err.(db.ErrNoEntries); !ok { + return nil, fmt.Errorf("error getting last status: %s", err) + } + } + var lastStatusAt string + if lastStatus != nil { + lastStatusAt = lastStatus.CreatedAt.Format(time.RFC3339) + } + + // build the avatar and header URLs + avi := >smodel.MediaAttachment{} + if err := c.db.GetAvatarForAccountID(avi, a.ID); err != nil { + if _, ok := err.(db.ErrNoEntries); !ok { + return nil, fmt.Errorf("error getting avatar: %s", err) + } + } + aviURL := avi.URL + aviURLStatic := avi.Thumbnail.URL + + header := >smodel.MediaAttachment{} + if err := c.db.GetHeaderForAccountID(avi, a.ID); err != nil { + if _, ok := err.(db.ErrNoEntries); !ok { + return nil, fmt.Errorf("error getting header: %s", err) + } + } + headerURL := header.URL + headerURLStatic := header.Thumbnail.URL + + // get the fields set on this account + fields := []mastotypes.Field{} + for _, f := range a.Fields { + mField := mastotypes.Field{ + Name: f.Name, + Value: f.Value, + } + if !f.VerifiedAt.IsZero() { + mField.VerifiedAt = f.VerifiedAt.Format(time.RFC3339) + } + fields = append(fields, mField) + } + + var acct string + if a.Domain != "" { + // this is a remote user + acct = fmt.Sprintf("%s@%s", a.Username, a.Domain) + } else { + // this is a local user + acct = a.Username + } + + return &mastotypes.Account{ + ID: a.ID, + Username: a.Username, + Acct: acct, + DisplayName: a.DisplayName, + Locked: a.Locked, + Bot: a.Bot, + CreatedAt: a.CreatedAt.Format(time.RFC3339), + Note: a.Note, + URL: a.URL, + Avatar: aviURL, + AvatarStatic: aviURLStatic, + Header: headerURL, + HeaderStatic: headerURLStatic, + FollowersCount: followersCount, + FollowingCount: followingCount, + StatusesCount: statusesCount, + LastStatusAt: lastStatusAt, + Emojis: nil, // TODO: implement this + Fields: fields, + }, nil +} + +func (c *converter) AppToMastoSensitive(a *gtsmodel.Application) (*mastotypes.Application, error) { + return &mastotypes.Application{ + ID: a.ID, + Name: a.Name, + Website: a.Website, + RedirectURI: a.RedirectURI, + ClientID: a.ClientID, + ClientSecret: a.ClientSecret, + VapidKey: a.VapidKey, + }, nil +} + +func (c *converter) AppToMastoPublic(a *gtsmodel.Application) (*mastotypes.Application, error) { + return &mastotypes.Application{ + Name: a.Name, + Website: a.Website, + }, nil +} + +func (c *converter) AttachmentToMasto(a *gtsmodel.MediaAttachment) (mastotypes.Attachment, error) { + return mastotypes.Attachment{ + ID: a.ID, + Type: string(a.Type), + URL: a.URL, + PreviewURL: a.Thumbnail.URL, + RemoteURL: a.RemoteURL, + PreviewRemoteURL: a.Thumbnail.RemoteURL, + Meta: mastotypes.MediaMeta{ + Original: mastotypes.MediaDimensions{ + Width: a.FileMeta.Original.Width, + Height: a.FileMeta.Original.Height, + Size: fmt.Sprintf("%dx%d", a.FileMeta.Original.Width, a.FileMeta.Original.Height), + Aspect: float32(a.FileMeta.Original.Aspect), + }, + Small: mastotypes.MediaDimensions{ + Width: a.FileMeta.Small.Width, + Height: a.FileMeta.Small.Height, + Size: fmt.Sprintf("%dx%d", a.FileMeta.Small.Width, a.FileMeta.Small.Height), + Aspect: float32(a.FileMeta.Small.Aspect), + }, + Focus: mastotypes.MediaFocus{ + X: a.FileMeta.Focus.X, + Y: a.FileMeta.Focus.Y, + }, + }, + Description: a.Description, + Blurhash: a.Blurhash, + }, nil +} + +func (c *converter) MentionToMasto(m *gtsmodel.Mention) (mastotypes.Mention, error) { + target := >smodel.Account{} + if err := c.db.GetByID(m.TargetAccountID, target); err != nil { + return mastotypes.Mention{}, err + } + + var local bool + if target.Domain == "" { + local = true + } + + var acct string + if local { + acct = fmt.Sprintf("@%s", target.Username) + } else { + acct = fmt.Sprintf("@%s@%s", target.Username, target.Domain) + } + + return mastotypes.Mention{ + ID: target.ID, + Username: target.Username, + URL: target.URL, + Acct: acct, + }, nil +} + +func (c *converter) EmojiToMasto(e *gtsmodel.Emoji) (mastotypes.Emoji, error) { + return mastotypes.Emoji{ + Shortcode: e.Shortcode, + URL: e.ImageURL, + StaticURL: e.ImageStaticURL, + VisibleInPicker: e.VisibleInPicker, + Category: e.CategoryID, + }, nil +} + +func (c *converter) TagToMasto(t *gtsmodel.Tag) (mastotypes.Tag, error) { + tagURL := fmt.Sprintf("%s://%s/tags/%s", c.config.Protocol, c.config.Host, t.Name) + + return mastotypes.Tag{ + Name: t.Name, + URL: tagURL, // we don't serve URLs with collections of tagged statuses (FOR NOW) so this is purely for mastodon compatibility ¯\_(ツ)_/¯ + }, nil +} + +func (c *converter) StatusToMasto( + s *gtsmodel.Status, + targetAccount *gtsmodel.Account, + requestingAccount *gtsmodel.Account, + boostOfAccount *gtsmodel.Account, + replyToAccount *gtsmodel.Account, + reblogOfStatus *gtsmodel.Status) (*mastotypes.Status, error) { + + repliesCount, err := c.db.GetReplyCountForStatus(s) + if err != nil { + return nil, fmt.Errorf("error counting replies: %s", err) + } + + reblogsCount, err := c.db.GetReblogCountForStatus(s) + if err != nil { + return nil, fmt.Errorf("error counting reblogs: %s", err) + } + + favesCount, err := c.db.GetFaveCountForStatus(s) + if err != nil { + return nil, fmt.Errorf("error counting faves: %s", err) + } + + var faved bool + var reblogged bool + var bookmarked bool + var pinned bool + var muted bool + + // requestingAccount will be nil for public requests without auth + // But if it's not nil, we can also get information about the requestingAccount's interaction with this status + if requestingAccount != nil { + faved, err = c.db.StatusFavedBy(s, requestingAccount.ID) + if err != nil { + return nil, fmt.Errorf("error checking if requesting account has faved status: %s", err) + } + + reblogged, err = c.db.StatusRebloggedBy(s, requestingAccount.ID) + if err != nil { + return nil, fmt.Errorf("error checking if requesting account has reblogged status: %s", err) + } + + muted, err = c.db.StatusMutedBy(s, requestingAccount.ID) + if err != nil { + return nil, fmt.Errorf("error checking if requesting account has muted status: %s", err) + } + + bookmarked, err = c.db.StatusBookmarkedBy(s, requestingAccount.ID) + if err != nil { + return nil, fmt.Errorf("error checking if requesting account has bookmarked status: %s", err) + } + + pinned, err = c.db.StatusPinnedBy(s, requestingAccount.ID) + if err != nil { + return nil, fmt.Errorf("error checking if requesting account has pinned status: %s", err) + } + } + + var mastoRebloggedStatus *mastotypes.Status // TODO + + var mastoApplication *mastotypes.Application + if s.CreatedWithApplicationID != "" { + gtsApplication := >smodel.Application{} + if err := c.db.GetByID(s.CreatedWithApplicationID, gtsApplication); err != nil { + return nil, fmt.Errorf("error fetching application used to create status: %s", err) + } + mastoApplication, err = c.AppToMastoPublic(gtsApplication) + if err != nil { + return nil, fmt.Errorf("error parsing application used to create status: %s", err) + } + } + + mastoTargetAccount, err := c.AccountToMastoPublic(targetAccount) + if err != nil { + return nil, fmt.Errorf("error parsing account of status author: %s", err) + } + + mastoAttachments := []mastotypes.Attachment{} + // the status might already have some gts attachments on it if it's not been pulled directly from the database + // if so, we can directly convert the gts attachments into masto ones + if s.GTSMediaAttachments != nil { + for _, gtsAttachment := range s.GTSMediaAttachments { + mastoAttachment, err := c.AttachmentToMasto(gtsAttachment) + if err != nil { + return nil, fmt.Errorf("error converting attachment with id %s: %s", gtsAttachment.ID, err) + } + mastoAttachments = append(mastoAttachments, mastoAttachment) + } + // the status doesn't have gts attachments on it, but it does have attachment IDs + // in this case, we need to pull the gts attachments from the db to convert them into masto ones + } else { + for _, a := range s.Attachments { + gtsAttachment := >smodel.MediaAttachment{} + if err := c.db.GetByID(a, gtsAttachment); err != nil { + return nil, fmt.Errorf("error getting attachment with id %s: %s", a, err) + } + mastoAttachment, err := c.AttachmentToMasto(gtsAttachment) + if err != nil { + return nil, fmt.Errorf("error converting attachment with id %s: %s", a, err) + } + mastoAttachments = append(mastoAttachments, mastoAttachment) + } + } + + mastoMentions := []mastotypes.Mention{} + // the status might already have some gts mentions on it if it's not been pulled directly from the database + // if so, we can directly convert the gts mentions into masto ones + if s.GTSMentions != nil { + for _, gtsMention := range s.GTSMentions { + mastoMention, err := c.MentionToMasto(gtsMention) + if err != nil { + return nil, fmt.Errorf("error converting mention with id %s: %s", gtsMention.ID, err) + } + mastoMentions = append(mastoMentions, mastoMention) + } + // the status doesn't have gts mentions on it, but it does have mention IDs + // in this case, we need to pull the gts mentions from the db to convert them into masto ones + } else { + for _, m := range s.Mentions { + gtsMention := >smodel.Mention{} + if err := c.db.GetByID(m, gtsMention); err != nil { + return nil, fmt.Errorf("error getting mention with id %s: %s", m, err) + } + mastoMention, err := c.MentionToMasto(gtsMention) + if err != nil { + return nil, fmt.Errorf("error converting mention with id %s: %s", gtsMention.ID, err) + } + mastoMentions = append(mastoMentions, mastoMention) + } + } + + mastoTags := []mastotypes.Tag{} + // the status might already have some gts tags on it if it's not been pulled directly from the database + // if so, we can directly convert the gts tags into masto ones + if s.GTSTags != nil { + for _, gtsTag := range s.GTSTags { + mastoTag, err := c.TagToMasto(gtsTag) + if err != nil { + return nil, fmt.Errorf("error converting tag with id %s: %s", gtsTag.ID, err) + } + mastoTags = append(mastoTags, mastoTag) + } + // the status doesn't have gts tags on it, but it does have tag IDs + // in this case, we need to pull the gts tags from the db to convert them into masto ones + } else { + for _, t := range s.Tags { + gtsTag := >smodel.Tag{} + if err := c.db.GetByID(t, gtsTag); err != nil { + return nil, fmt.Errorf("error getting tag with id %s: %s", t, err) + } + mastoTag, err := c.TagToMasto(gtsTag) + if err != nil { + return nil, fmt.Errorf("error converting tag with id %s: %s", gtsTag.ID, err) + } + mastoTags = append(mastoTags, mastoTag) + } + } + + mastoEmojis := []mastotypes.Emoji{} + // the status might already have some gts emojis on it if it's not been pulled directly from the database + // if so, we can directly convert the gts emojis into masto ones + if s.GTSEmojis != nil { + for _, gtsEmoji := range s.GTSEmojis { + mastoEmoji, err := c.EmojiToMasto(gtsEmoji) + if err != nil { + return nil, fmt.Errorf("error converting emoji with id %s: %s", gtsEmoji.ID, err) + } + mastoEmojis = append(mastoEmojis, mastoEmoji) + } + // the status doesn't have gts emojis on it, but it does have emoji IDs + // in this case, we need to pull the gts emojis from the db to convert them into masto ones + } else { + for _, e := range s.Emojis { + gtsEmoji := >smodel.Emoji{} + if err := c.db.GetByID(e, gtsEmoji); err != nil { + return nil, fmt.Errorf("error getting emoji with id %s: %s", e, err) + } + mastoEmoji, err := c.EmojiToMasto(gtsEmoji) + if err != nil { + return nil, fmt.Errorf("error converting emoji with id %s: %s", gtsEmoji.ID, err) + } + mastoEmojis = append(mastoEmojis, mastoEmoji) + } + } + + var mastoCard *mastotypes.Card + var mastoPoll *mastotypes.Poll + + return &mastotypes.Status{ + ID: s.ID, + CreatedAt: s.CreatedAt.Format(time.RFC3339), + InReplyToID: s.InReplyToID, + InReplyToAccountID: s.InReplyToAccountID, + Sensitive: s.Sensitive, + SpoilerText: s.ContentWarning, + Visibility: util.ParseMastoVisFromGTSVis(s.Visibility), + Language: s.Language, + URI: s.URI, + URL: s.URL, + RepliesCount: repliesCount, + ReblogsCount: reblogsCount, + FavouritesCount: favesCount, + Favourited: faved, + Reblogged: reblogged, + Muted: muted, + Bookmarked: bookmarked, + Pinned: pinned, + Content: s.Content, + Reblog: mastoRebloggedStatus, + Application: mastoApplication, + Account: mastoTargetAccount, + MediaAttachments: mastoAttachments, + Mentions: mastoMentions, + Tags: mastoTags, + Emojis: mastoEmojis, + Card: mastoCard, // TODO: implement cards + Poll: mastoPoll, // TODO: implement polls + Text: s.Text, + }, nil +} diff --git a/pkg/mastotypes/README.md b/internal/mastotypes/mastomodel/README.md similarity index 100% rename from pkg/mastotypes/README.md rename to internal/mastotypes/mastomodel/README.md diff --git a/pkg/mastotypes/account.go b/internal/mastotypes/mastomodel/account.go similarity index 99% rename from pkg/mastotypes/account.go rename to internal/mastotypes/mastomodel/account.go index 3ddd3c517..bbcf9c90f 100644 --- a/pkg/mastotypes/account.go +++ b/internal/mastotypes/mastomodel/account.go @@ -67,7 +67,7 @@ type Account struct { // When a timed mute will expire, if applicable. (ISO 8601 Datetime) MuteExpiresAt string `json:"mute_expires_at,omitempty"` // An extra entity to be used with API methods to verify credentials and update credentials. - Source *Source `json:"source"` + Source *Source `json:"source,omitempty"` } // AccountCreateRequest represents the form submitted during a POST request to /api/v1/accounts. diff --git a/pkg/mastotypes/activity.go b/internal/mastotypes/mastomodel/activity.go similarity index 100% rename from pkg/mastotypes/activity.go rename to internal/mastotypes/mastomodel/activity.go diff --git a/pkg/mastotypes/admin.go b/internal/mastotypes/mastomodel/admin.go similarity index 100% rename from pkg/mastotypes/admin.go rename to internal/mastotypes/mastomodel/admin.go diff --git a/pkg/mastotypes/announcement.go b/internal/mastotypes/mastomodel/announcement.go similarity index 100% rename from pkg/mastotypes/announcement.go rename to internal/mastotypes/mastomodel/announcement.go diff --git a/pkg/mastotypes/announcementreaction.go b/internal/mastotypes/mastomodel/announcementreaction.go similarity index 100% rename from pkg/mastotypes/announcementreaction.go rename to internal/mastotypes/mastomodel/announcementreaction.go diff --git a/pkg/mastotypes/application.go b/internal/mastotypes/mastomodel/application.go similarity index 98% rename from pkg/mastotypes/application.go rename to internal/mastotypes/mastomodel/application.go index 1984eff46..6140a0127 100644 --- a/pkg/mastotypes/application.go +++ b/internal/mastotypes/mastomodel/application.go @@ -35,7 +35,7 @@ type Application struct { // Client secret to use when obtaining an auth token for this application (ie., in client_secret parameter of https://docs.joinmastodon.org/methods/apps/) ClientSecret string `json:"client_secret,omitempty"` // Used for Push Streaming API. Returned with POST /api/v1/apps. Equivalent to https://docs.joinmastodon.org/entities/pushsubscription/#server_key - VapidKey string `json:"vapid_key"` + VapidKey string `json:"vapid_key,omitempty"` } // ApplicationPOSTRequest represents a POST request to https://example.org/api/v1/apps. diff --git a/pkg/mastotypes/attachment.go b/internal/mastotypes/mastomodel/attachment.go similarity index 96% rename from pkg/mastotypes/attachment.go rename to internal/mastotypes/mastomodel/attachment.go index 4d4d0955a..bda79a8ee 100644 --- a/pkg/mastotypes/attachment.go +++ b/internal/mastotypes/mastomodel/attachment.go @@ -45,8 +45,10 @@ type Attachment struct { URL string `json:"url"` // The location of a scaled-down preview of the attachment. PreviewURL string `json:"preview_url"` - // The location of the full-size original attachment on the remote website. + // The location of the full-size original attachment on the remote server. RemoteURL string `json:"remote_url,omitempty"` + // The location of a scaled-down preview of the attachment on the remote server. + PreviewRemoteURL string `json:"preview_remote_url,omitempty"` // A shorter URL for the attachment. TextURL string `json:"text_url,omitempty"` // Metadata returned by Paperclip. diff --git a/pkg/mastotypes/card.go b/internal/mastotypes/mastomodel/card.go similarity index 100% rename from pkg/mastotypes/card.go rename to internal/mastotypes/mastomodel/card.go diff --git a/pkg/mastotypes/context.go b/internal/mastotypes/mastomodel/context.go similarity index 100% rename from pkg/mastotypes/context.go rename to internal/mastotypes/mastomodel/context.go diff --git a/pkg/mastotypes/conversation.go b/internal/mastotypes/mastomodel/conversation.go similarity index 100% rename from pkg/mastotypes/conversation.go rename to internal/mastotypes/mastomodel/conversation.go diff --git a/pkg/mastotypes/emoji.go b/internal/mastotypes/mastomodel/emoji.go similarity index 74% rename from pkg/mastotypes/emoji.go rename to internal/mastotypes/mastomodel/emoji.go index e9ef95460..c50ca6343 100644 --- a/pkg/mastotypes/emoji.go +++ b/internal/mastotypes/mastomodel/emoji.go @@ -18,6 +18,8 @@ package mastotypes +import "mime/multipart" + // Emoji represents a custom emoji. See https://docs.joinmastodon.org/entities/emoji/ type Emoji struct { // REQUIRED @@ -36,3 +38,11 @@ type Emoji struct { // Used for sorting custom emoji in the picker. Category string `json:"category,omitempty"` } + +// EmojiCreateRequest represents a request to create a custom emoji made through the admin API. +type EmojiCreateRequest struct { + // Desired shortcode for the emoji, without surrounding colons. This must be unique for the domain. + Shortcode string `form:"shortcode" validation:"required"` + // Image file to use for the emoji. Must be png or gif and no larger than 50kb. + Image *multipart.FileHeader `form:"image" validation:"required"` +} diff --git a/pkg/mastotypes/error.go b/internal/mastotypes/mastomodel/error.go similarity index 100% rename from pkg/mastotypes/error.go rename to internal/mastotypes/mastomodel/error.go diff --git a/pkg/mastotypes/featuredtag.go b/internal/mastotypes/mastomodel/featuredtag.go similarity index 100% rename from pkg/mastotypes/featuredtag.go rename to internal/mastotypes/mastomodel/featuredtag.go diff --git a/pkg/mastotypes/field.go b/internal/mastotypes/mastomodel/field.go similarity index 100% rename from pkg/mastotypes/field.go rename to internal/mastotypes/mastomodel/field.go diff --git a/pkg/mastotypes/filter.go b/internal/mastotypes/mastomodel/filter.go similarity index 100% rename from pkg/mastotypes/filter.go rename to internal/mastotypes/mastomodel/filter.go diff --git a/pkg/mastotypes/history.go b/internal/mastotypes/mastomodel/history.go similarity index 100% rename from pkg/mastotypes/history.go rename to internal/mastotypes/mastomodel/history.go diff --git a/pkg/mastotypes/identityproof.go b/internal/mastotypes/mastomodel/identityproof.go similarity index 100% rename from pkg/mastotypes/identityproof.go rename to internal/mastotypes/mastomodel/identityproof.go diff --git a/pkg/mastotypes/instance.go b/internal/mastotypes/mastomodel/instance.go similarity index 100% rename from pkg/mastotypes/instance.go rename to internal/mastotypes/mastomodel/instance.go diff --git a/pkg/mastotypes/list.go b/internal/mastotypes/mastomodel/list.go similarity index 100% rename from pkg/mastotypes/list.go rename to internal/mastotypes/mastomodel/list.go diff --git a/pkg/mastotypes/marker.go b/internal/mastotypes/mastomodel/marker.go similarity index 100% rename from pkg/mastotypes/marker.go rename to internal/mastotypes/mastomodel/marker.go diff --git a/pkg/mastotypes/mention.go b/internal/mastotypes/mastomodel/mention.go similarity index 100% rename from pkg/mastotypes/mention.go rename to internal/mastotypes/mastomodel/mention.go diff --git a/pkg/mastotypes/notification.go b/internal/mastotypes/mastomodel/notification.go similarity index 100% rename from pkg/mastotypes/notification.go rename to internal/mastotypes/mastomodel/notification.go diff --git a/pkg/mastotypes/oauth.go b/internal/mastotypes/mastomodel/oauth.go similarity index 100% rename from pkg/mastotypes/oauth.go rename to internal/mastotypes/mastomodel/oauth.go diff --git a/pkg/mastotypes/poll.go b/internal/mastotypes/mastomodel/poll.go similarity index 100% rename from pkg/mastotypes/poll.go rename to internal/mastotypes/mastomodel/poll.go diff --git a/pkg/mastotypes/preferences.go b/internal/mastotypes/mastomodel/preferences.go similarity index 100% rename from pkg/mastotypes/preferences.go rename to internal/mastotypes/mastomodel/preferences.go diff --git a/pkg/mastotypes/pushsubscription.go b/internal/mastotypes/mastomodel/pushsubscription.go similarity index 100% rename from pkg/mastotypes/pushsubscription.go rename to internal/mastotypes/mastomodel/pushsubscription.go diff --git a/pkg/mastotypes/relationship.go b/internal/mastotypes/mastomodel/relationship.go similarity index 100% rename from pkg/mastotypes/relationship.go rename to internal/mastotypes/mastomodel/relationship.go diff --git a/pkg/mastotypes/results.go b/internal/mastotypes/mastomodel/results.go similarity index 100% rename from pkg/mastotypes/results.go rename to internal/mastotypes/mastomodel/results.go diff --git a/pkg/mastotypes/scheduledstatus.go b/internal/mastotypes/mastomodel/scheduledstatus.go similarity index 100% rename from pkg/mastotypes/scheduledstatus.go rename to internal/mastotypes/mastomodel/scheduledstatus.go diff --git a/pkg/mastotypes/source.go b/internal/mastotypes/mastomodel/source.go similarity index 97% rename from pkg/mastotypes/source.go rename to internal/mastotypes/mastomodel/source.go index 4142540a7..0445a1ffb 100644 --- a/pkg/mastotypes/source.go +++ b/internal/mastotypes/mastomodel/source.go @@ -27,7 +27,7 @@ type Source struct { // unlisted = Unlisted post // private = Followers-only post // direct = Direct post - Privacy string `json:"privacy,omitempty"` + Privacy Visibility `json:"privacy,omitempty"` // Whether new statuses should be marked sensitive by default. Sensitive bool `json:"sensitive,omitempty"` // The default posting language for new statuses. diff --git a/pkg/mastotypes/status.go b/internal/mastotypes/mastomodel/status.go similarity index 84% rename from pkg/mastotypes/status.go rename to internal/mastotypes/mastomodel/status.go index e98504e27..a27a0e6a2 100644 --- a/pkg/mastotypes/status.go +++ b/internal/mastotypes/mastomodel/status.go @@ -18,29 +18,6 @@ package mastotypes -// StatusRequest represents a mastodon-api status POST request, as defined here: https://docs.joinmastodon.org/methods/statuses/ -// It should be used at the path https://mastodon.example/api/v1/statuses -type StatusRequest struct { - // Text content of the status. If media_ids is provided, this becomes optional. Attaching a poll is optional while status is provided. - Status string `form:"status"` - // Array of Attachment ids to be attached as media. If provided, status becomes optional, and poll cannot be used. - MediaIDs []string `form:"media_ids"` - // Poll to include with this status. - Poll *PollRequest `form:"poll"` - // ID of the status being replied to, if status is a reply - InReplyToID string `form:"in_reply_to_id"` - // Mark status and attached media as sensitive? - Sensitive bool `form:"sensitive"` - // Text to be shown as a warning or subject before the actual content. Statuses are generally collapsed behind this field. - SpoilerText string `form:"spoiler_text"` - // Visibility of the posted status. Enumerable oneOf public, unlisted, private, direct. - Visibility string `form:"visibility"` - // ISO 8601 Datetime at which to schedule a status. Providing this paramter will cause ScheduledStatus to be returned instead of Status. Must be at least 5 minutes in the future. - ScheduledAt string `form:"scheduled_at"` - // ISO 639 language code for this status. - Language string `form:"language"` -} - // Status represents a mastodon-api Status type, as defined here: https://docs.joinmastodon.org/entities/status/ type Status struct { // ID of the status in the database. @@ -48,19 +25,15 @@ type Status struct { // The date when this status was created (ISO 8601 Datetime) CreatedAt string `json:"created_at"` // ID of the status being replied. - InReplyToID string `json:"in_reply_to_id"` + InReplyToID string `json:"in_reply_to_id,omitempty"` // ID of the account being replied to. - InReplyToAccountID string `json:"in_reply_to_account_id"` + InReplyToAccountID string `json:"in_reply_to_account_id,omitempty"` // Is this status marked as sensitive content? Sensitive bool `json:"sensitive"` // Subject or summary line, below which status content is collapsed until expanded. - SpoilerText string `json:"spoiler_text"` + SpoilerText string `json:"spoiler_text,omitempty"` // Visibility of this status. - // public = Visible to everyone, shown in public timelines. - // unlisted = Visible to public, but not included in public timelines. - // private = Visible to followers only, and to any mentioned users. - // direct = Visible only to mentioned users. - Visibility string `json:"visibility"` + Visibility Visibility `json:"visibility"` // Primary language of this status. (ISO 639 Part 1 two-letter language code) Language string `json:"language"` // URI of the status used for federation. @@ -86,7 +59,7 @@ type Status struct { // HTML-encoded status content. Content string `json:"content"` // The status being reblogged. - Reblog *Status `json:"reblog"` + Reblog *Status `json:"reblog,omitempty"` // The application used to post this status. Application *Application `json:"application"` // The account that authored this status. @@ -108,3 +81,39 @@ type Status struct { // the original text from the HTML content. Text string `json:"text"` } + +// StatusCreateRequest represents a mastodon-api status POST request, as defined here: https://docs.joinmastodon.org/methods/statuses/ +// It should be used at the path https://mastodon.example/api/v1/statuses +type StatusCreateRequest struct { + // Text content of the status. If media_ids is provided, this becomes optional. Attaching a poll is optional while status is provided. + Status string `form:"status"` + // Array of Attachment ids to be attached as media. If provided, status becomes optional, and poll cannot be used. + MediaIDs []string `form:"media_ids"` + // Poll to include with this status. + Poll *PollRequest `form:"poll"` + // ID of the status being replied to, if status is a reply + InReplyToID string `form:"in_reply_to_id"` + // Mark status and attached media as sensitive? + Sensitive bool `form:"sensitive"` + // Text to be shown as a warning or subject before the actual content. Statuses are generally collapsed behind this field. + SpoilerText string `form:"spoiler_text"` + // Visibility of the posted status. Enumerable oneOf public, unlisted, private, direct. + Visibility Visibility `form:"visibility"` + // ISO 8601 Datetime at which to schedule a status. Providing this paramter will cause ScheduledStatus to be returned instead of Status. Must be at least 5 minutes in the future. + ScheduledAt string `form:"scheduled_at"` + // ISO 639 language code for this status. + Language string `form:"language"` +} + +type Visibility string + +const ( + // visible to everyone + VisibilityPublic Visibility = "public" + // visible to everyone but only on home timelines or in lists + VisibilityUnlisted Visibility = "unlisted" + // visible to followers only + VisibilityPrivate Visibility = "private" + // visible only to tagged recipients + VisibilityDirect Visibility = "direct" +) diff --git a/pkg/mastotypes/tag.go b/internal/mastotypes/mastomodel/tag.go similarity index 86% rename from pkg/mastotypes/tag.go rename to internal/mastotypes/mastomodel/tag.go index 4431ac3e9..82e6e6618 100644 --- a/pkg/mastotypes/tag.go +++ b/internal/mastotypes/mastomodel/tag.go @@ -20,4 +20,8 @@ package mastotypes // Tag represents a hashtag used within the content of a status. See https://docs.joinmastodon.org/entities/tag/ type Tag struct { + // The value of the hashtag after the # sign. + Name string `json:"name"` + // A link to the hashtag on the instance. + URL string `json:"url"` } diff --git a/pkg/mastotypes/token.go b/internal/mastotypes/mastomodel/token.go similarity index 100% rename from pkg/mastotypes/token.go rename to internal/mastotypes/mastomodel/token.go diff --git a/internal/mastotypes/mock_Converter.go b/internal/mastotypes/mock_Converter.go new file mode 100644 index 000000000..732d933ae --- /dev/null +++ b/internal/mastotypes/mock_Converter.go @@ -0,0 +1,148 @@ +// Code generated by mockery v2.7.4. DO NOT EDIT. + +package mastotypes + +import ( + mock "github.com/stretchr/testify/mock" + gtsmodel "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" + mastotypes "github.com/superseriousbusiness/gotosocial/internal/mastotypes/mastomodel" +) + +// MockConverter is an autogenerated mock type for the Converter type +type MockConverter struct { + mock.Mock +} + +// AccountToMastoPublic provides a mock function with given fields: account +func (_m *MockConverter) AccountToMastoPublic(account *gtsmodel.Account) (*mastotypes.Account, error) { + ret := _m.Called(account) + + var r0 *mastotypes.Account + if rf, ok := ret.Get(0).(func(*gtsmodel.Account) *mastotypes.Account); ok { + r0 = rf(account) + } else { + if ret.Get(0) != nil { + r0 = ret.Get(0).(*mastotypes.Account) + } + } + + var r1 error + if rf, ok := ret.Get(1).(func(*gtsmodel.Account) error); ok { + r1 = rf(account) + } else { + r1 = ret.Error(1) + } + + return r0, r1 +} + +// AccountToMastoSensitive provides a mock function with given fields: account +func (_m *MockConverter) AccountToMastoSensitive(account *gtsmodel.Account) (*mastotypes.Account, error) { + ret := _m.Called(account) + + var r0 *mastotypes.Account + if rf, ok := ret.Get(0).(func(*gtsmodel.Account) *mastotypes.Account); ok { + r0 = rf(account) + } else { + if ret.Get(0) != nil { + r0 = ret.Get(0).(*mastotypes.Account) + } + } + + var r1 error + if rf, ok := ret.Get(1).(func(*gtsmodel.Account) error); ok { + r1 = rf(account) + } else { + r1 = ret.Error(1) + } + + return r0, r1 +} + +// AppToMastoPublic provides a mock function with given fields: application +func (_m *MockConverter) AppToMastoPublic(application *gtsmodel.Application) (*mastotypes.Application, error) { + ret := _m.Called(application) + + var r0 *mastotypes.Application + if rf, ok := ret.Get(0).(func(*gtsmodel.Application) *mastotypes.Application); ok { + r0 = rf(application) + } else { + if ret.Get(0) != nil { + r0 = ret.Get(0).(*mastotypes.Application) + } + } + + var r1 error + if rf, ok := ret.Get(1).(func(*gtsmodel.Application) error); ok { + r1 = rf(application) + } else { + r1 = ret.Error(1) + } + + return r0, r1 +} + +// AppToMastoSensitive provides a mock function with given fields: application +func (_m *MockConverter) AppToMastoSensitive(application *gtsmodel.Application) (*mastotypes.Application, error) { + ret := _m.Called(application) + + var r0 *mastotypes.Application + if rf, ok := ret.Get(0).(func(*gtsmodel.Application) *mastotypes.Application); ok { + r0 = rf(application) + } else { + if ret.Get(0) != nil { + r0 = ret.Get(0).(*mastotypes.Application) + } + } + + var r1 error + if rf, ok := ret.Get(1).(func(*gtsmodel.Application) error); ok { + r1 = rf(application) + } else { + r1 = ret.Error(1) + } + + return r0, r1 +} + +// AttachmentToMasto provides a mock function with given fields: attachment +func (_m *MockConverter) AttachmentToMasto(attachment *gtsmodel.MediaAttachment) (mastotypes.Attachment, error) { + ret := _m.Called(attachment) + + var r0 mastotypes.Attachment + if rf, ok := ret.Get(0).(func(*gtsmodel.MediaAttachment) mastotypes.Attachment); ok { + r0 = rf(attachment) + } else { + r0 = ret.Get(0).(mastotypes.Attachment) + } + + var r1 error + if rf, ok := ret.Get(1).(func(*gtsmodel.MediaAttachment) error); ok { + r1 = rf(attachment) + } else { + r1 = ret.Error(1) + } + + return r0, r1 +} + +// MentionToMasto provides a mock function with given fields: m +func (_m *MockConverter) MentionToMasto(m *gtsmodel.Mention) (mastotypes.Mention, error) { + ret := _m.Called(m) + + var r0 mastotypes.Mention + if rf, ok := ret.Get(0).(func(*gtsmodel.Mention) mastotypes.Mention); ok { + r0 = rf(m) + } else { + r0 = ret.Get(0).(mastotypes.Mention) + } + + var r1 error + if rf, ok := ret.Get(1).(func(*gtsmodel.Mention) error); ok { + r1 = rf(m) + } else { + r1 = ret.Error(1) + } + + return r0, r1 +} diff --git a/internal/media/media.go b/internal/media/media.go index d25fd258d..6546501ab 100644 --- a/internal/media/media.go +++ b/internal/media/media.go @@ -28,16 +28,46 @@ import ( "github.com/sirupsen/logrus" "github.com/superseriousbusiness/gotosocial/internal/config" "github.com/superseriousbusiness/gotosocial/internal/db" - "github.com/superseriousbusiness/gotosocial/internal/db/model" + "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" "github.com/superseriousbusiness/gotosocial/internal/storage" ) +const ( + // Key for small/thumbnail versions of media + MediaSmall = "small" + // Key for original/fullsize versions of media and emoji + MediaOriginal = "original" + // Key for static (non-animated) versions of emoji + MediaStatic = "static" + // Key for media attachments + MediaAttachment = "attachment" + // Key for profile header + MediaHeader = "header" + // Key for profile avatar + MediaAvatar = "avatar" + // Key for emoji type + MediaEmoji = "emoji" + + // Maximum permitted bytes of an emoji upload (50kb) + EmojiMaxBytes = 51200 +) + // MediaHandler provides an interface for parsing, storing, and retrieving media objects like photos, videos, and gifs. type MediaHandler interface { - // SetHeaderOrAvatarForAccountID takes a new header image for an account, checks it out, removes exif data from it, + // ProcessHeaderOrAvatar takes a new header image for an account, checks it out, removes exif data from it, // puts it in whatever storage backend we're using, sets the relevant fields in the database for the new image, // and then returns information to the caller about the new header. - SetHeaderOrAvatarForAccountID(img []byte, accountID string, headerOrAvi string) (*model.MediaAttachment, error) + ProcessHeaderOrAvatar(img []byte, accountID string, headerOrAvi string) (*gtsmodel.MediaAttachment, error) + + // ProcessLocalAttachment takes a new attachment and the requesting account, checks it out, removes exif data from it, + // puts it in whatever storage backend we're using, sets the relevant fields in the database for the new media, + // and then returns information to the caller about the attachment. + ProcessLocalAttachment(attachment []byte, accountID string) (*gtsmodel.MediaAttachment, error) + + // ProcessLocalEmoji takes a new emoji and a shortcode, cleans it up, puts it in storage, and creates a new + // *gts.Emoji for it, then returns it to the caller. It's the caller's responsibility to put the returned struct + // in the database. + ProcessLocalEmoji(emojiBytes []byte, shortcode string) (*gtsmodel.Emoji, error) } type mediaHandler struct { @@ -56,27 +86,19 @@ func New(config *config.Config, database db.DB, storage storage.Storage, log *lo } } -// HeaderInfo wraps the urls at which a Header and a StaticHeader is available from the server. -type HeaderInfo struct { - // URL to the header - Header string - // Static version of the above (eg., a path to a still image if the header is a gif) - HeaderStatic string -} - /* INTERFACE FUNCTIONS */ -func (mh *mediaHandler) SetHeaderOrAvatarForAccountID(img []byte, accountID string, headerOrAvi string) (*model.MediaAttachment, error) { +func (mh *mediaHandler) ProcessHeaderOrAvatar(attachment []byte, accountID string, headerOrAvi string) (*gtsmodel.MediaAttachment, error) { l := mh.log.WithField("func", "SetHeaderForAccountID") - if headerOrAvi != "header" && headerOrAvi != "avatar" { + if headerOrAvi != MediaHeader && headerOrAvi != MediaAvatar { return nil, errors.New("header or avatar not selected") } - // make sure we have an image we can handle - contentType, err := parseContentType(img) + // make sure we have a type we can handle + contentType, err := parseContentType(attachment) if err != nil { return nil, err } @@ -84,13 +106,13 @@ func (mh *mediaHandler) SetHeaderOrAvatarForAccountID(img []byte, accountID stri return nil, fmt.Errorf("%s is not an accepted image type", contentType) } - if len(img) == 0 { + if len(attachment) == 0 { return nil, fmt.Errorf("passed reader was of size 0") } - l.Tracef("read %d bytes of file", len(img)) + l.Tracef("read %d bytes of file", len(attachment)) // process it - ma, err := mh.processHeaderOrAvi(img, contentType, headerOrAvi, accountID) + ma, err := mh.processHeaderOrAvi(attachment, contentType, headerOrAvi, accountID) if err != nil { return nil, fmt.Errorf("error processing %s: %s", headerOrAvi, err) } @@ -103,18 +125,265 @@ func (mh *mediaHandler) SetHeaderOrAvatarForAccountID(img []byte, accountID stri return ma, nil } +func (mh *mediaHandler) ProcessLocalAttachment(attachment []byte, accountID string) (*gtsmodel.MediaAttachment, error) { + contentType, err := parseContentType(attachment) + if err != nil { + return nil, err + } + mainType := strings.Split(contentType, "/")[0] + switch mainType { + case "video": + if !supportedVideoType(contentType) { + return nil, fmt.Errorf("video type %s not supported", contentType) + } + if len(attachment) == 0 { + return nil, errors.New("video was of size 0") + } + if len(attachment) > mh.config.MediaConfig.MaxVideoSize { + return nil, fmt.Errorf("video size %d bytes exceeded max video size of %d bytes", len(attachment), mh.config.MediaConfig.MaxVideoSize) + } + return mh.processVideoAttachment(attachment, accountID, contentType) + case "image": + if !supportedImageType(contentType) { + return nil, fmt.Errorf("image type %s not supported", contentType) + } + if len(attachment) == 0 { + return nil, errors.New("image was of size 0") + } + if len(attachment) > mh.config.MediaConfig.MaxImageSize { + return nil, fmt.Errorf("image size %d bytes exceeded max image size of %d bytes", len(attachment), mh.config.MediaConfig.MaxImageSize) + } + return mh.processImageAttachment(attachment, accountID, contentType) + default: + break + } + return nil, fmt.Errorf("content type %s not (yet) supported", contentType) +} + +func (mh *mediaHandler) ProcessLocalEmoji(emojiBytes []byte, shortcode string) (*gtsmodel.Emoji, error) { + var clean []byte + var err error + var original *imageAndMeta + var static *imageAndMeta + + // check content type of the submitted emoji and make sure it's supported by us + contentType, err := parseContentType(emojiBytes) + if err != nil { + return nil, err + } + if !supportedEmojiType(contentType) { + return nil, fmt.Errorf("content type %s not supported for emojis", contentType) + } + + if len(emojiBytes) == 0 { + return nil, errors.New("emoji was of size 0") + } + if len(emojiBytes) > EmojiMaxBytes { + return nil, fmt.Errorf("emoji size %d bytes exceeded max emoji size of %d bytes", len(emojiBytes), EmojiMaxBytes) + } + + // clean any exif data from image/png type but leave gifs alone + switch contentType { + case "image/png": + if clean, err = purgeExif(emojiBytes); err != nil { + return nil, fmt.Errorf("error cleaning exif data: %s", err) + } + case "image/gif": + clean = emojiBytes + default: + return nil, errors.New("media type unrecognized") + } + + // unlike with other attachments we don't need to derive anything here because we don't care about the width/height etc + original = &imageAndMeta{ + image: clean, + } + + static, err = deriveStaticEmoji(clean, contentType) + if err != nil { + return nil, fmt.Errorf("error deriving static emoji: %s", err) + } + + // since emoji aren't 'owned' by an account, but we still want to use the same pattern for serving them through the filserver, + // (ie., fileserver/ACCOUNT_ID/etc etc) we need to fetch the INSTANCE ACCOUNT from the database. That is, the account that's created + // with the same username as the instance hostname, which doesn't belong to any particular user. + instanceAccount := >smodel.Account{} + if err := mh.db.GetWhere("username", mh.config.Host, instanceAccount); err != nil { + return nil, fmt.Errorf("error fetching instance account: %s", err) + } + + // the file extension (either png or gif) + extension := strings.Split(contentType, "/")[1] + + // create the urls and storage paths + URLbase := fmt.Sprintf("%s://%s%s", mh.config.StorageConfig.ServeProtocol, mh.config.StorageConfig.ServeHost, mh.config.StorageConfig.ServeBasePath) + + // generate a uuid for the new emoji -- normally we could let the database do this for us, + // but we need it below so we should create it here instead. + newEmojiID := uuid.NewString() + + // webfinger uri for the emoji -- unrelated to actually serving the image + // will be something like https://example.org/emoji/70a7f3d7-7e35-4098-8ce3-9b5e8203bb9c + emojiURI := fmt.Sprintf("%s://%s/%s/%s", mh.config.Protocol, mh.config.Host, MediaEmoji, newEmojiID) + + // serve url and storage path for the original emoji -- can be png or gif + emojiURL := fmt.Sprintf("%s/%s/%s/%s/%s.%s", URLbase, instanceAccount.ID, MediaEmoji, MediaOriginal, newEmojiID, extension) + emojiPath := fmt.Sprintf("%s/%s/%s/%s/%s.%s", mh.config.StorageConfig.BasePath, instanceAccount.ID, MediaEmoji, MediaOriginal, newEmojiID, extension) + + // serve url and storage path for the static version -- will always be png + emojiStaticURL := fmt.Sprintf("%s/%s/%s/%s/%s.png", URLbase, instanceAccount.ID, MediaEmoji, MediaStatic, newEmojiID) + emojiStaticPath := fmt.Sprintf("%s/%s/%s/%s/%s.png", mh.config.StorageConfig.BasePath, instanceAccount.ID, MediaEmoji, MediaStatic, newEmojiID) + + // store the original + if err := mh.storage.StoreFileAt(emojiPath, original.image); err != nil { + return nil, fmt.Errorf("storage error: %s", err) + } + + // store the static + if err := mh.storage.StoreFileAt(emojiStaticPath, static.image); err != nil { + return nil, fmt.Errorf("storage error: %s", err) + } + + // and finally return the new emoji data to the caller -- it's up to them what to do with it + e := >smodel.Emoji{ + ID: newEmojiID, + Shortcode: shortcode, + Domain: "", // empty because this is a local emoji + CreatedAt: time.Now(), + UpdatedAt: time.Now(), + ImageRemoteURL: "", // empty because this is a local emoji + ImageStaticRemoteURL: "", // empty because this is a local emoji + ImageURL: emojiURL, + ImageStaticURL: emojiStaticURL, + ImagePath: emojiPath, + ImageStaticPath: emojiStaticPath, + ImageContentType: contentType, + ImageFileSize: len(original.image), + ImageStaticFileSize: len(static.image), + ImageUpdatedAt: time.Now(), + Disabled: false, + URI: emojiURI, + VisibleInPicker: true, + CategoryID: "", // empty because this is a new emoji -- no category yet + } + return e, nil +} + /* HELPER FUNCTIONS */ -func (mh *mediaHandler) processHeaderOrAvi(imageBytes []byte, contentType string, headerOrAvi string, accountID string) (*model.MediaAttachment, error) { +func (mh *mediaHandler) processVideoAttachment(data []byte, accountID string, contentType string) (*gtsmodel.MediaAttachment, error) { + return nil, nil +} + +func (mh *mediaHandler) processImageAttachment(data []byte, accountID string, contentType string) (*gtsmodel.MediaAttachment, error) { + var clean []byte + var err error + var original *imageAndMeta + var small *imageAndMeta + + switch contentType { + case "image/jpeg", "image/png": + if clean, err = purgeExif(data); err != nil { + return nil, fmt.Errorf("error cleaning exif data: %s", err) + } + original, err = deriveImage(clean, contentType) + if err != nil { + return nil, fmt.Errorf("error parsing image: %s", err) + } + case "image/gif": + clean = data + original, err = deriveGif(clean, contentType) + if err != nil { + return nil, fmt.Errorf("error parsing gif: %s", err) + } + default: + return nil, errors.New("media type unrecognized") + } + + small, err = deriveThumbnail(clean, contentType, 256, 256) + if err != nil { + return nil, fmt.Errorf("error deriving thumbnail: %s", err) + } + + // now put it in storage, take a new uuid for the name of the file so we don't store any unnecessary info about it + extension := strings.Split(contentType, "/")[1] + newMediaID := uuid.NewString() + + URLbase := fmt.Sprintf("%s://%s%s", mh.config.StorageConfig.ServeProtocol, mh.config.StorageConfig.ServeHost, mh.config.StorageConfig.ServeBasePath) + originalURL := fmt.Sprintf("%s/%s/attachment/original/%s.%s", URLbase, accountID, newMediaID, extension) + smallURL := fmt.Sprintf("%s/%s/attachment/small/%s.jpeg", URLbase, accountID, newMediaID) // all thumbnails/smalls are encoded as jpeg + + // we store the original... + originalPath := fmt.Sprintf("%s/%s/%s/%s/%s.%s", mh.config.StorageConfig.BasePath, accountID, MediaAttachment, MediaOriginal, newMediaID, extension) + if err := mh.storage.StoreFileAt(originalPath, original.image); err != nil { + return nil, fmt.Errorf("storage error: %s", err) + } + + // and a thumbnail... + smallPath := fmt.Sprintf("%s/%s/%s/%s/%s.jpeg", mh.config.StorageConfig.BasePath, accountID, MediaAttachment, MediaSmall, newMediaID) // all thumbnails/smalls are encoded as jpeg + if err := mh.storage.StoreFileAt(smallPath, small.image); err != nil { + return nil, fmt.Errorf("storage error: %s", err) + } + + ma := >smodel.MediaAttachment{ + ID: newMediaID, + StatusID: "", + URL: originalURL, + RemoteURL: "", + CreatedAt: time.Now(), + UpdatedAt: time.Now(), + Type: gtsmodel.FileTypeImage, + FileMeta: gtsmodel.FileMeta{ + Original: gtsmodel.Original{ + Width: original.width, + Height: original.height, + Size: original.size, + Aspect: original.aspect, + }, + Small: gtsmodel.Small{ + Width: small.width, + Height: small.height, + Size: small.size, + Aspect: small.aspect, + }, + }, + AccountID: accountID, + Description: "", + ScheduledStatusID: "", + Blurhash: original.blurhash, + Processing: 2, + File: gtsmodel.File{ + Path: originalPath, + ContentType: contentType, + FileSize: len(original.image), + UpdatedAt: time.Now(), + }, + Thumbnail: gtsmodel.Thumbnail{ + Path: smallPath, + ContentType: "image/jpeg", // all thumbnails/smalls are encoded as jpeg + FileSize: len(small.image), + UpdatedAt: time.Now(), + URL: smallURL, + RemoteURL: "", + }, + Avatar: false, + Header: false, + } + + return ma, nil + +} + +func (mh *mediaHandler) processHeaderOrAvi(imageBytes []byte, contentType string, headerOrAvi string, accountID string) (*gtsmodel.MediaAttachment, error) { var isHeader bool var isAvatar bool switch headerOrAvi { - case "header": + case MediaHeader: isHeader = true - case "avatar": + case MediaAvatar: isAvatar = true default: return nil, errors.New("header or avatar not selected") @@ -143,7 +412,7 @@ func (mh *mediaHandler) processHeaderOrAvi(imageBytes []byte, contentType string return nil, fmt.Errorf("error parsing image: %s", err) } - small, err := deriveThumbnail(clean, contentType) + small, err := deriveThumbnail(clean, contentType, 256, 256) if err != nil { return nil, fmt.Errorf("error deriving thumbnail: %s", err) } @@ -152,34 +421,38 @@ func (mh *mediaHandler) processHeaderOrAvi(imageBytes []byte, contentType string extension := strings.Split(contentType, "/")[1] newMediaID := uuid.NewString() - base := fmt.Sprintf("%s://%s%s", mh.config.StorageConfig.ServeProtocol, mh.config.StorageConfig.ServeHost, mh.config.StorageConfig.ServeBasePath) + URLbase := fmt.Sprintf("%s://%s%s", mh.config.StorageConfig.ServeProtocol, mh.config.StorageConfig.ServeHost, mh.config.StorageConfig.ServeBasePath) + originalURL := fmt.Sprintf("%s/%s/%s/original/%s.%s", URLbase, accountID, headerOrAvi, newMediaID, extension) + smallURL := fmt.Sprintf("%s/%s/%s/small/%s.%s", URLbase, accountID, headerOrAvi, newMediaID, extension) // we store the original... - originalPath := fmt.Sprintf("%s/%s/%s/original/%s.%s", base, accountID, headerOrAvi, newMediaID, extension) + originalPath := fmt.Sprintf("%s/%s/%s/%s/%s.%s", mh.config.StorageConfig.BasePath, accountID, headerOrAvi, MediaOriginal, newMediaID, extension) if err := mh.storage.StoreFileAt(originalPath, original.image); err != nil { return nil, fmt.Errorf("storage error: %s", err) } + // and a thumbnail... - smallPath := fmt.Sprintf("%s/%s/%s/small/%s.%s", base, accountID, headerOrAvi, newMediaID, extension) + smallPath := fmt.Sprintf("%s/%s/%s/%s/%s.%s", mh.config.StorageConfig.BasePath, accountID, headerOrAvi, MediaSmall, newMediaID, extension) if err := mh.storage.StoreFileAt(smallPath, small.image); err != nil { return nil, fmt.Errorf("storage error: %s", err) } - ma := &model.MediaAttachment{ + ma := >smodel.MediaAttachment{ ID: newMediaID, StatusID: "", + URL: originalURL, RemoteURL: "", CreatedAt: time.Now(), UpdatedAt: time.Now(), - Type: model.FileTypeImage, - FileMeta: model.FileMeta{ - Original: model.Original{ + Type: gtsmodel.FileTypeImage, + FileMeta: gtsmodel.FileMeta{ + Original: gtsmodel.Original{ Width: original.width, Height: original.height, Size: original.size, Aspect: original.aspect, }, - Small: model.Small{ + Small: gtsmodel.Small{ Width: small.width, Height: small.height, Size: small.size, @@ -191,17 +464,18 @@ func (mh *mediaHandler) processHeaderOrAvi(imageBytes []byte, contentType string ScheduledStatusID: "", Blurhash: original.blurhash, Processing: 2, - File: model.File{ + File: gtsmodel.File{ Path: originalPath, ContentType: contentType, FileSize: len(original.image), UpdatedAt: time.Now(), }, - Thumbnail: model.Thumbnail{ + Thumbnail: gtsmodel.Thumbnail{ Path: smallPath, ContentType: contentType, FileSize: len(small.image), UpdatedAt: time.Now(), + URL: smallURL, RemoteURL: "", }, Avatar: isAvatar, diff --git a/internal/media/media_test.go b/internal/media/media_test.go index ae5896c38..58f2e029e 100644 --- a/internal/media/media_test.go +++ b/internal/media/media_test.go @@ -29,7 +29,7 @@ import ( "github.com/stretchr/testify/suite" "github.com/superseriousbusiness/gotosocial/internal/config" "github.com/superseriousbusiness/gotosocial/internal/db" - "github.com/superseriousbusiness/gotosocial/internal/db/model" + "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" "github.com/superseriousbusiness/gotosocial/internal/storage" ) @@ -95,7 +95,6 @@ func (suite *MediaTestSuite) SetupSuite() { storage: suite.mockStorage, log: log, } - } func (suite *MediaTestSuite) TearDownSuite() { @@ -108,14 +107,19 @@ func (suite *MediaTestSuite) TearDownSuite() { func (suite *MediaTestSuite) SetupTest() { // create all the tables we might need in thie suite models := []interface{}{ - &model.Account{}, - &model.MediaAttachment{}, + >smodel.Account{}, + >smodel.MediaAttachment{}, } for _, m := range models { if err := suite.db.CreateTable(m); err != nil { logrus.Panicf("db connection error: %s", err) } } + + err := suite.db.CreateInstanceAccount() + if err != nil { + logrus.Panic(err) + } } // TearDownTest drops tables to make sure there's no data in the db @@ -123,8 +127,8 @@ func (suite *MediaTestSuite) TearDownTest() { // remove all the tables we might have used so it's clear for the next test models := []interface{}{ - &model.Account{}, - &model.MediaAttachment{}, + >smodel.Account{}, + >smodel.MediaAttachment{}, } for _, m := range models { if err := suite.db.DropTable(m); err != nil { @@ -142,7 +146,7 @@ func (suite *MediaTestSuite) TestSetHeaderOrAvatarForAccountID() { f, err := ioutil.ReadFile("./test/test-jpeg.jpg") assert.Nil(suite.T(), err) - ma, err := suite.mediaHandler.SetHeaderOrAvatarForAccountID(f, "weeeeeee", "header") + ma, err := suite.mediaHandler.ProcessHeaderOrAvatar(f, "weeeeeee", "header") assert.Nil(suite.T(), err) suite.log.Debugf("%+v", ma) @@ -152,6 +156,15 @@ func (suite *MediaTestSuite) TestSetHeaderOrAvatarForAccountID() { //TODO: add more checks here, cba right now! } +func (suite *MediaTestSuite) TestProcessLocalEmoji() { + f, err := ioutil.ReadFile("./test/rainbow-original.png") + assert.NoError(suite.T(), err) + + emoji, err := suite.mediaHandler.ProcessLocalEmoji(f, "rainbow") + assert.NoError(suite.T(), err) + suite.log.Debugf("%+v", emoji) +} + // TODO: add tests for sad path, gif, png.... func TestMediaTestSuite(t *testing.T) { diff --git a/internal/media/mock_MediaHandler.go b/internal/media/mock_MediaHandler.go index 0299d307e..1f875557a 100644 --- a/internal/media/mock_MediaHandler.go +++ b/internal/media/mock_MediaHandler.go @@ -4,7 +4,7 @@ package media import ( mock "github.com/stretchr/testify/mock" - model "github.com/superseriousbusiness/gotosocial/internal/db/model" + gtsmodel "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" ) // MockMediaHandler is an autogenerated mock type for the MediaHandler type @@ -12,16 +12,39 @@ type MockMediaHandler struct { mock.Mock } +// ProcessAttachment provides a mock function with given fields: img, accountID +func (_m *MockMediaHandler) ProcessAttachment(img []byte, accountID string) (*gtsmodel.MediaAttachment, error) { + ret := _m.Called(img, accountID) + + var r0 *gtsmodel.MediaAttachment + if rf, ok := ret.Get(0).(func([]byte, string) *gtsmodel.MediaAttachment); ok { + r0 = rf(img, accountID) + } else { + if ret.Get(0) != nil { + r0 = ret.Get(0).(*gtsmodel.MediaAttachment) + } + } + + var r1 error + if rf, ok := ret.Get(1).(func([]byte, string) error); ok { + r1 = rf(img, accountID) + } else { + r1 = ret.Error(1) + } + + return r0, r1 +} + // SetHeaderOrAvatarForAccountID provides a mock function with given fields: img, accountID, headerOrAvi -func (_m *MockMediaHandler) SetHeaderOrAvatarForAccountID(img []byte, accountID string, headerOrAvi string) (*model.MediaAttachment, error) { +func (_m *MockMediaHandler) SetHeaderOrAvatarForAccountID(img []byte, accountID string, headerOrAvi string) (*gtsmodel.MediaAttachment, error) { ret := _m.Called(img, accountID, headerOrAvi) - var r0 *model.MediaAttachment - if rf, ok := ret.Get(0).(func([]byte, string, string) *model.MediaAttachment); ok { + var r0 *gtsmodel.MediaAttachment + if rf, ok := ret.Get(0).(func([]byte, string, string) *gtsmodel.MediaAttachment); ok { r0 = rf(img, accountID, headerOrAvi) } else { if ret.Get(0) != nil { - r0 = ret.Get(0).(*model.MediaAttachment) + r0 = ret.Get(0).(*gtsmodel.MediaAttachment) } } diff --git a/internal/media/test/rainbow-original.png b/internal/media/test/rainbow-original.png new file mode 100644 index 0000000000000000000000000000000000000000..fdbfaeec3438c4a751749bfd65b5de10d7d20424 GIT binary patch literal 36702 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

Qnc$>yCtwyM+}l^)(uA2fJs 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 Ube8`U$N&HU07*qoM6N<$f|{YHCIA2c literal 0 HcmV?d00001 diff --git a/internal/media/test/rainbow-static.png b/internal/media/test/rainbow-static.png new file mode 100644 index 0000000000000000000000000000000000000000..d364b1171eccacb46639adb547756f28afef0ddb GIT binary patch literal 4389 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 literal 0 HcmV?d00001 diff --git a/internal/media/util.go b/internal/media/util.go index 9ffb79a46..64d1ee770 100644 --- a/internal/media/util.go +++ b/internal/media/util.go @@ -70,6 +70,36 @@ func supportedImageType(mimeType string) bool { return false } +// supportedVideoType checks mime type of a video against a slice of accepted types, +// and returns True if the mime type is accepted. +func supportedVideoType(mimeType string) bool { + acceptedVideoTypes := []string{ + "video/mp4", + "video/mpeg", + "video/webm", + } + for _, accepted := range acceptedVideoTypes { + if mimeType == accepted { + return true + } + } + return false +} + +// supportedEmojiType checks that the content type is image/png -- the only type supported for emoji. +func supportedEmojiType(mimeType string) bool { + acceptedEmojiTypes := []string{ + "image/gif", + "image/png", + } + for _, accepted := range acceptedEmojiTypes { + if mimeType == accepted { + return true + } + } + return false +} + // purgeExif is a little wrapper for the action of removing exif data from an image. // Only pass pngs or jpegs to this function. func purgeExif(b []byte) ([]byte, error) { @@ -87,23 +117,12 @@ func purgeExif(b []byte) ([]byte, error) { return clean, nil } -func deriveImage(b []byte, extension string) (*imageAndMeta, error) { - var i image.Image +func deriveGif(b []byte, extension string) (*imageAndMeta, error) { + var g *gif.GIF var err error - switch extension { - case "image/jpeg": - i, err = jpeg.Decode(bytes.NewReader(b)) - if err != nil { - return nil, err - } - case "image/png": - i, err = png.Decode(bytes.NewReader(b)) - if err != nil { - return nil, err - } case "image/gif": - i, err = gif.Decode(bytes.NewReader(b)) + g, err = gif.DecodeAll(bytes.NewReader(b)) if err != nil { return nil, err } @@ -111,19 +130,22 @@ func deriveImage(b []byte, extension string) (*imageAndMeta, error) { return nil, fmt.Errorf("extension %s not recognised", extension) } - width := i.Bounds().Size().X - height := i.Bounds().Size().Y + // use the first frame to get the static characteristics + width := g.Config.Width + height := g.Config.Height size := width * height aspect := float64(width) / float64(height) - bh, err := blurhash.Encode(4, 3, i) - if err != nil { - return nil, fmt.Errorf("error generating blurhash: %s", err) + + bh, err := blurhash.Encode(4, 3, g.Image[0]) + if err != nil || bh == "" { + return nil, err } out := &bytes.Buffer{} - if err := jpeg.Encode(out, i, nil); err != nil { + if err := gif.EncodeAll(out, g); err != nil { return nil, err } + return &imageAndMeta{ image: out.Bytes(), width: width, @@ -134,16 +156,60 @@ func deriveImage(b []byte, extension string) (*imageAndMeta, error) { }, nil } -// deriveThumbnailFromImage returns a byte slice and metadata for a 256-pixel-width thumbnail -// of a given jpeg, png, or gif, or an error if something goes wrong. -// -// Note that the aspect ratio of the image will be retained, -// so it will not necessarily be a square. -func deriveThumbnail(b []byte, extension string) (*imageAndMeta, error) { +func deriveImage(b []byte, contentType string) (*imageAndMeta, error) { var i image.Image var err error - switch extension { + switch contentType { + case "image/jpeg": + i, err = jpeg.Decode(bytes.NewReader(b)) + if err != nil { + return nil, err + } + case "image/png": + i, err = png.Decode(bytes.NewReader(b)) + if err != nil { + return nil, err + } + default: + return nil, fmt.Errorf("content type %s not recognised", contentType) + } + + width := i.Bounds().Size().X + height := i.Bounds().Size().Y + size := width * height + aspect := float64(width) / float64(height) + + bh, err := blurhash.Encode(4, 3, i) + if err != nil { + return nil, err + } + + out := &bytes.Buffer{} + if err := jpeg.Encode(out, i, nil); err != nil { + return nil, err + } + + return &imageAndMeta{ + image: out.Bytes(), + width: width, + height: height, + size: size, + aspect: aspect, + blurhash: bh, + }, nil +} + +// deriveThumbnail returns a byte slice and metadata for a thumbnail of width x and height y, +// of a given jpeg, png, or gif, or an error if something goes wrong. +// +// Note that the aspect ratio of the image will be retained, +// so it will not necessarily be a square, even if x and y are set as the same value. +func deriveThumbnail(b []byte, contentType string, x uint, y uint) (*imageAndMeta, error) { + var i image.Image + var err error + + switch contentType { case "image/jpeg": i, err = jpeg.Decode(bytes.NewReader(b)) if err != nil { @@ -160,10 +226,10 @@ func deriveThumbnail(b []byte, extension string) (*imageAndMeta, error) { return nil, err } default: - return nil, fmt.Errorf("extension %s not recognised", extension) + return nil, fmt.Errorf("content type %s not recognised", contentType) } - thumb := resize.Thumbnail(256, 256, i, resize.NearestNeighbor) + thumb := resize.Thumbnail(x, y, i, resize.NearestNeighbor) width := thumb.Bounds().Size().X height := thumb.Bounds().Size().Y size := width * height @@ -182,6 +248,35 @@ func deriveThumbnail(b []byte, extension string) (*imageAndMeta, error) { }, nil } +// deriveStaticEmojji takes a given gif or png of an emoji, decodes it, and re-encodes it as a static png. +func deriveStaticEmoji(b []byte, contentType string) (*imageAndMeta, error) { + var i image.Image + var err error + + switch contentType { + case "image/png": + i, err = png.Decode(bytes.NewReader(b)) + if err != nil { + return nil, err + } + case "image/gif": + i, err = gif.Decode(bytes.NewReader(b)) + if err != nil { + return nil, err + } + default: + return nil, fmt.Errorf("content type %s not allowed for emoji", contentType) + } + + out := &bytes.Buffer{} + if err := png.Encode(out, i); err != nil { + return nil, err + } + return &imageAndMeta{ + image: out.Bytes(), + }, nil +} + type imageAndMeta struct { image []byte width int diff --git a/internal/media/util_test.go b/internal/media/util_test.go index f24c1660f..be617a256 100644 --- a/internal/media/util_test.go +++ b/internal/media/util_test.go @@ -121,7 +121,7 @@ func (suite *MediaUtilTestSuite) TestDeriveThumbnailFromJPEG() { assert.Nil(suite.T(), err) // clean it up and validate the clean version - imageAndMeta, err := deriveThumbnail(b, "image/jpeg") + imageAndMeta, err := deriveThumbnail(b, "image/jpeg", 256, 256) assert.Nil(suite.T(), err) assert.Equal(suite.T(), 256, imageAndMeta.width) diff --git a/internal/oauth/server.go b/internal/oauth/server.go index 8bac8fc2f..538288922 100644 --- a/internal/oauth/server.go +++ b/internal/oauth/server.go @@ -26,7 +26,7 @@ import ( "github.com/gin-gonic/gin" "github.com/sirupsen/logrus" "github.com/superseriousbusiness/gotosocial/internal/db" - "github.com/superseriousbusiness/gotosocial/internal/db/model" + "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" "github.com/superseriousbusiness/oauth2/v4" "github.com/superseriousbusiness/oauth2/v4/errors" "github.com/superseriousbusiness/oauth2/v4/manage" @@ -34,6 +34,9 @@ import ( ) const ( + // SessionAuthorizedToken is the key set in the gin context for the Token + // of a User who has successfully passed Bearer token authorization. + // The interface returned from grabbing this key should be parsed as oauth2.TokenInfo SessionAuthorizedToken = "authorized_token" // SessionAuthorizedUser is the key set in the gin context for the id of // a User who has successfully passed Bearer token authorization. @@ -65,9 +68,9 @@ type s struct { type Authed struct { Token oauth2.TokenInfo - Application *model.Application - User *model.User - Account *model.Account + Application *gtsmodel.Application + User *gtsmodel.User + Account *gtsmodel.Account } // GetAuthed is a convenience function for returning an Authed struct from a gin context. @@ -96,7 +99,7 @@ func GetAuthed(c *gin.Context) (*Authed, error) { i, ok = ctx.Get(SessionAuthorizedApplication) if ok { - parsed, ok := i.(*model.Application) + parsed, ok := i.(*gtsmodel.Application) if !ok { return nil, errors.New("could not parse application from session context") } @@ -105,7 +108,7 @@ func GetAuthed(c *gin.Context) (*Authed, error) { i, ok = ctx.Get(SessionAuthorizedUser) if ok { - parsed, ok := i.(*model.User) + parsed, ok := i.(*gtsmodel.User) if !ok { return nil, errors.New("could not parse user from session context") } @@ -114,7 +117,7 @@ func GetAuthed(c *gin.Context) (*Authed, error) { i, ok = ctx.Get(SessionAuthorizedAccount) if ok { - parsed, ok := i.(*model.Account) + parsed, ok := i.(*gtsmodel.Account) if !ok { return nil, errors.New("could not parse account from session context") } diff --git a/internal/oauth/tokenstore.go b/internal/oauth/tokenstore.go index c4c9ff1d5..14caa6581 100644 --- a/internal/oauth/tokenstore.go +++ b/internal/oauth/tokenstore.go @@ -98,7 +98,7 @@ func (pts *tokenStore) Create(ctx context.Context, info oauth2.TokenInfo) error if !ok { return errors.New("info param was not a models.Token") } - if err := pts.db.Put(oauthTokenToPGToken(t)); err != nil { + if err := pts.db.Put(OAuthTokenToPGToken(t)); err != nil { return fmt.Errorf("error in tokenstore create: %s", err) } return nil @@ -130,7 +130,7 @@ func (pts *tokenStore) GetByCode(ctx context.Context, code string) (oauth2.Token if err := pts.db.GetWhere("code", code, pgt); err != nil { return nil, err } - return pgTokenToOauthToken(pgt), nil + return PGTokenToOauthToken(pgt), nil } // GetByAccess selects a token from the DB based on the Access field @@ -144,7 +144,7 @@ func (pts *tokenStore) GetByAccess(ctx context.Context, access string) (oauth2.T if err := pts.db.GetWhere("access", access, pgt); err != nil { return nil, err } - return pgTokenToOauthToken(pgt), nil + return PGTokenToOauthToken(pgt), nil } // GetByRefresh selects a token from the DB based on the Refresh field @@ -158,7 +158,7 @@ func (pts *tokenStore) GetByRefresh(ctx context.Context, refresh string) (oauth2 if err := pts.db.GetWhere("refresh", refresh, pgt); err != nil { return nil, err } - return pgTokenToOauthToken(pgt), nil + return PGTokenToOauthToken(pgt), nil } /* @@ -194,8 +194,8 @@ type Token struct { RefreshExpiresAt time.Time `pg:"type:timestamp"` } -// oauthTokenToPGToken is a lil util function that takes a gotosocial token and gives back a token for inserting into postgres -func oauthTokenToPGToken(tkn *models.Token) *Token { +// OAuthTokenToPGToken is a lil util function that takes a gotosocial token and gives back a token for inserting into postgres +func OAuthTokenToPGToken(tkn *models.Token) *Token { now := time.Now() // For the following, we want to make sure we're not adding a time.Now() to an *empty* ExpiresIn, otherwise that's @@ -236,8 +236,8 @@ func oauthTokenToPGToken(tkn *models.Token) *Token { } } -// pgTokenToOauthToken is a lil util function that takes a postgres token and gives back a gotosocial token -func pgTokenToOauthToken(pgt *Token) *models.Token { +// PGTokenToOauthToken is a lil util function that takes a postgres token and gives back a gotosocial token +func PGTokenToOauthToken(pgt *Token) *models.Token { now := time.Now() return &models.Token{ diff --git a/internal/router/router.go b/internal/router/router.go index ce924b26d..7ab208ef6 100644 --- a/internal/router/router.go +++ b/internal/router/router.go @@ -83,7 +83,17 @@ func (r *router) AttachMiddleware(middleware gin.HandlerFunc) { // New returns a new Router with the specified configuration, using the given logrus logger. func New(config *config.Config, logger *logrus.Logger) (Router, error) { - engine := gin.New() + lvl, err := logrus.ParseLevel(config.LogLevel) + if err != nil { + return nil, fmt.Errorf("couldn't parse log level %s to set router level: %s", config.LogLevel, err) + } + switch lvl { + case logrus.TraceLevel, logrus.DebugLevel: + gin.SetMode(gin.DebugMode) + default: + gin.SetMode(gin.ReleaseMode) + } + engine := gin.Default() // create a new session store middleware store, err := sessionStore() diff --git a/internal/storage/inmem.go b/internal/storage/inmem.go index 25432fbaa..2d88189db 100644 --- a/internal/storage/inmem.go +++ b/internal/storage/inmem.go @@ -7,25 +7,49 @@ import ( "github.com/superseriousbusiness/gotosocial/internal/config" ) +// NewInMem returns an in-memory implementation of the Storage interface. +// This is good for testing and whatnot but ***SHOULD ABSOLUTELY NOT EVER +// BE USED IN A PRODUCTION SETTING***, because A) everything will be wiped out +// if you restart the server and B) if you store lots of images your RAM use +// will absolutely go through the roof. func NewInMem(c *config.Config, log *logrus.Logger) (Storage, error) { return &inMemStorage{ stored: make(map[string][]byte), + log: log, }, nil } type inMemStorage struct { stored map[string][]byte + log *logrus.Logger } func (s *inMemStorage) StoreFileAt(path string, data []byte) error { + l := s.log.WithField("func", "StoreFileAt") + l.Debugf("storing at path %s", path) s.stored[path] = data return nil } func (s *inMemStorage) RetrieveFileFrom(path string) ([]byte, error) { + l := s.log.WithField("func", "RetrieveFileFrom") + l.Debugf("retrieving from path %s", path) d, ok := s.stored[path] if !ok { return nil, fmt.Errorf("no data found at path %s", path) } return d, nil } + +func (s *inMemStorage) ListKeys() ([]string, error) { + keys := []string{} + for k := range s.stored { + keys = append(keys, k) + } + return keys, nil +} + +func (s *inMemStorage) RemoveFileAt(path string) error { + delete(s.stored, path) + return nil +} diff --git a/internal/storage/local.go b/internal/storage/local.go index 29461d5d4..3b64524f6 100644 --- a/internal/storage/local.go +++ b/internal/storage/local.go @@ -1,21 +1,70 @@ package storage import ( + "fmt" + "os" + "path/filepath" + "strings" + "github.com/sirupsen/logrus" "github.com/superseriousbusiness/gotosocial/internal/config" ) +// NewLocal returns an implementation of the Storage interface that uses +// the local filesystem for storing and retrieving files, attachments, etc. func NewLocal(c *config.Config, log *logrus.Logger) (Storage, error) { - return &localStorage{}, nil + return &localStorage{ + config: c, + log: log, + }, nil } type localStorage struct { + config *config.Config + log *logrus.Logger } func (s *localStorage) StoreFileAt(path string, data []byte) error { + l := s.log.WithField("func", "StoreFileAt") + l.Debugf("storing at path %s", path) + components := strings.Split(path, "/") + dir := strings.Join(components[0:len(components)-1], "/") + if err := os.MkdirAll(dir, 0777); err != nil { + return fmt.Errorf("error writing file at %s: %s", path, err) + } + if err := os.WriteFile(path, data, 0777); err != nil { + return fmt.Errorf("error writing file at %s: %s", path, err) + } return nil } func (s *localStorage) RetrieveFileFrom(path string) ([]byte, error) { - return nil, nil + l := s.log.WithField("func", "RetrieveFileFrom") + l.Debugf("retrieving from path %s", path) + b, err := os.ReadFile(path) + if err != nil { + return nil, fmt.Errorf("error reading file at %s: %s", path, err) + } + return b, nil +} + +func (s *localStorage) ListKeys() ([]string, error) { + keys := []string{} + err := filepath.Walk(s.config.StorageConfig.BasePath, func(path string, info os.FileInfo, err error) error { + if err != nil { + return err + } + if !info.IsDir() { + keys = append(keys, path) + } + return nil + }) + if err != nil { + return nil, err + } + return keys, nil +} + +func (s *localStorage) RemoveFileAt(path string) error { + return os.Remove(path) } diff --git a/internal/storage/mock_Storage.go b/internal/storage/mock_Storage.go index 865d52205..2444f030a 100644 --- a/internal/storage/mock_Storage.go +++ b/internal/storage/mock_Storage.go @@ -9,6 +9,43 @@ type MockStorage struct { mock.Mock } +// ListKeys provides a mock function with given fields: +func (_m *MockStorage) ListKeys() ([]string, error) { + ret := _m.Called() + + var r0 []string + if rf, ok := ret.Get(0).(func() []string); ok { + r0 = rf() + } else { + if ret.Get(0) != nil { + r0 = ret.Get(0).([]string) + } + } + + var r1 error + if rf, ok := ret.Get(1).(func() error); ok { + r1 = rf() + } else { + r1 = ret.Error(1) + } + + return r0, r1 +} + +// RemoveFileAt provides a mock function with given fields: path +func (_m *MockStorage) RemoveFileAt(path string) error { + ret := _m.Called(path) + + var r0 error + if rf, ok := ret.Get(0).(func(string) error); ok { + r0 = rf(path) + } else { + r0 = ret.Error(0) + } + + return r0 +} + // RetrieveFileFrom provides a mock function with given fields: path func (_m *MockStorage) RetrieveFileFrom(path string) ([]byte, error) { ret := _m.Called(path) diff --git a/internal/storage/storage.go b/internal/storage/storage.go index fa884ed07..409c90b37 100644 --- a/internal/storage/storage.go +++ b/internal/storage/storage.go @@ -16,9 +16,15 @@ along with this program. If not, see . */ +// Package storage contains an interface and implementations for storing and retrieving files and attachments. package storage +// Storage is an interface for storing and retrieving blobs +// such as images, videos, and any other attachments/documents +// that shouldn't be stored in a database. type Storage interface { StoreFileAt(path string, data []byte) error RetrieveFileFrom(path string) ([]byte, error) + ListKeys() ([]string, error) + RemoveFileAt(path string) error } diff --git a/internal/util/parse.go b/internal/util/parse.go index 375ab97f2..f0bcff5dc 100644 --- a/internal/util/parse.go +++ b/internal/util/parse.go @@ -1,32 +1,96 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + package util -import "fmt" +import ( + "fmt" + "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" + mastotypes "github.com/superseriousbusiness/gotosocial/internal/mastotypes/mastomodel" +) + +// URIs contains a bunch of URIs and URLs for a user, host, account, etc. type URIs struct { - HostURL string - UserURL string + HostURL string + UserURL string + StatusesURL string + UserURI string - InboxURL string - OutboxURL string - FollowersURL string - CollectionURL string + StatusesURI string + InboxURI string + OutboxURI string + FollowersURI string + CollectionURI string } +// GenerateURIs throws together a bunch of URIs for the given username, with the given protocol and host. func GenerateURIs(username string, protocol string, host string) *URIs { hostURL := fmt.Sprintf("%s://%s", protocol, host) userURL := fmt.Sprintf("%s/@%s", hostURL, username) + statusesURL := fmt.Sprintf("%s/statuses", userURL) + userURI := fmt.Sprintf("%s/users/%s", hostURL, username) - inboxURL := fmt.Sprintf("%s/inbox", userURI) - outboxURL := fmt.Sprintf("%s/outbox", userURI) - followersURL := fmt.Sprintf("%s/followers", userURI) - collectionURL := fmt.Sprintf("%s/collections/featured", userURI) + statusesURI := fmt.Sprintf("%s/statuses", userURI) + inboxURI := fmt.Sprintf("%s/inbox", userURI) + outboxURI := fmt.Sprintf("%s/outbox", userURI) + followersURI := fmt.Sprintf("%s/followers", userURI) + collectionURI := fmt.Sprintf("%s/collections/featured", userURI) return &URIs{ - HostURL: hostURL, - UserURL: userURL, + HostURL: hostURL, + UserURL: userURL, + StatusesURL: statusesURL, + UserURI: userURI, - InboxURL: inboxURL, - OutboxURL: outboxURL, - FollowersURL: followersURL, - CollectionURL: collectionURL, + StatusesURI: statusesURI, + InboxURI: inboxURI, + OutboxURI: outboxURI, + FollowersURI: followersURI, + CollectionURI: collectionURI, } } + +// ParseGTSVisFromMastoVis converts a mastodon visibility into its gts equivalent. +func ParseGTSVisFromMastoVis(m mastotypes.Visibility) gtsmodel.Visibility { + switch m { + case mastotypes.VisibilityPublic: + return gtsmodel.VisibilityPublic + case mastotypes.VisibilityUnlisted: + return gtsmodel.VisibilityUnlocked + case mastotypes.VisibilityPrivate: + return gtsmodel.VisibilityFollowersOnly + case mastotypes.VisibilityDirect: + return gtsmodel.VisibilityDirect + } + return "" +} + +// ParseMastoVisFromGTSVis converts a gts visibility into its mastodon equivalent +func ParseMastoVisFromGTSVis(m gtsmodel.Visibility) mastotypes.Visibility { + switch m { + case gtsmodel.VisibilityPublic: + return mastotypes.VisibilityPublic + case gtsmodel.VisibilityUnlocked: + return mastotypes.VisibilityUnlisted + case gtsmodel.VisibilityFollowersOnly, gtsmodel.VisibilityMutualsOnly: + return mastotypes.VisibilityPrivate + case gtsmodel.VisibilityDirect: + return mastotypes.VisibilityDirect + } + return "" +} diff --git a/internal/util/regexes.go b/internal/util/regexes.go new file mode 100644 index 000000000..60b397d86 --- /dev/null +++ b/internal/util/regexes.go @@ -0,0 +1,36 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package util + +import "regexp" + +var ( + // mention regex can be played around with here: https://regex101.com/r/qwM9D3/1 + mentionRegexString = `(?: |^|\W)(@[a-zA-Z0-9_]+(?:@[a-zA-Z0-9_\-\.]+)?)(?: |\n)` + mentionRegex = regexp.MustCompile(mentionRegexString) + // hashtag regex can be played with here: https://regex101.com/r/Vhy8pg/1 + hashtagRegexString = `(?: |^|\W)?#([a-zA-Z0-9]{1,30})(?:\b|\r)` + hashtagRegex = regexp.MustCompile(hashtagRegexString) + // emoji regex can be played with here: https://regex101.com/r/478XGM/1 + emojiRegexString = `(?: |^|\W)?:([a-zA-Z0-9_]{2,30}):(?:\b|\r)?` + emojiRegex = regexp.MustCompile(emojiRegexString) + // emoji shortcode regex can be played with here: https://regex101.com/r/zMDRaG/1 + emojiShortcodeString = `^[a-z0-9_]{2,30}$` + emojiShortcodeRegex = regexp.MustCompile(emojiShortcodeString) +) diff --git a/internal/util/status.go b/internal/util/status.go new file mode 100644 index 000000000..e4b3ec6a5 --- /dev/null +++ b/internal/util/status.go @@ -0,0 +1,96 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package util + +import ( + "strings" +) + +// DeriveMentions takes a plaintext (ie., not html-formatted) status, +// and applies a regex to it to return a deduplicated list of accounts +// mentioned in that status. +// +// It will look for fully-qualified account names in the form "@user@example.org". +// or the form "@username" for local users. +// The case of the returned mentions will be lowered, for consistency. +func DeriveMentions(status string) []string { + mentionedAccounts := []string{} + for _, m := range mentionRegex.FindAllStringSubmatch(status, -1) { + mentionedAccounts = append(mentionedAccounts, m[1]) + } + return Lower(Unique(mentionedAccounts)) +} + +// DeriveHashtags takes a plaintext (ie., not html-formatted) status, +// and applies a regex to it to return a deduplicated list of hashtags +// used in that status, without the leading #. The case of the returned +// tags will be lowered, for consistency. +func DeriveHashtags(status string) []string { + tags := []string{} + for _, m := range hashtagRegex.FindAllStringSubmatch(status, -1) { + tags = append(tags, m[1]) + } + return Lower(Unique(tags)) +} + +// DeriveEmojis takes a plaintext (ie., not html-formatted) status, +// and applies a regex to it to return a deduplicated list of emojis +// used in that status, without the surround ::. The case of the returned +// emojis will be lowered, for consistency. +func DeriveEmojis(status string) []string { + emojis := []string{} + for _, m := range emojiRegex.FindAllStringSubmatch(status, -1) { + emojis = append(emojis, m[1]) + } + return Lower(Unique(emojis)) +} + +// Unique returns a deduplicated version of a given string slice. +func Unique(s []string) []string { + keys := make(map[string]bool) + list := []string{} + for _, entry := range s { + if _, value := keys[entry]; !value { + keys[entry] = true + list = append(list, entry) + } + } + return list +} + +// Lower lowercases all strings in a given string slice +func Lower(s []string) []string { + new := []string{} + for _, i := range s { + new = append(new, strings.ToLower(i)) + } + return new +} + +// HTMLFormat takes a plaintext formatted status string, and converts it into +// a nice HTML-formatted string. +// +// This includes: +// - Replacing line-breaks with

+// - Replacing URLs with hrefs. +// - Replacing mentions with links to that account's URL as stored in the database. +func HTMLFormat(status string) string { + // TODO: write proper HTML formatting logic for a status + return status +} diff --git a/internal/util/status_test.go b/internal/util/status_test.go new file mode 100644 index 000000000..72bd3e885 --- /dev/null +++ b/internal/util/status_test.go @@ -0,0 +1,105 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package util + +import ( + "testing" + + "github.com/stretchr/testify/assert" + "github.com/stretchr/testify/suite" +) + +type StatusTestSuite struct { + suite.Suite +} + +func (suite *StatusTestSuite) TestDeriveMentionsOK() { + statusText := `@dumpsterqueer@example.org testing testing + + is this thing on? + + @someone_else@testing.best-horse.com can you confirm? @hello@test.lgbt + + @thisisalocaluser ! @NORWILL@THIS.one!! + + here is a duplicate mention: @hello@test.lgbt + ` + + menchies := DeriveMentions(statusText) + assert.Len(suite.T(), menchies, 4) + assert.Equal(suite.T(), "@dumpsterqueer@example.org", menchies[0]) + assert.Equal(suite.T(), "@someone_else@testing.best-horse.com", menchies[1]) + assert.Equal(suite.T(), "@hello@test.lgbt", menchies[2]) + assert.Equal(suite.T(), "@thisisalocaluser", menchies[3]) +} + +func (suite *StatusTestSuite) TestDeriveMentionsEmpty() { + statusText := `` + menchies := DeriveMentions(statusText) + assert.Len(suite.T(), menchies, 0) +} + +func (suite *StatusTestSuite) TestDeriveHashtagsOK() { + statusText := `#testing123 #also testing + +# testing this one shouldn't work + + #thisshouldwork + +#ThisShouldAlsoWork #not_this_though + +#111111 thisalsoshouldn'twork#### ##` + + tags := DeriveHashtags(statusText) + assert.Len(suite.T(), tags, 5) + assert.Equal(suite.T(), "testing123", tags[0]) + assert.Equal(suite.T(), "also", tags[1]) + assert.Equal(suite.T(), "thisshouldwork", tags[2]) + assert.Equal(suite.T(), "thisshouldalsowork", tags[3]) + assert.Equal(suite.T(), "111111", tags[4]) +} + +func (suite *StatusTestSuite) TestDeriveEmojiOK() { + statusText := `:test: :another: + +Here's some normal text with an :emoji: at the end + +:spaces shouldnt work: + +:emoji1::emoji2: + +:anotheremoji:emoji2: +:anotheremoji::anotheremoji::anotheremoji::anotheremoji: +:underscores_ok_too: +` + + tags := DeriveEmojis(statusText) + assert.Len(suite.T(), tags, 7) + assert.Equal(suite.T(), "test", tags[0]) + assert.Equal(suite.T(), "another", tags[1]) + assert.Equal(suite.T(), "emoji", tags[2]) + assert.Equal(suite.T(), "emoji1", tags[3]) + assert.Equal(suite.T(), "emoji2", tags[4]) + assert.Equal(suite.T(), "anotheremoji", tags[5]) + assert.Equal(suite.T(), "underscores_ok_too", tags[6]) +} + +func TestStatusTestSuite(t *testing.T) { + suite.Run(t, new(StatusTestSuite)) +} diff --git a/internal/util/validation.go b/internal/util/validation.go index 88a56875c..8102bc35d 100644 --- a/internal/util/validation.go +++ b/internal/util/validation.go @@ -142,3 +142,13 @@ func ValidatePrivacy(privacy string) error { // TODO: add some validation logic here -- length, characters, etc return nil } + +// ValidateEmojiShortcode just runs the given shortcode through the regular expression +// for emoji shortcodes, to figure out whether it's a valid shortcode, ie., 2-30 characters, +// lowercase a-z, numbers, and underscores. +func ValidateEmojiShortcode(shortcode string) error { + if !emojiShortcodeRegex.MatchString(shortcode) { + return fmt.Errorf("shortcode %s did not pass validation, must be between 2 and 30 characters, lowercase letters, numbers, and underscores only", shortcode) + } + return nil +} diff --git a/scripts/auth_flow.sh b/scripts/auth_flow.sh index 8bba39532..5552349a5 100755 --- a/scripts/auth_flow.sh +++ b/scripts/auth_flow.sh @@ -5,10 +5,9 @@ set -eux SERVER_URL="http://localhost:8080" REDIRECT_URI="${SERVER_URL}" CLIENT_NAME="Test Application Name" - REGISTRATION_REASON="Testing whether or not this dang diggity thing works!" -REGISTRATION_EMAIL="test@example.org" -REGISTRATION_USERNAME="test_user" +REGISTRATION_USERNAME="${1}" +REGISTRATION_EMAIL="${2}" REGISTRATION_PASSWORD="very safe password 123" REGISTRATION_AGREEMENT="true" REGISTRATION_LOCALE="en" diff --git a/testrig/actions.go b/testrig/actions.go new file mode 100644 index 000000000..1caa18581 --- /dev/null +++ b/testrig/actions.go @@ -0,0 +1,125 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package testrig + +import ( + "context" + "fmt" + "os" + "os/signal" + "syscall" + + "github.com/sirupsen/logrus" + "github.com/superseriousbusiness/gotosocial/internal/action" + "github.com/superseriousbusiness/gotosocial/internal/apimodule" + "github.com/superseriousbusiness/gotosocial/internal/apimodule/account" + "github.com/superseriousbusiness/gotosocial/internal/apimodule/admin" + "github.com/superseriousbusiness/gotosocial/internal/apimodule/app" + "github.com/superseriousbusiness/gotosocial/internal/apimodule/auth" + "github.com/superseriousbusiness/gotosocial/internal/apimodule/fileserver" + mediaModule "github.com/superseriousbusiness/gotosocial/internal/apimodule/media" + "github.com/superseriousbusiness/gotosocial/internal/apimodule/security" + "github.com/superseriousbusiness/gotosocial/internal/apimodule/status" + "github.com/superseriousbusiness/gotosocial/internal/cache" + "github.com/superseriousbusiness/gotosocial/internal/config" + "github.com/superseriousbusiness/gotosocial/internal/federation" + "github.com/superseriousbusiness/gotosocial/internal/gotosocial" +) + +// Run creates and starts a gotosocial testrig server +var Run action.GTSAction = func(ctx context.Context, _ *config.Config, log *logrus.Logger) error { + dbService := NewTestDB() + router := NewTestRouter() + storageBackend := NewTestStorage() + mediaHandler := NewTestMediaHandler(dbService, storageBackend) + oauthServer := NewTestOauthServer(dbService) + distributor := NewTestDistributor() + if err := distributor.Start(); err != nil { + return fmt.Errorf("error starting distributor: %s", err) + } + mastoConverter := NewTestMastoConverter(dbService) + + c := NewTestConfig() + + StandardDBSetup(dbService) + StandardStorageSetup(storageBackend, "./testrig/media") + + // build client api modules + authModule := auth.New(oauthServer, dbService, log) + accountModule := account.New(c, dbService, oauthServer, mediaHandler, mastoConverter, log) + appsModule := app.New(oauthServer, dbService, mastoConverter, log) + mm := mediaModule.New(dbService, mediaHandler, mastoConverter, c, log) + fileServerModule := fileserver.New(c, dbService, storageBackend, log) + adminModule := admin.New(c, dbService, mediaHandler, mastoConverter, log) + statusModule := status.New(c, dbService, mediaHandler, mastoConverter, distributor, log) + securityModule := security.New(c, log) + + apiModules := []apimodule.ClientAPIModule{ + // modules with middleware go first + securityModule, + authModule, + + // now everything else + accountModule, + appsModule, + mm, + fileServerModule, + adminModule, + statusModule, + } + + for _, m := range apiModules { + if err := m.Route(router); err != nil { + return fmt.Errorf("routing error: %s", err) + } + if err := m.CreateTables(dbService); err != nil { + return fmt.Errorf("table creation error: %s", err) + } + } + + // if err := dbService.CreateInstanceAccount(); err != nil { + // return fmt.Errorf("error creating instance account: %s", err) + // } + + gts, err := gotosocial.New(dbService, &cache.MockCache{}, router, federation.New(dbService, log), c) + if err != nil { + return fmt.Errorf("error creating gotosocial service: %s", err) + } + + if err := gts.Start(ctx); err != nil { + return fmt.Errorf("error starting gotosocial service: %s", err) + } + + // catch shutdown signals from the operating system + sigs := make(chan os.Signal, 1) + signal.Notify(sigs, os.Interrupt, syscall.SIGTERM) + sig := <-sigs + log.Infof("received signal %s, shutting down", sig) + + StandardDBTeardown(dbService) + StandardStorageTeardown(storageBackend) + + // close down all running services in order + if err := gts.Stop(ctx); err != nil { + return fmt.Errorf("error closing gotosocial service: %s", err) + } + + log.Info("done! exiting...") + return nil +} diff --git a/testrig/config.go b/testrig/config.go new file mode 100644 index 000000000..f7028b1b5 --- /dev/null +++ b/testrig/config.go @@ -0,0 +1,26 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package testrig + +import "github.com/superseriousbusiness/gotosocial/internal/config" + +// NewTestConfig returns a config initialized with test defaults +func NewTestConfig() *config.Config { + return config.TestDefault() +} diff --git a/testrig/db.go b/testrig/db.go new file mode 100644 index 000000000..5974eae69 --- /dev/null +++ b/testrig/db.go @@ -0,0 +1,144 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package testrig + +import ( + "context" + + "github.com/sirupsen/logrus" + "github.com/superseriousbusiness/gotosocial/internal/db" + "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" + "github.com/superseriousbusiness/gotosocial/internal/oauth" +) + +var testModels []interface{} = []interface{}{ + >smodel.Account{}, + >smodel.Application{}, + >smodel.Block{}, + >smodel.DomainBlock{}, + >smodel.EmailDomainBlock{}, + >smodel.Follow{}, + >smodel.FollowRequest{}, + >smodel.MediaAttachment{}, + >smodel.Mention{}, + >smodel.Status{}, + >smodel.StatusFave{}, + >smodel.StatusBookmark{}, + >smodel.StatusMute{}, + >smodel.StatusPin{}, + >smodel.Tag{}, + >smodel.User{}, + >smodel.Emoji{}, + &oauth.Token{}, + &oauth.Client{}, +} + +// NewTestDB returns a new initialized, empty database for testing +func NewTestDB() db.DB { + config := NewTestConfig() + l := logrus.New() + l.SetLevel(logrus.TraceLevel) + testDB, err := db.New(context.Background(), config, l) + if err != nil { + panic(err) + } + return testDB +} + +// StandardDBSetup populates a given db with all the necessary tables/models for perfoming tests. +func StandardDBSetup(db db.DB) { + for _, m := range testModels { + if err := db.CreateTable(m); err != nil { + panic(err) + } + } + + for _, v := range NewTestTokens() { + if err := db.Put(v); err != nil { + panic(err) + } + } + + for _, v := range NewTestClients() { + if err := db.Put(v); err != nil { + panic(err) + } + } + + for _, v := range NewTestApplications() { + if err := db.Put(v); err != nil { + panic(err) + } + } + + for _, v := range NewTestUsers() { + if err := db.Put(v); err != nil { + panic(err) + } + } + + for _, v := range NewTestAccounts() { + if err := db.Put(v); err != nil { + panic(err) + } + } + + for _, v := range NewTestAttachments() { + if err := db.Put(v); err != nil { + panic(err) + } + } + + for _, v := range NewTestStatuses() { + if err := db.Put(v); err != nil { + panic(err) + } + } + + for _, v := range NewTestEmojis() { + if err := db.Put(v); err != nil { + panic(err) + } + } + + for _, v := range NewTestTags() { + if err := db.Put(v); err != nil { + panic(err) + } + } + + for _, v := range NewTestFaves() { + if err := db.Put(v); err != nil { + panic(err) + } + } + + if err := db.CreateInstanceAccount(); err != nil { + panic(err) + } +} + +// StandardDBTeardown drops all the standard testing tables/models from the database to ensure it's clean for the next test. +func StandardDBTeardown(db db.DB) { + for _, m := range testModels { + if err := db.DropTable(m); err != nil { + panic(err) + } + } +} diff --git a/testrig/distributor.go b/testrig/distributor.go new file mode 100644 index 000000000..e21321d53 --- /dev/null +++ b/testrig/distributor.go @@ -0,0 +1,25 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package testrig + +import "github.com/superseriousbusiness/gotosocial/internal/distributor" + +func NewTestDistributor() distributor.Distributor { + return distributor.New(NewTestLog()) +} diff --git a/testrig/log.go b/testrig/log.go new file mode 100644 index 000000000..0bafc96f7 --- /dev/null +++ b/testrig/log.go @@ -0,0 +1,28 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package testrig + +import "github.com/sirupsen/logrus" + +// NewTestLog returns a trace level logger for testing +func NewTestLog() *logrus.Logger { + log := logrus.New() + log.SetLevel(logrus.TraceLevel) + return log +} diff --git a/testrig/mastoconverter.go b/testrig/mastoconverter.go new file mode 100644 index 000000000..10bdbdc95 --- /dev/null +++ b/testrig/mastoconverter.go @@ -0,0 +1,29 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package testrig + +import ( + "github.com/superseriousbusiness/gotosocial/internal/db" + "github.com/superseriousbusiness/gotosocial/internal/mastotypes" +) + +// NewTestMastoConverter returned a mastotypes converter with the given db and the default test config +func NewTestMastoConverter(db db.DB) mastotypes.Converter { + return mastotypes.New(NewTestConfig(), db) +} diff --git a/testrig/media/ohyou-original.jpeg b/testrig/media/ohyou-original.jpeg new file mode 100755 index 0000000000000000000000000000000000000000..3499651607f3359b20366c1af75a786bfa30cfe1 GIT binary patch literal 27759 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 p1Xwt8AnnXt@zVYXJEv{E0+!O;ERKBo3 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 C8qv-G literal 0 HcmV?d00001 diff --git a/testrig/media/ohyou-small.jpeg b/testrig/media/ohyou-small.jpeg new file mode 100755 index 0000000000000000000000000000000000000000..f561884d19b152c484f41de6f50ec3eca28c5535 GIT binary patch literal 6177 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 bB&#!*#1oVhmlO+_uosrgE0Vv)d0hN2EiTey literal 0 HcmV?d00001 diff --git a/testrig/media/rainbow-original.png b/testrig/media/rainbow-original.png new file mode 100755 index 0000000000000000000000000000000000000000..fdbfaeec3438c4a751749bfd65b5de10d7d20424 GIT binary patch literal 36702 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

Qnc$>yCtwyM+}l^)(uA2fJs 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 Ube8`U$N&HU07*qoM6N<$f|{YHCIA2c literal 0 HcmV?d00001 diff --git a/testrig/media/rainbow-static.png b/testrig/media/rainbow-static.png new file mode 100755 index 0000000000000000000000000000000000000000..79ed5c03ad8768d486bc860bfd11f362f67c2523 GIT binary patch literal 10413 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 OAh3jjc#Wu0$o~MiBuPjB literal 0 HcmV?d00001 diff --git a/testrig/media/trent-original.gif b/testrig/media/trent-original.gif new file mode 100755 index 0000000000000000000000000000000000000000..2ba145c1aae9235fba3f44417b67a7dc7b124c71 GIT binary patch literal 1109138 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ⅇpNC@^znFk=RZ*n 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≪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ⅅ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%0Ds5N?c#|NT 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

$>0r0pb&^W~1pBHTs09@4>L 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

yN)PSG}H6nn*(QbmWIo0J-8 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�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%0D%)Y>6~C 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

!BDKKT;-S_IMPi+){8RV*v&p(W> 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

i(jMuK4Wnt1$Twqfy@S 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 A;bu9 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 Wr`ejN8JnY7n>(4CtND-v0suRscm7uZ literal 0 HcmV?d00001 diff --git a/testrig/media/trent-small.jpeg b/testrig/media/trent-small.jpeg new file mode 100755 index 0000000000000000000000000000000000000000..726c1aed06c53a9c5018945fd81cb3577617a880 GIT binary patch literal 8803 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 literal 0 HcmV?d00001 diff --git a/testrig/media/zork-original.jpeg b/testrig/media/zork-original.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..7d8bc1fc7099cb56ad4d6360d1e19b3bf78437b9 GIT binary patch literal 457680 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�PY75e4tS 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 lfBCWF6A{q;h$j&{!1BXq`d;Bf(|)i1cZ1* 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. +*/ + +package testrig + +import ( + "github.com/superseriousbusiness/gotosocial/internal/db" + "github.com/superseriousbusiness/gotosocial/internal/media" + "github.com/superseriousbusiness/gotosocial/internal/storage" +) + +// NewTestMediaHandler returns a media handler with the default test config, the default test logger, +// and the given db and storage. +func NewTestMediaHandler(db db.DB, storage storage.Storage) media.MediaHandler { + return media.New(NewTestConfig(), db, storage, NewTestLog()) +} diff --git a/testrig/oauthserver.go b/testrig/oauthserver.go new file mode 100644 index 000000000..49615cadc --- /dev/null +++ b/testrig/oauthserver.go @@ -0,0 +1,29 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package testrig + +import ( + "github.com/superseriousbusiness/gotosocial/internal/db" + "github.com/superseriousbusiness/gotosocial/internal/oauth" +) + +// NewTestOauthServer returns an oauth server with the given db, and the default test logger. +func NewTestOauthServer(db db.DB) oauth.Server { + return oauth.New(db, NewTestLog()) +} diff --git a/testrig/router.go b/testrig/router.go new file mode 100644 index 000000000..abd168724 --- /dev/null +++ b/testrig/router.go @@ -0,0 +1,29 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package testrig + +import "github.com/superseriousbusiness/gotosocial/internal/router" + +func NewTestRouter() router.Router { + r, err := router.New(NewTestConfig(), NewTestLog()) + if err != nil { + panic(err) + } + return r +} diff --git a/testrig/storage.go b/testrig/storage.go new file mode 100644 index 000000000..3b520364b --- /dev/null +++ b/testrig/storage.go @@ -0,0 +1,105 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package testrig + +import ( + "fmt" + "os" + + "github.com/superseriousbusiness/gotosocial/internal/storage" +) + +// NewTestStorage returns a new in memory storage with the default test config +func NewTestStorage() storage.Storage { + s, err := storage.NewInMem(NewTestConfig(), NewTestLog()) + if err != nil { + panic(err) + } + return s +} + +// StandardStorageSetup populates the storage with standard test entries from the given directory. +func StandardStorageSetup(s storage.Storage, relativePath string) { + storedA := NewTestStoredAttachments() + a := NewTestAttachments() + for k, paths := range storedA { + attachmentInfo, ok := a[k] + if !ok { + panic(fmt.Errorf("key %s not found in test attachments", k)) + } + filenameOriginal := paths.original + filenameSmall := paths.small + pathOriginal := attachmentInfo.File.Path + pathSmall := attachmentInfo.Thumbnail.Path + bOriginal, err := os.ReadFile(fmt.Sprintf("%s/%s", relativePath, filenameOriginal)) + if err != nil { + panic(err) + } + if err := s.StoreFileAt(pathOriginal, bOriginal); err != nil { + panic(err) + } + bSmall, err := os.ReadFile(fmt.Sprintf("%s/%s", relativePath, filenameSmall)) + if err != nil { + panic(err) + } + if err := s.StoreFileAt(pathSmall, bSmall); err != nil { + panic(err) + } + } + + storedE := NewTestStoredEmoji() + e := NewTestEmojis() + for k, paths := range storedE { + emojiInfo, ok := e[k] + if !ok { + panic(fmt.Errorf("key %s not found in test emojis", k)) + } + filenameOriginal := paths.original + filenameStatic := paths.static + pathOriginal := emojiInfo.ImagePath + pathStatic := emojiInfo.ImageStaticPath + bOriginal, err := os.ReadFile(fmt.Sprintf("%s/%s", relativePath, filenameOriginal)) + if err != nil { + panic(err) + } + if err := s.StoreFileAt(pathOriginal, bOriginal); err != nil { + panic(err) + } + bStatic, err := os.ReadFile(fmt.Sprintf("%s/%s", relativePath, filenameStatic)) + if err != nil { + panic(err) + } + if err := s.StoreFileAt(pathStatic, bStatic); err != nil { + panic(err) + } + } +} + +// StandardStorageTeardown deletes everything in storage so that it's clean for the next test +func StandardStorageTeardown(s storage.Storage) { + keys, err := s.ListKeys() + if err != nil { + panic(err) + } + for _, k := range keys { + if err := s.RemoveFileAt(k); err != nil { + panic(err) + } + } +} diff --git a/testrig/testmodels.go b/testrig/testmodels.go new file mode 100644 index 000000000..f028bbd8d --- /dev/null +++ b/testrig/testmodels.go @@ -0,0 +1,995 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package testrig + +import ( + "crypto/rand" + "crypto/rsa" + "net" + "time" + + "github.com/superseriousbusiness/gotosocial/internal/db/gtsmodel" + "github.com/superseriousbusiness/gotosocial/internal/oauth" +) + +// NewTestTokens returns a map of tokens keyed according to which account the token belongs to. +func NewTestTokens() map[string]*oauth.Token { + tokens := map[string]*oauth.Token{ + "local_account_1": { + ID: "64cf4214-33ab-4220-b5ca-4a6a12263b20", + ClientID: "73b48d42-029d-4487-80fc-329a5cf67869", + UserID: "44e36b79-44a4-4bd8-91e9-097f477fe97b", + RedirectURI: "http://localhost:8080", + Scope: "read write follow push", + Access: "NZAZOTC0OWITMDU0NC0ZODG4LWE4NJITMWUXM2M4MTRHZDEX", + AccessCreateAt: time.Now(), + AccessExpiresAt: time.Now().Add(72 * time.Hour), + }, + "local_account_2": { + ID: "b04cae99-39b5-4610-a425-dc6b91c78a72", + ClientID: "a4f6a2ea-a32b-4600-8853-72fc4ad98a1f", + UserID: "d120bd97-866f-4a05-9690-a1294b9934c3", + RedirectURI: "http://localhost:8080", + Scope: "read write follow push", + Access: "PIPINALKNNNFNF98717NAMNAMNFKIJKJ881818KJKJAKJJJA", + AccessCreateAt: time.Now(), + AccessExpiresAt: time.Now().Add(72 * time.Hour), + }, + } + return tokens +} + +// NewTestClients returns a map of Clients keyed according to which account they are used by. +func NewTestClients() map[string]*oauth.Client { + clients := map[string]*oauth.Client{ + "admin_account": { + ID: "1c5cefc8-f0c9-4307-8506-ca6e3888675e", + Secret: "dda8e835-2c9c-4bd2-9b8b-77c2e26d7a7a", + Domain: "http://localhost:8080", + UserID: "0fb02eae-2214-473f-9667-0a43f22d75ff", // admin_account + }, + "local_account_1": { + ID: "73b48d42-029d-4487-80fc-329a5cf67869", + Secret: "c3724c74-dc3b-41b2-a108-0ea3d8399830", + Domain: "http://localhost:8080", + UserID: "44e36b79-44a4-4bd8-91e9-097f477fe97b", // local_account_1 + }, + "local_account_2": { + ID: "a4f6a2ea-a32b-4600-8853-72fc4ad98a1f", + Secret: "8f5603a5-c721-46cd-8f1b-2e368f51379f", + Domain: "http://localhost:8080", + UserID: "d120bd97-866f-4a05-9690-a1294b9934c3", // local_account_2 + }, + } + return clients +} + +// NewTestApplications returns a map of applications keyed to which number application they are. +func NewTestApplications() map[string]*gtsmodel.Application { + apps := map[string]*gtsmodel.Application{ + "admin_account": { + ID: "9bf9e368-037f-444d-8ffd-1091d1c21c4c", + Name: "superseriousbusiness", + Website: "https://superserious.business", + RedirectURI: "http://localhost:8080", + ClientID: "1c5cefc8-f0c9-4307-8506-ca6e3888675e", // admin client + ClientSecret: "dda8e835-2c9c-4bd2-9b8b-77c2e26d7a7a", // admin client + Scopes: "read write follow push", + VapidKey: "76ae0095-8a10-438f-9f49-522d1985b190", + }, + "application_1": { + ID: "f88697b8-ee3d-46c2-ac3f-dbb85566c3cc", + Name: "really cool gts application", + Website: "https://reallycool.app", + RedirectURI: "http://localhost:8080", + ClientID: "73b48d42-029d-4487-80fc-329a5cf67869", // client_1 + ClientSecret: "c3724c74-dc3b-41b2-a108-0ea3d8399830", // client_1 + Scopes: "read write follow push", + VapidKey: "4738dfd7-ca73-4aa6-9aa9-80e946b7db36", + }, + "application_2": { + ID: "6b0cd164-8497-4cd5-bec9-957886fac5df", + Name: "kindaweird", + Website: "https://kindaweird.app", + RedirectURI: "http://localhost:8080", + ClientID: "a4f6a2ea-a32b-4600-8853-72fc4ad98a1f", // client_2 + ClientSecret: "8f5603a5-c721-46cd-8f1b-2e368f51379f", // client_2 + Scopes: "read write follow push", + VapidKey: "c040a5fc-e1e2-4859-bbea-0a3efbca1c4b", + }, + } + return apps +} + +// NewTestUsers returns a map of Users keyed by which account belongs to them. +func NewTestUsers() map[string]*gtsmodel.User { + users := map[string]*gtsmodel.User{ + "unconfirmed_account": { + ID: "0f7b1d24-1e49-4ee0-bc7e-fd87b7289eea", + Email: "", + AccountID: "59e197f5-87cd-4be8-ac7c-09082ccc4b4d", + EncryptedPassword: "$2y$10$ggWz5QWwnx6kzb9g0tnIJurFtE0dhr5Zfeaqs9iFuUIXzafQlJVZS", // 'password' + CreatedAt: time.Now(), + SignUpIP: net.ParseIP("199.222.111.89"), + UpdatedAt: time.Time{}, + CurrentSignInAt: time.Time{}, + CurrentSignInIP: nil, + LastSignInAt: time.Time{}, + LastSignInIP: nil, + SignInCount: 0, + InviteID: "", + ChosenLanguages: []string{}, + FilteredLanguages: []string{}, + Locale: "en", + CreatedByApplicationID: "", + LastEmailedAt: time.Time{}, + ConfirmationToken: "a5a280bd-34be-44a3-8330-a57eaf61b8dd", + ConfirmedAt: time.Time{}, + ConfirmationSentAt: time.Now(), + UnconfirmedEmail: "weed_lord420@example.org", + Moderator: false, + Admin: false, + Disabled: false, + Approved: false, + ResetPasswordToken: "", + ResetPasswordSentAt: time.Time{}, + }, + "admin_account": { + ID: "0fb02eae-2214-473f-9667-0a43f22d75ff", + Email: "admin@example.org", + AccountID: "8020dbb4-1e7b-4d99-a872-4cf94e64210f", + EncryptedPassword: "$2y$10$ggWz5QWwnx6kzb9g0tnIJurFtE0dhr5Zfeaqs9iFuUIXzafQlJVZS", // 'password' + CreatedAt: time.Now().Add(-72 * time.Hour), + SignUpIP: net.ParseIP("89.22.189.19"), + UpdatedAt: time.Now().Add(-72 * time.Hour), + CurrentSignInAt: time.Now().Add(-10 * time.Minute), + CurrentSignInIP: net.ParseIP("89.122.255.1"), + LastSignInAt: time.Now().Add(-2 * time.Hour), + LastSignInIP: net.ParseIP("89.122.255.1"), + SignInCount: 78, + InviteID: "", + ChosenLanguages: []string{"en"}, + FilteredLanguages: []string{}, + Locale: "en", + CreatedByApplicationID: "", + LastEmailedAt: time.Now().Add(-30 * time.Minute), + ConfirmationToken: "", + ConfirmedAt: time.Now().Add(-72 * time.Hour), + ConfirmationSentAt: time.Time{}, + UnconfirmedEmail: "", + Moderator: true, + Admin: true, + Disabled: false, + Approved: true, + ResetPasswordToken: "", + ResetPasswordSentAt: time.Time{}, + }, + "local_account_1": { + ID: "44e36b79-44a4-4bd8-91e9-097f477fe97b", + Email: "zork@example.org", + AccountID: "580072df-4d03-4684-a412-89fd6f7d77e6", + EncryptedPassword: "$2y$10$ggWz5QWwnx6kzb9g0tnIJurFtE0dhr5Zfeaqs9iFuUIXzafQlJVZS", // 'password' + CreatedAt: time.Now().Add(-36 * time.Hour), + SignUpIP: net.ParseIP("59.99.19.172"), + UpdatedAt: time.Now().Add(-72 * time.Hour), + CurrentSignInAt: time.Now().Add(-30 * time.Minute), + CurrentSignInIP: net.ParseIP("88.234.118.16"), + LastSignInAt: time.Now().Add(-2 * time.Hour), + LastSignInIP: net.ParseIP("147.111.231.154"), + SignInCount: 9, + InviteID: "", + ChosenLanguages: []string{"en"}, + FilteredLanguages: []string{}, + Locale: "en", + CreatedByApplicationID: "f88697b8-ee3d-46c2-ac3f-dbb85566c3cc", + LastEmailedAt: time.Now().Add(-55 * time.Minute), + ConfirmationToken: "", + ConfirmedAt: time.Now().Add(-34 * time.Hour), + ConfirmationSentAt: time.Now().Add(-36 * time.Hour), + UnconfirmedEmail: "", + Moderator: false, + Admin: false, + Disabled: false, + Approved: true, + ResetPasswordToken: "", + ResetPasswordSentAt: time.Time{}, + }, + "local_account_2": { + ID: "f8d6272e-2d71-4d0c-97d3-2ba7a0b75bf7", + Email: "tortle.dude@example.org", + AccountID: "eecaad73-5703-426d-9312-276641daa31e", + EncryptedPassword: "$2y$10$ggWz5QWwnx6kzb9g0tnIJurFtE0dhr5Zfeaqs9iFuUIXzafQlJVZS", // 'password' + CreatedAt: time.Now().Add(-36 * time.Hour), + SignUpIP: net.ParseIP("59.99.19.172"), + UpdatedAt: time.Now().Add(-72 * time.Hour), + CurrentSignInAt: time.Now().Add(-30 * time.Minute), + CurrentSignInIP: net.ParseIP("118.44.18.196"), + LastSignInAt: time.Now().Add(-2 * time.Hour), + LastSignInIP: net.ParseIP("198.98.21.15"), + SignInCount: 9, + InviteID: "", + ChosenLanguages: []string{"en"}, + FilteredLanguages: []string{}, + Locale: "en", + CreatedByApplicationID: "", + LastEmailedAt: time.Now().Add(-55 * time.Minute), + ConfirmationToken: "", + ConfirmedAt: time.Now().Add(-34 * time.Hour), + ConfirmationSentAt: time.Now().Add(-36 * time.Hour), + UnconfirmedEmail: "", + Moderator: false, + Admin: false, + Disabled: false, + Approved: true, + ResetPasswordToken: "", + ResetPasswordSentAt: time.Time{}, + }, + } + + return users +} + +// NewTestAccounts returns a map of accounts keyed by what type of account they are. +func NewTestAccounts() map[string]*gtsmodel.Account { + accounts := map[string]*gtsmodel.Account{ + "instance_account": { + ID: "39b745a3-774d-4b65-8bb2-b63d9e20a343", + Username: "localhost:8080", + }, + "unconfirmed_account": { + ID: "59e197f5-87cd-4be8-ac7c-09082ccc4b4d", + Username: "weed_lord420", + AvatarMediaAttachmentID: "", + HeaderMediaAttachmentID: "", + DisplayName: "", + Fields: []gtsmodel.Field{}, + Note: "", + Memorial: false, + MovedToAccountID: "", + CreatedAt: time.Now(), + UpdatedAt: time.Now(), + Bot: false, + Reason: "hi, please let me in! I'm looking for somewhere neato bombeato to hang out.", + Locked: false, + Discoverable: false, + Privacy: gtsmodel.VisibilityPublic, + Sensitive: false, + Language: "en", + URI: "http://localhost:8080/users/weed_lord420", + URL: "http://localhost:8080/@weed_lord420", + LastWebfingeredAt: time.Time{}, + InboxURL: "http://localhost:8080/users/weed_lord420/inbox", + OutboxURL: "http://localhost:8080/users/weed_lord420/outbox", + SharedInboxURL: "", + FollowersURL: "http://localhost:8080/users/weed_lord420/followers", + FeaturedCollectionURL: "http://localhost:8080/users/weed_lord420/collections/featured", + ActorType: gtsmodel.ActivityStreamsPerson, + AlsoKnownAs: "", + PrivateKey: &rsa.PrivateKey{}, + PublicKey: &rsa.PublicKey{}, + SensitizedAt: time.Time{}, + SilencedAt: time.Time{}, + SuspendedAt: time.Time{}, + HideCollections: false, + SuspensionOrigin: "", + }, + "admin_account": { + ID: "8020dbb4-1e7b-4d99-a872-4cf94e64210f", + Username: "admin", + AvatarMediaAttachmentID: "", + HeaderMediaAttachmentID: "", + DisplayName: "", + Fields: []gtsmodel.Field{}, + Note: "", + Memorial: false, + MovedToAccountID: "", + CreatedAt: time.Now().Add(-72 * time.Hour), + UpdatedAt: time.Now().Add(-72 * time.Hour), + Bot: false, + Reason: "", + Locked: false, + Discoverable: true, + Privacy: gtsmodel.VisibilityPublic, + Sensitive: false, + Language: "en", + URI: "http://localhost:8080/users/admin", + URL: "http://localhost:8080/@admin", + LastWebfingeredAt: time.Time{}, + InboxURL: "http://localhost:8080/users/admin/inbox", + OutboxURL: "http://localhost:8080/users/admin/outbox", + SharedInboxURL: "", + FollowersURL: "http://localhost:8080/users/admin/followers", + FeaturedCollectionURL: "http://localhost:8080/users/admin/collections/featured", + ActorType: gtsmodel.ActivityStreamsPerson, + AlsoKnownAs: "", + PrivateKey: &rsa.PrivateKey{}, + PublicKey: &rsa.PublicKey{}, + SensitizedAt: time.Time{}, + SilencedAt: time.Time{}, + SuspendedAt: time.Time{}, + HideCollections: false, + SuspensionOrigin: "", + }, + "local_account_1": { + ID: "580072df-4d03-4684-a412-89fd6f7d77e6", + Username: "the_mighty_zork", + AvatarMediaAttachmentID: "a849906f-8b8e-4b43-ac2f-6979ccbcd442", + HeaderMediaAttachmentID: "", + DisplayName: "original zork (he/they)", + Fields: []gtsmodel.Field{}, + Note: "hey yo this is my profile!", + Memorial: false, + MovedToAccountID: "", + CreatedAt: time.Now().Add(-48 * time.Hour), + UpdatedAt: time.Now().Add(-48 * time.Hour), + Bot: false, + Reason: "I wanna be on this damned webbed site so bad! Please! Wow", + Locked: false, + Discoverable: true, + Privacy: gtsmodel.VisibilityPublic, + Sensitive: false, + Language: "en", + URI: "http://localhost:8080/users/the_mighty_zork", + URL: "http://localhost:8080/@the_mighty_zork", + LastWebfingeredAt: time.Time{}, + InboxURL: "http://localhost:8080/users/the_mighty_zork/inbox", + OutboxURL: "http://localhost:8080/users/the_mighty_zork/outbox", + SharedInboxURL: "", + FollowersURL: "http://localhost:8080/users/the_mighty_zork/followers", + FeaturedCollectionURL: "http://localhost:8080/users/the_mighty_zork/collections/featured", + ActorType: gtsmodel.ActivityStreamsPerson, + AlsoKnownAs: "", + PrivateKey: &rsa.PrivateKey{}, + PublicKey: &rsa.PublicKey{}, + SensitizedAt: time.Time{}, + SilencedAt: time.Time{}, + SuspendedAt: time.Time{}, + HideCollections: false, + SuspensionOrigin: "", + }, + "local_account_2": { + ID: "eecaad73-5703-426d-9312-276641daa31e", + Username: "1happyturtle", + AvatarMediaAttachmentID: "", + HeaderMediaAttachmentID: "", + DisplayName: "happy little turtle :3", + Fields: []gtsmodel.Field{}, + Note: "i post about things that concern me", + Memorial: false, + MovedToAccountID: "", + CreatedAt: time.Now().Add(-190 * time.Hour), + UpdatedAt: time.Now().Add(-36 * time.Hour), + Bot: false, + Reason: "", + Locked: true, + Discoverable: false, + Privacy: gtsmodel.VisibilityFollowersOnly, + Sensitive: false, + Language: "en", + URI: "http://localhost:8080/users/1happyturtle", + URL: "http://localhost:8080/@1happyturtle", + LastWebfingeredAt: time.Time{}, + InboxURL: "http://localhost:8080/users/1happyturtle/inbox", + OutboxURL: "http://localhost:8080/users/1happyturtle/outbox", + SharedInboxURL: "", + FollowersURL: "http://localhost:8080/users/1happyturtle/followers", + FeaturedCollectionURL: "http://localhost:8080/users/1happyturtle/collections/featured", + ActorType: gtsmodel.ActivityStreamsPerson, + AlsoKnownAs: "", + PrivateKey: &rsa.PrivateKey{}, + PublicKey: &rsa.PublicKey{}, + SensitizedAt: time.Time{}, + SilencedAt: time.Time{}, + SuspendedAt: time.Time{}, + HideCollections: false, + SuspensionOrigin: "", + }, + "remote_account_1": { + ID: "c2c6e647-e2a9-4286-883b-e4a188186664", + Username: "foss_satan", + Domain: "fossbros-anonymous.io", + // AvatarFileName: "http://localhost:8080/fileserver/media/eecaad73-5703-426d-9312-276641daa31e/avatar/original/d5e7c265-91a6-4d84-8c27-7e1efe5720da.jpeg", + // AvatarContentType: "image/jpeg", + // AvatarFileSize: 0, + // AvatarUpdatedAt: time.Time{}, + // AvatarRemoteURL: "", + // HeaderFileName: "http://localhost:8080/fileserver/media/eecaad73-5703-426d-9312-276641daa31e/header/original/e75d4117-21b6-4315-a428-eb3944235996.jpeg", + // HeaderContentType: "image/jpeg", + // HeaderFileSize: 0, + // HeaderUpdatedAt: time.Time{}, + // HeaderRemoteURL: "", + DisplayName: "big gerald", + Fields: []gtsmodel.Field{}, + Note: "i post about like, i dunno, stuff, or whatever!!!!", + Memorial: false, + MovedToAccountID: "", + CreatedAt: time.Now().Add(-190 * time.Hour), + UpdatedAt: time.Now().Add(-36 * time.Hour), + Bot: false, + Locked: false, + Discoverable: true, + Sensitive: false, + Language: "en", + URI: "https://fossbros-anonymous.io/users/foss_satan", + URL: "https://fossbros-anonymous.io/@foss_satan", + LastWebfingeredAt: time.Time{}, + InboxURL: "https://fossbros-anonymous.io/users/foss_satan/inbox", + OutboxURL: "https://fossbros-anonymous.io/users/foss_satan/outbox", + SharedInboxURL: "", + FollowersURL: "https://fossbros-anonymous.io/users/foss_satan/followers", + FeaturedCollectionURL: "https://fossbros-anonymous.io/users/foss_satan/collections/featured", + ActorType: gtsmodel.ActivityStreamsPerson, + AlsoKnownAs: "", + PrivateKey: &rsa.PrivateKey{}, + PublicKey: nil, + SensitizedAt: time.Time{}, + SilencedAt: time.Time{}, + SuspendedAt: time.Time{}, + HideCollections: false, + SuspensionOrigin: "", + }, + // "remote_account_2": { + // ID: "93287988-76c4-460f-9e68-a45b578bb6b2", + // Username: "dailycatpics", + // Domain: "uwu.social", + // }, + // "suspended_local_account": { + // ID: "e8a5cf4e-4b10-45a4-ad82-b6e37a09100d", + // Username: "jeffbadman", + // }, + // "suspended_remote_account": { + // ID: "17e6e09e-855d-4bf8-a1c3-7e780269f215", + // Username: "ipfreely", + // Domain: "a-very-bad-website.com", + // }, + } + + // generate keys for each account + for _, v := range accounts { + priv, err := rsa.GenerateKey(rand.Reader, 2048) + if err != nil { + panic(err) + } + pub := &priv.PublicKey + + // only local accounts get a private key + if v.Domain == "" { + v.PrivateKey = priv + } + v.PublicKey = pub + } + return accounts +} + +// NewTestAttachments returns a map of attachments keyed according to which account +// and status they belong to, and which attachment number of that status they are. +func NewTestAttachments() map[string]*gtsmodel.MediaAttachment { + return map[string]*gtsmodel.MediaAttachment{ + "admin_account_status_1_attachment_1": { + ID: "b052241b-f30f-4dc6-92fc-2bad0be1f8d8", + StatusID: "502ccd6f-0edf-48d7-9016-2dfa4d3714cd", + URL: "http://localhost:8080/fileserver/8020dbb4-1e7b-4d99-a872-4cf94e64210f/attachment/original/b052241b-f30f-4dc6-92fc-2bad0be1f8d8.jpeg", + RemoteURL: "", + CreatedAt: time.Now().Add(-71 * time.Hour), + UpdatedAt: time.Now().Add(-71 * time.Hour), + Type: gtsmodel.FileTypeImage, + FileMeta: gtsmodel.FileMeta{ + Original: gtsmodel.Original{ + Width: 1200, + Height: 630, + Size: 756000, + Aspect: 1.9047619047619047, + }, + Small: gtsmodel.Small{ + Width: 256, + Height: 134, + Size: 34304, + Aspect: 1.9104477611940298, + }, + }, + AccountID: "8020dbb4-1e7b-4d99-a872-4cf94e64210f", + Description: "Black and white image of some 50's style text saying: Welcome On Board", + ScheduledStatusID: "", + Blurhash: "LNJRdVM{00Rj%Mayt7j[4nWBofRj", + Processing: 2, + File: gtsmodel.File{ + Path: "/gotosocial/storage/8020dbb4-1e7b-4d99-a872-4cf94e64210f/attachment/original/b052241b-f30f-4dc6-92fc-2bad0be1f8d8.jpeg", + ContentType: "image/jpeg", + FileSize: 62529, + UpdatedAt: time.Now().Add(-71 * time.Hour), + }, + Thumbnail: gtsmodel.Thumbnail{ + Path: "/gotosocial/storage/8020dbb4-1e7b-4d99-a872-4cf94e64210f/attachment/small/b052241b-f30f-4dc6-92fc-2bad0be1f8d8.jpeg", + ContentType: "image/jpeg", + FileSize: 6872, + UpdatedAt: time.Now().Add(-71 * time.Hour), + URL: "http://localhost:8080/fileserver/8020dbb4-1e7b-4d99-a872-4cf94e64210f/attachment/small/b052241b-f30f-4dc6-92fc-2bad0be1f8d8.jpeg", + RemoteURL: "", + }, + Avatar: false, + Header: false, + }, + "local_account_1_status_4_attachment_1": { + ID: "510f6033-798b-4390-81b1-c38ca2205ad3", + StatusID: "18524c05-97dc-46d7-b474-c811bd9e1e32", + URL: "http://localhost:8080/fileserver/580072df-4d03-4684-a412-89fd6f7d77e6/attachment/original/510f6033-798b-4390-81b1-c38ca2205ad3.gif", + RemoteURL: "", + CreatedAt: time.Now().Add(-1 * time.Hour), + UpdatedAt: time.Now().Add(-1 * time.Hour), + Type: gtsmodel.FileTypeGif, + FileMeta: gtsmodel.FileMeta{ + Original: gtsmodel.Original{ + Width: 400, + Height: 280, + Size: 756000, + Aspect: 1.4285714285714286, + }, + Small: gtsmodel.Small{ + Width: 256, + Height: 179, + Size: 45824, + Aspect: 1.4301675977653632, + }, + Focus: gtsmodel.Focus{ + X: 0, + Y: 0, + }, + }, + AccountID: "580072df-4d03-4684-a412-89fd6f7d77e6", + Description: "90's Trent Reznor turning to the camera", + ScheduledStatusID: "", + Blurhash: "LEDara58O=t5EMSOENEN9]}?aK%0", + Processing: 2, + File: gtsmodel.File{ + Path: "/gotosocial/storage/580072df-4d03-4684-a412-89fd6f7d77e6/attachment/original/510f6033-798b-4390-81b1-c38ca2205ad3.gif", + ContentType: "image/gif", + FileSize: 1109138, + UpdatedAt: time.Now().Add(-1 * time.Hour), + }, + Thumbnail: gtsmodel.Thumbnail{ + Path: "/gotosocial/storage/580072df-4d03-4684-a412-89fd6f7d77e6/attachment/small/510f6033-798b-4390-81b1-c38ca2205ad3.jpeg", + ContentType: "image/jpeg", + FileSize: 8803, + UpdatedAt: time.Now().Add(-1 * time.Hour), + URL: "http://localhost:8080/fileserver/580072df-4d03-4684-a412-89fd6f7d77e6/attachment/small/510f6033-798b-4390-81b1-c38ca2205ad3.jpeg", + RemoteURL: "", + }, + Avatar: false, + Header: false, + }, + "local_account_1_unattached_1": { + ID: "7a3b9f77-ab30-461e-bdd8-e64bd1db3008", + StatusID: "", // this attachment isn't connected to a status YET + URL: "http://localhost:8080/fileserver/580072df-4d03-4684-a412-89fd6f7d77e6/attachment/original/7a3b9f77-ab30-461e-bdd8-e64bd1db3008.jpeg", + RemoteURL: "", + CreatedAt: time.Now().Add(30 * time.Second), + UpdatedAt: time.Now().Add(30 * time.Second), + Type: gtsmodel.FileTypeGif, + FileMeta: gtsmodel.FileMeta{ + Original: gtsmodel.Original{ + Width: 800, + Height: 450, + Size: 360000, + Aspect: 1.7777777777777777, + }, + Small: gtsmodel.Small{ + Width: 256, + Height: 144, + Size: 36864, + Aspect: 1.7777777777777777, + }, + Focus: gtsmodel.Focus{ + X: 0, + Y: 0, + }, + }, + AccountID: "580072df-4d03-4684-a412-89fd6f7d77e6", + Description: "the oh you meme", + ScheduledStatusID: "", + Blurhash: "LSAd]9ogDge-R:M|j=xWIto0xXWX", + Processing: 2, + File: gtsmodel.File{ + Path: "/gotosocial/storage/580072df-4d03-4684-a412-89fd6f7d77e6/attachment/original/7a3b9f77-ab30-461e-bdd8-e64bd1db3008.jpeg", + ContentType: "image/jpeg", + FileSize: 27759, + UpdatedAt: time.Now().Add(30 * time.Second), + }, + Thumbnail: gtsmodel.Thumbnail{ + Path: "/gotosocial/storage/580072df-4d03-4684-a412-89fd6f7d77e6/attachment/small/7a3b9f77-ab30-461e-bdd8-e64bd1db3008.jpeg", + ContentType: "image/jpeg", + FileSize: 6177, + UpdatedAt: time.Now().Add(30 * time.Second), + URL: "http://localhost:8080/fileserver/580072df-4d03-4684-a412-89fd6f7d77e6/attachment/small/7a3b9f77-ab30-461e-bdd8-e64bd1db3008.jpeg", + RemoteURL: "", + }, + Avatar: false, + Header: false, + }, + "local_account_1_avatar": { + ID: "a849906f-8b8e-4b43-ac2f-6979ccbcd442", + StatusID: "", // this attachment isn't connected to a status + URL: "http://localhost:8080/fileserver/580072df-4d03-4684-a412-89fd6f7d77e6/avatar/original/a849906f-8b8e-4b43-ac2f-6979ccbcd442.jpeg", + RemoteURL: "", + CreatedAt: time.Now().Add(47 * time.Hour), + UpdatedAt: time.Now().Add(47 * time.Hour), + Type: gtsmodel.FileTypeImage, + FileMeta: gtsmodel.FileMeta{ + Original: gtsmodel.Original{ + Width: 1092, + Height: 1800, + Size: 1965600, + Aspect: 0.6066666666666667, + }, + Small: gtsmodel.Small{ + Width: 155, + Height: 256, + Size: 39680, + Aspect: 0.60546875, + }, + Focus: gtsmodel.Focus{ + X: 0, + Y: 0, + }, + }, + AccountID: "580072df-4d03-4684-a412-89fd6f7d77e6", + Description: "a green goblin looking nasty", + ScheduledStatusID: "", + Blurhash: "LKK9MT,p|YSNDkJ-5rsmvnwcOoe:", + Processing: 2, + File: gtsmodel.File{ + Path: "/gotosocial/storage/580072df-4d03-4684-a412-89fd6f7d77e6/avatar/original/a849906f-8b8e-4b43-ac2f-6979ccbcd442.jpeg", + ContentType: "image/jpeg", + FileSize: 457680, + UpdatedAt: time.Now().Add(47 * time.Hour), + }, + Thumbnail: gtsmodel.Thumbnail{ + Path: "/gotosocial/storage/580072df-4d03-4684-a412-89fd6f7d77e6/avatar/small/a849906f-8b8e-4b43-ac2f-6979ccbcd442.jpeg", + ContentType: "image/jpeg", + FileSize: 15374, + UpdatedAt: time.Now().Add(47 * time.Hour), + URL: "http://localhost:8080/fileserver/580072df-4d03-4684-a412-89fd6f7d77e6/avatar/small/a849906f-8b8e-4b43-ac2f-6979ccbcd442.jpeg", + RemoteURL: "", + }, + Avatar: true, + Header: false, + }, + } +} + +// NewTestEmojis returns a map of gts emojis, keyed by the emoji shortcode +func NewTestEmojis() map[string]*gtsmodel.Emoji { + return map[string]*gtsmodel.Emoji{ + "rainbow": { + ID: "a96ec4f3-1cae-47e4-a508-f9d66a6b221b", + Shortcode: "rainbow", + Domain: "", + CreatedAt: time.Now(), + UpdatedAt: time.Now(), + ImageRemoteURL: "", + ImageStaticRemoteURL: "", + ImageURL: "http://localhost:8080/fileserver/39b745a3-774d-4b65-8bb2-b63d9e20a343/emoji/original/a96ec4f3-1cae-47e4-a508-f9d66a6b221b.png", + ImagePath: "/tmp/gotosocial/39b745a3-774d-4b65-8bb2-b63d9e20a343/emoji/original/a96ec4f3-1cae-47e4-a508-f9d66a6b221b.png", + ImageStaticURL: "http://localhost:8080/fileserver/39b745a3-774d-4b65-8bb2-b63d9e20a343/emoji/static/a96ec4f3-1cae-47e4-a508-f9d66a6b221b.png", + ImageStaticPath: "/tmp/gotosocial/39b745a3-774d-4b65-8bb2-b63d9e20a343/emoji/static/a96ec4f3-1cae-47e4-a508-f9d66a6b221b.png", + ImageContentType: "image/png", + ImageFileSize: 36702, + ImageStaticFileSize: 10413, + ImageUpdatedAt: time.Now(), + Disabled: false, + URI: "http://localhost:8080/emoji/a96ec4f3-1cae-47e4-a508-f9d66a6b221b", + VisibleInPicker: true, + CategoryID: "", + }, + } +} + +type filenames struct { + original string + small string + static string +} + +// NewTestStoredAttachments returns a map of filenames, keyed according to which attachment they pertain to. +func NewTestStoredAttachments() map[string]filenames { + return map[string]filenames{ + "admin_account_status_1_attachment_1": { + original: "welcome-original.jpeg", + small: "welcome-small.jpeg", + }, + "local_account_1_status_4_attachment_1": { + original: "trent-original.gif", + small: "trent-small.jpeg", + }, + "local_account_1_unattached_1": { + original: "ohyou-original.jpeg", + small: "ohyou-small.jpeg", + }, + "local_account_1_avatar": { + original: "zork-original.jpeg", + small: "zork-small.jpeg", + }, + } +} + +// NewtestStoredEmoji returns a map of filenames, keyed according to which emoji they pertain to +func NewTestStoredEmoji() map[string]filenames { + return map[string]filenames{ + "rainbow": { + original: "rainbow-original.png", + static: "rainbow-static.png", + }, + } +} + +// NewTestStatuses returns a map of statuses keyed according to which account +// and status they are. +func NewTestStatuses() map[string]*gtsmodel.Status { + return map[string]*gtsmodel.Status{ + "admin_account_status_1": { + ID: "502ccd6f-0edf-48d7-9016-2dfa4d3714cd", + URI: "http://localhost:8080/users/admin/statuses/502ccd6f-0edf-48d7-9016-2dfa4d3714cd", + URL: "http://localhost:8080/@admin/statuses/502ccd6f-0edf-48d7-9016-2dfa4d3714cd", + Content: "hello world! #welcome ! first post on the instance :rainbow: !", + Attachments: []string{"b052241b-f30f-4dc6-92fc-2bad0be1f8d8"}, + Tags: []string{"a7e8f5ca-88a1-4652-8079-a187eab8d56e"}, + Mentions: []string{}, + Emojis: []string{"a96ec4f3-1cae-47e4-a508-f9d66a6b221b"}, + CreatedAt: time.Now().Add(-71 * time.Hour), + UpdatedAt: time.Now().Add(-71 * time.Hour), + Local: true, + AccountID: "8020dbb4-1e7b-4d99-a872-4cf94e64210f", + InReplyToID: "", + BoostOfID: "", + ContentWarning: "", + Visibility: gtsmodel.VisibilityPublic, + Sensitive: false, + Language: "en", + CreatedWithApplicationID: "9bf9e368-037f-444d-8ffd-1091d1c21c4c", + VisibilityAdvanced: >smodel.VisibilityAdvanced{ + Federated: true, + Boostable: true, + Replyable: true, + Likeable: true, + }, + ActivityStreamsType: gtsmodel.ActivityStreamsNote, + }, + "admin_account_status_2": { + ID: "0fb3f1ac-5cd8-48ac-9050-3d95dc7e44e9", + URI: "http://localhost:8080/users/admin/statuses/0fb3f1ac-5cd8-48ac-9050-3d95dc7e44e9", + URL: "http://localhost:8080/@admin/statuses/0fb3f1ac-5cd8-48ac-9050-3d95dc7e44e9", + Content: "🐕🐕🐕🐕🐕", + CreatedAt: time.Now().Add(-70 * time.Hour), + UpdatedAt: time.Now().Add(-70 * time.Hour), + Local: true, + AccountID: "8020dbb4-1e7b-4d99-a872-4cf94e64210f", + InReplyToID: "", + BoostOfID: "", + ContentWarning: "open to see some puppies", + Visibility: gtsmodel.VisibilityPublic, + Sensitive: true, + Language: "en", + CreatedWithApplicationID: "9bf9e368-037f-444d-8ffd-1091d1c21c4c", + VisibilityAdvanced: >smodel.VisibilityAdvanced{ + Federated: true, + Boostable: true, + Replyable: true, + Likeable: true, + }, + ActivityStreamsType: gtsmodel.ActivityStreamsNote, + }, + "local_account_1_status_1": { + ID: "91b1e795-74ff-4672-a4c4-476616710e2d", + URI: "http://localhost:8080/users/the_mighty_zork/statuses/91b1e795-74ff-4672-a4c4-476616710e2d", + URL: "http://localhost:8080/@the_mighty_zork/statuses/91b1e795-74ff-4672-a4c4-476616710e2d", + Content: "hello everyone!", + CreatedAt: time.Now().Add(-47 * time.Hour), + UpdatedAt: time.Now().Add(-47 * time.Hour), + Local: true, + AccountID: "580072df-4d03-4684-a412-89fd6f7d77e6", + InReplyToID: "", + BoostOfID: "", + ContentWarning: "introduction post", + Visibility: gtsmodel.VisibilityPublic, + Sensitive: true, + Language: "en", + CreatedWithApplicationID: "f88697b8-ee3d-46c2-ac3f-dbb85566c3cc", + VisibilityAdvanced: >smodel.VisibilityAdvanced{ + Federated: true, + Boostable: true, + Replyable: true, + Likeable: true, + }, + ActivityStreamsType: gtsmodel.ActivityStreamsNote, + }, + "local_account_1_status_2": { + ID: "3dd328d9-8bb1-48f5-bc96-5ccc1c696b4c", + URI: "http://localhost:8080/users/the_mighty_zork/statuses/3dd328d9-8bb1-48f5-bc96-5ccc1c696b4c", + URL: "http://localhost:8080/@the_mighty_zork/statuses/3dd328d9-8bb1-48f5-bc96-5ccc1c696b4c", + Content: "this is an unlocked local-only post that shouldn't federate, but it's still boostable, replyable, and likeable", + CreatedAt: time.Now().Add(-46 * time.Hour), + UpdatedAt: time.Now().Add(-46 * time.Hour), + Local: true, + AccountID: "580072df-4d03-4684-a412-89fd6f7d77e6", + InReplyToID: "", + BoostOfID: "", + ContentWarning: "", + Visibility: gtsmodel.VisibilityUnlocked, + Sensitive: false, + Language: "en", + CreatedWithApplicationID: "f88697b8-ee3d-46c2-ac3f-dbb85566c3cc", + VisibilityAdvanced: >smodel.VisibilityAdvanced{ + Federated: false, + Boostable: true, + Replyable: true, + Likeable: true, + }, + ActivityStreamsType: gtsmodel.ActivityStreamsNote, + }, + "local_account_1_status_3": { + ID: "5e41963f-8ab9-4147-9f00-52d56e19da65", + URI: "http://localhost:8080/users/the_mighty_zork/statuses/5e41963f-8ab9-4147-9f00-52d56e19da65", + URL: "http://localhost:8080/@the_mighty_zork/statuses/5e41963f-8ab9-4147-9f00-52d56e19da65", + Content: "this is a very personal post that I don't want anyone to interact with at all, and i only want mutuals to see it", + CreatedAt: time.Now().Add(-45 * time.Hour), + UpdatedAt: time.Now().Add(-45 * time.Hour), + Local: true, + AccountID: "580072df-4d03-4684-a412-89fd6f7d77e6", + InReplyToID: "", + BoostOfID: "", + ContentWarning: "test: you shouldn't be able to interact with this post in any way", + Visibility: gtsmodel.VisibilityMutualsOnly, + Sensitive: false, + Language: "en", + CreatedWithApplicationID: "f88697b8-ee3d-46c2-ac3f-dbb85566c3cc", + VisibilityAdvanced: >smodel.VisibilityAdvanced{ + Federated: true, + Boostable: false, + Replyable: false, + Likeable: false, + }, + ActivityStreamsType: gtsmodel.ActivityStreamsNote, + }, + "local_account_1_status_4": { + ID: "18524c05-97dc-46d7-b474-c811bd9e1e32", + URI: "http://localhost:8080/users/the_mighty_zork/statuses/18524c05-97dc-46d7-b474-c811bd9e1e32", + URL: "http://localhost:8080/@the_mighty_zork/statuses/18524c05-97dc-46d7-b474-c811bd9e1e32", + Content: "here's a little gif of trent", + Attachments: []string{"510f6033-798b-4390-81b1-c38ca2205ad3"}, + CreatedAt: time.Now().Add(-1 * time.Hour), + UpdatedAt: time.Now().Add(-1 * time.Hour), + Local: true, + AccountID: "580072df-4d03-4684-a412-89fd6f7d77e6", + InReplyToID: "", + BoostOfID: "", + ContentWarning: "eye contact, trent reznor gif", + Visibility: gtsmodel.VisibilityMutualsOnly, + Sensitive: false, + Language: "en", + CreatedWithApplicationID: "f88697b8-ee3d-46c2-ac3f-dbb85566c3cc", + VisibilityAdvanced: >smodel.VisibilityAdvanced{ + Federated: true, + Boostable: true, + Replyable: true, + Likeable: true, + }, + ActivityStreamsType: gtsmodel.ActivityStreamsNote, + }, + "local_account_2_status_1": { + ID: "8945ccf2-3873-45e9-aa13-fd7163f19775", + URI: "http://localhost:8080/users/1happyturtle/statuses/8945ccf2-3873-45e9-aa13-fd7163f19775", + URL: "http://localhost:8080/@1happyturtle/statuses/8945ccf2-3873-45e9-aa13-fd7163f19775", + Content: "🐢 hi everyone i post about turtles 🐢", + CreatedAt: time.Now().Add(-189 * time.Hour), + UpdatedAt: time.Now().Add(-189 * time.Hour), + Local: true, + AccountID: "eecaad73-5703-426d-9312-276641daa31e", + InReplyToID: "", + BoostOfID: "", + ContentWarning: "introduction post", + Visibility: gtsmodel.VisibilityPublic, + Sensitive: true, + Language: "en", + CreatedWithApplicationID: "6b0cd164-8497-4cd5-bec9-957886fac5df", + VisibilityAdvanced: >smodel.VisibilityAdvanced{ + Federated: true, + Boostable: true, + Replyable: true, + Likeable: true, + }, + ActivityStreamsType: gtsmodel.ActivityStreamsNote, + }, + "local_account_2_status_2": { + ID: "c7e25a86-f0d3-4705-a73c-c597f687d3dd", + URI: "http://localhost:8080/users/1happyturtle/statuses/c7e25a86-f0d3-4705-a73c-c597f687d3dd", + URL: "http://localhost:8080/@1happyturtle/statuses/c7e25a86-f0d3-4705-a73c-c597f687d3dd", + Content: "🐢 this one is federated, likeable, and boostable but not replyable 🐢", + CreatedAt: time.Now().Add(-1 * time.Minute), + UpdatedAt: time.Now().Add(-1 * time.Minute), + Local: true, + AccountID: "eecaad73-5703-426d-9312-276641daa31e", + InReplyToID: "", + BoostOfID: "", + ContentWarning: "", + Visibility: gtsmodel.VisibilityPublic, + Sensitive: true, + Language: "en", + CreatedWithApplicationID: "6b0cd164-8497-4cd5-bec9-957886fac5df", + VisibilityAdvanced: >smodel.VisibilityAdvanced{ + Federated: true, + Boostable: true, + Replyable: false, + Likeable: true, + }, + ActivityStreamsType: gtsmodel.ActivityStreamsNote, + }, + "local_account_2_status_3": { + ID: "75960e30-7a8e-4f45-87fa-440a4d1c9572", + URI: "http://localhost:8080/users/1happyturtle/statuses/75960e30-7a8e-4f45-87fa-440a4d1c9572", + URL: "http://localhost:8080/@1happyturtle/statuses/75960e30-7a8e-4f45-87fa-440a4d1c9572", + Content: "🐢 i don't mind people sharing this one but I don't want likes or replies to it because cba🐢", + CreatedAt: time.Now().Add(-2 * time.Minute), + UpdatedAt: time.Now().Add(-2 * time.Minute), + Local: true, + AccountID: "eecaad73-5703-426d-9312-276641daa31e", + InReplyToID: "", + BoostOfID: "", + ContentWarning: "you won't be able to like or reply to this", + Visibility: gtsmodel.VisibilityUnlocked, + Sensitive: true, + Language: "en", + CreatedWithApplicationID: "6b0cd164-8497-4cd5-bec9-957886fac5df", + VisibilityAdvanced: >smodel.VisibilityAdvanced{ + Federated: true, + Boostable: true, + Replyable: false, + Likeable: false, + }, + ActivityStreamsType: gtsmodel.ActivityStreamsNote, + }, + } +} + +// NewTestTags returns a map of gts model tags keyed by their name +func NewTestTags() map[string]*gtsmodel.Tag { + return map[string]*gtsmodel.Tag{ + "welcome": { + ID: "a7e8f5ca-88a1-4652-8079-a187eab8d56e", + Name: "welcome", + FirstSeenFromAccountID: "", + CreatedAt: time.Now().Add(-71 * time.Hour), + UpdatedAt: time.Now().Add(-71 * time.Hour), + Useable: true, + Listable: true, + LastStatusAt: time.Now().Add(-71 * time.Hour), + }, + } +} + +// NewTestFaves returns a map of gts model faves, keyed in the format [faving_account]_[target_status] +func NewTestFaves() map[string]*gtsmodel.StatusFave { + return map[string]*gtsmodel.StatusFave{ + "local_account_1_admin_account_status_1": { + ID: "fc4d42ef-631c-4125-bd9d-88695131284c", + CreatedAt: time.Now().Add(-47 * time.Hour), + AccountID: "580072df-4d03-4684-a412-89fd6f7d77e6", // local account 1 + TargetAccountID: "8020dbb4-1e7b-4d99-a872-4cf94e64210f", // admin account + StatusID: "502ccd6f-0edf-48d7-9016-2dfa4d3714cd", // admin account status 1 + }, + } +} diff --git a/testrig/util.go b/testrig/util.go new file mode 100644 index 000000000..96a979342 --- /dev/null +++ b/testrig/util.go @@ -0,0 +1,64 @@ +/* + GoToSocial + Copyright (C) 2021 GoToSocial Authors admin@gotosocial.org + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . +*/ + +package testrig + +import ( + "bytes" + "io" + "mime/multipart" + "os" +) + +// CreateMultipartFormData is a handy function for taking a fieldname and a filename, and creating a multipart form bytes buffer +// with the file contents set in the given fieldname. The extraFields param can be used to add extra FormFields to the request, as necessary. +// The returned bytes.Buffer b can be used like so: +// httptest.NewRequest(http.MethodPost, "https://example.org/whateverpath", bytes.NewReader(b.Bytes())) +// The returned *multipart.Writer w can be used to set the content type of the request, like so: +// req.Header.Set("Content-Type", w.FormDataContentType()) +func CreateMultipartFormData(fieldName string, fileName string, extraFields map[string]string) (bytes.Buffer, *multipart.Writer, error) { + var b bytes.Buffer + var err error + w := multipart.NewWriter(&b) + var fw io.Writer + file, err := os.Open(fileName) + if err != nil { + return b, nil, err + } + if fw, err = w.CreateFormFile(fieldName, file.Name()); err != nil { + return b, nil, err + } + if _, err = io.Copy(fw, file); err != nil { + return b, nil, err + } + + for k, v := range extraFields { + f, err := w.CreateFormField(k) + if err != nil { + return b, nil, err + } + if _, err := io.Copy(f, bytes.NewBufferString(v)); err != nil { + return b, nil, err + } + } + + if err := w.Close(); err != nil { + return b, nil, err + } + return b, w, nil +}