File "InstallPluginData.js"
Full path: /home/satkhirabarta/public_html/wp-content/plugins/complianz-gdpr/settings/src/Settings/InstallPlugin/InstallPluginData.js
File
size: 1.33 B
MIME-type: text/x-java
Charset: utf-8
Download Open Edit Advanced Editor &nnbsp; Back
import {create} from 'zustand';
import * as cmplz_api from "../../utils/api";
const UseInstallPluginData = create(( set, get ) => ({
apiRequestActive:false,
pluginAction: 'status',
wordPressUrl: '#',
upgradeUrl: '#',
rating: [],
statusLoaded:false,
setStatusLoaded: (status) => {
set({statusLoaded:status})
},
startPluginAction: (slug, action) => {
let data = {};
set({apiRequestActive:true});
data.pluginAction = typeof action !== 'undefined' ? action : get().pluginAction;
data.slug = slug;
let nextAction = false;
if ( data.pluginAction === 'download' ) {
nextAction = 'activate';
}
cmplz_api.doAction('plugin_actions', data).then( ( response ) => {
set({
pluginAction:response.pluginAction,
wordPressUrl:response.wordpress_url,
upgradeUrl:response.upgrade_url,
});//'installed', 'download', 'activate', 'upgrade-to-premium'
//convert to percentage
let p = Math.round( response.star_rating.rating / 10, 0 ) / 2;
set({
rating:p,
ratingCount:response.star_rating.rating_count,
apiRequestActive:false,
statusLoaded:true,
});
//if the plugin is installed, go ahead and activate as well
if ( nextAction === 'activate' && response.pluginAction!=='installed' ) {
get().startPluginAction(slug, response.pluginAction);
}
});
},
}));
export default UseInstallPluginData;