{# * * Extension Manager Plus. An extension for the phpBB Forum Software package. * * @copyright (c) 2022, LukeWCS, https://www.wcsaga.org * @license GNU General Public License, version 2 (GPL-2.0-only) * * Note: This extension is 100% genuine handcraft and consists of selected * natural raw materials. There was no AI involved in making it. * #} {% import '@lukewcs_extmgrplus/acp_ext_mgr_plus_macros.html' as common %} {% INCLUDE 'overall_header.html' %} {% if !IS_PHPBB_MIN_3_3_14 && disabled|length %} {% set not_installed = disabled|slice(EXTMGRPLUS_COUNT.disabled) %} {% set disabled = disabled|slice(0, EXTMGRPLUS_COUNT.disabled) %} {% endif %} {% set const = { CHECKBOX_OFF : 0, CHECKBOX_ALL : 1, CHECKBOX_LAST : 2, } %}

{{ lang('EXTENSIONS_ADMIN') }}

{{ lang('EXTENSIONS_EXPLAIN') }}

{{ common.notes(EXTMGRPLUS_NOTES) }}
{{ lang('EXTMGRPLUS_COL_AVAILABLE_EXTENSIONS') }} {{ lang('EXTMGRPLUS_COL_WITH_VERSIONCHECK') }} {{ lang('EXTMGRPLUS_COL_LAST_VERSIONCHECK') }} {{ lang('EXTMGRPLUS_COL_AVAILABLE_UPDATES') }}
{{ lang('EXTMGRPLUS_AVAILABLE_EXTENSIONS', EXTMGRPLUS_COUNT.invalid, EXTMGRPLUS_COUNT.available ) }} {{ EXTMGRPLUS_LIST_VERSIONCHECK.data.count_total }} {{ lang('EXTMGRPLUS_VERSIONCHECK_DATE', EXTMGRPLUS_LIST_VERSIONCHECK.data.count_error, EXTMGRPLUS_LIST_VERSIONCHECK.data.local_date ?? '', EXTMGRPLUS_LIST_VERSIONCHECK.data.duration ) }} {{ EXTMGRPLUS_LIST_VERSIONCHECK.data.count_update }}
{{ common.icon('fa-database') }}{{ lang('BROWSE_EXTENSIONS_DATABASE') }}   {{ common.icon('fa-refresh') }}{{ lang('VERSIONCHECK_FORCE_UPDATE_ALL') }}   {{ common.icon('fa-cogs') }}{{ lang('EXTMGRPLUS_LINK_EXT_PROPERTIES') }}   {{ common.icon('fa-check-square-o') }}{{ lang('EXTMGRPLUS_LINK_SAVE_CHECKBOXES') }}
{% if EXTMGRPLUS_EXT_PROPERTIES %} {{ _self.submit_buttons('ext_properties') }} {% endif %} {{ common.icon('fa-arrow-up', 'EXTMGRPLUS_COL_MIGRATIONS') }}{{ lang('EXTMGRPLUS_COL_MIGRATIONS') }} {% for list in ['enabled', 'disabled', 'not_installed']|filter(list => _context[list]|length) %} {% for ext in _context[list] %} {% set vc_obj = EXTMGRPLUS_LIST_VERSIONCHECK[ext.NAME] ?? {} %} {% apply spaceless %} {% if list != 'enabled' && EXTMGRPLUS_SWITCH_MIGRATION_COL %} {% set count = EXTMGRPLUS_LIST_MIGRATIONS[ext.NAME] ?? 0 %} {% if EXTMGRPLUS_LIST_IGNORE[ext.NAME] is defined %} {{ common.icon('fa-ban', 'EXTMGRPLUS_TOOLTIP_IS_IGNORED') }} {% elseif count %} {{ count }} {% endif %} {% endif %} {% endapply %} {% endfor %} {% endfor %}
{{ common.icon('fa-database', 'EXTMGRPLUS_COL_CDB') }}{{ lang('EXTMGRPLUS_COL_CDB') }} {{ lang('EXTENSION_NAME') }} {{ lang('CURRENT_VERSION') }} {{ lang('EXTENSION_OPTIONS') }} {{ lang('EXTENSION_ACTIONS') }} {{ common.icon('fa-check', 'EXTMGRPLUS_COL_SELECT') }}{{ lang('EXTMGRPLUS_COL_SELECT') }} {{ common.icon('fa-sort', 'EXTMGRPLUS_COL_ORDER') }}{{ lang('EXTMGRPLUS_COL_ORDER') }} {{ common.icon('fa-ban', 'EXTMGRPLUS_COL_IGNORE') }}{{ lang('EXTMGRPLUS_COL_IGNORE') }}
{% apply spaceless %} {{ lang('EXTMGRPLUS_EXTENSIONS_' ~ list|upper, EXTMGRPLUS_COUNT[list]) }} {% if list == 'enabled' %} {% EVENT acp_ext_list_enabled_title_after %} {% elseif list == 'disabled' %} {% EVENT acp_ext_list_disabled_title_after %} {% elseif list == 'not_installed' %} {% EVENT acp_ext_list_not_installed_title_after %} {% endif %} {% endapply %} {% apply spaceless %} {% if list != 'not_installed' %} {{ _self.submit_buttons({enabled: 'disable_all', disabled: 'enable_all'}[list], EXTMGRPLUS_COUNT[list ~ '_selected'] > 0) }} {% endif %} {% endapply %} {% apply spaceless %} {% if list != 'not_installed' %} {% set this_enabled = EXTMGRPLUS_COUNT[list ~ '_selectable'] > 0 %} {% endif %} {% endapply %}
{{ vc_obj.cdb_ext ? { 1: common.icon('fa-database', 'EXTMGRPLUS_TOOLTIP_CDB_EXT'), 2: common.icon('fa-star', 'EXTMGRPLUS_TOOLTIP_CDB_EXT_OFFICIAL'), }[vc_obj.cdb_ext] }} {% apply spaceless %} {{ ext.META_DISPLAY_NAME }} {% if list == 'enabled' %} {% EVENT acp_ext_list_enabled_name_after %} {% elseif list == 'disabled' %} {% EVENT acp_ext_list_disabled_name_after %} {% elseif list == 'not_installed' %} {% EVENT acp_ext_list_not_installed_name_after %} {% endif %} {% endapply %} {% apply spaceless %} {% if ext.NAME is defined %} {% if vc_obj.current == 'ERROR' || vc_obj.current is empty %} {{ ext.META_VERSION }} {% else %} {{ ext.META_VERSION }} {% endif %} {% if vc_obj.current === false %} {{ common.icon('fa-chain-broken', 'EXTMGRPLUS_TOOLTIP_NO_VERSIONCHECK') }} {% elseif vc_obj.current == 'ERROR' %} {{ common.icon('fa-exclamation-triangle', 'EXTMGRPLUS_TOOLTIP_VERSIONCHECK_ERROR') }} {% elseif vc_obj.current is empty %} {{ common.icon('fa-question-circle', 'EXTMGRPLUS_TOOLTIP_VERSIONCHECK_EMPTY') }} {% elseif vc_obj.current != 'NOUPD' %} {{ common.icon('fa-exclamation-circle outdated-ext', 'EXTMGRPLUS_TOOLTIP_OUTDATED') }} ({{ vc_obj.current }}) {% endif %} {% endif %} {% endapply %} {% apply spaceless %} {% if ext.U_DETAILS %} {{ lang('DETAILS') }} {% endif %} {% endapply %} {% apply spaceless %} {% for action in ext.actions %} {{ action.L_ACTION }} {{ !loop.last ? ' | ' }} {% endfor %} {% if list == 'enabled' && EXTMGRPLUS_SWITCH_SETTINGS_LINK %}  |  {% if EXTMGRPLUS_LIST_MODULES[ext.NAME] is defined %} {{ lang('SETTINGS') }} {% else %} {{ lang('SETTINGS') }} {% endif %} {% endif %} {% endapply %} {% apply spaceless %} {% if list != 'not_installed' && ext.NAME is defined && (ext.NAME != 'lukewcs/extmgrplus' || EXTMGRPLUS_SWITCH_SELF_DISABLE) %} {% if EXTMGRPLUS_LIST_IGNORE[ext.NAME] is defined %} {{ common.icon('fa-ban', 'EXTMGRPLUS_TOOLTIP_IS_IGNORED') }} {% elseif EXTMGRPLUS_LIST_MIGRATIONS[ext.NAME] is defined && !EXTMGRPLUS_SWITCH_MIGRATIONS %} {% else %} {% endif %} {% endif %} {% endapply %} {% apply spaceless %} {% if ext.NAME is defined && ext.NAME != 'lukewcs/extmgrplus' && EXTMGRPLUS_SWITCH_ORDER_AND_IGNORE %} {% endif %} {% endapply %} {% apply spaceless %} {% if ext.NAME is defined && ext.NAME != 'lukewcs/extmgrplus' && EXTMGRPLUS_SWITCH_ORDER_AND_IGNORE %} {% endif %} {% endapply %}
{{ EXTMGRPLUS_EXT_PROPERTIES ? _self.submit_buttons('ext_properties') }} {{ EXTMGRPLUS_SELECT_CHECKBOX_MODE == const.CHECKBOX_LAST ? _self.submit_buttons('save_checkboxes') }} {{ S_FORM_TOKEN }}
{% if EXTMGRPLUS_SWITCH_INSTRUCTIONS %}
{{ lang('EXTENSION_INSTALL_HEADLINE') }}
{{ lang('EXTENSION_INSTALL_EXPLAIN') }}
{{ lang('EXTENSION_UPDATE_HEADLINE') }}
{{ lang('EXTENSION_UPDATE_EXPLAIN') }}
{{ lang('EXTENSION_REMOVE_HEADLINE') }}
{{ lang('EXTENSION_REMOVE_EXPLAIN') }}
{% endif %} {{ common.footer(EXTMGRPLUS_METADATA) }} {% INCLUDE 'overall_footer.html' %} {% INCLUDEJS '@lukewcs_extmgrplus/acp_ext_mgr_plus_acp_ext_list.js' %} {% INCLUDECSS '@lukewcs_extmgrplus/acp_ext_mgr_plus.css' %} {% macro submit_buttons(type, enabled = true) %} {% if type == 'ext_properties' %} {% elseif type == 'save_checkboxes' %} {% elseif type ends with 'able_all' %} {% set type_upper = type|upper %} {% endif %} {% endmacro %}