return ObjectFactory::constructClassInstance( OOUIHTMLForm::class, $arguments );
default:
/** @var HTMLForm $form */
- $form = ObjectFactory::constructClassInstance( HTMLForm::class, $arguments );
+ $form = ObjectFactory::constructClassInstance( self::class, $arguments );
$form->setDisplayFormat( $displayFormat );
return $form;
}
if ( !in_array( $format, $this->availableDisplayFormats, true ) ) {
throw new MWException( 'Display format must be one of ' .
- print_r( $this->availableDisplayFormats, true ) );
+ print_r(
+ array_merge(
+ $this->availableDisplayFormats,
+ $this->availableSubclassDisplayFormats
+ ),
+ true
+ ) );
}
// Evil hack for mobile :(
$attributes = [];
if ( $fieldsetIDPrefix ) {
- $attributes['id'] = Sanitizer::escapeId( "$fieldsetIDPrefix$key" );
+ $attributes['id'] = Sanitizer::escapeIdForAttribute( "$fieldsetIDPrefix$key" );
}
$subsectionHtml .= $this->wrapFieldSetSection( $legend, $section, $attributes );
} else {
];
if ( $sectionName ) {
- $attribs['id'] = Sanitizer::escapeId( $sectionName );
+ $attribs['id'] = Sanitizer::escapeIdForAttribute( $sectionName );
}
if ( $displayFormat === 'table' ) {