Euvl has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/82870


Change subject: Making templates work with semantic glossary and lingo
......................................................................

Making templates work with semantic glossary and lingo

Change-Id: I95d8e5badeded7686768c57d7561c94320e72520
---
M LingoElement.php
1 file changed, 19 insertions(+), 1 deletion(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/Lingo 
refs/changes/70/82870/1

diff --git a/LingoElement.php b/LingoElement.php
index a153470..db1b12a 100644
--- a/LingoElement.php
+++ b/LingoElement.php
@@ -125,7 +125,9 @@
 
                                foreach ( $this->mDefinitions as $definition ) {
                                        wfSuppressWarnings();
-                                       $element = $doc->createElement( 'span', 
htmlentities( $definition[self::ELEMENT_DEFINITION], ENT_COMPAT, 'UTF-8' ) );
+                                       //$element = $doc->createElement( 
'span', htmlentities( $definition[self::ELEMENT_DEFINITION], ENT_COMPAT, 
'UTF-8' ) );
+                                       $element = $doc->createElement( 'span' 
);
+                                       $this->appendHTML( $element, 
$this->getParsedDefinition( $definition ) );
                                        wfRestoreWarnings();
                                        if ( $definition[self::ELEMENT_LINK] ) {
                                                $linkedTitle = 
Title::newFromText( $definition[self::ELEMENT_LINK] );
@@ -193,4 +195,20 @@
                return self::$mLinkTemplate->cloneNode( true );
        }
 
+       private function getParsedDefinition( $definition ) {
+               global $wgTitle;
+               $parser = new Parser();
+               $result = $parser->parse( 
$definition[self::ELEMENT_DEFINITION], $wgTitle, new ParserOptions() );
+               return  $result->getText();//htmlentities( $result->getText() , 
ENT_COMPAT, 'UTF-8' );
+       }
+
+       private function appendHTML( DOMNode $parent, $source ) {
+               $tmpDoc = new DOMDocument();
+               $tmpDoc->loadHTML( $source );
+               foreach ( $tmpDoc->getElementsByTagName( "body" )->item( 0 
)->childNodes as $node ) {
+                       $importedNode = $parent->ownerDocument->importNode( 
$node, true );
+                       $parent->appendChild( $importedNode );
+               }
+       }
+
 }

-- 
To view, visit https://gerrit.wikimedia.org/r/82870
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I95d8e5badeded7686768c57d7561c94320e72520
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/Lingo
Gerrit-Branch: master
Gerrit-Owner: Euvl <eu.vlase...@gmail.com>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to