HEX
Server: Apache
System: Linux webd011.cluster130.gra.hosting.ovh.net 5.15.167-ovh-vps-grsec-zfs-classid #1 SMP Tue Sep 17 08:14:20 UTC 2024 x86_64
User: ezpgggd (105871)
PHP: 7.4.33
Disabled: _dyuweyrj4,_dyuweyrj4r,dl
Upload Files
File: /home/ezpgggd/www/wp-content/plugins/modula/autoloader.php
<?php
spl_autoload_register(
	function ( $class_name ) {
		if ( strpos( $class_name, 'Modula' ) === false && strpos( $class_name, 'Wpchill' ) === false ) {
			return;
		}

		static $class_map = null;

		if ( null === $class_map ) {
			$base_dir  = untrailingslashit( plugin_dir_path( __FILE__ ) . 'includes' );
			$class_map = modula_build_class_map( $base_dir );
		}

		$class_key = strtolower( $class_name );

		if ( isset( $class_map[ $class_key ] ) ) {
			require $class_map[ $class_key ];
		}
	}
);

function modula_build_class_map( $base_dir ) {
	$class_map = array();
	$iterator  = new RecursiveIteratorIterator(
		new RecursiveDirectoryIterator( $base_dir, RecursiveDirectoryIterator::SKIP_DOTS )
	);

	foreach ( $iterator as $file ) {
		if ( $file->isFile() && strpos( $file->getFilename(), 'class-' ) === 0 ) {
			$class_name               = str_replace(
				array( 'class-', '.php' ),
				array( '', '' ),
				strtolower( $file->getFilename() )
			);
			$class_name               = str_replace( '-', '_', $class_name );
			$class_map[ $class_name ] = $file->getPathname();
		}
	}

	return $class_map;
}