Archived
1

Updating chat name in DataCache

This commit is contained in:
2018-02-17 16:01:05 +04:00
parent bf7eec791a
commit 2466a723be
5 changed files with 26 additions and 61 deletions

View File

@@ -168,3 +168,22 @@ func (dc *DataCache) GetOrCreateChat(update *tgbotapi.Update) (*dbmapping.Chat,
return &chatRaw, nil
}
// UpdateChatTitle updates chat title with new one
func (dc *DataCache) UpdateChatTitle(chatID int, newTitle string) (*dbmapping.Chat, error) {
chatRaw, err := c.DataCache.GetChatByID(chatID)
if err != nil {
return nil, err
}
chatRaw.Name = newTitle
_, err = c.Db.NamedExec("UPDATE chats SET name=:name WHERE id=:id", &chatRaw)
if err != nil {
return nil, err
}
dc.chatsMutex.Lock()
dc.chats[chatRaw.ID] = chatRaw
dc.chatsMutex.Unlock()
return dc.chats[chatRaw.ID], nil
}

View File

@@ -18,6 +18,7 @@ type DataCacheInterface interface {
GetOrCreateChat(update *tgbotapi.Update) (*dbmapping.Chat, error)
GetGroupChatsByIDs(chatIDs []int) []dbmapping.Chat
GetLeaguePrivateChats() []dbmapping.Chat
UpdateChatTitle(chatID int, newTitle string) (*dbmapping.Chat, error)
AddPlayerToSquad(relation *dbmapping.SquadPlayer) (int, error)
GetAllSquadsChats() []dbmapping.Chat