using MongoDB.Bson;
using MongoDB.Bson.Serialization.Attributes;

namespace QRRapidoApp.Models
{
    public class AdFreeSession
    {
        [BsonId]
        [BsonRepresentation(BsonType.ObjectId)]
        public string Id { get; set; } = string.Empty;

        [BsonElement("userId")]
        public string UserId { get; set; } = string.Empty;

        [BsonElement("startedAt")]
        public DateTime StartedAt { get; set; } = DateTime.UtcNow;

        [BsonElement("expiresAt")]
        public DateTime ExpiresAt { get; set; }

        [BsonElement("isActive")]
        public bool IsActive { get; set; } = true;

        [BsonElement("sessionType")]
        public string SessionType { get; set; } = "Login"; // "Login", "Premium", "Trial", "Promotion"

        [BsonElement("durationMinutes")]
        public int DurationMinutes { get; set; } = 43200; // 30 days default

        [BsonElement("createdAt")]
        public DateTime CreatedAt { get; set; } = DateTime.UtcNow;
    }
}