/
home
/
infinitibizsol
/
public_html
/
wp-content
/
plugins
/
simple-sitemap
/
api
/
classes
/
File Upload :
llllll
Current File: /home/infinitibizsol/public_html/wp-content/plugins/simple-sitemap/api/classes/upgrade.php
<?php namespace WPGO_Plugins\Plugin_Framework; /* * Run upgrade routine(s) when plugin updated to new (higher) version */ class Upgrade_FW { protected $module_roots; protected $custom_plugin_data; /* Class constructor. */ public function __construct( $module_roots, $custom_plugin_data ) { $this->module_roots = $module_roots; $this->custom_plugin_data = $custom_plugin_data; add_action( 'plugins_loaded', array( &$this, 'upgrade_routine' ) ); } /** * Setup transient for admin notice to be displayed */ public function upgrade_routine() { // At the moment the 'upgrade routine consists only of handling the new features numbered icon. // only run upgrade routine on admin pages but not on post editor (for performance) if ( ! is_admin() || isset( $_GET['post'] ) ) { return; } $opt_pfx = $this->custom_plugin_data->db_option_prefix; $plugin_data = get_plugin_data( $this->module_roots['file'], false, false ); $current_version = $plugin_data['Version']; $global_plugin_options = get_option( $opt_pfx . '_options', array() ); $stored_version = isset( $global_plugin_options['plugin_version'] ) ? $global_plugin_options['plugin_version'] : '0.0.0'; // echo "<pre style='margin-left:200px;'>UPGRADE.PHP [Current: " . $current_version . "][Stored: " . $stored_version . "]<br>"; // print_r($global_plugin_options); // echo "</pre>"; // // Only run on plugin settings pages, plugin main index page, and Dashboard > Updates page // if (isset($_GET['page'])) { // echo "<pre style='margin-left:200px;'>"; // print_r($this->custom_plugin_data->plugin_slug); // print_r($_GET['page']); // if (strpos($_GET['page'], $this->custom_plugin_data->plugin_slug) !== false && strpos($_GET['page'], '-new-features') !== false) { // echo '<br>ON NEW FEATURES PAGE<br>'; // } // echo "</pre>"; // } // $settings_page_prefix = $this->custom_plugin_data->plugin_slug; // $pos = strpos($_GET['page'], $settings_page_prefix); // if ($pos !== 0) { // return; // } // } // } else { // return; // } // Run upgrade routine if current plugin version is not equal to stored version. if ( version_compare( $current_version, $stored_version, '=' ) ) { // Only run on new features page. if ( isset( $_GET['page'] ) && strpos( $_GET['page'], $this->custom_plugin_data->plugin_slug ) !== false && strpos($_GET['page'], '-new-features') !== false) { // echo ">>>>>>>>>>>>>>>>>>>> DON'T RUN UPGRADE ROUTINE - SETTING DISPLAY NUMBERED ICON TO FALSE<br>"; $global_plugin_options['new_features_numbered_icon'] = 'false'; update_option( $opt_pfx . '_options', $global_plugin_options ); return; } else { // echo ">>>>>>>>>>>>>>>>>>>> DON'T RUN UPGRADE ROUTINE - STRAIGHT RETURN<br>"; return; } } else { // If a new plugin version has been detected scan for new features and add numbered icon to plugin menu/tab // echo ">>>>>>>>>>>>>>>>>>>> SETTING TO TRUE<br>"; $global_plugin_options['new_features_numbered_icon'] = 'true'; $global_plugin_options['plugin_version'] = $current_version; update_option( $opt_pfx . '_options', $global_plugin_options ); } } public static function calc_new_features( $opt_pfx, $new_features_arr, $plugin_data ) { // Calc numbered icon and send to JS $new_features_number = 0; $global_plugin_options = get_option( $opt_pfx . '_options', array() ); // echo '<pre style="margin-left:250px;">'; // print_r($global_plugin_options); // echo '</pre>'; $display_numbered_icon = isset( $global_plugin_options['new_features_numbered_icon'] ) ? $global_plugin_options['new_features_numbered_icon'] : 'false'; if ( $display_numbered_icon === 'true' ) { // echo ">>>>>>>>>>>>>>>>>>>> display_numbered_icon [" . $display_numbered_icon . "]<br>"; foreach ( $new_features_arr as $key => $new_feature ) { if ( $plugin_data['Version'] === $new_feature->version || $new_feature->version === 'latest' ) { $new_features_number++; } } } // echo ">>>>>>>>>>>>>>>>>>>> NEW FEATURES ARR: <br>"; // echo "<pre style='margin-left:150px;'>"; // print_r($new_features_arr); // echo "</pre>"; // echo ">>>>>>>>>>>>>>>>>>>> DISPLAY NUMBERED ICON: [" . $display_numbered_icon . "][" . gettype($display_numbered_icon) . "]<br>"; // echo ">>>>>>>>>>>>>>>>>>>> OPT_PFX: [" . $opt_pfx . "]<br>"; // echo ">>>>>>>>>>>>>>>>>>>> TOTAL NUMBER [" . $new_features_number . "]<br>"; return $new_features_number; } } /* End class definition */
Copyright ©2k19 -
Hexid
|
Tex7ure