$20 GRAYBYTE WORDPRESS FILE MANAGER $39

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

/home/bravrvjk/hpgt.org/wp-content/plugins/elementskit-lite/widgets/lottie/

HOME
Current File : /home/bravrvjk/hpgt.org/wp-content/plugins/elementskit-lite/widgets/lottie//json-handler.php
<?php

namespace ElementsKit_Lite;

defined('ABSPATH') || exit;

class ElementsKit_Json_Handler {

	const MIME_TYPE = 'application/json';
	const EXT = 'json';


	/**
	 * The plugin instance.
	 */
	public static $instance = null;


	/**
	 * constructor function.
	 */
	public function __construct() {
		add_filter('upload_mimes', array($this, 'upload_mimes'));
		add_filter('wp_handle_upload_prefilter', array($this, 'wp_handle_upload_prefilter'));
		add_filter('wp_check_filetype_and_ext', array($this, 'wp_check_filetype_and_ext'), 10, 4);
	}


	/**
	 * Adds json file format
	 */
	public function upload_mimes($allowed_types) {
		$allowed_types[self::EXT] = self::MIME_TYPE;

		return $allowed_types;
	}


	public function wp_handle_upload_prefilter($file) {
		if(self::MIME_TYPE !== $file['type']) {
			return $file;
		}

		$ext = pathinfo($file['name'], PATHINFO_EXTENSION);

		if(self::EXT !== $ext) {
			$file['error'] = sprintf('%1a %2s $3s',
				esc_html__('The uploaded', 'elementskit-lite'),
				$file['name'],
				esc_html__('file is not supported. Please upload a valid JSON file', 'elementskit-lite'),
			);

			return $file;
		}

		return $file;
	}


	public function wp_check_filetype_and_ext($data, $file, $filename, $mimes) {
		if(!empty($data['ext']) && !empty($data['type'])) {
			return $data;
		}

		$filetype = wp_check_filetype($filename, $mimes);

		if(self::EXT === $filetype['ext']) {
			$data['ext']  = self::EXT;
			$data['type'] = self::MIME_TYPE;
		}

		return $data;
	}


	/**
	 * Instance.
	 */
	public static function instance() {
		if(is_null(self::$instance)) {
			// Fire when ElementsKit_Lite instance.
			self::$instance = new self();
		}

		return self::$instance;
	}
}

// Run the instance.
ElementsKit_Json_Handler::instance();


Current_dir [ WRITEABLE ] Document_root [ WRITEABLE ]


[ Back ]
NAME
SIZE
LAST TOUCH
USER
CAN-I?
FUNCTIONS
..
--
16 Mar 2026 1.56 AM
bravrvjk / bravrvjk
0755
assets
--
16 Mar 2026 1.56 AM
bravrvjk / bravrvjk
0755
json-handler.php
1.728 KB
28 Nov 2023 5.47 PM
bravrvjk / bravrvjk
0644
lottie-handler.php
0.857 KB
17 Jan 2023 10.06 AM
bravrvjk / bravrvjk
0644
lottie.php
14.986 KB
12 Aug 2024 4.02 PM
bravrvjk / bravrvjk
0644

GRAYBYTE WORDPRESS FILE MANAGER @ 2025 CONTACT ME
Static GIF