Index: branches/5.0.x/in-news/units/articles/articles_event_handler.php =================================================================== diff -u -N -r12747 -r12794 --- branches/5.0.x/in-news/units/articles/articles_event_handler.php (.../articles_event_handler.php) (revision 12747) +++ branches/5.0.x/in-news/units/articles/articles_event_handler.php (.../articles_event_handler.php) (revision 12794) @@ -1,6 +1,6 @@ Application->getUnitOption($this->Prefix, 'Fields'); + $ml_formatter =& $this->Application->recallObject('kMultiLanguage'); /* @var $ml_formatter kMultiLanguage */ - $title_field = $ml_formatter->LangFieldName('Title'); - $body_field = $ml_formatter->LangFieldName('Body'); + $title_formatter = array_key_exists('formatter', $fields[$title_field]) ? $fields[$title_field]['formatter'] : false; - return Array ('Title', 'Body'); + if ($title_formatter == 'kMultiLanguage') { + $title_field = $ml_formatter->LangFieldName($title_field); + } + + $body_formatter = array_key_exists('formatter', $fields[$body_field]) ? $fields[$body_field]['formatter'] : false; + + if ($body_formatter == 'kMultiLanguage') { + $body_field = $ml_formatter->LangFieldName($body_field); + } + return Array ($title_field, $body_field); } @@ -263,11 +276,7 @@ if ($sub_node->Name == 'ATOM:SUMMARY') { $data[$sub_node->Name] = $this->getNodeContent($sub_node); } else { - if ($sub_node->Children) { - foreach ($sub_node->Children as $child_node) { - $data[$sub_node->Name].= $child_node->Data; // was $sub_node->Data; - } - } + $data[$sub_node->Name] = $this->getNodeContent($sub_node, 'xhtml'); // $sub_node->firstChild->Data; // was $sub_node->Data; } } while ( ($sub_node =& $sub_node->NextSibling()) ); @@ -301,11 +310,14 @@ * Returns parsed node content * * @param kXMLNode $node + * @param string $content_type * @return string */ - function getNodeContent(&$node) + function getNodeContent(&$node, $content_type = null) { - $content_type = array_key_exists('TYPE', $node->Attributes) ? $node->Attributes['TYPE'] : false; + if (!isset($content_type)) { + $content_type = array_key_exists('TYPE', $node->Attributes) ? $node->Attributes['TYPE'] : false; + } switch ($content_type) { case 'xhtml':