fix nested list
This commit is contained in:
parent
33739ea21c
commit
304173c4d7
|
|
@ -93,6 +93,13 @@ abstract class AbstractElement
|
|||
*/
|
||||
private $nestedLevel = 0;
|
||||
|
||||
/**
|
||||
* A reference to the parent
|
||||
*
|
||||
* @var \PhpOffice\PhpWord\Element\AbstractElement
|
||||
*/
|
||||
private $parent;
|
||||
|
||||
/**
|
||||
* Parent container type
|
||||
*
|
||||
|
|
@ -321,6 +328,11 @@ abstract class AbstractElement
|
|||
$this->commentRangeEnd->setEndElement($this);
|
||||
}
|
||||
|
||||
public function getParent()
|
||||
{
|
||||
return $this->parent;
|
||||
}
|
||||
|
||||
/**
|
||||
* Set parent container
|
||||
*
|
||||
|
|
@ -331,6 +343,7 @@ abstract class AbstractElement
|
|||
public function setParentContainer(AbstractElement $container)
|
||||
{
|
||||
$this->parentContainer = substr(get_class($container), strrpos(get_class($container), '\\') + 1);
|
||||
$this->parent = $container;
|
||||
|
||||
// Set nested level
|
||||
$this->nestedLevel = $container->getNestedLevel();
|
||||
|
|
|
|||
|
|
@ -366,7 +366,7 @@ class Html
|
|||
*/
|
||||
private static function shouldAddTextRun(\DOMNode $node)
|
||||
{
|
||||
$containsBlockElement = self::$xpath->query('.//table|./p|./ul|./li', $node)->length > 0;
|
||||
$containsBlockElement = self::$xpath->query('.//table|./p|./ul|./ol', $node)->length > 0;
|
||||
if ($containsBlockElement) {
|
||||
return false;
|
||||
}
|
||||
|
|
@ -402,7 +402,7 @@ class Html
|
|||
*/
|
||||
private static function parseList($node, $element, &$styles, &$data)
|
||||
{
|
||||
$isOrderedList = $node->nodeName == 'ol';
|
||||
$isOrderedList = $node->nodeName === 'ol';
|
||||
if (isset($data['listdepth'])) {
|
||||
$data['listdepth']++;
|
||||
} else {
|
||||
|
|
@ -410,6 +410,9 @@ class Html
|
|||
$styles['list'] = 'listStyle_' . self::$listIndex++;
|
||||
$element->getPhpWord()->addNumberingStyle($styles['list'], self::getListStyle($isOrderedList));
|
||||
}
|
||||
if ($node->parentNode->nodeName === 'li') {
|
||||
return $element->getParent();
|
||||
}
|
||||
}
|
||||
|
||||
private static function getListStyle($isOrderedList)
|
||||
|
|
|
|||
Loading…
Reference in New Issue