parent::__construct( 'EditTags', 'changetags' );
}
+ public function doesWrites() {
+ return true;
+ }
+
public function execute( $par ) {
$this->checkPermissions();
$this->checkReadOnly();
$user = $this->getUser();
$request = $this->getRequest();
+ // Check blocks
+ if ( $user->isBlocked() ) {
+ throw new UserBlockedError( $user->getBlock() );
+ }
+
$this->setHeaders();
$this->outputHeader();
protected function buildCheckBoxes() {
// If there is just one item, provide the user with a multi-select field
$list = $this->getList();
+ $tags = array();
if ( $list->length() == 1 ) {
$list->reset();
$tags = $list->current()->getTags();
$html .= '</td></tr>';
$tagSelect = $this->getTagSelect( $tags, $this->msg( 'tags-edit-new-tags' )->plain() );
$html .= '<tr><td>' . $tagSelect[0] . '</td><td>' . $tagSelect[1];
- // also output the tags currently applied as a hidden form field, so we
- // know what to remove from the revision/log entry when the form is submitted
- $html .= Html::hidden( 'wpExistingTags', implode( ',', $tags ) );
- $html .= '</td></tr></table>';
} else {
// Otherwise, use a multi-select field for adding tags, and a list of
// checkboxes for removing them
- $tags = array();
// @codingStandardsIgnoreStart Generic.CodeAnalysis.ForLoopWithTestFunctionCall.NotAllowed
for ( $list->reset(); $list->current(); $list->next() ) {
'class' => 'mw-edittags-remove-checkbox',
) );
}
- $html .= '</td></tr></table>';
}
+ // also output the tags currently applied as a hidden form field, so we
+ // know what to remove from the revision/log entry when the form is submitted
+ $html .= Html::hidden( 'wpExistingTags', implode( ',', $tags ) );
+ $html .= '</td></tr></table>';
+
return $html;
}