Adjust some things
This commit is contained in:
2
go.mod
2
go.mod
@@ -11,7 +11,7 @@ require (
|
||||
github.com/skip2/go-qrcode v0.0.0-20200617195104-da1b6568686e
|
||||
github.com/yuin/goldmark v1.4.12
|
||||
maunium.net/go/maulogger/v2 v2.3.2
|
||||
maunium.net/go/mautrix v0.11.1-0.20220530120827-7eec0bd4d3c4
|
||||
maunium.net/go/mautrix v0.11.1-0.20220530212627-b15517460fdb
|
||||
)
|
||||
|
||||
require (
|
||||
|
||||
4
go.sum
4
go.sum
@@ -58,5 +58,5 @@ maunium.net/go/mauflag v1.0.0 h1:YiaRc0tEI3toYtJMRIfjP+jklH45uDHtT80nUamyD4M=
|
||||
maunium.net/go/mauflag v1.0.0/go.mod h1:nLivPOpTpHnpzEh8jEdSL9UqO9+/KBJFmNRlwKfkPeA=
|
||||
maunium.net/go/maulogger/v2 v2.3.2 h1:1XmIYmMd3PoQfp9J+PaHhpt80zpfmMqaShzUTC7FwY0=
|
||||
maunium.net/go/maulogger/v2 v2.3.2/go.mod h1:TYWy7wKwz/tIXTpsx8G3mZseIRiC5DoMxSZazOHy68A=
|
||||
maunium.net/go/mautrix v0.11.1-0.20220530120827-7eec0bd4d3c4 h1:/A03e5QOu8nTi6QChiEr0Udg2YE6alB7ZNJwYdHqDQk=
|
||||
maunium.net/go/mautrix v0.11.1-0.20220530120827-7eec0bd4d3c4/go.mod h1:CiKpMhAx5QZFHK03jpWb0iKI3sGU8x6+LfsOjDrcO8I=
|
||||
maunium.net/go/mautrix v0.11.1-0.20220530212627-b15517460fdb h1:MTY4bW0yhg8bHszMSNymTrHvIRdiDjcnQKC8qSbt5BE=
|
||||
maunium.net/go/mautrix v0.11.1-0.20220530212627-b15517460fdb/go.mod h1:CiKpMhAx5QZFHK03jpWb0iKI3sGU8x6+LfsOjDrcO8I=
|
||||
|
||||
@@ -21,6 +21,7 @@ import (
|
||||
"sync"
|
||||
|
||||
log "maunium.net/go/maulogger/v2"
|
||||
|
||||
"maunium.net/go/mautrix"
|
||||
"maunium.net/go/mautrix/event"
|
||||
"maunium.net/go/mautrix/id"
|
||||
@@ -265,15 +266,14 @@ func (guild *Guild) UpdateAvatar(iconID string) bool {
|
||||
}
|
||||
guild.AvatarSet = false
|
||||
guild.Avatar = iconID
|
||||
guild.AvatarURL = id.ContentURI{}
|
||||
if guild.Avatar != "" {
|
||||
var err error
|
||||
guild.AvatarURL, err = uploadAvatar(guild.bridge.Bot, discordgo.EndpointGuildIcon(guild.ID, iconID))
|
||||
if err != nil {
|
||||
guild.log.Warnln("Failed to reupload avatar %s: %v", iconID, err)
|
||||
guild.log.Warnfln("Failed to reupload guild avatar %s: %v", guild.Avatar, err)
|
||||
return true
|
||||
}
|
||||
} else {
|
||||
guild.AvatarURL = id.ContentURI{}
|
||||
}
|
||||
if guild.MXID != "" {
|
||||
_, err := guild.bridge.Bot.SetRoomAvatar(guild.MXID, guild.AvatarURL)
|
||||
|
||||
@@ -1401,16 +1401,15 @@ func (portal *Portal) UpdateGroupDMAvatar(iconID string) bool {
|
||||
}
|
||||
portal.Avatar = iconID
|
||||
portal.AvatarSet = false
|
||||
portal.AvatarURL = id.ContentURI{}
|
||||
if portal.Avatar != "" {
|
||||
uri, err := uploadAvatar(portal.MainIntent(), discordgo.EndpointGroupIcon(portal.Key.ChannelID, portal.Avatar))
|
||||
if err != nil {
|
||||
portal.log.Warnln("Failed to reupload avatar:", err)
|
||||
portal.log.Warnfln("Failed to reupload channel avatar %s: %v", portal.Avatar, err)
|
||||
return true
|
||||
} else {
|
||||
portal.AvatarURL = uri
|
||||
}
|
||||
} else {
|
||||
portal.AvatarURL = id.ContentURI{}
|
||||
}
|
||||
portal.updateRoomAvatar()
|
||||
return true
|
||||
|
||||
10
puppet.go
10
puppet.go
@@ -206,16 +206,16 @@ func (puppet *Puppet) UpdateAvatar(info *discordgo.User) bool {
|
||||
if puppet.Avatar == info.Avatar && puppet.AvatarSet {
|
||||
return false
|
||||
}
|
||||
avatarChanged := info.Avatar != puppet.Avatar
|
||||
puppet.Avatar = info.Avatar
|
||||
puppet.AvatarSet = false
|
||||
puppet.AvatarURL = id.ContentURI{}
|
||||
|
||||
if puppet.Avatar == "" {
|
||||
// TODO should we just use discord's default avatars?
|
||||
puppet.AvatarURL = id.ContentURI{}
|
||||
} else {
|
||||
// TODO should we just use discord's default avatars for users with no avatar?
|
||||
if puppet.Avatar != "" && (puppet.AvatarURL.IsEmpty() || avatarChanged) {
|
||||
url, err := uploadAvatar(puppet.DefaultIntent(), info.AvatarURL(""))
|
||||
if err != nil {
|
||||
puppet.log.Warnln("Failed to reupload user avatar:", err)
|
||||
puppet.log.Warnfln("Failed to reupload user avatar %s: %v", puppet.Avatar, err)
|
||||
return true
|
||||
}
|
||||
puppet.AvatarURL = url
|
||||
|
||||
7
user.go
7
user.go
@@ -454,7 +454,6 @@ func (user *User) Connect() error {
|
||||
|
||||
user.Session = session
|
||||
|
||||
// Add our event handlers
|
||||
user.Session.AddHandler(user.readyHandler)
|
||||
user.Session.AddHandler(user.connectedHandler)
|
||||
user.Session.AddHandler(user.disconnectedHandler)
|
||||
@@ -482,7 +481,6 @@ func (user *User) Connect() error {
|
||||
func (user *User) Disconnect() error {
|
||||
user.Lock()
|
||||
defer user.Unlock()
|
||||
|
||||
if user.Session == nil {
|
||||
return ErrNotConnected
|
||||
}
|
||||
@@ -490,9 +488,7 @@ func (user *User) Disconnect() error {
|
||||
if err := user.Session.Close(); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
user.Session = nil
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
@@ -507,14 +503,13 @@ func (user *User) bridgeMessage(guildID string) bool {
|
||||
return true
|
||||
}
|
||||
|
||||
user.log.Debugfln("Cgnoring message for non-bridged guild %s", guildID)
|
||||
user.log.Debugfln("Ignoring message for non-bridged guild %s", guildID)
|
||||
return false
|
||||
}
|
||||
|
||||
func (user *User) readyHandler(_ *discordgo.Session, r *discordgo.Ready) {
|
||||
user.log.Debugln("Discord connection ready")
|
||||
|
||||
// Update our user fields
|
||||
if user.DiscordID != r.User.ID {
|
||||
user.DiscordID = r.User.ID
|
||||
user.Update()
|
||||
|
||||
Reference in New Issue
Block a user