Skip to content

Commit

Permalink
Merge branch '6.4' into 7.1
Browse files Browse the repository at this point in the history
* 6.4:
  [FrameworkBundle] Add missing `not-compromised-password` entry in XSD
  [AssetMapper] Fix CssCompiler matches url in comments
  Add support for doctrine/persistence 4
  Ensure TransportExceptionInterface populates stream debug data
  Fix typo in validators.sk.xlf
  [Mime] Fix body validity check in `Email` when using `Message::setBody()`
  Review Arabic translations for the validator
  Fixed mistakes in proper hebrew writing in the previous translation and confirmed the rest to be correct and in the same style.
  Review translation
  [Cache] Don't clear system caches on cache:clear
  [FrameworkBundle] Fix patching refs to the tmp warmup dir in files generated by optional cache warmers
  Mark Czech Validator translation as reviewed
  [PropertyInfo] Fix `TypeTest` duplicated assert
  [HtmlSanitizer] Avoid accessing non existent array key when checking for hosts validity
  Update validators.ar.xlf
  [DomCrawler] Make `ChoiceFormField::isDisabled` return `true` for unchecked disabled checkboxes
  • Loading branch information
xabbuh committed Jan 27, 2025
2 parents fd00664 + fd07959 commit 7361d8f
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 0 deletions.
4 changes: 4 additions & 0 deletions Field/ChoiceFormField.php
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,10 @@ public function hasValue(): bool
*/
public function isDisabled(): bool
{
if ('checkbox' === $this->type) {
return parent::isDisabled();
}

if (parent::isDisabled() && 'select' === $this->type) {
return true;
}
Expand Down
11 changes: 11 additions & 0 deletions Tests/Field/ChoiceFormFieldTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -272,6 +272,17 @@ public function testCheckboxWithEmptyBooleanAttribute()
$this->assertEquals('foo', $field->getValue());
}

public function testCheckboxIsDisabled()
{
$node = $this->createNode('input', '', ['type' => 'checkbox', 'name' => 'name', 'disabled' => '']);
$field = new ChoiceFormField($node);

$this->assertTrue($field->isDisabled(), '->isDisabled() returns true when the checkbox is disabled, even if it is not checked');

$field->tick();
$this->assertTrue($field->isDisabled(), '->isDisabled() returns true when the checkbox is disabled, even if it is checked');
}

public function testTick()
{
$node = $this->createSelectNode(['foo' => false, 'bar' => false]);
Expand Down

0 comments on commit 7361d8f

Please sign in to comment.