diff options
author | 2021-09-09 16:15:25 +0200 | |
---|---|---|
committer | 2021-09-09 16:15:25 +0200 | |
commit | 555ea8edfb2c30d149b3ca6cb0fbe53f2798c7bc (patch) | |
tree | 24567c4c365a007fcd2d6603e696b363129abb77 /internal/processing/status | |
parent | Merge pull request #198 from NyaaaWhatsUpDoc/update/sqlite-library (diff) | |
download | gotosocial-555ea8edfb2c30d149b3ca6cb0fbe53f2798c7bc.tar.xz |
Import export (#194)
* start with export/import code
* messing about with decoding/encoding
* some more fiddling
* stuff is WORKING
* working pretty alright!
* go fmt
* fix up tests, add docs
* start backup/restore doc
* tweaks
* credits
* update advancedVisibility settings
* update bun library -> v1.0.4
Signed-off-by: kim (grufwub) <grufwub@gmail.com>
* update oauth library -> v4.3.1-SSB
Signed-off-by: kim (grufwub) <grufwub@gmail.com>
* handle oauth token scope, fix user.SigninCount + token.UserID
Signed-off-by: kim (grufwub) <grufwub@gmail.com>
* update oauth library --> v4.3.2-SSB
Signed-off-by: kim (grufwub) <grufwub@gmail.com>
* update sqlite library -> v1.13.0
Signed-off-by: kim (grufwub) <grufwub@gmail.com>
* review changes
* start with export/import code
* messing about with decoding/encoding
* some more fiddling
* stuff is WORKING
* working pretty alright!
* go fmt
* fix up tests, add docs
* start backup/restore doc
* tweaks
* credits
* update advancedVisibility settings
* review changes
Co-authored-by: kim (grufwub) <grufwub@gmail.com>
Co-authored-by: kim <89579420+NyaaaWhatsUpDoc@users.noreply.github.com>
Diffstat (limited to 'internal/processing/status')
-rw-r--r-- | internal/processing/status/boost.go | 2 | ||||
-rw-r--r-- | internal/processing/status/fave.go | 2 | ||||
-rw-r--r-- | internal/processing/status/util.go | 41 |
3 files changed, 23 insertions, 22 deletions
diff --git a/internal/processing/status/boost.go b/internal/processing/status/boost.go index d6c4ada41..4276ca9fa 100644 --- a/internal/processing/status/boost.go +++ b/internal/processing/status/boost.go @@ -46,7 +46,7 @@ func (p *processor) Boost(ctx context.Context, requestingAccount *gtsmodel.Accou if !visible { return nil, gtserror.NewErrorNotFound(errors.New("status is not visible")) } - if !targetStatus.VisibilityAdvanced.Boostable { + if !targetStatus.Boostable { return nil, gtserror.NewErrorForbidden(errors.New("status is not boostable")) } diff --git a/internal/processing/status/fave.go b/internal/processing/status/fave.go index 195bfa56a..f3f10c43c 100644 --- a/internal/processing/status/fave.go +++ b/internal/processing/status/fave.go @@ -49,7 +49,7 @@ func (p *processor) Fave(ctx context.Context, requestingAccount *gtsmodel.Accoun if !visible { return nil, gtserror.NewErrorNotFound(errors.New("status is not visible")) } - if !targetStatus.VisibilityAdvanced.Likeable { + if !targetStatus.Likeable { return nil, gtserror.NewErrorForbidden(errors.New("status is not faveable")) } diff --git a/internal/processing/status/util.go b/internal/processing/status/util.go index 8861a532b..5ed63d919 100644 --- a/internal/processing/status/util.go +++ b/internal/processing/status/util.go @@ -33,12 +33,10 @@ import ( func (p *processor) ProcessVisibility(ctx context.Context, form *apimodel.AdvancedStatusCreateForm, accountDefaultVis gtsmodel.Visibility, status *gtsmodel.Status) error { // by default all flags are set to true - gtsAdvancedVis := gtsmodel.VisibilityAdvanced{ - Federated: true, - Boostable: true, - Replyable: true, - Likeable: true, - } + federated := true + boostable := true + replyable := true + likeable := true var vis gtsmodel.Visibility // If visibility isn't set on the form, then just take the account default. @@ -58,47 +56,50 @@ func (p *processor) ProcessVisibility(ctx context.Context, form *apimodel.Advanc 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 + federated = *form.Federated } if form.Boostable != nil { - gtsAdvancedVis.Boostable = *form.Boostable + boostable = *form.Boostable } if form.Replyable != nil { - gtsAdvancedVis.Replyable = *form.Replyable + replyable = *form.Replyable } if form.Likeable != nil { - gtsAdvancedVis.Likeable = *form.Likeable + 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 + boostable = false if form.Federated != nil { - gtsAdvancedVis.Federated = *form.Federated + federated = *form.Federated } if form.Replyable != nil { - gtsAdvancedVis.Replyable = *form.Replyable + replyable = *form.Replyable } if form.Likeable != nil { - gtsAdvancedVis.Likeable = *form.Likeable + 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 + federated = true + boostable = false + replyable = true + likeable = true } status.Visibility = vis - status.VisibilityAdvanced = gtsAdvancedVis + status.Federated = federated + status.Boostable = boostable + status.Replyable = replyable + status.Likeable = likeable return nil } @@ -123,7 +124,7 @@ func (p *processor) ProcessReplyToID(ctx context.Context, form *apimodel.Advance } return fmt.Errorf("status with id %s not replyable: %s", form.InReplyToID, err) } - if !repliedStatus.VisibilityAdvanced.Replyable { + if !repliedStatus.Replyable { return fmt.Errorf("status with id %s is marked as not replyable", form.InReplyToID) } |