Skip to content

Commit

Permalink
MVCExtension update v1.5
Browse files Browse the repository at this point in the history
  • Loading branch information
nielsoffice committed Aug 22, 2023
1 parent 84bf595 commit 29f9dc5
Showing 1 changed file with 95 additions and 76 deletions.
171 changes: 95 additions & 76 deletions app/bootstrap.php
Original file line number Diff line number Diff line change
Expand Up @@ -42,74 +42,94 @@
die;
}

/**
* Initialized core file framework config
* Register file config to be load
* Load App MVC Framework Helper
* @since 1.0.0
* @return MVC_Framework_For_WordPress
*/
if( !function_exists('func_file') ) {

/* Register file on config here */
$___requires = [
'config' => 'config/config'
,'configRegisterPath' => 'config/config-register-path'
,'configRegisterSettings' => 'config/config-register-settings'
];

function func_file($__rs) {
foreach ( $__rs as $require){
require_once( $require . '.php' );
}
}
func_file($___requires);
}
$mvc_extension_init = new Class {

public function __construct()
{

/**
* Default Autoloader
* # Primary or root folder
* namespace PHPAutoloader\Classes;
* # Sub folder
* namespace PHPAutoloader\Classes\system;
* Instantiate Default
* $PHPLoader = NEW \PHPAutoloader\Classes\system\DataClass();
* Instantiate Alias
* USE \PHPAutoloader\Classes\system\DataClass AS PHPLoader();
* Calling the classe instantiated
* $DataClass = new PHPLoader();
* @since 1.0.0
* @return MVC_Framework_For_WordPress
*/
spl_autoload_register(function($class) {

// File name space
$systemFileRequest = AUTH_DIRECTORY_FILE_REQUEST;

// base directory system file
$sourceFileRquest = BASE_DIR_SYSTEM_FILE;
if (strncmp($systemFileRequest, $class, strlen($systemFileRequest)) !== 0) return;

// Directory system data files
$dataRequest = $sourceFileRquest . str_replace('\\', '/', substr($class, strlen($systemFileRequest))) . PHP_EXTENSION;

// if the file exists, require it
(file_exists($dataRequest)) ? require $dataRequest : false;

});
if( method_exists($this,'func_file') )
{

/* Register file on config here */
$___requires = [
'config' => 'config/config'
,'configRegisterPath' => 'config/config-register-path'
,'configRegisterSettings' => 'config/config-register-settings'
];

$this->func_file( $___requires );

}

/**
* Default Autoloader
* # Primary or root folder
* namespace PHPAutoloader\Classes;
* # Sub folder
* namespace PHPAutoloader\Classes\system;
* Instantiate Default
* $PHPLoader = NEW \PHPAutoloader\Classes\system\DataClass();
* Instantiate Alias
* USE \PHPAutoloader\Classes\system\DataClass AS PHPLoader();
* Calling the classe instantiated
* $DataClass = new PHPLoader();
* @since 1.0.0
* @return MVC_Framework_For_WordPress
*/
spl_autoload_register(function($class)
{

// File name space
$systemFileRequest = AUTH_DIRECTORY_FILE_REQUEST;

// base directory system file
$sourceFileRquest = BASE_DIR_SYSTEM_FILE;
if (strncmp($systemFileRequest, $class, strlen($systemFileRequest)) !== 0) return;

// Directory system data files
$dataRequest = $sourceFileRquest . str_replace('\\', '/', substr($class, strlen($systemFileRequest))) . PHP_EXTENSION;

// if the file exists, require it
(file_exists($dataRequest)) ? require $dataRequest : false;

});

/**
* Request file to load Helper and Libraries folder
* If sync_class < function > files is NOT allowed
* If sync_function < class > files is NOT allowed
* Load Project Syncronized both mvc and wp helpers in function file !
* @since 1.0.0
* @return MVC_Framework_For_WordPress
*/
if( !function_exists('___syncLoadFunctions') ) {

function ___syncLoadFunctions( string|Settings $___directories = null , bool $sc = false ) : void {
if( method_exists($this,'___syncLoadFunctions') ) {

/* framework function application */
$this->___syncLoadFunctions( ___directories : Settings::framework_app_functions());

/* sync_functions Folder only accept a function NOT a class */
$this->___syncLoadFunctions( ___directories : Settings::sync_function(), sc : true);

/* sync_functions Folder only accept a class NOT a function */
$this->___syncLoadFunctions( ___directories : Settings::sync_class());

}

}

/**
* Initialized core file framework config
* Register file config to be load
* Load App MVC Framework Helper
* @since 1.0.0
* @return MVC_Framework_For_WordPress */
private function func_file( $__rs )
{

foreach ( $__rs as $require ){ require_once( $require . '.php' ); }

}

/**
* Request file to load Helper and Libraries folder
* If sync_class < function > files is NOT allowed
* If sync_function < class > files is NOT allowed
* Load Project Syncronized both mvc and wp helpers in function file !
* @since 1.0.0
* @return MVC_Framework_For_WordPress */
private function ___syncLoadFunctions( string|Settings $___directories = null , bool $sc = false ) : void {

if(!is_null($___directories)) {

Expand All @@ -118,24 +138,23 @@ function ___syncLoadFunctions( string|Settings $___directories = null , bool $sc
foreach ($___wineGetAllRun as $appRequest) {

if (!$appRequest->isDot() && $sc != true ) {
require_once( $___directories . $appRequest->getFilename() );
require ( $___directories . $appRequest->getFilename() );
} else if (!$appRequest->isDot() && $sc == true ) {
require( $___directories . $appRequest->getFilename() );
require_once( $___directories . $appRequest->getFilename() );
}

}
}
}

/* framework function application */
___syncLoadFunctions( ___directories : Settings::framework_app_functions());
/* sync_functions Folder only accept a function NOT a class */
___syncLoadFunctions( ___directories : Settings::sync_function(), sc : true);
/* sync_functions Folder only accept a class NOT a function */
___syncLoadFunctions( ___directories : Settings::sync_class());
};








}


0 comments on commit 29f9dc5

Please sign in to comment.