Example #1
0
 static function register($class, $view_path)
 {
     if (!is_a($class, Widget::class, true)) {
         throw new \Exception('Не является наследником класса ' . Widget::class);
     }
     $widget_name = $class::widget_name();
     if ($view_path) {
         Boot::register_view_path($view_path, $widget_name);
     }
     Twig::register_function($widget_name, function ($instance = null) use($class) {
         return $class::instance($instance);
     });
 }
 /**
  * @param  \Illuminate\Contracts\Auth\Access\Gate $gate
  *
  * @return void
  */
 public function boot()
 {
     //регистрация политик моделей
     //        foreach(Boot::policies_model() as $model_class => $policy_class) {
     //            $gate->policy($model_class, $policy_class);
     //        }
     //регистрация путей шаблонов для пространств имен
     foreach (Boot::view_paths() as $v) {
         $namespace = Arr::get($v, 'namespace');
         $view_path = Arr::get($v, 'view_path');
         $this->loadViewsFrom($view_path, $namespace);
     }
     //регистрация команд
     $this->commands(Boot::commands());
 }
Example #3
0
<?php

//регистрируем сервис-провайдер
Larakit\Boot::register_provider('TwigBridge\\ServiceProvider');
Larakit\Boot::register_alias('Twig', 'TwigBridge\\Facade\\Twig');
Larakit\Boot::register_command(\Larakit\Twig\CommandTwig::class);
Larakit\Boot::register_command(\Larakit\Twig\CommandNsView::class);
/*################################################################################
  middlewares
################################################################################*/
\Larakit\Boot::register_middleware(\Larakit\Twig\MiddlewareTwig::class);
//######################################################################
// регистрируем фильтры
//######################################################################
Larakit\Twig::register_filter('upper', function ($text) {
    return mb_strtoupper($text);
});
Larakit\Twig::register_filter('lower', function ($text) {
    return mb_strtolower($text);
});
Larakit\Twig::register_filter('int', function ($text) {
    return (int) $text;
});
//######################################################################
// регистрируем функции
//######################################################################
\Larakit\Twig::register_function('env', function ($key, $default = null) {
    return env($key, $default);
});
\Larakit\Twig::register_function('base64_decode', function ($data, $strict = null) {
    return base64_decode($data, $strict);
Example #4
0
<?php

use Larakit\Boot;
/*################################################################################
  providers
################################################################################*/
Boot::register_provider(\Larakit\LarakitBootServiceProvider::class);
if (!function_exists('lk_snake')) {
    function lk_snake($value, $delimiter = '_')
    {
        /**
         *
         * Переопределяем функцию snake из Illuminate\Support\Str для нормальной компиляции bootstrap/cache/compiled.php
         * (это необходимо для того, чтобы класс Str не загружался до подключения скомпилированного файла)
         *
         * @param string $value
         * @param string $delimiter
         *
         * @return string
         */
        if (!ctype_lower($value)) {
            $value = preg_replace('/\\s+/u', '', $value);
            $value = mb_strtolower(preg_replace('/(.)(?=[A-Z])/u', '$1' . $delimiter, $value));
        }
        return $value;
    }
}
if (!function_exists('lk_studly')) {
    function lk_studly($value)
    {
        /**