[ 'title' => 'Текст заголовка', 'type' => FieldType::TEXT ], 'header-type' => [ 'title' => 'Тип заголовка', 'type' => FieldType::RELATION, 'required' => true, 'params' => [ 'related' => DictionaryItem::class, 'transformer' => DictionaryItemTransformer::class, 'options' => ['show' => true, 'whereHas' => ['dictionary' => ['name' => 'title-types']]] ] ], 'header-required' => [ 'title' => 'Текст заголовка', 'type' => FieldType::TEXT, 'required' => true ], 'documents' => [ 'title' => 'Документы', 'type' => FieldType::DOCUMENT, 'multiple' => true ], 'documents-required' => [ 'title' => 'Документы', 'type' => FieldType::DOCUMENT, 'multiple' => true, 'required' => true ], 'html' => [ 'title' => 'Содержимое текстового блока', 'type' => FieldType::HTML ], 'html-required' => [ 'title' => 'Содержимое текстового блока', 'type' => FieldType::HTML, 'required' => true ], // 'list-type' => [ // 'title' => 'Вид списка', // 'type' => FieldType::RELATION, // 'required' => true, // 'params' => [ // 'related' => DictionaryItem::class, 'transformer' => DictionaryItemTransformer::class, // 'options' => ['show' => true, 'whereHas' => ['dictionary' => ['name' => 'list-types']]] // ] // ], // 'list-items' => [ // 'title' => 'Элементы списка', // 'type' => FieldType::TEXT, // 'multiple' => true, // 'required' => true // ], 'images' => [ 'title' => 'Изображения', 'type' => FieldType::IMAGE, 'multiple' => true ], 'images-required' => [ 'title' => 'Изображения', 'type' => FieldType::IMAGE, 'multiple' => true, 'required' => true ], 'video-url' => [ 'title' => 'Ссылка на видео', 'type' => FieldType::STRING, 'required' => true ], 'button-title' => [ 'title' => 'Текст', 'type' => FieldType::STRING, 'required' => true ], 'button-url' => [ 'title' => 'Ссылка на кнопку', 'type' => FieldType::STRING, 'required' => true ], 'iframe-url' => [ 'title' => 'Ссылка', 'type' => FieldType::STRING, 'required' => true ], 'contact-name' => [ 'title' => 'Наименование', 'type' => FieldType::STRING, ], 'contact-legal-address' => [ 'title' => 'Юридический адрес', 'type' => FieldType::STRING, ], 'contact-location-address' => [ 'title' => 'Фактический адрес', 'type' => FieldType::STRING, ], 'contact-email' => [ 'title' => 'Email', 'type' => FieldType::STRING, ], 'contact-phone' => [ 'title' => 'Телефон', 'type' => FieldType::STRING, ], 'contact-description' => [ 'title' => 'Информация', 'type' => FieldType::HTML, ], 'feddback-email-admin' => [ 'title' => 'Email кому будет отправлен ответ', 'type' => FieldType::STRING, 'required' => true, 'showForm' => 'first' ], 'feedback-email-user' => [ 'title' => 'Email', 'type' => FieldType::STRING, 'required' => true, 'showForm' => 'second' ], 'feedback-name' => [ 'title' => 'Ваше имя', 'type' => FieldType::STRING, 'required' => true, 'showForm' => 'second' ], 'feedback-type' => [ 'title' => 'Тема обращения', 'type' => FieldType::RELATION, 'required' => true, 'showForm' => 'second', 'params' => [ 'related' => DictionaryItem::class, 'transformer' => DictionaryItemTransformer::class, 'options' => ['show' => true, 'whereHas' => ['dictionary' => ['name' => 'feedback-types']]] ] ], 'feedback-message' => [ 'title' => 'Текст сообщения', 'type' => FieldType::TEXT, 'required' => true, 'showForm' => 'second', ], ]; public function run() { collect($this->fields)->each(function($data, $name) { $field = Field::firstOrCreate(['name' => $name]); $field->update($data); }); } }