/** * */ public static function loadConfig($options) { $controllers = $options['controllers']; ptc_listen('app.start', function () use($controllers) { \helpers\Website\Manager::autoload($controllers); }, $options['listener_priority']); return $options; }
} /* STOP CODE COVERAGE ANALYSIS */ ptc_stop_coverage(); // PtcDebug::stopCoverage( ) /* STOP FUNCTION CALLS TRACING */ ptc_stop_trace(); // PtcDebug::stopTrace( ) /*** PTC HANDYMAN HELPERPS ****************************************************/ /* ADDING APPLICATION PATHS FOR LATER USAGE ( PtcHandMan::addAppPath( ) ) */ ptc_add_path(array('lib' => dirname(__FILE__) . '/autoloader-example-files')); /* ADDING CLASS FILES ( PtcHandMan::addFile( ) ) */ ptc_add_file(array('HmTestClassFile' => ptc_path('lib') . '/class-file.php', 'ns\\HmTestClassFile' => ptc_path('lib') . '/ns-class-file.php')); /* ADDING DIRECTORIES WITH CLASSES TO THE AUTOLOADER ( PtcHandMan::addDir( ) ) */ ptc_add_dir(ptc_path('lib')); // PtcHandMan::getAppPath( /* ADDING A NAMESPACED DIRECTORY WITH CLASSES TO THE AUTOLOADER */ ptc_add_dir(array('nsTest' => ptc_path('lib') . '/namespaceTest')); /* GETTING THE DIRECTORIES OF THE AUTOLOADER ( PtcHandyMan::getDirs( ) )*/ $dirs = ptc_dir(); // PtcHandyMan::getDirs( ) params: ( files , directories , ns ) ptc_log($dirs, 'getting all directories and files to be autoloaded'); //PtcDebug::bufferLog( ); /*** PTC EVENT HELPERPS ****************************************************/ /* ADDING EVENT LISTENERS ( PtcEvent::listen( ) ) */ ptc_listen('some.event', function ($data) { // do some stuff ptc_log($data, 'Called event with closure as call back'); // PtcDebug::bufferLog( ) }); /* FIRING EVENTS ( PtcEvent::fire( ) ) */ PtcEvent::fire('some.event', array('some data'));
/** * Application stop event * @param mixed $callback a valid callback */ public static function stop($callback) { return ptc_listen('app.stop', $callback); }