Compare commits

...

3 commits

5 changed files with 85 additions and 12 deletions

View file

@ -80,10 +80,18 @@ host: "localhost"
# Default: "" # Default: ""
account-domain: "" account-domain: ""
# String. Protocol to use for the server. Only change to http for local testing! # String. Protocol over which the server is reachable from the outside world.
# This should be the protocol part of the URI that your server is actually reachable on. So even if you're #
# running GoToSocial behind a reverse proxy that handles SSL certificates for you, instead of using built-in # ONLY CHANGE THIS TO HTTP FOR LOCAL TESTING! IN 99.99% OF CASES YOU SHOULD NOT CHANGE THIS!
# letsencrypt, it should still be https. #
# This should be the protocol part of the URI that your server is actually reachable on.
# So even if you're running GoToSocial behind a reverse proxy that handles SSL certificates
# for you, instead of using built-in letsencrypt, it should still be https, not http.
#
# Again, ONLY CHANGE THIS TO HTTP FOR LOCAL TESTING! If you set this to `http`, start your instance,
# and then later change it to `https`, you will have already broken URI generation for any created
# users on the instance. You should only touch this setting if you 100% know what you're doing.
#
# Options: ["http","https"] # Options: ["http","https"]
# Default: "https" # Default: "https"
protocol: "https" protocol: "https"

View file

@ -88,10 +88,18 @@ host: "localhost"
# Default: "" # Default: ""
account-domain: "" account-domain: ""
# String. Protocol to use for the server. Only change to http for local testing! # String. Protocol over which the server is reachable from the outside world.
# This should be the protocol part of the URI that your server is actually reachable on. So even if you're #
# running GoToSocial behind a reverse proxy that handles SSL certificates for you, instead of using built-in # ONLY CHANGE THIS TO HTTP FOR LOCAL TESTING! IN 99.99% OF CASES YOU SHOULD NOT CHANGE THIS!
# letsencrypt, it should still be https. #
# This should be the protocol part of the URI that your server is actually reachable on.
# So even if you're running GoToSocial behind a reverse proxy that handles SSL certificates
# for you, instead of using built-in letsencrypt, it should still be https, not http.
#
# Again, ONLY CHANGE THIS TO HTTP FOR LOCAL TESTING! If you set this to `http`, start your instance,
# and then later change it to `https`, you will have already broken URI generation for any created
# users on the instance. You should only touch this setting if you 100% know what you're doing.
#
# Options: ["http","https"] # Options: ["http","https"]
# Default: "https" # Default: "https"
protocol: "https" protocol: "https"

View file

@ -302,9 +302,9 @@ func (i *interactionDB) GetInteractionsRequestsForAcct(
bun.Ident("interaction_request"), bun.Ident("interaction_request"),
). ).
// Select only interaction requests that // Select only interaction requests that
// are neither accepted or rejected yet, // are neither accepted or rejected yet.
// ie., without an Accept or Reject URI. Where("? IS NULL", bun.Ident("accepted_at")).
Where("? IS NULL", bun.Ident("uri")) Where("? IS NULL", bun.Ident("rejected_at"))
// Select interactions targeting status. // Select interactions targeting status.
if statusID != "" { if statusID != "" {

View file

@ -0,0 +1,57 @@
// GoToSocial
// Copyright (C) GoToSocial Authors admin@gotosocial.org
// SPDX-License-Identifier: AGPL-3.0-or-later
//
// 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 <http://www.gnu.org/licenses/>.
package migrations
import (
"context"
"github.com/uptrace/bun"
)
func init() {
up := func(ctx context.Context, db *bun.DB) error {
return db.RunInTx(ctx, nil, func(ctx context.Context, tx bun.Tx) error {
for idx, col := range map[string]string{
"interaction_requests_accepted_at_idx": "accepted_at",
"interaction_requests_rejected_at_idx": "rejected_at",
} {
if _, err := tx.
NewCreateIndex().
Table("interaction_requests").
Index(idx).
Column(col).
IfNotExists().
Exec(ctx); err != nil {
return err
}
}
return nil
})
}
down := func(ctx context.Context, db *bun.DB) error {
return db.RunInTx(ctx, nil, func(ctx context.Context, tx bun.Tx) error {
return nil
})
}
if err := Migrations.Register(up, down); err != nil {
panic(err)
}
}

View file

@ -2711,7 +2711,7 @@ func (c *Converter) InteractionReqToAPIInteractionReq(
} }
var reply *apimodel.Status var reply *apimodel.Status
if req.InteractionType == gtsmodel.InteractionReply { if req.InteractionType == gtsmodel.InteractionReply && req.Reply != nil {
reply, err = c.statusToAPIStatus( reply, err = c.statusToAPIStatus(
ctx, ctx,
req.Reply, req.Reply,