* link-title Title object to link to
* link-target Value for the target attribute, only with link-url
* no-link Boolean, suppress description link
+ * targetlang (optional) Target language code, see Parser::getTargetLanguage()
*
* @param array $handlerParams Associative array of media handler parameters, to be passed
* to transform(). Typical keys are "width" and "page".
* @author Erik Moeller <moeller@scireview.de>
* @since 1.16.3. $wikiId added in 1.26
*
- * Note: there's not always a title to pass to this function.
- * Since you can't set a default parameter for a reference, I've turned it
- * temporarily to a value pass. Should be adjusted further. --brion
- *
* @param string $comment
* @param Title|null $title Title object (to generate link to the section in autocomment)
* or null
* @param string|null $wikiId Id (as used by WikiMap) of the wiki to generate links to.
* For use with external changes.
*
- * @return mixed|string
+ * @return string HTML
*/
public static function formatComment(
$comment, $title = null, $local = false, $wikiId = null
return preg_replace_callback(
'/
\[\[
+ \s*+ # ignore leading whitespace, the *+ quantifier disallows backtracking
:? # ignore optional leading colon
([^\]|]+) # 1. link target; page names cannot include ] or |
(?:\|
* @return string
*/
public static function commentBlock(
- $comment, $title = null, $local = false, $wikiId = null
+ $comment, $title = null, $local = false, $wikiId = null, $useParentheses = true
) {
// '*' used to be the comment inserted by the software way back
// in antiquity in case none was provided, here for backwards
return '';
} else {
$formatted = self::formatComment( $comment, $title, $local, $wikiId );
- $formatted = wfMessage( 'parentheses' )->rawParams( $formatted )->escaped();
+ if ( $useParentheses ) {
+ $formatted = wfMessage( 'parentheses' )->rawParams( $formatted )->escaped();
+ }
return " <span class=\"comment\">$formatted</span>";
}
}
* @param Revision $rev
* @param bool $local Whether section links should refer to local page
* @param bool $isPublic Show only if all users can see it
+ * @param bool $useParentheses (optional) Wrap comments in parentheses where needed
* @return string HTML fragment
*/
- public static function revComment( Revision $rev, $local = false, $isPublic = false ) {
+ public static function revComment( Revision $rev, $local = false, $isPublic = false,
+ $useParentheses = true
+ ) {
if ( $rev->getComment( Revision::RAW ) == "" ) {
return "";
}
$block = " <span class=\"comment\">" . wfMessage( 'rev-deleted-comment' )->escaped() . "</span>";
} elseif ( $rev->userCan( Revision::DELETED_COMMENT ) ) {
$block = self::commentBlock( $rev->getComment( Revision::FOR_THIS_USER ),
- $rev->getTitle(), $local );
+ $rev->getTitle(), $local, null, $useParentheses );
} else {
$block = " <span class=\"comment\">" . wfMessage( 'rev-deleted-comment' )->escaped() . "</span>";
}