* @copyright 2007-2011 PrestaShop SA * @version Release: $Revision: 6594 $ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) * International Registered Trademark & Property of PrestaShop SA */ class ControllerFactoryCore { public static function includeController($className) { if (!class_exists($className, false)) { require_once(dirname(__FILE__).'/../controllers/'.$className.'.php'); if (file_exists(dirname(__FILE__).'/../override/controllers/'.$className.'.php')) require_once(dirname(__FILE__).'/../override/controllers/'.$className.'.php'); else { $coreClass = new ReflectionClass($className.'Core'); if ($coreClass->isAbstract()) eval('abstract class '.$className.' extends '.$className.'Core {}'); else eval('class '.$className.' extends '.$className.'Core {}'); } } } public static function getController($className, $auth = false, $ssl = false) { ControllerFactory::includeController($className); return new $className($auth, $ssl); } }