BSF_Update_Manager::brainstorm_update_plugins_transient( obj $_transient_data )
Function to update plugin’s transient.
Description
Parameters
- $_transient_data
-
(obj) (Required) Transient Data.
Return
($_transient_data.)
Source
File: admin/bsf-core/class-bsf-update-manager.php
public function brainstorm_update_plugins_transient( $_transient_data ) {
global $pagenow;
if ( ! is_object( $_transient_data ) ) {
$_transient_data = new stdClass();
}
$update_data = $this->bsf_update_transient_data( 'plugins' );
foreach ( $update_data as $key => $product ) {
if ( isset( $product['template'] ) && '' !== $product['template'] ) {
$template = $product['template'];
} elseif ( isset( $product['init'] ) && '' !== $product['init'] ) {
$template = $product['init'];
}
if ( isset( $_transient_data->response[ $template ] ) ) {
continue;
}
if ( false === $this->enable_auto_updates( $product['id'] ) ) {
continue;
}
$plugin = new stdClass();
$plugin->id = isset( $product['id'] ) ? $product['id'] : '';
$plugin->slug = $this->bsf_get_plugin_slug( $template );
$plugin->plugin = isset( $template ) ? $template : '';
$plugin->upgrade_notice = '';
if ( $this->use_beta_version( $plugin->id ) ) {
$plugin->new_version = isset( $product['version_beta'] ) ? $product['version_beta'] : '';
$plugin->upgrade_notice .= 'It is recommended to use the beta version on a staging enviornment only.';
} else {
$plugin->new_version = isset( $product['remote'] ) ? $product['remote'] : '';
}
$plugin->url = isset( $product['purchase_url'] ) ? $product['purchase_url'] : '';
if ( BSF_License_Manager::bsf_is_active_license( $product['id'] ) === true ) {
$plugin->package = $this->bsf_get_package_uri( $product['id'] );
} else {
$plugin->package = '';
$bundled = self::bsf_is_product_bundled( $plugin->id );
if ( ! empty( $bundled ) ) {
$parent_id = $bundled[0];
$parent_name = brainstrom_product_name( $parent_id );
$plugin->upgrade_notice = 'This plugin is came bundled with the ' . $parent_name . '. For receiving updates, you need to register license of ' . $parent_name . '.';
} else {
$plugin->upgrade_notice .= ' Please activate your license to receive automatic updates.';
}
}
$plugin->tested = isset( $product['tested'] ) ? $product['tested'] : '';
$plugin->requires_php = isset( $product['php_version'] ) ? $product['php_version'] : '';
$plugin->icons = apply_filters(
"bsf_product_icons_{$product['id']}",
array(
'1x' => ( isset( $product['product_image'] ) ) ? $product['product_image'] : '',
'2x' => ( isset( $product['product_image'] ) ) ? $product['product_image'] : '',
'default' => ( isset( $product['product_image'] ) ) ? $product['product_image'] : '',
)
);
$_transient_data->last_checked = time();
$_transient_data->response[ $template ] = $plugin;
}
return $_transient_data;
}
Expand full source code Collapse full source code View on Trac