using MongoDB.Bson;

namespace Insight.Web.Models;

public class ChatUser
{
    public ObjectId Uid { get; set; }
    public bool Online { get; set; }
    public string? Username { get; set; }
    public string? Email { get; set; }
    public byte[]? Avatar { get; set; }

    public ChatUser(ObjectId uid)
    {
        Uid = uid;
    }

    public override bool Equals(object? obj)
    {
        if (obj == null || GetType() != obj.GetType()) return false;
        if (obj is ChatUser user && Uid != user.Uid) return false;

        return true;
    }

    public override int GetHashCode()
    {
        return Uid.GetHashCode();
    }
}