{#
/**
 * Copyright (C) 2025 Xibo Signage Ltd
 *
 * Xibo - Digital Signage - http://www.xibo.org.uk
 *
 * This file is part of Xibo.
 *
 * Xibo is free software: you can redistribute it and/or modify
 * it under the terms of the GNU Affero General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * any later version.
 *
 * Xibo is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU Affero General Public License for more details.
 *
 * You should have received a copy of the GNU Affero General Public License
 * along with Xibo.  If not, see <http://www.gnu.org/licenses/>.
 */
#}

{% extends "form-base.twig" %}
{% import "forms.twig" as forms %}

{% block formTitle %}
    {% trans "Add Command" %}
{% endblock %}

{% block formButtons %}
    {% trans "Cancel" %}, XiboDialogClose()
    {% trans "Save" %}, $("#commandAddForm").submit()
{% endblock %}

{% block formHtml %}
    <div class="row">
        <div class="col-md-12">
            <ul class="nav nav-tabs" role="tablist">
                <li class="nav-item"><a class="nav-link active" href="#general" role="tab" data-toggle="tab"><span>{% trans "General" %}</span></a></li>
                <li class="nav-item"><a class="nav-link" href="#description" role="tab" data-toggle="tab"><span>{% trans "Description" %}</span></a></li>
            </ul>
            <form id="commandAddForm" class="XiboForm form-horizontal" method="post" action="{{ url_for("command.add") }}">
                <div class="tab-content">
                    <div class="tab-pane active" id="general">
                        {% set title %}{% trans "Name" %}{% endset %}
                        {% set helpText %}{% trans "The Name for this Command" %}{% endset %}
                        {{ forms.input("command", title, "", helpText, "", "required") }}

                        {% set title %}{% trans "Code" %}{% endset %}
                        {% set helpText %}{% trans "A reference code for this command which is used to identify the command internally." %}{% endset %}
                        {{ forms.input("code", title, "", helpText, "", "required") }}

                        {% set fieldId = "commandString" %}
                        {% set title %}{% trans "Command" %}{% endset %}
                        {% set helpText %}{% trans "The Command String for this Command. An override for this can be provided in Display Settings." %}{% endset %}
                        {{ forms.input(fieldId, title, "", helpText, "XiboCommand") }}

                        {% set fieldId = "validationString" %}
                        {% set title %}{% trans "Validation" %}{% endset %}
                        {% set helpText %}{% trans "The Validation String for this Command. An override for this can be provided in Display Settings." %}{% endset %}
                        {{ forms.input(fieldId, title, "", helpText) }}

                        {% set options = [
                            { optionid: "android", option: "Android" },
                            { optionid: "chromeOS", option: "ChromeOS" },
                            { optionid: "linux", option: "Linux" },
                            { optionid: "sssp", option: "Tizen" },
                            { optionid: "lg", option: "webOS" },
                            { optionid: "windows", option: "Windows" },
                        ] %}
                        {% set title %}{% trans "Available on" %}{% endset %}
                        {% set helpText %}{% trans "Leave empty if this command should be available on all types of Display." %}{% endset %}

                        {{ forms.dropdown("availableOn[]", "dropdownmulti", title, "", options, "optionid", "option", helpText, "selectPicker") }}

                        {% set options = [
                            { optionid: "never", option: "Never" },
                            { optionid: "success", option: "Success" },
                            { optionid: "failure", option: "Failure" },
                            { optionid: "always", option: "Always" },
                        ] %}
                        {% set title %}{% trans "Create Alert On" %}{% endset %}
                        {% set helpText %}{% trans "On command execution, when should a Display alert be created?" %}{% endset %}

                        {{ forms.dropdown("createAlertOn", "single", title, "never", options, "optionid", "option", helpText) }}
                    </div>

                    <div class="tab-pane" id="description">
                        {% set title %}{% trans "Description" %}{% endset %}
                        {% set helpText %}{% trans "This should be a textual description of what the command is trying to achieve. It should not be the command string." %}{% endset %}
                        {{ forms.textarea("description", title, "", helpText, "", "", 10) }}
                    </div>
                </div>
            </form>
        </div>
    </div>
{% endblock %}