%PDF- %PDF-
Direktori : /var/www/pn/wp-content/plugins/elementor/core/app/modules/import-export/ |
Current File : //var/www/pn/wp-content/plugins/elementor/core/app/modules/import-export/iterator.php |
<?php namespace Elementor\Core\App\Modules\ImportExport; use Elementor\Core\Base\Base_Object; use Elementor\Modules\System_Info\Reporters\Server; if ( ! defined( 'ABSPATH' ) ) { exit; // Exit if accessed directly } abstract class Iterator extends Base_Object { const ZIP_ARCHIVE_MODULE_NOT_INSTALLED_KEY = 'zip-archive-module-not-installed'; const NO_WRITE_PERMISSIONS_KEY = 'no-write-permissions'; protected $temp_dir; private $current_archive_path = ''; abstract public function run(); protected function get_archive_file_path( $file_name ) { return $this->get_current_archive_path() . $file_name; } public function get_archive_file_full_path( $file_name ) { return $this->temp_dir . $this->get_archive_file_path( $file_name ); } public function get_current_archive_path() { return $this->current_archive_path; } public function set_current_archive_path( $path ) { if ( $path ) { $path .= '/'; } $this->current_archive_path = $path; } public function __construct( array $settings ) { if ( ! class_exists( '\ZipArchive' ) ) { throw new \Error( self::ZIP_ARCHIVE_MODULE_NOT_INSTALLED_KEY ); } $server = new Server(); $server_write_permissions = $server->get_write_permissions(); if ( $server_write_permissions['warning'] ) { throw new \Error( self::NO_WRITE_PERMISSIONS_KEY ); } $this->set_settings( $settings ); } }