mirror of
https://github.com/superseriousbusiness/gotosocial
synced 2025-06-05 21:59:39 +02:00
[feature] Process outgoing Move from clientAPI (#2750)
* prevent moved accounts from taking create-type actions * update move logic * federate move out * indicate on web profile when an account has moved * [docs] Add migration docs section * lock while checking + setting move state * use redirectFollowers func for clientAPI as well * comment typo * linter? i barely know 'er! * Update internal/uris/uri.go Co-authored-by: Daenney <daenney@users.noreply.github.com> * add a couple tests for move * fix little mistake exposed by tests (thanks tests) * ensure Move marked as successful * attach shared util funcs to struct * lock whole account when doing move * move moving check to after error check * replace repeated text with error func * linterrrrrr!!!! * catch self follow case --------- Co-authored-by: Daenney <daenney@users.noreply.github.com>
This commit is contained in:
@ -184,3 +184,21 @@ func OAuthErrorHandler(c *gin.Context, errWithCode gtserror.WithCode) {
|
||||
"error_description": errWithCode.Safe(),
|
||||
})
|
||||
}
|
||||
|
||||
// NotFoundAfterMove returns code 404 to the caller and writes a helpful error message.
|
||||
// Specifically used for accounts trying to access endpoints they cannot use while moving.
|
||||
func NotFoundAfterMove(c *gin.Context) {
|
||||
const errMsg = "your account has Moved or is currently Moving; you cannot use this endpoint"
|
||||
JSON(c, http.StatusForbidden, map[string]string{
|
||||
"error": errMsg,
|
||||
})
|
||||
}
|
||||
|
||||
// ForbiddenAfterMove returns code 403 to the caller and writes a helpful error message.
|
||||
// Specifically used for accounts trying to take actions on endpoints they cannot do while moving.
|
||||
func ForbiddenAfterMove(c *gin.Context) {
|
||||
const errMsg = "your account has Moved or is currently Moving; you cannot take create or update type actions"
|
||||
JSON(c, http.StatusForbidden, map[string]string{
|
||||
"error": errMsg,
|
||||
})
|
||||
}
|
||||
|
Reference in New Issue
Block a user