@model IEnumerable<(string, IEnumerable<SharedLibraryCore.Interfaces.IManagerCommand>)>
@{
    var loc = Utilities.CurrentLocalization.LocalizationIndex;
}
<div class="content mt-20">
    @foreach (var (pluginName, commandList) in Model)
    {
        <div class="command-assembly-container">
            <h2 class="content-title mb-lg-20 mt-20 ">@(pluginName == "Native" ? ViewBag.Localization["WEBFRONT_HELP_COMMANDS_NATIVE_TITLE"] : pluginName)</h2>

            <table class="table rounded">
                <thead>
                <!-- desktop -->
                <tr class="bg-primary text-light d-none d-lg-table-row ">
                    <th>@loc["WEBFRONT_HELP_COMMAND_DESC_NAME"]</th>
                    <th>@loc["WEBFRONT_HELP_COMMAND_DESC_ALIAS"]</th>
                    <th>@loc["WEBFRONT_HELP_COMMAND_DESC_DESCRIPTION"]</th>
                    <th>@loc["WEBFRONT_HELP_COMMAND_DESC_REQUIRES_TARGET"]</th>
                    <th>@loc["WEBFRONT_HELP_COMMAND_DESC_SYNTAX"]</th>
                    <th>@loc["WEBFRONT_HELP_SUPPORTED_GAMES"]</th>
                    <th class="text-right">@loc["WEBFRONT_HELP_COMMAND_DESC_REQUIRED_LEVEL"]</th>
                </tr>
                </thead>
                <tbody>
                @foreach (var command in commandList)
                {
                    <!-- desktop -->
                    <tr class="d-none d-lg-table-row bg-dark-dm bg-light-lm">
                        <td class="font-weight-bold">@command.Name</td>
                        <td>@command.Alias</td>
                        <td class="text-muted">@command.Description</td>
                        <td class="@(command.RequiresTarget ? "text-success" : "text-danger")">@command.RequiresTarget</td>
                        <td class="text-muted">@ViewBag.CommandPrefix@command.Syntax.Split(ViewBag.CommandPrefix)[1]</td>
                        <td>
                            @if (command.SupportedGames is not null && command.SupportedGames.Any())
                            {
                                <div class="d-flex">
                                    @foreach (var game in command.SupportedGames)
                                    {
                                        <div class="mr-5" data-toggle="tooltip" data-title="@loc[$"GAME_{game.ToString().ToUpper()}"]">
                                            <div class="badge">@game.ToString()</div>
                                        </div>
                                    }
                                </div>
                            }
                            else
                            {
                                <div class="badge">@loc["WEBFRONT_HELP_ALL_GAMES"]</div>
                            }
                        </td>
                        <td class="text-right level-color-@((int)command.Permission)">@command.Permission.ToLocalizedLevelName()</td>
                    </tr>
                }
                </tbody>
            </table>

            <!-- mobile -->
            <table class="table d-lg-none rounded no-cell-divider bg-dark-dm bg-light-lm" style="border-collapse: collapse">
                @foreach (var command in commandList)
                {
                    <tr>
                        <th class="bg-primary text-right text-light first-row" style="width:40%">@loc["WEBFRONT_HELP_COMMAND_DESC_NAME"]</th>
                        <td class="first-row font-weight-bold">@command.Name</td>
                    </tr>
                    <tr>
                        <th class="bg-primary text-right text-light">@loc["WEBFRONT_HELP_COMMAND_DESC_ALIAS"]</th>
                        <td>@command.Alias</td>
                    </tr>
                    <tr>
                        <th class="bg-primary text-right text-light align-top">@loc["WEBFRONT_HELP_COMMAND_DESC_DESCRIPTION"]</th>
                        <td class="text-muted">@command.Description</td>
                    </tr>
                    <tr>
                        <th class="bg-primary text-right text-light">@loc["WEBFRONT_HELP_COMMAND_DESC_REQUIRES_TARGET"]</th>
                        <td class="@(command.RequiresTarget ? "text-success" : "text-danger") align-top">@command.RequiresTarget</td>
                    </tr>
                    <tr>
                        <th class="bg-primary text-right text-light align-top">@loc["WEBFRONT_HELP_COMMAND_DESC_SYNTAX"]</th>
                        <td class="text-muted">@ViewBag.CommandPrefix@command.Syntax.Split(ViewBag.CommandPrefix)[1]</td>
                    </tr>
                    <tr>
                        <th class="bg-primary text-right text-light">@loc["WEBFRONT_HELP_SUPPORTED_GAMES"]</th>
                        <td>
                            @if (command.SupportedGames is not null && command.SupportedGames.Any())
                            {
                                <div class="d-flex">
                                    @foreach (var game in command.SupportedGames)
                                    {
                                        <div class="mr-5" data-toggle="tooltip" data-title="@loc[$"GAME_{game.ToString().ToUpper()}"]">
                                            <div class="badge">@game.ToString()</div>
                                        </div>
                                    }
                                </div>
                            }
                            else
                            {
                                <div class="badge">@loc["WEBFRONT_HELP_ALL_GAMES"]</div>
                            }
                        </td>
                    </tr>
                    <tr class="border-bottom">
                        <th class="bg-primary text-right text-light last-row">@loc["WEBFRONT_HELP_COMMAND_DESC_REQUIRED_LEVEL"]</th>
                        <td class="@($"level-color-{(int)command.Permission}") last-row">@command.Permission.ToLocalizedLevelName()</td>
                    </tr>
                }
            </table>


        </div>
    }
</div>
