HTML::entities() now optional on label contents

This commit is contained in:
Chris How 2013-02-03 19:15:55 +01:00
parent 23d23dd07c
commit f93dfccd21
2 changed files with 6 additions and 2 deletions

View File

@ -182,13 +182,15 @@ public static function token()
* @param array $attributes
* @return string
*/
public static function label($name, $value, $attributes = array())
public static function label($name, $value, $attributes = array(), $escape_html = true)
{
static::$labels[] = $name;
$attributes = HTML::attributes($attributes);
$value = HTML::entities($value);
if ($escape_html) {
$value = HTML::entities($value);
}
return '<label for="'.$name.'"'.$attributes.'>'.$value.'</label>';
}

View File

@ -111,9 +111,11 @@ public function testFormLabel()
{
$form1 = Form::label('foo', 'Foobar');
$form2 = Form::label('foo', 'Foobar', array('class' => 'control-label'));
$form3 = Form::label('foo', 'Foobar <i>baz</i>', null, false);
$this->assertEquals('<label for="foo">Foobar</label>', $form1);
$this->assertEquals('<label for="foo" class="control-label">Foobar</label>', $form2);
$this->assertEquals('<label for="foo">Foobar <i>baz</i></label>', $form3);
}
/**