1
0
Fork 0
forked from External/grumble

Fix fixme in userEnterChannel().

This commit is contained in:
Mikkel Krautz 2011-11-12 21:59:33 +01:00
parent b1d6717a04
commit 0fde3b9ae9
2 changed files with 23 additions and 1 deletions

View file

@ -727,6 +727,26 @@ func (server *Server) UpdateFrozenUser(client *Client, state *mumbleproto.UserSt
server.numLogOps += 1 server.numLogOps += 1
} }
// Update a user's last active channel
func (server *Server) UpdateFrozenUserLastChannel(client *Client) {
if client.IsRegistered() {
user := client.user
fu := &freezer.User{}
fu.Id = proto.Uint32(user.Id)
fu.LastChannelId = proto.Uint32(uint32(client.Channel.Id))
fu.LastActive = proto.Uint64(uint64(time.Nanoseconds()))
err := server.freezelog.Put(fu)
if err != nil {
server.Fatal(err)
}
server.numLogOps += 1
}
}
// Mark a user as deleted in the datstore. // Mark a user as deleted in the datstore.
func (server *Server) DeleteFrozenUser(user *User) { func (server *Server) DeleteFrozenUser(user *User) {
err := server.freezelog.Put(&freezer.UserRemove{Id: proto.Uint32(user.Id)}) err := server.freezelog.Put(&freezer.UserRemove{Id: proto.Uint32(user.Id)})

View file

@ -994,7 +994,9 @@ func (server *Server) userEnterChannel(client *Client, channel *Channel, usersta
channel.AddClient(client) channel.AddClient(client)
server.ClearCaches() server.ClearCaches()
// fixme(mkrautz): Set LastChannel for user in datastore
server.UpdateFrozenUserLastChannel(client)
// fixme(mkrautz): Remove channel if temporary // fixme(mkrautz): Remove channel if temporary
canspeak := server.HasPermission(client, channel, SpeakPermission) canspeak := server.HasPermission(client, channel, SpeakPermission)