HEX
Server: LiteSpeed
System: Linux s12873.lon1.stableserver.net 5.14.0-611.11.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Dec 3 09:47:37 EST 2025 x86_64
User: jairicem (1242)
PHP: 8.2.31
Disabled: NONE
Upload Files
File: /home/jairicem/ebifo.org/wp-content/plugins/bears-backup/bears-backup.php
<?php
/*
 * Plugin Name: Bears Backup
 * Plugin URI: http://bearsthemes.com/
 * Description: Great plugin helpfull for backup (database, media), create and import dummy data.
 * Version: 2.1.0
 * Author: Bearsthemes
 * Author URI: http://bearsthemes.com/
 * Text Domain: bears-backup
 *
 * Copyright: © Bearsthemes.
 * License: GNU General Public License v3.0
 * License URI: http://www.gnu.org/licenses/gpl-3.0.html
 */

/**
 * PHP Composer
 */
require 'vendor/autoload.php';
require 'vendor/fix-import.php';

if(! class_exists('Bears_Backup') ) {

  class Bears_Backup
  {

    public $BBACKUP_MAIN = array();

    function __construct ()
    {
      /* defined */
      $this->defined();

      /* include */
      $this->inc();

      /* Hooks */
      $this->hooks();
    }

    public function defined()
    {
      define( "BBACKUP_VERSION", '2.1.0' );
      define( "BBACKUP_DIR_PATH", plugin_dir_path( __FILE__ ) );
      define( "BBACKUP_DIR_URL", plugin_dir_url( __FILE__ ) );
      define( "BBACKUP_UPLOAD_PATH", $this->upload_path() );
    }

    /**
     * @since 1.0.0
     */
    public function upload_path ()
    {
      $upload_dir = wp_upload_dir();
      return $upload_dir['basedir'] . '/' . 'bears-backup';
    }

    /**
     * @since 1.0.0
     * include PHP file
     */
    public function inc()
    {
      if ( is_admin() ) {
        /* MySQL Dump */
        require_once plugin_dir_path( __FILE__ ) . '/inc/class.WPMySQLDump.php';
        require_once plugin_dir_path( __FILE__ ) . '/inc/class.WPMySQLImport.php';

        /* functions */
        require_once plugin_dir_path( __FILE__ ) . '/inc/functions.php';

        /* Ajax func */
        require_once plugin_dir_path( __FILE__ ) . '/inc/ajax.php';

        /* backup panel menu page */
        $this->BBACKUP_MAIN['BBACKUP_Backup_Panel'] = require( plugin_dir_path( __FILE__ ) . '/inc/backup-panel.php' );
      }
    }

    /**
     * @since 1.0.0
     * Hooks
     */
    public function hooks()
    {
      /* hook 'admin_enqueue_scripts' */
      add_action( 'admin_enqueue_scripts', array( $this, 'scripts' ) );
    }

    /**
     * @since 1.0.0
     * load script
     * use jQuery, Vue, Element Ui
     */
    public function scripts()
    {
      $page_load_scripts = apply_filters('bears_backup_page_load_scripts', array('bbackup-backup-panel', 'dbc-demo-content-panel'));
      if(empty($_GET['page']) || ! in_array( $_GET['page'], $page_load_scripts ) ) return;

      wp_enqueue_script( 'vue', plugins_url( '/assets/vendor/vue/vue.min.js', __FILE__ ), array(), '2.4.4', true );

      wp_enqueue_style( 'element-ui', plugins_url( '/assets/vendor/element-ui/element-ui.css', __FILE__ ), array(), '1.4.6', 'all' );
      wp_enqueue_script( 'element-ui', plugins_url( '/assets/vendor/element-ui/element-ui.js', __FILE__ ), array('vue'), '1.4.6', true );
      wp_enqueue_script( 'element-ui-en', plugins_url( '/assets/vendor/element-ui/element-ui-en.js', __FILE__ ), array('element-ui'), '1.4.6', true );

      wp_enqueue_style( 'bears_backup_style', plugins_url( '/assets/css/bears-backup.backend.css', __FILE__ ), array(), BBACKUP_VERSION, 'all' );
      wp_enqueue_script( 'bears_backup_script', plugins_url( '/assets/js/bears-backup.bundle.js', __FILE__ ), array('jquery'), BBACKUP_VERSION, true );

      # user current id 
      $user_id = get_current_user_id();

      wp_localize_script( 'bears_backup_script', 'bbackup_object', array(
        'ajax_url' => admin_url( 'admin-ajax.php' ),
        /**
         * nonce for ajax
         * security
         */
        'nonce'    => wp_create_nonce( 'bears_backup_nonce_' . $user_id ),
        
        'nonce__BBACKUP_Delete_Folder_Backup' => wp_create_nonce( 'BBACKUP_Delete_Folder_Backup_' . $user_id ),
        'nonce__BBACKUP_Backup_Database' => wp_create_nonce( 'BBACKUP_Backup_Database_' . $user_id ),
        'nonce__BBACKUP_Create_File_Config' => wp_create_nonce( 'BBACKUP_Create_File_Config_' . $user_id ),
        'nonce__BBACKUP_Backup_Folder_Upload' => wp_create_nonce( 'BBACKUP_Backup_Folder_Upload_' . $user_id ),
        'nonce__BBACKUP_Load_Backup_Data' => wp_create_nonce( 'BBACKUP_Load_Backup_Data_' . $user_id ),
        'nonce__BBACKUP_Upload_File_Backup' => wp_create_nonce( 'BBACKUP_Upload_File_Backup_' . $user_id ),
        'nonce__BBACKUP_Restore_Data' => wp_create_nonce( 'BBACKUP_Restore_Data_' . $user_id ),
        'nonce__BBACKUP_Download_Backup' => wp_create_nonce( 'BBACKUP_Download_Backup_' . $user_id ),

        // language
        'language' => array( )
      ) );
    }

  }

  $GLOBALS['Bears_Backup'] = new Bears_Backup();
}