HEX
Server: nginx/1.18.0
System: Linux vps-9dcdb12e 5.15.0-176-generic #186-Ubuntu SMP Fri Mar 13 11:01:42 UTC 2026 x86_64
User: ubuntu (1000)
PHP: 8.1.2-1ubuntu2.24
Disabled: exec,passthru,shell_exec,system,proc_open,popen,curl_exec,curl_multi_exec,parse_ini_file,show_source
Upload Files
File: /var/www/mmsprzety.pl/wp-content/plugins/elementskit-lite/modules/widget-builder/widget-file.php
<?php

namespace ElementsKit_Lite\Modules\Widget_Builder;

use ElementsKit_Lite\Modules\Widget_Builder\Controls\Widget_Writer;

defined( 'ABSPATH' ) || exit;


class Widget_File {

	private static $instance;


	public function get_file_path() {

		$uploads    = wp_upload_dir();
		$upload_dir = $uploads['basedir'];
		$upload_dir = $upload_dir . '/elementskit/custom_widgets';

		if ( ! is_dir( $upload_dir ) ) {
			wp_mkdir_p( $upload_dir );
		}

		return $upload_dir;
	}


	public static function load_filesystem() {

		require_once ABSPATH . 'wp-admin/includes/file.php';

		WP_Filesystem();
	}


	public function create( $wObj, $id ) {

		self::load_filesystem();

		global $wp_filesystem;

		$writer = new Widget_Writer( $wObj, $id, 'elementskit-lite' );

		$writer->start_backing( $wp_filesystem );
		$writer->finish_backing( $wp_filesystem );

		return true;
	}


	public static function get_wp_filesystem_pointer() {

		self::load_filesystem();

		global $wp_filesystem;

		return $wp_filesystem;
	}

	public static function instance() {
		if ( self::$instance == null ) {
			self::$instance = new self();
		}

		return self::$instance;
	}
}