From 3e6fd7e8fd419ed999fe38ee48519dae98988081 Mon Sep 17 00:00:00 2001 From: Jakub Senko Date: Mon, 14 May 2018 21:14:41 +0200 Subject: [ticket/15664] Ajaxify ext actions in ACP PHPBB3-15664 --- phpBB/adm/style/admin.js | 58 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) (limited to 'phpBB/adm/style/admin.js') diff --git a/phpBB/adm/style/admin.js b/phpBB/adm/style/admin.js index 551c78a4a3..b7c25b7c86 100644 --- a/phpBB/adm/style/admin.js +++ b/phpBB/adm/style/admin.js @@ -228,6 +228,64 @@ function parse_document(container) }); } +/** + * Extension actions helper functions + */ +function move_to_enabled(element) +{ + var disabled_header = document.querySelector('#ext_disabled_header'); + disabled_header.parentNode.insertBefore(element, disabled_header); + element.classList.remove('ext_disabled'); + element.classList.add('ext_enabled'); +} +function move_to_disabled(element) +{ + var table_body = document.querySelector('#ext_disabled_header').parentNode; + table_body.appendChild(element); + element.classList.remove('ext_enabled'); + element.classList.add('ext_disabled'); +} +function set_actions(container, actions) { + container.innerHTML = ''; + for (var i = 0; i < actions.length; i++) { + var a = document.createElement('a'); + a.href = actions[i].U_ACTION.split('&').join('&'); // replace all occurances + a.title = actions[i].L_ACTION_EXPLAIN; + if (actions[i].COLOR) { + a.style = actions[i].COLOR; + } + a.innerHTML = actions[i].L_ACTION; + // ajaxify this action as well + phpbb.ajaxify({ + selector: a, + refresh: false, + callback: actions[i].ACTION_AJAX + }); + + container.appendChild(a); + + if (i < actions.length - 1) { + container.innerHTML += ' | '; + } + } +} +function show_enabled_header() { + document.querySelector('#ext_enabled_header').classList.remove('hidden'); +} +function show_disabled_header() { + document.querySelector('#ext_disabled_header').classList.remove('hidden'); +} +function hide_disabled_header_if_empty() { + if (!document.querySelector('.ext_disabled')) { + document.querySelector('#ext_disabled_header').classList.add('hidden'); + } +} +function hide_enabled_header_if_empty() { + if (!document.querySelector('.ext_enabled')) { + document.querySelector('#ext_enabled_header').classList.add('hidden'); + } +} + /** * Run onload functions */ -- cgit v1.2.1 From 4da589acbacbc524a739b384e1392866784cf88d Mon Sep 17 00:00:00 2001 From: Jakub Senko Date: Wed, 4 Jul 2018 14:56:36 +0200 Subject: [ticket/15664] Add support for multi step processes PHPBB3-15664 --- phpBB/adm/style/admin.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'phpBB/adm/style/admin.js') diff --git a/phpBB/adm/style/admin.js b/phpBB/adm/style/admin.js index b7c25b7c86..5fdd07356c 100644 --- a/phpBB/adm/style/admin.js +++ b/phpBB/adm/style/admin.js @@ -258,7 +258,7 @@ function set_actions(container, actions) { // ajaxify this action as well phpbb.ajaxify({ selector: a, - refresh: false, + refresh: true, callback: actions[i].ACTION_AJAX }); -- cgit v1.2.1