diff --git a/app/javascript/packs/admin.js b/app/javascript/packs/admin.js index f32679619d5..a3ed1ffedd8 100644 --- a/app/javascript/packs/admin.js +++ b/app/javascript/packs/admin.js @@ -100,6 +100,16 @@ ready(() => { const registrationMode = document.getElementById('form_admin_settings_registrations_mode'); if (registrationMode) onChangeRegistrationMode(registrationMode); + document.querySelector('a#add-instance-button')?.addEventListener('click', (e) => { + const domain = document.getElementById('by_domain')?.value; + + if (domain) { + const url = new URL(event.target.href); + url.searchParams.set('_domain', domain); + e.target.href = url; + } + }); + const React = require('react'); const ReactDOM = require('react-dom'); diff --git a/app/views/admin/instances/index.html.haml b/app/views/admin/instances/index.html.haml index f8273718d4e..cc502039865 100644 --- a/app/views/admin/instances/index.html.haml +++ b/app/views/admin/instances/index.html.haml @@ -1,11 +1,14 @@ - content_for :page_title do = t('admin.instances.title') +- content_for :header_tags do + = javascript_pack_tag 'admin', async: true, crossorigin: 'anonymous' + - content_for :heading_actions do - if whitelist_mode? - = link_to t('admin.domain_allows.add_new'), new_admin_domain_allow_path, class: 'button' + = link_to t('admin.domain_allows.add_new'), new_admin_domain_allow_path, class: 'button', id: 'add-instance-button' - else - = link_to t('admin.domain_blocks.add_new'), new_admin_domain_block_path, class: 'button' + = link_to t('admin.domain_blocks.add_new'), new_admin_domain_block_path, class: 'button', id: 'add-instance-button' .filters .filter-subset