56 lines
1.4 KiB
JavaScript
56 lines
1.4 KiB
JavaScript
(function (wp, $) {
|
|
'use strict';
|
|
if (!wp) {
|
|
return;
|
|
}
|
|
|
|
/**
|
|
* Activate the plugin
|
|
* @param url
|
|
*/
|
|
function activatePlugin(url) {
|
|
$.ajax(
|
|
{
|
|
async : true,
|
|
type : 'GET',
|
|
dataType: 'html',
|
|
url : url,
|
|
success : function () {
|
|
location.reload();
|
|
}
|
|
}
|
|
);
|
|
}
|
|
|
|
// Install plugins actions
|
|
$('a.dlm-install-plugin-link').on('click', (event) => {
|
|
|
|
event.preventDefault();
|
|
const current = $(event.currentTarget);
|
|
const plugin_slug = current.data('slug');
|
|
const plugin_action = current.data('action');
|
|
const element = current.parents('tr[data-setting]').attr('data-setting');
|
|
const activate_url = current.data('activation_url');
|
|
|
|
// Now let's disable the button and show the action text
|
|
current.attr('disabled', true);
|
|
|
|
if ('install' === plugin_action) {
|
|
|
|
current.text(dlm_install_plugins_vars.install_plugin);
|
|
const args = {
|
|
slug : plugin_slug, success: (response) => {
|
|
current.text(dlm_install_plugins_vars.activate_plugin);
|
|
activatePlugin(response.activateUrl);
|
|
}, error: (response) => {
|
|
current.text(dlm_install_plugins_vars.no_install + ' ' + response.errorMessage);
|
|
}
|
|
}
|
|
|
|
wp.updates.installPlugin(args);
|
|
} else if ('activate' === plugin_action) {
|
|
current.text(dlm_install_plugins_vars.activate_plugin);
|
|
activatePlugin(activate_url);
|
|
}
|
|
});
|
|
})(window.wp, jQuery); |