Print status code
This commit is contained in:
parent
a1eae9b4bb
commit
6d073dc216
@ -1,10 +1,15 @@
|
||||
package app
|
||||
|
||||
import "fmt"
|
||||
import (
|
||||
"errors"
|
||||
"fmt"
|
||||
"github.com/rxdn/gdl/rest/request"
|
||||
)
|
||||
|
||||
type ApiError struct {
|
||||
InternalError error
|
||||
ExternalMessage string
|
||||
stacktrace error
|
||||
}
|
||||
|
||||
var _ error = (*ApiError)(nil)
|
||||
@ -21,7 +26,13 @@ func NewServerError(internalError error) *ApiError {
|
||||
}
|
||||
|
||||
func (e *ApiError) Error() string {
|
||||
var restError request.RestError
|
||||
if errors.As(e.InternalError, &restError) {
|
||||
return fmt.Sprintf("internal error: %v, external message: %s, rest error: Discord returned HTTP %d: %s",
|
||||
e.InternalError, e.ExternalMessage, restError.StatusCode, restError.ApiError.Message)
|
||||
} else {
|
||||
return fmt.Sprintf("internal error: %v, external message: %s", e.InternalError, e.ExternalMessage)
|
||||
}
|
||||
}
|
||||
|
||||
func (e *ApiError) Unwrap() error {
|
||||
|
@ -97,7 +97,6 @@ func DeletePanel(c *gin.Context) {
|
||||
}
|
||||
|
||||
messageData := multiPanelIntoMessageData(multiPanel, premiumTier > premium.None)
|
||||
|
||||
messageId, err := messageData.send(botContext, panels)
|
||||
if err != nil {
|
||||
var unwrapped request.RestError
|
||||
@ -106,8 +105,7 @@ func DeletePanel(c *gin.Context) {
|
||||
return
|
||||
}
|
||||
// TODO: nil message ID?
|
||||
}
|
||||
|
||||
} else {
|
||||
if err := database.Client.MultiPanels.UpdateMessageId(c, multiPanel.Id, messageId); err != nil {
|
||||
_ = c.AbortWithError(http.StatusInternalServerError, app.NewServerError(err))
|
||||
return
|
||||
@ -117,6 +115,7 @@ func DeletePanel(c *gin.Context) {
|
||||
// TODO: Use proper context
|
||||
_ = rest.DeleteMessage(c, botContext.Token, botContext.RateLimiter, multiPanel.ChannelId, multiPanel.MessageId)
|
||||
}
|
||||
}
|
||||
|
||||
c.JSON(200, utils.SuccessResponse)
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user