NerdsAndCompany\Schematic\Services\Sections::importEntryTypes PHP Метод

importEntryTypes() приватный Метод

private importEntryTypes ( Craft\SectionModel $section, array $entryTypeDefinitions, boolean $force )
$section Craft\SectionModel
$entryTypeDefinitions array
$force boolean
    private function importEntryTypes(SectionModel $section, array $entryTypeDefinitions, $force)
    {
        $entryTypes = Craft::app()->sections->getEntryTypesBySectionId($section->id, 'handle');
        foreach ($entryTypeDefinitions as $entryTypeHandle => $entryTypeDefinition) {
            $entryType = array_key_exists($entryTypeHandle, $entryTypes) ? $entryTypes[$entryTypeHandle] : new EntryTypeModel();
            unset($entryTypes[$entryTypeHandle]);
            $this->populateEntryType($entryType, $entryTypeDefinition, $entryTypeHandle, $section->id);
            if (!Craft::app()->sections->saveEntryType($entryType)) {
                $this->addError($entryType->getAllErrors());
                continue;
            }
        }
        if ($force) {
            foreach ($entryTypes as $entryType) {
                Craft::app()->sections->deleteEntryTypeById($entryType->id);
            }
        }
    }