summaryrefslogtreecommitdiff
path: root/www/wiki/extensions/Translate/translationaids/DocumentationAid.php
diff options
context:
space:
mode:
Diffstat (limited to 'www/wiki/extensions/Translate/translationaids/DocumentationAid.php')
-rw-r--r--www/wiki/extensions/Translate/translationaids/DocumentationAid.php37
1 files changed, 37 insertions, 0 deletions
diff --git a/www/wiki/extensions/Translate/translationaids/DocumentationAid.php b/www/wiki/extensions/Translate/translationaids/DocumentationAid.php
new file mode 100644
index 00000000..f19c03ba
--- /dev/null
+++ b/www/wiki/extensions/Translate/translationaids/DocumentationAid.php
@@ -0,0 +1,37 @@
+<?php
+/**
+ * Translation aid provider.
+ *
+ * @file
+ * @author Niklas Laxström
+ * @copyright Copyright © 2012-2013, Niklas Laxström
+ * @license GPL-2.0-or-later
+ */
+
+/**
+ * Translation aid which gives the message documentation.
+ *
+ * @ingroup TranslationAids
+ * @since 2013-01-01
+ */
+class DocumentationAid extends TranslationAid {
+ public function getData() {
+ global $wgTranslateDocumentationLanguageCode, $wgContLang;
+ if ( !$wgTranslateDocumentationLanguageCode ) {
+ throw new TranslationHelperException( 'Message documentation is disabled' );
+ }
+
+ $page = $this->handle->getKey();
+ $ns = $this->handle->getTitle()->getNamespace();
+
+ $info = TranslateUtils::getMessageContent( $page, $wgTranslateDocumentationLanguageCode, $ns );
+
+ return [
+ 'language' => $wgContLang->getCode(),
+ 'value' => $info,
+ 'html' => TranslateUtils::parseAsInterface(
+ $this->context->getOutput(), $info
+ ),
+ ];
+ }
+}