' . esc_html__('KiraBackup is not running because another copy of it is active (Complete Backup Restore is its previous name). Deactivate the old plugin; your backups, settings and restore point carry over.', 'kirabackup'); if (is_plugin_active($legacy)) { echo ' ' . esc_html__('Deactivate Complete Backup Restore', 'kirabackup') . ''; } echo '

'; } ); return; } // Multisite is not supported: the network shares its tables and files, so a restore run // by one site's administrator would overwrite every site. Stay idle and say so. if (is_multisite()) { $wpcbr_multisite_notice = function () { if (current_user_can('activate_plugins')) { echo '

' . esc_html__('KiraBackup does not run on WordPress Multisite (a restore would overwrite every site of the network). Deactivate it here.', 'kirabackup') . '

'; } }; add_action('admin_notices', $wpcbr_multisite_notice); add_action('network_admin_notices', $wpcbr_multisite_notice); return; } define('WPCBR_VERSION', '1.2.2'); define('WPCBR_PLUGIN_FILE', __FILE__); define('WPCBR_PLUGIN_DIR', plugin_dir_path(__FILE__)); define('WPCBR_PLUGIN_URL', plugin_dir_url(__FILE__)); // Chunked-processing tuning. Each AJAX "tick" works until WPCBR_TICK_BUDGET // seconds elapse, then returns progress so the browser can call again — this // keeps every request well under the server's max_execution_time. if (! defined('WPCBR_TICK_BUDGET')) { define('WPCBR_TICK_BUDGET', 15); } require_once WPCBR_PLUGIN_DIR . 'includes/class-wpcbr-plugin.php'; if (defined('WP_CLI') && WP_CLI) { WPCBR_Recovery::register_cli(); require_once WPCBR_PLUGIN_DIR . 'includes/class-wpcbr-cli.php'; } WPCBR_Plugin::instance();