$suggestedDurations = self::getSuggestedDurations();
$conf = $this->getConfig();
- $oldCommentSchema = $conf->get( 'CommentTableSchemaMigrationStage' ) === MIGRATION_OLD;
$enablePartialBlocks = $conf->get( 'EnablePartialBlocks' );
$a = [];
'type' => 'radio',
'cssclass' => 'mw-block-editing-restriction',
'options' => [
- $this->msg( 'ipb-sitewide' )->text() => 'sitewide',
- $this->msg( 'ipb-partial' )->text() => 'partial',
+ $this->msg( 'ipb-sitewide' )->escaped() => 'sitewide',
+ $this->msg( 'ipb-partial' )->escaped() => 'partial',
],
'section' => 'actions',
];
'max' => 10,
'cssclass' => 'mw-block-restriction',
'showMissing' => false,
+ 'excludeDynamicNamespaces' => true,
'input' => [
'autocomplete' => false
],
'type' => 'selectandother',
// HTML maxlength uses "UTF-16 code units", which means that characters outside BMP
// (e.g. emojis) count for two each. This limit is overridden in JS to instead count
- // Unicode codepoints (or 255 UTF-8 bytes for old schema).
- 'maxlength' => $oldCommentSchema ? 255 : CommentStore::COMMENT_CHARACTER_LIMIT,
+ // Unicode codepoints.
+ 'maxlength' => CommentStore::COMMENT_CHARACTER_LIMIT,
'maxlength-unit' => 'codepoints',
'options-message' => 'ipbreason-dropdown',
'section' => 'reason',
foreach ( $block->getRestrictions() as $restriction ) {
switch ( $restriction->getType() ) {
case PageRestriction::TYPE:
- $pageRestrictions[] = $restriction->getTitle()->getPrefixedText();
+ if ( $restriction->getTitle() ) {
+ $pageRestrictions[] = $restriction->getTitle()->getPrefixedText();
+ }
break;
case NamespaceRestriction::TYPE:
$namespaceRestrictions[] = $restriction->getValue();