{#
 # ---------------------------------------------------------------------
 #
 # GLPI - Gestionnaire Libre de Parc Informatique
 #
 # http://glpi-project.org
 #
 # @copyright 2015-2025 Teclib' and contributors.
 # @licence   https://www.gnu.org/licenses/gpl-3.0.html
 #
 # ---------------------------------------------------------------------
 #
 # LICENSE
 #
 # This file is part of GLPI.
 #
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
 # the Free Software Foundation, either version 3 of the License, or
 # (at your option) any later version.
 #
 # This program 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 General Public License for more details.
 #
 # You should have received a copy of the GNU General Public License
 # along with this program.  If not, see <https://www.gnu.org/licenses/>.
 #
 # ---------------------------------------------------------------------
 #}

{% extends "generic_show_form.html.twig" %}
{% import 'components/form/fields_macros.html.twig' as fields %}
{% set params  = params ?? [] %}

{% block more_fields %}
    <input type="hidden" name="itemtype" value="{{ parent["itemtype"] }}">
    <input type="hidden" name="items_id" value="{{ parent["items_id"] }}">

    {{ fields.nullField() }}
    {% set add_several = params['several'] is defined and params['several'] %}

    {# Do not display position if several mode, value is compute on add #}
    {% if not add_several %}
        {{ fields.numberField('position', item.fields['position'], __('Position'), field_options) }}
    {% else %}
        {{ fields.nullField() }}
    {% endif %}

    {% set wiring_side %}
    {% do call('Glpi\\Socket::dropdownWiringSide', [
        'wiring_side',
        {
            'value': item.fields['wiring_side'],
        },
        add_several
    ]) %}
    {% endset %}
    {{ fields.htmlField('wiring_side', wiring_side, __('Wiring side')) }}

    {% set networkports %}
        {% set netport_params = params|merge({
            'itemtype': parent['itemtype'],
            'items_id': parent['items_id'] ?? 0,
            'networkports_id': item.fields['networkports_id'],
        }) %}
        {% include 'pages/assets/socket_networkport.html.twig' with netport_params only %}
    {% endset %}
    {{ fields.htmlField('networkports_id', networkports, _n('Network port', 'Network ports', get_plural_number())) }}

    {% if add_several %}
        {{ fields.dropdownNumberField('_from', 1, __('From'), {
            'min': 1
        }) }}

        {{ fields.dropdownNumberField('_to', 1, __('To'), {
            'min': 1
        }) }}

        {{ fields.textField('_before', '', __('Prefix')) }}

        {{ fields.textField('_after', '', __('Suffix')) }}

        <input type="hidden" name="execute_multi" value="1">
    {% endif %}
{% endblock %}
