File: /var/www/html/bwcdev/wp-content/plugins/tracking-code-manager/autoload.php
<?php
spl_autoload_register( 'tcmp_autoload' );
function tcmp_autoload( $class ) {
$root = dirname( __FILE__ ) . '/includes/classes/';
tcmp_autoload_root( $root, $class );
}
function tcmp_autoload_root( $root, $class ) {
$slash = substr( $root, strlen( $root ) - 1 );
if ( '/' !== $slash && '\\' !== $slash ) {
$root .= '/';
}
$name = str_replace( TCMP_PLUGIN_PREFIX, '', $class );
if ( strpos( $class, TCMP_PLUGIN_PREFIX ) === false ) {
//autoload only plugin classes
return;
}
$h = opendir( $root );
while ( $file = readdir( $h ) ) {
if ( is_dir( $root . $file ) && '.' !== $file && '..' !== $file ) {
tcmp_autoload_root( $root . $file, $class );
} elseif ( file_exists( $root . $name . '.php' ) ) {
include_once( $root . $name . '.php' );
} elseif ( file_exists( $root . $class . '.php' ) ) {
include_once( $root . $class . '.php' );
}
}
}
function tcmp_include_php( $root ) {
$h = opendir( $root );
$slash = substr( $root, strlen( $root ) - 1 );
if ( '/' !== $slash && '\\' !== $slash ) {
$root .= '/';
}
while ( $file = readdir( $h ) ) {
if ( is_dir( $root . $file ) && '.' !== $file && '..' !== $file ) {
tcmp_include_php( $root . $file );
} elseif ( strlen( $file ) > 5 ) {
$ext = '.php';
$length = strlen( $ext );
$start = $length * -1; //negative
if ( strcasecmp( substr( $file, $start ), $ext ) === 0 ) {
include_once( $root . $file );
}
}
}
}