Uruchamianie bootstrapa - brak front kontrolera
519222
public function run()
    {
        $request = new \Mmi\Http\Request;
        //ustawianie domyślnego języka jeśli istnieje
        if (isset(\App\Registry::$config->languages[0])) {
            $request->lang = \App\Registry::$config->languages[0];
        }
        $request->setModuleName('mmi')
            ->setControllerName('index')
            ->setActionName('index');
        //ustawianie żądania
        FrontController::getInstance()->setRequest($request)
            ->getView()->setRequest($request);
        FrontController::getInstance()->getResponse()->clearHeaders();
    }
1355763
protected function bootstrapContainer()
    {
        static::setInstance($this);

        $this->instance('app', $this);
        $this->instance('Bugotech\Foundation\Application', $this);

        $this->registerContainerAliases();
        $this->registerBinders();
        $this->registerContainerBase();

        $this->configure('app');
        $this->configure('paths');
    }
1327822
function bootstrap(cb) {
	/**
	 * Copies a file from "from" to "to", and replaces template vars in filenames and file content.
	 * @param {String} from  from-path
	 * @param {String} to    to-path
	 */

	function copy(from, to) {
		var mode = fs.statSync(from).mode;
		var src = fs.readFileSync(from, 'utf8');

		var re = /%([0-9A-Z\_]+)%/g;

		function replacer(_, match) {
			// We support the %PERIOD% variable to allow .gitignore to be created. The reason:
			// npm "kindly" ignores .gitignore files, so we have to use this workaround.
			// More info: https://github.com/isaacs/npm/issues/2958

			if (match === 'PERIOD') {
				return '.';
			}

			return templateRules.replace(match);
		}

		try {
			to = to.replace(re, replacer);
			src = src.replace(re, replacer);
		} catch (error) {
			pretty.warning(error + ' in: ' + from);

			// skip this file
			return;
		}

		var fd = fs.openSync(to, 'w', mode);
		fs.writeSync(fd, src);
		fs.closeSync(fd);
	}

	async.series([
		function (callback) {
			// prompt for information that the template engine needs
			templateRules.prepare(callback);
		},
		function (callback) {
			function tpl(filePath) {
				copy(path.join(magePath, projectTemplatePath, filePath), path.join(appPath, filePath));
			}

			function mkdir(folderPath) {
				mkdirpSync(path.join(appPath, folderPath));
			}

			var found = find(path.join(magePath, projectTemplatePath));

			found.folders.forEach(mkdir);
			found.files.forEach(tpl);

			callback();
		},
		function (callback) {
			pretty.h2('Install additional project dependencies');

			spawn('npm', ['install'], {
				stdio: ['ignore', process.stdout, process.stderr],
				cwd: appPath
			}).on('close', callback);
		},
		function (callback) {
			pretty.h2('Git repository');

			var gitDir;

			try {
				gitDir = fs.readdirSync(path.join(appPath, '.git'));
			} catch (e) {

			}

			if (gitDir) {
				return callback();
			}

			ask('Would you like me to set up Git for this game?', 'yes', function (answer) {
				if (answer.toLowerCase() !== 'yes') {
					return callback();
				}

				pretty.h2('Setting up git');

				var appRepoUrl = templateRules.replace('APP_REPO');

				async.series([
					// exec(cmd, args, cwd, cb)

					function (callback) {
						pretty.info('git init');

						exec('git', ['init'], null, callback);
					},
					function (callback) {
						if (!appRepoUrl) {
							return callback();
						}

						pretty.info('Adding your GitHub URL as remote "origin" ' +
							'(git remote add origin "' + appRepoUrl + '")');

						exec('git', ['remote', 'add', 'origin', appRepoUrl], null, callback);
					},
					function (callback) {
						pretty.info('Staging files for first commit (git add .)');

						exec('git', ['add', '.'], null, callback);
					},
					function (callback) {
						pretty.info('First commit (git commit)');

						var message = 'Automated first commit (by MAGE installer).';

						exec('git', ['commit', '-m', message], null, callback);
					},
					function (callback) {
						pretty.info('Creating a "develop" branch (git checkout -b develop)');

						exec('git', ['checkout', '-b', 'develop'], null, callback);
					},
					function (callback) {
						if (!appRepoUrl) {
							return callback();
						}

						ask('Would you like me to push the first commit to GitHub?', 'yes', function (answer) {
							if (answer.toLowerCase() !== 'yes') {
								return callback();
							}

							pretty.info('Pushing to remote "origin" (git push origin develop master)');

							exec('git', ['push', 'origin', 'develop', 'master'], null, callback);
						});
					}
				], callback);
			});
		},
		function (callback) {
			var msg = [
				'All done! You can now start your game in the foreground by running:',
				'',
				chalk.green('  cd ' + projectName),
				chalk.green('  npm run develop'),
				'',
				'For more details, see ' + chalk.green('npm run help') + '.'
			];

			pretty.chromify(chalk.yellow(msg.join(EOL)), '❖', chalk.magenta.bold);
			process.nextTick(callback);
		}
	], cb);
}
527239
public function template($input)
    {
        //buforowanie renderowanie szablonu
        $input = preg_replace_callback('/\{\'([a-zA-Z\-\/]+)\'\}/', [&$this, '_render'], $input);

        /**
         * obsługa klamr
         * obsługa zakończeń linii windows
         * komentarzy
         */
        $input = str_replace([
            '{{$',
            '{{',
            '}}',
            "\r\n",
            '{*',
            '*}',
        ], [
            '__-angular-controller-__',
            '__-angular-start-__',
            '__-angular-end-__',
            "\n",
            '<?php /*',
            '*/ ?>',
        ], $input);

        //buforowanie linkowanie aplikacji
        $input = preg_replace_callback('/\{@([\*]+)?(.[^@\^]+)?[\^]?(.[^@\^]+)?@\}/', [&$this, '_url'], $input);

        //zmiana zmiennych obiektowych w linkach np. $request->test
        $input = preg_replace_callback('/%7B((%3E|%28|%29|%24)?([a-zA-Z\.\-\_\[\]\'\"\(\)]+)?)+%7D/', [&$this, '_routerLinks'], $input);

        //zmiana zmiennych skalarnych lub tablicowych w linkach np. $requestTest
        $input = preg_replace('/%7B%24([a-z0-9A-Z\.\-\_\[\]\'\"\(\)]+)%7D/', '{$$1}', $input);

        //buforowanie tłumaczeń
        $input = preg_replace_callback('/\{\#(.[^#]+)#\}/', [&$this, '_translate'], $input);

        //buforowanie wstawień tekstów statycznych
        $input = preg_replace_callback('/\{\=(.[^=]+)\=\}/', [&$this, '_text'], $input);

        //filtry na zmiennych (filtry widoku)
        $input = preg_replace_callback('/(\$[a-z0-9_\[\]\'\"\-\>]+)(\|(.[^}^{^)^(]+))+/i', [&$this, '_filter'], $input);

        //obsługa tagów Mmi
        $input = preg_replace([
            '/\$([a-z0-9_-]+)/i', //$zmienna -> $this->zmienna
            '/\{\/(if|for|foreach|while)\}/', //końcówki struktur językowych
            '/\{(break|continue)\}/', //break continue
            '/\{return\}/', //wyjście
            '/\{(if|elseif|foreach|for|while)([^\}]+)\}/', //struktury językowe
            '/([a-z0-9_-]+)\(/i', //funkcja( -> $this->funkcja(
            '/\$this->(array)\(/', //naprawianie array
            '/\$this->([a-zA-Z0-9_-]+)\.([a-zA-Z0-9_-]+)\.([a-zA-Z0-9_-]+)\.([a-zA-Z0-9_-]+)/i', //tabele po kropce
            '/\$this->([a-zA-Z0-9_-]+)\.([a-zA-Z0-9_-]+)\.([a-zA-Z0-9_-]+)/i', //tabele po kropce
            '/\$this->([a-zA-Z0-9_-]+)\.([a-zA-Z0-9_-]+)/i', //tabele po kropce
            '/\->\$this->/', //naprawianie metod
            '/\:\:\$this->/', //naprawianie staticów
            '/\{else\}/', //else
            '/\{\$this->([a-z0-9_-]+)([\s]?\=)/i', //przypisanie wartości do zmiennej
            '/\{\$this->([a-z0-9_-]+)([\s]?\+\=|\-\=|\+\+|\-\-|\*\=)/i', //przypisanie wartości do zmiennej
            '/\{\$this->([a-z0-9_-]+)/i', //wyświetlanie pól
            '/\{\$this->php_([a-z0-9_-]+)\(/i', //wyświetlanie funkcji php
            '/\$this->php_([a-z0-9_-]+)\(/i', //zamiana na funkcje php wbudowane
            '/\{\$this->system_([a-z0-9_-]+)\(/i', //wyświetlanie funkcji php
            '/\$this->system_([a-z0-9_-]+)\(/i', //zamiana na funkcje php wbudowane
            '/\{\$this->([a-z0-9_-]+)\(/i', //wyświetlanie helperów
            '/([a-z0-9)\]\'\+\-])}/i', //obsługa zamknięcia
            '/\{\$\$this->([a-z0-9_-]+)/i', //$nazwa -> $this->{$this->nazwa}
        ], [
            '$this->${1}',
            '<?php end${1}; ?>',
            '<?php ${1}; ?>',
            '<?php return; ?>',
            '<?php ${1} (${2}): ?>',
            '$this->${1}(',
            '${1}(',
            '$this->${1}[\'${2}\'][\'${3}\'][\'${4}\']',
            '$this->${1}[\'${2}\'][\'${3}\']',
            '$this->${1}[\'${2}\']',
            '->',
            '::$',
            '<?php else: ?>',
            '<?php \$this->${1} ${2} ',
            '<?php \$this->${1}${2}',
            '<?php echo \$this->${1}',
            '<?php echo ${1}(',
            '${1}(',
            '<?php echo ${1}(',
            '${1}(',
            '<?php echo \$this->${1}(',
            '${1}; ?>',
            '<?php echo \$this->{$this->${1}}',
        ], $input);

        /**
         * first i last w pętlach foreach
         * uwaga: source i count są zmiennymi lokalnymi niewidocznymi z poziomu view
         */
        $input = preg_replace([
            '/\<\?php foreach[\s]+?\([\s]+?name=[\'\"]?([a-z0-9]+)[\'\"]? (\$this[\>\(\)a-z0-9_\-\[\]\'\"]+) as (\$this->[a-z0-9_\-]+)\):/i',
            '/\<\?php foreach[\s]+?\([\s]+?name=[\'\"]?([a-z0-9]+)[\'\"]? (\$this[\>\(\)a-z0-9_\-\[\]\'\"]+) as (\$this->[a-z0-9_\-]+) => (\$this->[a-z0-9_\-]+)\):/i'
        ], [
            '<?php $_${1}Source = ${2}; $_${1}Count = count((array)$_${1}Source); $this->_${1}Index = 0; foreach ( $_${1}Source as ${3}): $this->_${1}Index++; $this->_${1}First = false; $this->_${1}Last = false; if ($this->_${1}Index == 1) { $this->_${1}First = true; } else { $this->_${1}First = false; } if ($this->_${1}Index == $_${1}Count) { $this->_${1}Last = true; } else { $this->_${1}Last = false; } if($this->_${1}Index % 2 == 0) { $this->_${1}Even = true; } else { $this->_${1}Even = false; }',
            '<?php $_${1}Source = ${2}; $_${1}Count = count((array)$_${1}Source); $this->_${1}Index = 0; foreach ( $_${1}Source as ${3} => ${4}): $this->_${1}Index++; $this->_${1}First = false; if ($this->_${1}Index == 1) { $this->_${1}First = true; } else { $this->_${1}First = false; } if ($this->_${1}Index == $_${1}Count) { $this->_${1}Last = true; } else { $this->_${1}Last = false; }'
        ], $input);

        /**
         * odzyskuje klamry
         */
        $input = str_replace([
            '__-angular-controller-__',
            '__-angular-start-__',
            '__-angular-end-__',
        ], [
            '{{$',
            '{{',
            '}}',
        ], $input);

        //fix dla funkcji JS'owych - badanie krótkich pod-ciągów
        $output = '';
        $php = false;
        for ($i = 0, $length = strlen($input); $i < $length; $i++) {
            if ($length > ($i + 5) && substr($input, $i, 5) == '<?php') {
                $php = true;
            } elseif ($length > ($i + 2) && substr($input, $i, 2) == '?>') {
                $php = false;
            }
            if (!$php && $length > ($i + 7) && substr($input, $i, 7) == '$this->') {
                $i += 7;
            }
            $output .= $input[$i];
        }
        return $output;
    }
935143
public function bootstrap()
    {
        $app = Zilf::$app;
        $this->checkForSpecificEnvironmentFile($app);

        try {
            (new Dotenv($app->environmentPath(), $app->environmentFile()))->load();
        } catch (InvalidPathException $e) {
            //
        } catch (InvalidFileException $e) {
            die('The environment file is invalid: ' . $e->getMessage());
        }
    }
981102
public function bootstrap()
    {
        # set application timezone
        date_default_timezone_set($this->app->config->getApp('timezone'));

        # set application error log path
        ini_set("error_log", $this->app->logFilePath());

        # set application session name
        ini_set('session.name', 'planet_session');

        # set application session storage path
        session_save_path(realpath($this->app->sessionDirectoryPath()));
    }
358888
public function initYiiStrap()
    {
        // check that we are in a web application
        if (!(Yii::app() instanceof CWebApplication))
            return;
        // and in this module
        $route = explode('/', Yii::app()->urlManager->parseUrl(Yii::app()->request));
        if ($route[0] != $this->id)
            return;
        // and yiiStrap is not configured
        if (Yii::getPathOfAlias('bootstrap') && file_exists(Yii::getPathOfAlias('bootstrap.helpers') . '/TbHtml.php'))
            return;
        // try to guess yiiStrapPath
        if ($this->yiiStrapPath === null)
            $this->yiiStrapPath = Yii::getPathOfAlias('vendor.crisu83.yiistrap');
        // check for valid path
        if (!realpath($this->yiiStrapPath))
            return;
        // setup yiiStrap components
        Yii::setPathOfAlias('bootstrap', realpath($this->yiiStrapPath));
        Yii::import('bootstrap.helpers.*');
        Yii::import('bootstrap.widgets.*');
        Yii::import('bootstrap.behaviors.*');
        Yii::import('bootstrap.form.*');
        Yii::app()->setComponents(array(
            'bootstrap' => array(
                'class' => 'bootstrap.components.TbApi',
            ),
        ), false);
    }
132916
function on() {
        if($this->is_used) {
            return true;
        }
        $route   = \Route::currentRouteName();
        $exclude = self::maxIs($this->exclude, $route);
        $include = self::maxIs($this->include, $route);
        if($exclude > $include || true === $exclude) {
            // исключаем
        } else {
            // подключаем
            //сперва подключим на страницу зависимости
            foreach((array) $this->require as $require => $scopes) {
                Manager::package($require)
                    ->on();
            }
            
            foreach($this->deferred_scopes as $scope) {
                $this->scope($scope);
            }
            
            //затем подключим CSS
            foreach($this->css as $url => $item) {
                $condition = Arr::get($item, 'condition', null);
                $media     = Arr::get($item, 'media', null);
                $no_build  = (bool) Arr::get($item, 'no_build', false);
                Css::instance()
                    ->add($url, $media, $condition, $no_build);
            }
            //затем подключим JS
            foreach($this->js as $url => $item) {
                $condition = Arr::get($item, 'condition', null);
                $no_build  = (int) Arr::get($item, 'no_build', false);
                Js::instance()
                    ->add($url, $condition, $no_build);
            }
        }
        $this->is_used = true;
        
        return true;
    }
1317282
protected function adaptGeoPie()
    {
        //Выбираем уникальные id стран/областей
        $key_array = [];

        //Результирующий массив с id и названием страны/области
        $idArray = [];

        foreach ($this->data['data'] as $value) {
            //Проверяем есть ли такое значение в массиве
            if (!in_array($value['dimensions'][0]['id'], $key_array)) {
                //Если нет то заносим в массив для поиска и в результирующий массив
                $key_array[] = $value['dimensions'][0]['id'];
                $idArray[] = $value['dimensions'][0];
            }
        }

        //Колличество уникальных стран/областей
        $cnt = count($idArray);

        //Массивы для построения графика
        $dataArray = [];            // страны/области
        $drilldownArray = [];      // области/города

        for ($i = 0; $i < $cnt; $i++) {
            $dataArray[$i] = [
                'name'      => $idArray[$i]['name'],
                'y'         => 0,
                'drilldown' => $idArray[$i]['name'],
            ];

            $drilldownArray[$i] = [
                'name' => $idArray[$i]['name'],
                'id'   => $idArray[$i]['name'],
                'data' => [],
            ];

            //Перебираем исходный массив и выбираем нужные данные
            foreach ($this->data['data'] as $item) {

                //Если id страны/области совпадает
                if ($item['dimensions'][0]['id'] == $idArray[$i]['id']) {
                    //Добавляем кол-во визитов в общий список страны/области
                    $dataArray[$i]['y'] += $item['metrics'][0];

                    //Если нет названия у области/города
                    if ($item['dimensions'][1]['name']) {
                        $region = $item['dimensions'][1]['name'];
                    } else {
                        $region = 'Не определено';
                    }

                    //Добавляем данные по области/городу
                    $drilldownArray[$i]['data'][] = [
                        $region,
                        $item['metrics'][0],
                    ];
                }
            }
        }

        $this->adaptData = [
            'dataArray'      => json_encode($dataArray, JSON_UNESCAPED_UNICODE),
            'drilldownArray' => json_encode($drilldownArray,
                JSON_UNESCAPED_UNICODE),
        ];
    }
727364
public function bootstrap()
    {
        if (!$this->getConfig()) {
            $this->loadConfig();
        }

        $output = $this->getOutput();

        $this->loadManager();

        // report the paths
        $paths = $this->getConfig()->getMigrationPaths();

        $output->writeln('using migration paths', 'info');

        foreach (Util::globAll($paths) as $path) {
            $output->writeln(' - ' . realpath($path), 'info');
        }

        try {
            $paths = $this->getConfig()->getSeedPaths();

            $output->writeln('using seed paths', 'info');

            foreach (Util::globAll($paths) as $path) {
                $output->writeln(' - ' . realpath($path), 'info');
            }
        } catch (\UnexpectedValueException $e) {
            // do nothing as seeds are optional
        }
    }
1270571
public function nodeAction()
    {
        //wyłączenie layout
        FrontController::getInstance()->getView()->setLayoutDisabled();
        //id węzła rodzica
        $this->view->parentId = ($this->parentId > 0) ? $this->parentId : null;
        //pobranie drzewiastej struktury stron CMS
        $this->view->categoryTree = (new \Cms\Model\CategoryModel)->getCategoryTree($this->view->parentId);
    }
1297517
public function DirStructure($type, $innerDirs = 'first', $currentDir = '', $level = 0)
    {
        //Пока отключим файлы
        if ($type == 'files')
        {
            return '';
        }

        $currentDirArr = array();
        if (!empty($currentDir))
        {
            $currentDirArr = preg_split('[\\/]',
                str_replace($this->dir[$type], '', realpath($currentDir)));
            $currentDirArr = array_filter($currentDirArr);
        }

        if ($innerDirs == 'first')
        {
            $innerDirs = $this->Tree($this->dir[$type]);
            if (realpath($currentDir) == $this->dir[$type] && !$this->firstAct)
            {
                $firstAct = 'folderAct';
                $this->firstAct = true;
            }
            else
            {
                $firstAct = '';
            }
            $ret = '';
            if ($innerDirs == false)
            {
                return 'Неверно задана корневая директория (' . DIR_IMAGES . ')';
            }
            foreach ($innerDirs as $v)
            {
                $ret = '<div class="folder' . ucfirst($type) . ' ' . $firstAct . '" path="" pathtype="' . $type . '">' . ($type == 'images' ? 'Изображения' : 'Файлы') . ($v['count'] > 0 ? ' (' . $v['count'] . ')' : '') . '</div><div class="folderOpenSection" style="display:block;">';
                if (isset($v['childs']))
                {
                    $ret .= $this->DirStructure($type, $v['childs'], $currentDir, $level);
                }
                break;
            }
            $ret .= '</div>';
            return $ret;
        }

        if (sizeof($innerDirs) == 0)
        {
            return false;
        }
        $ret = '';
        foreach ($innerDirs as $v)
        {
            // TODO: Нафига?!
            foreach ($v as $v)
            {
            }
            if (isset($v['count']))
            {
                $files = 'Файлов: ' . $v['count'];
                $count_childs = isset($v['childs']) ? sizeof($v['childs']) : 0;
                if ($count_childs != 0)
                {
                    $files .= ', папок: ' . $count_childs;
                }
            }
            else
            {
                $files = '';
            }
            if (isset($v['childs']))
            {
                $folderOpen = '';
                $folderAct = '';
                $folderClass = 'folderS';
                if (isset($currentDirArr[$level + 1]))
                {
                    if ($currentDirArr[$level + 1] == $v['name'])
                    {
                        $folderOpen = 'style="display:block;"';
                        $folderClass = 'folderOpened';
                        if ($currentDirArr[sizeof($currentDirArr)] == $v['name'] && !$this->folderAct)
                        {
                            $folderAct = 'folderAct';
                            $this->folderAct = true;
                        }
                        else
                        {
                            $folderAct = '';
                        }
                    }
                }
                $ret .= '<div class="' . $folderClass . ' ' . $folderAct . '" path="' . $v['path'] . '" title="' . $files . '" pathtype="' . $type . '">' . $v['name'] . ($v['count'] > 0 ? ' (' . $v['count'] . ')' : '') . '</div><div class="folderOpenSection" ' . $folderOpen . '>';
                $ret .= $this->DirStructure($type, $v['childs'], $currentDir, $level + 1);
                $ret .= '</div>';
            }
            else
            {
                $soc = sizeof($currentDirArr);
                if ($soc > 0 && $currentDirArr[$soc] == $v['name'])
                {
                    $folderAct = 'folderAct';
                }
                else
                {
                    $folderAct = '';
                }
                $ret .= '<div class="folderClosed ' . $folderAct . '" path="' . $v['path'] . '" title="' . $files . '" pathtype="' . $type . '">' . $v['name'] . ($v['count'] > 0 ? ' (' . $v['count'] . ')' : '') . '</div>';
            }
        }

        return $ret;
    }
1356158
function main_class()
	{
		if($this->class_name() == 'bors_view')
			return $this->arg('class_name');

		// ucrm_companies_groups_view -> ucrm_companies_groups
		$main_class = preg_replace('/_view$/', '', $this->extends_class_name());
		// ucrm_companies_groups -> ucrm_company_group
		$main_class = join('_', array_map(array('blib_grammar', 'singular'), explode('_', $main_class)));

		if(class_include($main_class))
			return $main_class;

		$main_class_up = blib_grammar::singular($main_class);
		if(class_include($main_class_up))
			return $main_class_up;

		$main_class = preg_replace('/^(\w+)_admin_(\w+)$/', '$1_$2', $main_class);

		if(class_include($main_class))
			return $main_class;

		$main_class_up = blib_grammar::singular($main_class);
		if(class_include($main_class_up))
			return $main_class_up;

		throw new Exception(ec('Не определён главный класс (model_class()) для представления ').$this->class_name());
	}
1093913
public static function bootstrap() {
        global $PAGE;

        if (!isloggedin() || isguestuser()) {
            return;
        }

        if (in_array($PAGE->pagelayout, ['maintenance', 'print', 'redirect'])) {
            // Do not try to show user tours inside iframe, in maintenance mode,
            // when printing, or during redirects.
            return;
        }

        if (self::$bootstrapped) {
            return;
        }
        self::$bootstrapped = true;

        if ($tour = manager::get_current_tour()) {
            $PAGE->requires->js_call_amd('tool_usertours/usertours', 'init', [
                    $tour->get_id(),
                    $tour->should_show_for_user(),
                    $PAGE->context->id,
                ]);
        }
    }
1351910
function onFormInitialized() {
		parent::onFormInitialized();
		$this->addClass('df-font'); // 2016-07-30 This CSS class will be applied to the <fieldset> DOM node.
		$this->checkbox(O::enabled, 'Setup?');
		$row1 = $this->fieldsetInline('df-checkboxes')->hide(); /** @var FInline $row1 */
		$row1->checkbox(O::bold, 'B', ['title' => 'Bold']);
		$row1->checkbox(O::italic, 'I', ['title' => 'Italic']);
		$row1->checkbox(O::underline, 'U', ['title' => 'Underline']);
		$row1->color(O::color, null, ['title' => 'Font Color']);
		$row2 = $this->fieldsetInline('df-family')->hide(); /** @var FInline $row2 */
		$row2->field(O::family, GoogleFont::class, null, ['title' => 'Font Family']);
		/** @var array(array(string => string)) $sizeValues */
		$sizeValues = [Q::P__VALUES => SizeUnit::s()->toOptionArray()];
		$row2->quantity(O::size, null, $sizeValues + ['title' => 'Font Size']);
		$row3 = $this->fieldsetInline('row3')->hide(); /** @var FInline $row3 */
		// 2015-12-13
		// Намеренно указываем в качестве подписи пустую строку, а не null,
		// чтобы получить пустые теги <label><span></span></label>
		// и потом стилизовать их своей иконкой.
		$row3->quantity(O::letter_spacing, '', $sizeValues + ['title' => 'Letter Spacing']);
		/**
		 * 2015-12-13
		 * Передаём в качестве подписи название класса Font Awesome.
		 * Такое стало возможным благодаря моему плагину
		 * @used-by \Df\Framework\Plugin\Data\Form\Element\AbstractElement::aroundGetLabelHtml()
		 * https://github.com/mage2pro/core/tree/73bed4fbb751ab47ad1bb70a8d90f455da26b500/Framework/Data/Form/Element/AbstractElementPlugin.php#L53
		 */
		/**
		 * 2015-12-13
		 *	.test {
		 *		transform : scale(1,1.5);
		 *		-webkit-transform:scale(1,1.5); // Safari and Chrome
		 *		-moz-transform:scale(1,1.5); // Firefox
		 *		-ms-transform:scale(1,1.5); // IE 9+
		 *		-o-transform:scale(1,1.5); // Opera
		 *		letter-spacing: 10px;
		 *	}
		 * https://developer.mozilla.org/en-US/docs/Web/CSS/transform-function#scale()
		 * http://stackoverflow.com/a/16447826
		 */
		$row3->percent(O::scale_horizontal, 'fa-text-width', 100, ['title' => 'Horizontal Scale']);
		$row3->percent(O::scale_vertical, 'fa-text-height', 100, ['title' => 'Vertical Scale']);
		/**
		 * 2015-12-13
		 * Намеренно указываем в качестве подписи пустую строку, а не null,
		 * чтобы получить пустые теги <label><span></span></label>
		 * и потом стилизовать их своей иконкой.
		 */
		df_hide($this->select(O::letter_case, '', LetterCase::s(), ['title' => 'Letter Case']));
		df_fe_init($this, __CLASS__, df_fa());
	}
96412
public function boot() {
        foreach(Boot::$boots as $dir_boot) {
            $dir_boot = str_replace('\\', '/', $dir_boot);
            $files    = rglob('*.php', 0, $dir_boot);
            foreach($files as $path) {
                include_once $path;
            }
        }
        //регистрация политик моделей
        //        foreach(Boot::policies_model() as $model_class => $policy_class) {
        //            $gate->policy($model_class, $policy_class);
        //        }
        //регистрация путей шаблонов для пространств имен
        foreach(Boot::$langs as $alias => $pathes) {
            foreach($pathes as $path) {
                $this->loadTranslationsFrom($path, $alias);
                $this->publishes([
                    $path => resource_path('lang/vendor/' . $alias),
                ]);
            }
        }
        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());
        foreach(Boot::$observers as $model_class => $observers) {
            if('_USER_' == $model_class) {
                $model_class = config('auth.providers.users.model');
            }
            $instance = new $model_class;
            
            foreach($observers as $observer) {
                foreach($instance->getObservableEvents() as $event) {
                    if(method_exists($observer, $event)) {
                        $model_class::registerModelEvent($event, $observer . '@' . $event);
                    }
                }
            }
        }
    }
518217
private void bootstrap() {
    List<MemberId> activePeers = bootstrapPeersSupplier.get();
    if (activePeers.isEmpty()) {
      return;
    }
    try {
      requestBootstrapFromPeers(activePeers)
          .get(DistributedPrimitive.DEFAULT_OPERATION_TIMEOUT_MILLIS, TimeUnit.MILLISECONDS);
    } catch (ExecutionException | InterruptedException | TimeoutException e) {
      LOGGER.debug("Failed to bootstrap ec map {}: {}", mapName, ExceptionUtils.getStackTrace(e));
    }
  }