From 1f2601c6147b4a1e57d74abba92a7110ac0d0ff7 Mon Sep 17 00:00:00 2001 From: Jon Robson Date: Fri, 17 Mar 2023 10:24:53 -0700 Subject: [PATCH] EditPage: Support blanking of messages If the messages are blanked (e.g. via site interface messages) they should not be wrapped in elements. Follow up to Id2114a65635c050a2017926274622f0a3c2d58d6 Bug: T311891 Change-Id: I99dd7ee77bd9a29f318ab4b209f2b198376636e9 --- includes/editpage/EditPage.php | 29 +++++++++++++++++------------ 1 file changed, 17 insertions(+), 12 deletions(-) diff --git a/includes/editpage/EditPage.php b/includes/editpage/EditPage.php index 347ce7666cc..ae3e16c2c0a 100644 --- a/includes/editpage/EditPage.php +++ b/includes/editpage/EditPage.php @@ -3729,23 +3729,26 @@ class EditPage implements IEditObject { ? 'usercssispublic' : ( $isUserJsonConfig ? 'userjsonispublic' : 'userjsispublic' ); - $intro .= Html::rawElement( + $warningText = $ctx->msg( $warning )->parse(); + $intro .= $warningText ? Html::rawElement( 'div', [ 'class' => 'mw-userconfigpublic' ], - $ctx->msg( $warning )->parse() - ); + $warningText + ) : ''; $isMsgSameWhenParsed = $this->isMsgSameWhenParsed( $ctx, $warning ); } } if ( $namespace === NS_MEDIAWIKI ) { + $interfaceMsg = $ctx->msg( 'editinginterface' ); + $interfaceMsgText = $interfaceMsg->parse(); # Show a warning if editing an interface message - $intro .= Html::rawElement( + $intro .= $interfaceMsgText ? Html::rawElement( 'div', [ 'class' => 'mw-editinginterface' ], - $ctx->msg( 'editinginterface' )->parse() - ); + $interfaceMsgText + ) : ''; # If this is a default message (but not css, json, or js), # show a hint that it is translatable on translatewiki.net if ( @@ -3755,11 +3758,12 @@ class EditPage implements IEditObject { ) { $defaultMessageText = $title->getDefaultMessageText(); if ( $defaultMessageText !== false ) { - $intro .= Html::rawElement( + $translateInterfaceText = $ctx->msg( 'translateinterface' )->parse(); + $intro .= $translateInterfaceText ? Html::rawElement( 'div', [ 'class' => 'mw-translateinterface' ], - $ctx->msg( 'translateinterface' )->parse() - ); + $translateInterfaceText + ) : ''; $isMsgSameWhenParsed = $isMsgSameWhenParsed && $this->isMsgSameWhenParsed( $ctx, 'translateinterface' ); } @@ -3767,11 +3771,12 @@ class EditPage implements IEditObject { } if ( $isUserJsConfig ) { - $intro .= Html::rawElement( + $userConfigDangerousMsg = $ctx->msg( 'userjsdangerous' )->parse(); + $intro .= $userConfigDangerousMsg ? Html::rawElement( 'div', [ 'class' => 'mw-userconfigdangerous' ], - $ctx->msg( 'userjsdangerous' )->parse() - ); + $userConfigDangerousMsg + ) : ''; $isMsgSameWhenParsed = $isMsgSameWhenParsed && $this->isMsgSameWhenParsed( $ctx, 'userjsdangerous' ); }