예제 #1
0
 public static function registerServices()
 {
     Container::register('form_generator', function () {
         require_once 'vendor/php-form-generator/fg/load.php';
     });
     Container::register('pdf', function () {
         include Container::get('params')->getMPdfLocation();
         $pdf = new Pdf();
         //left, right, top, bottom
         $pdf->getMPDF(new mPDF('utf-8', 'A4', '8', '', 25, 15, 20, 20, 10, 10));
         return $pdf;
     });
     Container::register('errors', function () {
         return Errors::getInstance();
     });
     Container::register('params', function () {
         return Parameters::getInstance();
     });
     Container::register('twig', function () {
         $loader = new Twig_Loader_Filesystem(Container::get('params')->getViewDir());
         $cacheConfJson = file_get_contents(Container::get('params')->getConfigDir() . '/' . 'cache.json');
         $cacheConf = json_decode($cacheConfJson, true);
         if ($cacheConf['enable_cache']) {
             return new Nmzd_Twig_Environment($loader, array('cache' => Container::get('params')->getCacheDir()));
         } else {
             return new Nmzd_Twig_Environment($loader);
         }
     });
     Container::register('twigStr', function () {
         $loader = new Twig_Loader_String();
         $twig = new Twig_Environment($loader);
         $function = new Twig_SimpleFunction("form_text", function ($name, $id, $value = "", $class = "form_text") {
             require_once 'Src/Modules/Ajax/Libs/PhpLiveX/PHPLiveX.php';
             $ajax = new \PHPLiveX();
             require_once 'Src/Modules/Ajax/Controllers/MainController.php';
             $myClass = new \Src\Modules\Ajax\Controllers\MainController();
             $ajax->AjaxifyObjectMethods(array('myClass' => array('validateEmail')));
             $ajax->Run();
             echo '<input type="text" name="' . $name . '" id="' . $id . '" value="' . $value . '" class="' . $class . '">';
         });
         $twig->addFunction($function);
         return $twig;
     });
     Container::register('theme_settings', function () {
         $themeData = Container::get('params')->getThemeData();
         require_once 'Src/Views/Themes/' . $themeData['theme'] . '/ThemeSettings.php';
         $themeSettings = 'Src\\Views\\Themes\\' . $themeData['theme'] . '\\ThemeSettings';
         $themeSettingsInstance = new $themeSettings();
         $themeSettings = $themeSettingsInstance->getSettings();
         return $themeSettings;
     });
     Container::register('router', function () {
         return new \App\Core\Router();
     });
 }
예제 #2
0
 /**
  * Defines module services in service container. Fires on every request.
  */
 public function init()
 {
     Container::register('Pdf/PdfConfigModel', function () {
         return new \Src\Modules\Pdf\Models\PdfConfigModel();
     });
     Container::register('Pdf/PdfTemplateModel', function () {
         return new \Src\Modules\Pdf\Models\PdfTemplateModel();
     });
     Container::register('Pdf/PdfEntityModel', function () {
         return new \Src\Modules\Pdf\Models\PdfEntityModel();
     });
 }
예제 #3
0
 /**
  * Defines module services in service container. Fires on every request.
  */
 public function init()
 {
     Container::register('Nmkd/DisciplineModel', function () {
         return new \Src\Modules\Nmkd\Models\DisciplineModel();
     });
     Container::register('Nmkd/LabModel', function () {
         return new \Src\Modules\Nmkd\Models\LabModel();
     });
     Container::register('Nmkd/TypesModel', function () {
         return new \Src\Modules\Nmkd\Models\TypesModel();
     });
     Container::register('Nmkd/NmkdModel', function () {
         return new \Src\Modules\Nmkd\Models\NmkdModel();
     });
     Container::register('Nmkd/TestModel', function () {
         return new \Src\Modules\Nmkd\Models\TestModel();
     });
 }
예제 #4
0
 public function init()
 {
     Container::register('Main/MenuModel', function () {
         return new \Src\Modules\Main\Models\MenuModel();
     });
     Container::register('Main/MenuItemModel', function () {
         return new \Src\Modules\Main\Models\MenuItemModel();
     });
     /*Container::get('params')->setMenus('main_menu', array(
           'home' => array(
               'title' => 'Головна',
               'uri' => Router::buildUrl('/'),
               'weight' => 0,
           ),
       ));*/
     /*Container::get('params')->registerMenu('nmkd_menu', array(
           'nmkd' => array(
               'title' => 'Головна',
               'uri' => Router::buildUrl('/'),
               'weight' => 0,
           ),
       ));*/
 }