using System;

namespace PhotoboothUploader.Models;

public sealed class PhotoboothProfile
{
    public string? Label { get; set; }
    public string? EventName { get; set; }
    public string? BaseUrl { get; set; }
    public string? UploadUrl { get; set; }
    public string? Username { get; set; }
    public string? Password { get; set; }
    public string? ResponseFormat { get; set; }
    public string? WatchFolder { get; set; }
    public string? IncludePatterns { get; set; }
    public string? ExcludePatterns { get; set; }
    public int MaxConcurrentUploads { get; set; } = 2;
    public int UploadDelayMs { get; set; } = 500;

    public string DisplayName
        => !string.IsNullOrWhiteSpace(Label)
            ? Label
            : !string.IsNullOrWhiteSpace(EventName)
                ? EventName
                : UploadUrl ?? BaseUrl ?? "Profil";
}
