$35 GRAYBYTE WORDPRESS FILE MANAGER $65

SERVER : premium201.web-hosting.com #1 SMP Wed Mar 26 12:08:09 UTC 2025
SERVER IP : 104.21.43.35 | ADMIN IP 216.73.216.180
OPTIONS : CRL = ON | WGT = ON | SDO = OFF | PKEX = OFF
DEACTIVATED : mail

/home/bravrvjk/public_html/wp-content__57d57c5/plugins/litespeed-cache/src/

HOME
Current File : /home/bravrvjk/public_html/wp-content__57d57c5/plugins/litespeed-cache/src//import.cls.php
<?php
// phpcs:ignoreFile

/**
 * The import/export class.
 *
 * @since       1.8.2
 */

namespace LiteSpeed;

defined('WPINC') || exit();

class Import extends Base {

	protected $_summary;

	const TYPE_IMPORT = 'import';
	const TYPE_EXPORT = 'export';
	const TYPE_RESET  = 'reset';

	/**
	 * Init
	 *
	 * @since  1.8.2
	 */
	public function __construct() {
		Debug2::debug('Import init');

		$this->_summary = self::get_summary();
	}

	/**
	 * Export settings to file
	 *
	 * @since 1.8.2
	 * @since 7.3 added download content type
	 * @access public
	 */
	public function export( $only_data_return = false ) {
		$raw_data = $this->get_options(true);

		$data = array();
		foreach ($raw_data as $k => $v) {
			$data[] = \json_encode(array( $k, $v ));
		}

		$data = implode("\n\n", $data);

		if ($only_data_return) {
			return $data;
		}

		$filename = $this->_generate_filename();

		// Update log
		$this->_summary['export_file'] = $filename;
		$this->_summary['export_time'] = time();
		self::save_summary();

		Debug2::debug('Import: Saved to ' . $filename);

		@header('Content-Type: application/octet-stream');
		@header('Content-Disposition: attachment; filename=' . $filename);
		echo $data;

		exit();
	}

	/**
	 * Import settings from file
	 *
	 * @since  1.8.2
	 * @access public
	 */
	public function import( $file = false ) {
		if (!$file) {
			if (empty($_FILES['ls_file']['name']) || substr($_FILES['ls_file']['name'], -5) != '.data' || empty($_FILES['ls_file']['tmp_name'])) {
				Debug2::debug('Import: Failed to import, wrong ls_file');

				$msg = __('Import failed due to file error.', 'litespeed-cache');
				Admin_Display::error($msg);

				return false;
			}

			$this->_summary['import_file'] = $_FILES['ls_file']['name'];

			$data = file_get_contents($_FILES['ls_file']['tmp_name']);
		} else {
			$this->_summary['import_file'] = $file;

			$data = file_get_contents($file);
		}

		// Update log
		$this->_summary['import_time'] = time();
		self::save_summary();

		$ori_data = array();
		try {
			// Check if the data is v4+ or not
			if (strpos($data, '["_version",') === 0) {
				Debug2::debug('[Import] Data version: v4+');
				$data = explode("\n", $data);
				foreach ($data as $v) {
					$v = trim($v);
					if (!$v) {
						continue;
					}
					list($k, $v)  = \json_decode($v, true);
					$ori_data[$k] = $v;
				}
			} else {
				$ori_data = \json_decode(base64_decode($data), true);
			}
		} catch (\Exception $ex) {
			Debug2::debug('[Import] ❌ Failed to parse serialized data');
			return false;
		}

		if (!$ori_data) {
			Debug2::debug('[Import] ❌ Failed to import, no data');
			return false;
		} else {
			Debug2::debug('[Import] Importing data', $ori_data);
		}

		$this->cls('Conf')->update_confs($ori_data);

		if (!$file) {
			Debug2::debug('Import: Imported ' . $_FILES['ls_file']['name']);

			$msg = sprintf(__('Imported setting file %s successfully.', 'litespeed-cache'), $_FILES['ls_file']['name']);
			Admin_Display::success($msg);
		} else {
			Debug2::debug('Import: Imported ' . $file);
		}

		return true;
	}

	/**
	 * Reset all configs to default values.
	 *
	 * @since  2.6.3
	 * @access public
	 */
	public function reset() {
		$options = $this->cls('Conf')->load_default_vals();

		$this->cls('Conf')->update_confs($options);

		Debug2::debug('[Import] Reset successfully.');

		$msg = __('Reset successfully.', 'litespeed-cache');
		Admin_Display::success($msg);
	}

	/**
	 * Generate the filename to export
	 *
	 * @since  1.8.2
	 * @access private
	 */
	private function _generate_filename() {
		// Generate filename
		$parsed_home = parse_url(get_home_url());
		$filename    = 'LSCWP_cfg-';
		if (!empty($parsed_home['host'])) {
			$filename .= $parsed_home['host'] . '_';
		}

		if (!empty($parsed_home['path'])) {
			$filename .= $parsed_home['path'] . '_';
		}

		$filename = str_replace('/', '_', $filename);

		$filename .= '-' . date('Ymd_His') . '.data';

		return $filename;
	}

	/**
	 * Handle all request actions from main cls
	 *
	 * @since  1.8.2
	 * @access public
	 */
	public function handler() {
		$type = Router::verify_type();

		switch ($type) {
			case self::TYPE_IMPORT:
            $this->import();
				break;

			case self::TYPE_EXPORT:
            $this->export();
				break;

			case self::TYPE_RESET:
            $this->reset();
				break;

			default:
				break;
		}

		Admin::redirect();
	}
}


Current_dir [ WRITEABLE ] Document_root [ WRITEABLE ]


[ Back ]
NAME
SIZE
LAST TOUCH
USER
CAN-I?
FUNCTIONS
..
--
6 Apr 2026 8.59 AM
bravrvjk / bravrvjk
0755
cdn
--
6 Apr 2026 8.59 AM
bravrvjk / bravrvjk
0755
data_structure
--
6 Apr 2026 8.59 AM
bravrvjk / bravrvjk
0755
activation.cls.php
17.308 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
admin-display.cls.php
48.469 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
admin-settings.cls.php
11.116 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
admin.cls.php
6.129 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
api.cls.php
10.363 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
avatar.cls.php
8.652 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
base.cls.php
37.656 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
cdn.cls.php
15.918 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
cloud-auth-callback.trait.php
10.433 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
cloud-auth-ip.trait.php
4.329 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
cloud-auth.trait.php
9.383 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
cloud-misc.trait.php
10.324 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
cloud-node.trait.php
5.947 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
cloud-request.trait.php
19.685 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
cloud.cls.php
7.324 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
conf.cls.php
19.531 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
control.cls.php
24.349 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
core.cls.php
20.971 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
crawler-map.cls.php
19.408 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
crawler.cls.php
44.722 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
css.cls.php
17.773 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
data.cls.php
22.205 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
data.upgrade.func.php
5.719 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
db-optm.cls.php
15.349 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
debug2.cls.php
18.4 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
doc.cls.php
5.446 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
error.cls.php
7.354 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
esi.cls.php
27.182 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
file.cls.php
10.569 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
guest.cls.php
2.755 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
gui.cls.php
36.573 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
health.cls.php
2.831 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
htaccess.cls.php
29.811 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
img-optm-manage.trait.php
30.846 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
img-optm-pull.trait.php
22.102 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
img-optm-send.trait.php
21.896 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
img-optm.cls.php
5.257 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
import.cls.php
4.292 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
import.preset.cls.php
5.501 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
lang.cls.php
17.021 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
localization.cls.php
4.026 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
media.cls.php
44.084 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
metabox.cls.php
5.292 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
object-cache-wp.cls.php
18.816 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
object-cache.cls.php
20.947 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
object.lib.php
14.164 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
optimize.cls.php
38.641 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
optimizer.cls.php
10.502 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
placeholder.cls.php
17.928 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
purge.cls.php
34.409 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
report.cls.php
6.119 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
rest.cls.php
9.083 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
root.cls.php
14.288 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
router.cls.php
20.758 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
str.cls.php
3.082 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
tag.cls.php
9.259 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
task.cls.php
7.05 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
tool.cls.php
4.168 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
ucss.cls.php
16.347 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
utility.cls.php
26.014 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
vary.cls.php
21.33 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644
vpi.cls.php
9.375 KB
1 Apr 2026 8.54 PM
bravrvjk / bravrvjk
0644

GRAYBYTE WORDPRESS FILE MANAGER @ 2025 CONTACT ME
Static GIF