schmunk42\giiant\helpers\SaveForm::loadSavedForms PHP Метод

loadSavedForms() публичный статический Метод

walk througt all modules gii directories and collect Giant crud generator saved forms.
public static loadSavedForms ( $generatorName ) : array
Результат array
    public static function loadSavedForms($generatorName)
    {
        $suffix = str_replace(' ', '', $generatorName);
        if (self::$savedFormList) {
            return self::$savedFormList;
        }
        /*
         * get all possible gii directories with out validation on existing
         */
        $giiDirs = [];
        $giiDirs[] = \Yii::getAlias('@app/gii');
        if ($commonGiiDir = \Yii::getAlias('@common/gii', false)) {
            $giiDirs[] = $commonGiiDir;
        }
        foreach (\Yii::$app->modules as $moduleId => $module) {
            /*
             * get module base path
             */
            if (method_exists($module, 'getBasePath')) {
                $basePath = $module->getBasePath();
            } else {
                $reflector = new \ReflectionClass($module['class']);
                $basePath = StringHelper::dirname($reflector->getFileName());
            }
            $basePath .= '/gii';
            $giiDirs[] = $basePath;
        }
        /*
         * from all gii directories collec forms
         */
        $forms = [];
        foreach ($giiDirs as $basePath) {
            /*
             * search in module gii directory all forms json files
             * with required suffix
             */
            if (!file_exists($basePath)) {
                continue;
            }
            $files = scandir($basePath);
            foreach ($files as $file) {
                if (!preg_match('#' . $suffix . '\\.json$#', $file)) {
                    continue;
                }
                $name = preg_replace('#' . $suffix . '\\.json$#', '', $file);
                $forms[$moduleId . $name] = ['jsonData' => file_get_contents($basePath . '/' . $file), 'label' => $moduleId . ' - ' . $name];
            }
        }
        return self::$savedFormList = $forms;
    }