HEX
Server: Apache/2.4.41 (Ubuntu)
System: Linux ip-172-31-42-149 5.15.0-1084-aws #91~20.04.1-Ubuntu SMP Fri May 2 07:00:04 UTC 2025 aarch64
User: ubuntu (1000)
PHP: 7.4.33
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: //proc/self/cwd/wp-content/plugins/extensive-vc-addon/shortcodes/shortcodes-class.php
<?php

namespace ExtensiveVC\Shortcodes;

if ( ! defined( 'ABSPATH' ) ) {
	exit; // Exit if accessed directly
}

if ( ! class_exists( 'ShortcodesClass' ) ) {
	class ShortcodesClass {
		
		/**
		 * Singleton variables
		 */
		private static $instance;
		private $loadedShortcodes = array();
		
		/**
		 * Constructor
		 */
		private function __construct() {
		}
		
		/**
		 * Get the instance of ShortcodesClass
		 *
		 * @return self
		 */
		public static function getInstance() {
			if ( is_null( self::$instance ) ) {
				self::$instance = new self();
			}
			
			return self::$instance;
		}
		
		/**
		 * Cloning disabled
		 */
		private function __clone() {
		}
		
		/**
		 * Serialization disabled
		 */
		private function __sleep() {
		}
		
		/**
		 * De-serialization disabled
		 */
		private function __wakeup() {
		}
		
		/**
		 * Getter for private param
		 *
		 * @return array
		 */
		public function getLoadedShortcodes() {
			return $this->loadedShortcodes;
		}
		
		/**
		 * Setter for private param
		 */
		public function setLoadedShortcodes( $key, $value ) {
			$this->loadedShortcodes[ $key ] = $value;
		}
		
		/**
		 * Adds all shortcodes
		 */
		private function addShortcodes() {
			$shortcodes = apply_filters( 'extensive_vc_filter_add_vc_shortcode', $shortcodes = array() );
			
			foreach ( $shortcodes as $key => $value ) {
				if ( ! array_key_exists( $key, $this->getLoadedShortcodes() ) ) {
					$this->setLoadedShortcodes( $key, $value );
				}
			}
		}
		
		/**
		 * Loops through added shortcodes and calls render method of each shortcode object
		 */
		function load() {
			$this->addShortcodes();
			
			$shortcodes = $this->getLoadedShortcodes();
			
			ksort( $shortcodes );
			
			foreach ( $shortcodes as $key => $value ) {
				add_shortcode( $key, $value );
			}
		}
	}
}