Update Extension.php

This commit is contained in:
paladox
2021-03-20 21:59:37 +00:00
committed by GitHub
parent 440b2f55b1
commit 73eaefc78b

View File

@ -44,26 +44,26 @@ class Extension {
* This handler is used if the parseOnEdit configuration option is set. * This handler is used if the parseOnEdit configuration option is set.
*/ */
public static function onMultiContentSave( RenderedRevision $renderedRevision, User $user, CommentStoreComment $summary, $flags, Status $hookStatus ) { public static function onMultiContentSave( RenderedRevision $renderedRevision, User $user, CommentStoreComment $summary, $flags, Status $hookStatus ) {
$config = new Config(); $config = new Config();
if ( !$config->parseOnEdit ) return true; if ( !$config->parseOnEdit ) return true;
$title = $renderedRevision->getRevision()->getPageAsLinkTarget(); $title = $renderedRevision->getRevision()->getPageAsLinkTarget();
$slots = $renderedRevision->getRevision()->getSlots(); $slots = $renderedRevision->getRevision()->getSlots();
$content = $renderedRevision->getRevision()->getSlots()->getContent( SlotRecord::MAIN ); $content = $renderedRevision->getRevision()->getSlots()->getContent( SlotRecord::MAIN );
$articleID = $renderedRevision->getRevision()->getPageId(); $articleID = $renderedRevision->getRevision()->getPageId();
$wikiPage = WikiPage::newFromID( $articleID ); $wikiPage = WikiPage::newFromID( $articleID );
if ( $wikiPage == null ) { if ( $wikiPage == null ) {
return true; return true;
} }
$source = Source::createFromPageandContent( $wikiPage, $content, $config ); $source = Source::createFromPageandContent( $wikiPage, $content, $config );
$linker = new Linker( $config ); $linker = new Linker( $config );
$result = $linker->linkContent( $source ); $result = $linker->linkContent( $source );
if ( $result ) { if ( $result ) {
$source->setText( $result ); $source->setText( $result );
$text = $source->getText($result); $text = $source->getText($result);
$slots = $renderedRevision->getRevision()->getSlots(); $slots = $renderedRevision->getRevision()->getSlots();
$slots->setContent( 'main', ContentHandler::makeContent( $text, $title ) ); $slots->setContent( 'main', ContentHandler::makeContent( $text, $title ) );
} }
return true; return true;
} }