void Listener_OnGroupMemberAdded(FizzGroupMemberEventData eventData) { if (UserId.Equals(eventData.MemberId)) { Client.Chat.Groups.FetchGroup(eventData.GroupId, (groupMeta, ex) => { if (ex == null) { AddGroup(new FizzGroupModel(groupMeta, GroupTag)); FizzGroupModel group = GetGroup(groupMeta.Id); if (eventData.State == FizzGroupMemberState.Pending) { GroupInvites.Add(group.Id, CreateUserGroup(eventData)); } if (OnGroupAdded != null) { OnGroupAdded.Invoke(GetGroup(eventData.GroupId)); } } }); } else { FizzGroupModel group = GetGroup(eventData.GroupId); if (group != null && OnGroupMembersUpdated != null) { OnGroupMembersUpdated.Invoke(group); } } }
void OnGroupRemoved(FizzGroupModel group) { if (!_showGroups) { return; } ChannelsView.RemoveGroup(group); }
void OnGroupAdded(FizzGroupModel group) { if (!_showGroups) { return; } ChannelsView.AddGroup(group); }
void Listener_OnGroupUpdated(FizzGroupUpdateEventData eventData) { FizzGroupModel group = GetGroup(eventData.GroupId); if (group != null && OnGroupUpdated != null) { group.Update(eventData); OnGroupUpdated.Invoke(group); } }
public void RemoveGroup(FizzGroupModel group) { if (!_initialized) { Initialize(); } if (RemoveChannelInternal(group.Channel.Id) && CurrentSelectedChannel == null && _channelsLookup.Count > 0) { HandleChannelSelected(_channelsLookup.Values.First().GetChannel()); } }
void OnGroupUpdated(FizzGroupModel group) { if (!_showGroups) { return; } ChannelsView.UpdateGroup(group); if (ChannelsView.CurrentSelectedChannel == group.Channel) { HeaderView.SetTitleText(group.Channel.Name); } }
public void UpdateGroup(FizzGroupModel group) { if (!_initialized) { Initialize(); } if (_channelsLookup.ContainsKey(group.Channel.Id)) { FizzChannelView button = _channelsLookup[group.Channel.Id]; button.UpdateNameLabel(group.Channel.Name); button.gameObject.name = group.Channel.Name; } }
void OnGroupMembersUpdated(FizzGroupModel group) { if (!_showGroups) { return; } if (group.Channel.Id == ChannelsView.CurrentSelectedChannel.Id) { if (!FizzService.Instance.GroupRepository.GroupInvites.ContainsKey(group.Id)) { ShowInput = true; } } }
void Listener_OnGroupMemberUpdated(FizzGroupMemberEventData eventData) { FizzGroupModel group = GetGroup(eventData.GroupId); if (group != null) { if (eventData.MemberId.Equals(UserId) && eventData.State == FizzGroupMemberState.Joined) { GroupInvites.Remove(eventData.GroupId); } if (OnGroupMembersUpdated != null) { OnGroupMembersUpdated.Invoke(group); } } }
public void AddGroup(FizzGroupModel group, bool select = false) { if (!_initialized) { Initialize(); } if (!_channelsLookup.ContainsKey(group.Channel.Id)) { AddChannelInternal(group.Channel); } if (_channelsLookup.ContainsKey(group.Channel.Id) && select) { HandleChannelSelected(group.Channel); } }
public bool SetGroup(FizzGroupModel group) { if (!_initialized) { Initialize(); } if (_channelsLookup.ContainsKey(group.Channel.Id)) { HandleChannelSelected(group.Channel); return(true); } else { FizzLogger.W("FizzChatView: Unable to set group"); return(false); } }
private void AddGroup(FizzGroupModel group) { if (Client.State == FizzClientState.Closed) { FizzLogger.W("FizzClient should be opened before adding group."); return; } if (group == null) { FizzLogger.E("FizzClient unable to add group, group is null."); return; } if (!groupLookup.ContainsKey(group.Id)) { Groups.Add(group); groupLookup.Add(group.Id, group); } group = groupLookup[group.Id]; group.Channel.SubscribeAndQueryLatest(); }
void Listener_OnGroupMemberRemoved(FizzGroupMemberEventData eventData) { if (UserId.Equals(eventData.MemberId)) { FizzGroupModel group = GetGroup(eventData.GroupId); GroupInvites.Remove(eventData.GroupId); Groups.Remove(groupLookup[eventData.GroupId]); groupLookup.Remove(eventData.GroupId); if (group != null && OnGroupRemoved != null) { OnGroupRemoved.Invoke(group); } } else { FizzGroupModel group = GetGroup(eventData.GroupId); if (group != null && OnGroupMembersUpdated != null) { OnGroupMembersUpdated.Invoke(group); } } }