-
WIBUHAX0R1337
-
/
home
/
coludnqa
/
xtrasolutionsco.com
/
wp-content
/
plugins
/
one-click-demo-import
/
inc
/
[ Home ]
Create Folder
Create File
Nama File / Folder
Size
Action
CreateDemoContent
--
NONE
CustomizerImporter.php
7.28KB
Edit File
Delete File
Rename
CustomizerOption.php
0.478KB
Edit File
Delete File
Rename
Downloader.php
3.881KB
Edit File
Delete File
Rename
Helpers.php
27.881KB
Edit File
Delete File
Rename
ImportActions.php
6.765KB
Edit File
Delete File
Rename
Importer.php
5.425KB
Edit File
Delete File
Rename
Logger.php
1.38KB
Edit File
Delete File
Rename
OneClickDemoImport.php
31.455KB
Edit File
Delete File
Rename
PluginInstaller.php
17.085KB
Edit File
Delete File
Rename
PluginInstallerSkin.php
1.604KB
Edit File
Delete File
Rename
PluginInstallerSkinSilent.php
1.133KB
Edit File
Delete File
Rename
ReduxImporter.php
2.686KB
Edit File
Delete File
Rename
ViewHelpers.php
2.114KB
Edit File
Delete File
Rename
WPCLICommands.php
9.77KB
Edit File
Delete File
Rename
WPFormsImporter.php
2.269KB
Edit File
Delete File
Rename
WXRImporter.php
3.944KB
Edit File
Delete File
Rename
WidgetImporter.php
12.912KB
Edit File
Delete File
Rename
<?php /** * Class for declaring the content importer used in the One Click Demo Import plugin * * @package ocdi */ namespace OCDI; class Importer { /** * The importer class object used for importing content. * * @var object */ private $importer; /** * Time in milliseconds, marking the beginning of the import. * * @var float */ private $microtime; /** * The instance of the OCDI\Logger class. * * @var object */ public $logger; /** * The instance of the One Click Demo Import class. * * @var object */ private $ocdi; /** * Constructor method. * * @param array $importer_options Importer options. * @param object $logger Logger object used in the importer. */ public function __construct( $importer_options = array(), $logger = null ) { // Include files that are needed for WordPress Importer v2. $this->include_required_files(); // Set the WordPress Importer v2 as the importer used in this plugin. // More: https://github.com/humanmade/WordPress-Importer. $this->importer = new WXRImporter( $importer_options ); // Set logger to the importer. $this->logger = $logger; if ( ! empty( $this->logger ) ) { $this->set_logger( $this->logger ); } // Get the OCDI (main plugin class) instance. $this->ocdi = OneClickDemoImport::get_instance(); } /** * Include required files. */ private function include_required_files() { if ( ! class_exists( '\WP_Importer' ) ) { require ABSPATH . '/wp-admin/includes/class-wp-importer.php'; } } /** * Imports content from a WordPress export file. * * @param string $data_file path to xml file, file with WordPress export data. */ public function import( $data_file ) { $this->importer->import( $data_file ); } /** * Set the logger used in the import * * @param object $logger logger instance. */ public function set_logger( $logger ) { $this->importer->set_logger( $logger ); } /** * Get all protected variables from the WXR_Importer needed for continuing the import. */ public function get_importer_data() { return $this->importer->get_importer_data(); } /** * Sets all protected variables from the WXR_Importer needed for continuing the import. * * @param array $data with set variables. */ public function set_importer_data( $data ) { $this->importer->set_importer_data( $data ); } /** * Import content from an WP XML file. * * @param string $import_file_path Path to the import file. */ public function import_content( $import_file_path ) { $this->microtime = microtime( true ); // Increase PHP max execution time. Just in case, even though the AJAX calls are only 25 sec long. if ( strpos( ini_get( 'disable_functions' ), 'set_time_limit' ) === false ) { set_time_limit( Helpers::apply_filters( 'ocdi/set_time_limit_for_demo_data_import', 300 ) ); } // Disable import of authors. add_filter( 'wxr_importer.pre_process.user', '__return_false' ); // Check, if we need to send another AJAX request and set the importing author to the current user. add_filter( 'wxr_importer.pre_process.post', array( $this, 'new_ajax_request_maybe' ) ); // Disables generation of multiple image sizes (thumbnails) in the content import step. if ( ! Helpers::apply_filters( 'ocdi/regenerate_thumbnails_in_content_import', true ) ) { add_filter( 'intermediate_image_sizes_advanced', '__return_null' ); } // Import content. if ( ! empty( $import_file_path ) ) { ob_start(); $this->import( $import_file_path ); $message = ob_get_clean(); } // Return any error messages for the front page output (errors, critical, alert and emergency level messages only). return $this->logger->error_output; } /** * Check if we need to create a new AJAX request, so that server does not timeout. * * @param array $data current post data. * @return array */ public function new_ajax_request_maybe( $data ) { if ( empty( $data ) ) { return $data; } $time = microtime( true ) - $this->microtime; // We should make a new ajax call, if the time is right. if ( $time > Helpers::apply_filters( 'ocdi/time_for_one_ajax_call', 25 ) ) { $response = array( 'status' => 'newAJAX', 'message' => 'Time for new AJAX request!: ' . $time, ); // Add any output to the log file and clear the buffers. $message = ob_get_clean(); // Add any error messages to the frontend_error_messages variable in OCDI main class. if ( ! empty( $message ) ) { $this->ocdi->append_to_frontend_error_messages( $message ); } // Add message to log file. $log_added = Helpers::append_to_file( __( 'New AJAX call!' , 'one-click-demo-import' ) . PHP_EOL . $message, $this->ocdi->get_log_file_path(), '' ); // Set the current importer stat, so it can be continued on the next AJAX call. $this->set_current_importer_data(); // Send the request for a new AJAX call. wp_send_json( $response ); } // Set importing author to the current user. // Fixes the [WARNING] Could not find the author for ... log warning messages. $current_user_obj = wp_get_current_user(); $data['post_author'] = $current_user_obj->user_login; return $data; } /** * Set current state of the content importer, so we can continue the import with new AJAX request. */ private function set_current_importer_data() { $data = array_merge( $this->ocdi->get_current_importer_data(), $this->get_importer_data() ); Helpers::set_ocdi_import_data_transient( $data ); } }
© 2022 - 2023 WIBUHAXOR V1 By Lutfifakee || Padang Blackhat