]> git.immae.eu Git - github/wallabag/wallabag.git/commitdiff
Use a form type for entry
authorJeremy <jeremy.benoist@gmail.com>
Mon, 16 Feb 2015 20:31:42 +0000 (21:31 +0100)
committerJeremy <jeremy.benoist@gmail.com>
Mon, 16 Feb 2015 20:31:58 +0000 (21:31 +0100)
src/Wallabag/CoreBundle/Controller/EntryController.php
src/Wallabag/CoreBundle/Form/Type/EntryType.php [new file with mode: 0644]
src/Wallabag/CoreBundle/Tests/Controller/EntryControllerTest.php

index 89677befb6c347a003429513392254ee2fe1e00c..81ab77887af8596150b98e07ea424374afabf894 100644 (file)
@@ -7,7 +7,7 @@ use Symfony\Bundle\FrameworkBundle\Controller\Controller;
 use Symfony\Component\HttpFoundation\Request;
 use Wallabag\CoreBundle\Entity\Entry;
 use Wallabag\CoreBundle\Service\Extractor;
-use Wallabag\CoreBundle\Helper\Url;
+use Wallabag\CoreBundle\Form\Type\EntryType;
 
 class EntryController extends Controller
 {
@@ -22,10 +22,7 @@ class EntryController extends Controller
     {
         $entry = new Entry($this->getUser());
 
-        $form = $this->createFormBuilder($entry)
-            ->add('url', 'url')
-            ->add('save', 'submit')
-            ->getForm();
+        $form = $this->createForm(new EntryType(), $entry);
 
         $form->handleRequest($request);
 
diff --git a/src/Wallabag/CoreBundle/Form/Type/EntryType.php b/src/Wallabag/CoreBundle/Form/Type/EntryType.php
new file mode 100644 (file)
index 0000000..cfd6447
--- /dev/null
@@ -0,0 +1,29 @@
+<?php
+namespace Wallabag\CoreBundle\Form\Type;
+
+use Symfony\Component\Form\AbstractType;
+use Symfony\Component\Form\FormBuilderInterface;
+use Symfony\Component\OptionsResolver\OptionsResolverInterface;
+
+class EntryType extends AbstractType
+{
+    public function buildForm(FormBuilderInterface $builder, array $options)
+    {
+        $builder
+            ->add('url', 'url')
+            ->add('save', 'submit')
+        ;
+    }
+
+    public function setDefaultOptions(OptionsResolverInterface $resolver)
+    {
+        $resolver->setDefaults(array(
+            'data_class' => 'Wallabag\CoreBundle\Entity\Entry',
+        ));
+    }
+
+    public function getName()
+    {
+        return 'entry';
+    }
+}
index 7276f8e4ecba5ec57b80d84a096d23fb9eff1671..2634141e504aa832945942252d3d46801a469f7f 100644 (file)
@@ -60,7 +60,7 @@ class EntryControllerTest extends WallabagTestCase
         $form = $crawler->filter('button[type=submit]')->form();
 
         $data = array(
-            'form[url]' => 'https://www.mailjet.com/blog/mailjet-zapier-integrations-made-easy/',
+            'entry[url]' => 'https://www.mailjet.com/blog/mailjet-zapier-integrations-made-easy/',
         );
 
         $client->submit($form, $data);