@using FoodsharingSiegen.Contracts.Entity
@using FoodsharingSiegen.Contracts.Helper
@using FoodsharingSiegen.Server.BaseClasses
@inherits FsBase

@{
    var divClass = $"{CssClass} pc-main";
    if (Prospect is {Complete: true }) divClass += " complete";
}

<div class="@divClass">
    <h5 class="mb-0">
        @if (CurrentUser.IsInGroup(UserGroup.WelcomeTeam, UserGroup.Ambassador))
        {
            <a href=""><i class="fa-solid fa-pen-to-square" @onclick="() => ProspectModal.Show(Prospect)" @onclick:preventDefault></i> </a>
        }
        
        @Prospect?.Name
        <small style="font-size: .9rem; opacity: .7;">
            <a class="invert" href="@(CurrentUser.NetworkLink)/profile/@Prospect?.FsId" target="_blank">Profil öffnen</a>
        </small>
    </h5>
    
    @if (!string.IsNullOrWhiteSpace(Prospect?.Memo) || Prospect?.Warning is true)
    {
        var alertColor = Prospect?.Warning is true ? Color.Warning : Color.Info;
        var alertIconClass = Prospect?.Warning is true ? "fa-solid fa-triangle-exclamation" : "fa-solid fa-circle-info";
        
        <Alert Color="alertColor" Visible Class="p-2 mb-1">
            <AlertDescription><i class="@alertIconClass"></i> @Prospect?.Memo</AlertDescription>
        </Alert>
    }
    
    
    <table>

        <InteractionRow
            Prospect="Prospect"
            Type="InteractionType.Welcome"
            AllowAddInteraction="@CurrentUser.IsInGroup(UserGroup.WelcomeTeam)"
            AddClick="() => AddInteraction(InteractionType.Welcome)"
            RemoveClick="@RemoveInteraction"
            Caption="Begrüßung"
            ButtonText="Abhaken"
            IconClass="fa-solid fa-handshake-simple">
        </InteractionRow>

        <InteractionRow
            Prospect="Prospect"
            Type="InteractionType.EinAb"
            AllowAddInteraction="@CurrentUser.IsInGroup(UserGroup.WelcomeTeam, UserGroup.StoreManager, UserGroup.Ambassador)"
            AddClick="() => AddInteraction(InteractionType.EinAb)"
            RemoveClick="@RemoveInteraction"
            Caption="Einführungen"
            Multiple="true"
            Minimum="3"
            ButtonText="Hinzufügen"
            IconClass="fa-solid fa-basket-shopping">
        </InteractionRow>

        <InteractionRow
            Prospect="Prospect"
            Type="InteractionType.IdCheck"
            AllowAddInteraction="@CurrentUser.IsInGroup(UserGroup.Ambassador)"
            AddClick="() => AddInteraction(InteractionType.IdCheck)"
            RemoveClick="@RemoveInteraction"
            Caption="Perso prüfen"
            ButtonText="Abhaken"
            IconClass="fa-solid fa-magnifying-glass">
        </InteractionRow>

        <InteractionRow
            Prospect="Prospect"
            Type="InteractionType.PrintPass"
            AllowAddInteraction="@CurrentUser.IsInGroup(UserGroup.Ambassador)"
            AddClick="() => AddInteraction(InteractionType.PrintPass)"
            RemoveClick="@RemoveInteraction"
            Caption="FS-Ausweis (print)"
            ButtonText="Abhaken"
            IconClass="fa-solid fa-id-card">
        </InteractionRow>

        <InteractionRow
            Prospect="Prospect"
            AllowAddInteraction="@CurrentUser.IsInGroup(UserGroup.Ambassador)"
            Type="InteractionType.Verify"
            AddClick="() => AddInteraction(InteractionType.Verify)"
            RemoveClick="@RemoveInteraction"
            Caption="Verifizieren"
            ButtonText="Abhaken"
            IconClass="fa-solid fa-user-check">
        </InteractionRow>

        <InteractionRow
            Prospect="Prospect"
            AllowAddInteraction="@CurrentUser.IsInGroup(UserGroup.Ambassador)"
            Type="InteractionType.Complete"
            AddClick="() => AddInteraction(InteractionType.Complete)"
            RemoveClick="@RemoveInteraction"
            Caption="Fertig"
            ButtonText="Abhaken"
            IconClass="fa-solid fa-flag-checkered">
        </InteractionRow>

    </table>


</div>