check_plugin_state($slug);
if (empty($slug)) {
return '';
}
$additional = '';
if ('deactivate' === $state) {
$additional = ' action_button active';
}
$button .= '
';
$plugin_link_suffix = self::get_plugin_path($slug);
$nonce = add_query_arg(
array(
'action' => 'activate',
'plugin' => rawurlencode($plugin_link_suffix),
'plugin_status' => 'all',
'paged' => '1',
'_wpnonce' => wp_create_nonce('activate-plugin_' . $plugin_link_suffix),
),
network_admin_url('plugins.php')
);
switch ($state) {
case 'install':
$button .= '
' . __('Install and activate »', 'potter') . '';
break;
case 'activate':
$button .= '
' . esc_html__('Activate', 'potter') . '';
break;
case 'deactivate':
$nonce = add_query_arg(
array(
'action' => 'deactivate',
'plugin' => rawurlencode($plugin_link_suffix),
'plugin_status' => 'all',
'paged' => '1',
'_wpnonce' => wp_create_nonce('deactivate-plugin_' . $plugin_link_suffix),
),
network_admin_url('plugins.php')
);
$button .= '
' . esc_html__('Deactivate', 'potter') . ' ' . esc_html__('Browse Starter Sites', 'potter') . '' ;
break;
case 'enable_cpt':
$url = admin_url('admin.php?page=jetpack#/settings');
$button .= '
' . esc_html__('Activate', 'potter') . ' ' . esc_html__('Jetpack Portfolio', 'potter') . '';
break;
} // End switch.
$button .= '
';
return $button;
}
/**
* Check plugin state.
*
* @param string $slug plugin slug.
*
* @return bool
*/
public function check_plugin_state($slug)
{
$plugin_link_suffix = self::get_plugin_path($slug);
if (file_exists(ABSPATH . 'wp-content/plugins/' . $plugin_link_suffix)) {
$needs = is_plugin_active($plugin_link_suffix) ? 'deactivate' : 'activate';
if ('deactivate' === $needs && ! post_type_exists('portfolio') && 'jetpack' === $slug) {
return 'enable_cpt';
}
return $needs;
} else {
return 'install';
}
}
/**
* Enqueue Function.
*/
public function enqueue_scripts()
{
wp_enqueue_script('plugin-install');
wp_enqueue_script('updates');
wp_enqueue_script('potter-plugin-install-helper', get_template_directory_uri() . '/inc/customizer/controls/ui/helper-plugin-install/helper-script.js', array( 'jquery' ), POTTER_VERSION, true);
wp_localize_script(
'potter-plugin-install-helper',
'potter_plugin_helper',
array(
'activating' => esc_html__('Activating ', 'potter'),
)
);
wp_localize_script(
'potter-plugin-install-helper',
'pagenow',
array( 'import' )
);
}
}