diff --git a/Slack.hooks.php b/Slack.hooks.php index 7f782cb..dfa5979 100644 --- a/Slack.hooks.php +++ b/Slack.hooks.php @@ -60,7 +60,7 @@ public static function sendToSlack($payload) { wfDebug("Slack Result: ".$result."\n"); } - public static function buildMessage($wikiPage, $user, $summary, $verb) { + public static function buildMessage($wikiPage, $user, $summary, $verb, $revision) { global $wgSlackLinkUsers; // Build the message we're going to post to Slack. @@ -76,6 +76,20 @@ public static function buildMessage($wikiPage, $user, $summary, $verb) { } $message .= '.'; + if(!empty($revision)) + { + $diffUrl = SlackHooks::encodeSlackChars( + sprintf( + '%s&type=revision&diff=%d&oldid=%d' + , $wikiPage->getTitle()->getFullURL() + , $revision->getId() + , $revision->getParentId() + ) + ); + + $message .= sprintf(" <%s|%s>", $diffUrl, "Check diff"); + } + return $message; } @@ -111,7 +125,7 @@ public static function onPageContentSaveComplete($wikiPage, $user, $content, $su } // Build the Slack Message. - $message = SlackHooks::buildMessage($wikiPage, $user, $summary, "modified"); + $message = SlackHooks::buildMessage($wikiPage, $user, $summary, "modified", $revision); // Build the Slack Payload. $payload = SlackHooks::buildPayload($message);