Browse Source

Editor: form

imwald
Nuša Pukšič 3 weeks ago
parent
commit
eba5abc49d
  1. 16
      src/Form/EditorType.php
  2. 2
      templates/pages/editor.html.twig

16
src/Form/EditorType.php

@ -7,7 +7,6 @@ namespace App\Form;
use App\Dto\AdvancedMetadata; use App\Dto\AdvancedMetadata;
use App\Entity\Article; use App\Entity\Article;
use App\Form\DataTransformer\CommaSeparatedToJsonTransformer; use App\Form\DataTransformer\CommaSeparatedToJsonTransformer;
use App\Form\DataTransformer\HtmlToMdTransformer;
use App\Form\Type\QuillType; use App\Form\Type\QuillType;
use Symfony\Component\Form\AbstractType; use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\Extension\Core\Type\CheckboxType; use Symfony\Component\Form\Extension\Core\Type\CheckboxType;
@ -36,9 +35,17 @@ class EditorType extends AbstractType
'required' => false, 'required' => false,
'sanitize_html' => true, 'sanitize_html' => true,
'attr' => ['class' => 'form-control']]) 'attr' => ['class' => 'form-control']])
->add('content', QuillType::class, [ ->add('content', TextareaType::class, [
'required' => true, 'required' => true,
'attr' => ['placeholder' => 'Write content', 'class' => 'form-control']]) 'label' => 'Markdown Content',
'attr' => ['placeholder' => 'Write Markdown content', 'class' => 'form-control editor-md-pane']
])
->add('content_html', QuillType::class, [
'required' => false,
'mapped' => false,
'label' => 'HTML Content (Quill)',
'attr' => ['placeholder' => 'Write content', 'class' => 'form-control editor-quill-pane']
])
->add('image', UrlType::class, [ ->add('image', UrlType::class, [
'required' => false, 'required' => false,
'label' => 'Cover image URL', 'label' => 'Cover image URL',
@ -66,9 +73,6 @@ class EditorType extends AbstractType
// Apply the custom transformer // Apply the custom transformer
$builder->get('topics') $builder->get('topics')
->addModelTransformer(new CommaSeparatedToJsonTransformer()); ->addModelTransformer(new CommaSeparatedToJsonTransformer());
$builder->get('content')
->addModelTransformer(new HtmlToMdTransformer());
} }
public function configureOptions(OptionsResolver $resolver): void public function configureOptions(OptionsResolver $resolver): void

2
templates/pages/editor.html.twig

@ -7,7 +7,7 @@
<div id="editor"> <div id="editor">
{{ value|raw }} {{ value|raw }}
</div> </div>
<input type="hidden" name="editor[content_md]" data-publishing--quill-target="markdown"> <input type="hidden" name="editor[content]" data-publishing--quill-target="markdown">
<input type="hidden" {{ block('widget_attributes') }} value="{{ value }}" /> <input type="hidden" {{ block('widget_attributes') }} value="{{ value }}" />
</div> </div>
{% endblock %} {% endblock %}

Loading…
Cancel
Save