{# # --------------------------------------------------------------------- # # GLPI - Gestionnaire Libre de Parc Informatique # # http://glpi-project.org # # @copyright 2015-2024 Teclib' and contributors. # @copyright 2003-2014 by the INDEPNET Development Team. # @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 . # # --------------------------------------------------------------------- #} {% extends "generic_show_form.html.twig" %} {% import 'components/form/fields_macros.html.twig' as fields %} {% import 'components/alerts_macros.html.twig' as alerts %} {% set params = params ?? [] %} {% set customobj_ns = item.getCustomObjectNamespace() %} {% block form_fields %} {% if not item.isNewItem() and item.isActive() and not has_rights_enabled %} {{ alerts.alert_warning(__('There is currently no profile with access to items with current definition.')) }} {% endif %} {% if item.isNewItem() %} {% set helper %} {{ __('The system name corresponds to the customizable part of the item class which will correspond to the current definition. For example, items linked to the system name "%s" will have the class "%s".')|format('Example', customobj_ns ~ '\\Example') }} {{ __('The value must contains only letters and must not end by "Model" or "Type".') }} {{ __('Also, the value must not be one of the following reserved names: %s.')|format('"' ~ reserved_system_names|join('", "') ~ '"') }} {% endset %} {{ fields.textField( 'system_name', item.fields['system_name'], __('System name'), { 'required': true, 'pattern': '^(?!(' ~ reserved_system_names|join('|') ~ ')$)[A-Za-z]+(? {{ __('The class of items related to current definition is "%s".')|format(customobj_ns ~ '\\%s'|format(item.fields['system_name'])) }} {% endset %} {{ fields.textField( 'system_name', item.fields['system_name'], __('System name'), { 'disabled': true, 'add_field_html': helper_html, } ) }} {% endif %} {% if not item.isNewItem() %} {% endif %} {{ parent() }} {% endblock %} {% block more_fields %} {{ fields.dropdownWebIcons( 'icon', item.fields['icon'], __('Icon'), ) }} {% endblock %}