Browse Source

add placeholder for empty short description fields

Tiago Garcia 12 years ago
parent
commit
d7747f8268

+ 5 - 0
Admin/BaseFieldDescription.php

@@ -197,6 +197,11 @@ abstract class BaseFieldDescription implements FieldDescriptionInterface
             unset($options['help']);
             unset($options['help']);
         }
         }
 
 
+        // set default placeholder
+        if (!isset($options['placeholder'])) {
+            $options['placeholder'] = 'short_object_description_placeholder';
+        }
+
         $this->options = $options;
         $this->options = $options;
     }
     }
 
 

+ 4 - 0
Resources/translations/SonataAdminBundle.en.xliff

@@ -366,6 +366,10 @@
                 <source>link_action_acl</source>
                 <source>link_action_acl</source>
                 <target>ACL</target>
                 <target>ACL</target>
             </trans-unit>
             </trans-unit>
+            <trans-unit id="short_object_description_placeholder">
+              <source>short_object_description_placeholder</source>
+              <target>No selection</target>
+            </trans-unit>
         </body>
         </body>
     </file>
     </file>
 </xliff>
 </xliff>

+ 5 - 1
Tests/Admin/BaseFieldDescriptionTest.php

@@ -54,13 +54,17 @@ class BaseFieldDescriptionTest extends \PHPUnit_Framework_TestCase
         $this->assertEquals('foo.twig.html', $description->getTemplate());
         $this->assertEquals('foo.twig.html', $description->getTemplate());
         $this->assertEquals('fooHelp', $description->getHelp());
         $this->assertEquals('fooHelp', $description->getHelp());
 
 
-        $this->assertCount(0, $description->getOptions());
+        $this->assertCount(1, $description->getOptions());
 
 
         $description->setHelp('Please enter an integer');
         $description->setHelp('Please enter an integer');
         $this->assertEquals('Please enter an integer', $description->getHelp());
         $this->assertEquals('Please enter an integer', $description->getHelp());
 
 
         $description->setMappingType('int');
         $description->setMappingType('int');
         $this->assertEquals('int', $description->getMappingType());
         $this->assertEquals('int', $description->getMappingType());
+        
+        $this->assertEquals('short_object_description_placeholder', $description->getOption('placeholder'));
+        $description->setOptions(array('placeholder' => false));
+        $this->assertFalse($description->getOption('placeholder'));
     }
     }
 
 
     public function testAdmin()
     public function testAdmin()