Fix Travis build error
This commit is contained in:
parent
8a1d07f71a
commit
6f0579c78f
|
|
@ -39,7 +39,7 @@ abstract class AbstractContainer extends AbstractElement
|
|||
*/
|
||||
protected function addElement(AbstractElement $element)
|
||||
{
|
||||
// $type = basename(get_class($element));
|
||||
// $type = str_replace('PhpOffice\\PhpWord\\Element\\', '', get_class($element)));
|
||||
$element->setElementIndex($this->countElements() + 1);
|
||||
$element->setElementId();
|
||||
$element->setPhpWord($this->phpWord);
|
||||
|
|
|
|||
|
|
@ -73,8 +73,7 @@ class Element
|
|||
public function write()
|
||||
{
|
||||
$content = '';
|
||||
$writerClass = substr(get_class($this), 0, strrpos(get_class($this), '\\')) . '\\' .
|
||||
basename(get_class($this->element));
|
||||
$writerClass = str_replace('\\Element\\', '\\Writer\\HTML\\Element\\', get_class($this->element));
|
||||
if (class_exists($writerClass)) {
|
||||
$writer = new $writerClass($this->parentWriter, $this->element, $this->withoutP);
|
||||
$content = $writer->write();
|
||||
|
|
|
|||
|
|
@ -24,4 +24,10 @@ namespace PhpOffice\PhpWord\Writer\ODText\Element;
|
|||
*/
|
||||
class Container extends \PhpOffice\PhpWord\Writer\Word2007\Element\Container
|
||||
{
|
||||
/**
|
||||
* Namespace; Can't use __NAMESPACE__ in inherited class (ODText)
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
protected $namespace = 'PhpOffice\\PhpWord\\Writer\\ODText\\Element';
|
||||
}
|
||||
|
|
|
|||
|
|
@ -101,7 +101,7 @@ class Content extends AbstractPart
|
|||
if (preg_match('#^T[0-9]+$#', $styleName) != 0
|
||||
|| preg_match('#^P[0-9]+$#', $styleName) != 0
|
||||
) {
|
||||
$styleClass = 'PhpOffice\\PhpWord\\Writer\\ODText\\Style\\' . basename(get_class($style));
|
||||
$styleClass = str_replace('\\Style\\', '\\Writer\\ODText\\Style\\', get_class($style));
|
||||
if (class_exists($styleClass)) {
|
||||
$styleWriter = new $styleClass($xmlWriter, $style);
|
||||
$styleWriter->setIsAuto(true);
|
||||
|
|
|
|||
|
|
@ -91,7 +91,7 @@ class Styles extends AbstractPart
|
|||
if (preg_match('#^T[0-9]+$#', $styleName) == 0
|
||||
&& preg_match('#^P[0-9]+$#', $styleName) == 0
|
||||
) {
|
||||
$styleClass = 'PhpOffice\\PhpWord\\Writer\\ODText\\Style\\' . basename(get_class($style));
|
||||
$styleClass = str_replace('\\Style\\', '\\Writer\\ODText\\Style\\', get_class($style));
|
||||
if (class_exists($styleClass)) {
|
||||
$styleWriter = new $styleClass($xmlWriter, $style);
|
||||
$styleWriter->write();
|
||||
|
|
|
|||
|
|
@ -68,8 +68,7 @@ class Element
|
|||
public function write()
|
||||
{
|
||||
$content = '';
|
||||
$writerClass = substr(get_class($this), 0, strrpos(get_class($this), '\\')) . '\\' .
|
||||
basename(get_class($this->element));
|
||||
$writerClass = str_replace('\\Element\\', '\\Writer\\RTF\\Element\\', get_class($this->element));
|
||||
if (class_exists($writerClass)) {
|
||||
$writer = new $writerClass($this->parentWriter, $this->element, $this->withoutP);
|
||||
$content = $writer->write();
|
||||
|
|
|
|||
|
|
@ -84,12 +84,7 @@ abstract class AbstractElement
|
|||
protected function getElement()
|
||||
{
|
||||
if (!is_null($this->element)) {
|
||||
$elementClass = 'PhpOffice\\PhpWord\\Element\\' . basename(get_class($this->element));
|
||||
if ($this->element instanceof $elementClass) {
|
||||
return $this->element;
|
||||
} else {
|
||||
throw new Exception('No valid element assigned.');
|
||||
}
|
||||
return $this->element;
|
||||
} else {
|
||||
throw new Exception('No element assigned.');
|
||||
}
|
||||
|
|
|
|||
|
|
@ -26,6 +26,13 @@ use PhpOffice\PhpWord\Element\TextBreak as TextBreakElement;
|
|||
*/
|
||||
class Container extends AbstractElement
|
||||
{
|
||||
/**
|
||||
* Namespace; Can't use __NAMESPACE__ in inherited class (ODText)
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
protected $namespace = 'PhpOffice\\PhpWord\\Writer\\Word2007\\Element';
|
||||
|
||||
/**
|
||||
* Write element
|
||||
*/
|
||||
|
|
@ -35,13 +42,12 @@ class Container extends AbstractElement
|
|||
$container = $this->getElement();
|
||||
|
||||
// Loop through subelements
|
||||
$containerClass = basename(get_class($container));
|
||||
$containerClass = substr(get_class($container), strrpos(get_class($this), '\\') + 1);
|
||||
$subelements = $container->getElements();
|
||||
$withoutP = in_array($containerClass, array('TextRun', 'Footnote', 'Endnote', 'TextBox')) ? true : false;
|
||||
if (count($subelements) > 0) {
|
||||
foreach ($subelements as $subelement) {
|
||||
$writerClass = substr(get_class($this), 0, strrpos(get_class($this), '\\')) . '\\' .
|
||||
basename(get_class($subelement));
|
||||
$writerClass = str_replace('PhpOffice\\PhpWord\\Element', $this->namespace, get_class($subelement));
|
||||
if (class_exists($writerClass)) {
|
||||
$writer = new $writerClass($xmlWriter, $subelement, $withoutP);
|
||||
$writer->write();
|
||||
|
|
@ -50,7 +56,7 @@ class Container extends AbstractElement
|
|||
} else {
|
||||
// Special case for Cell: They have to contain a TextBreak at least
|
||||
if ($containerClass == 'Cell') {
|
||||
$writerClass = substr(get_class($this), 0, strrpos(get_class($this), '\\')) . '\\TextBreak';
|
||||
$writerClass = "{$this->namespace}\\TextBreak";
|
||||
$writer = new $writerClass($xmlWriter, new TextBreakElement(), $withoutP);
|
||||
$writer->write();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -75,13 +75,6 @@ abstract class AbstractStyle
|
|||
*/
|
||||
protected function getStyle()
|
||||
{
|
||||
if (!is_null($this->style)) {
|
||||
$styleClass = 'PhpOffice\\PhpWord\\Style\\' . basename(get_class($this->style));
|
||||
if (is_object($this->style) && (!$this->style instanceof $styleClass)) {
|
||||
throw new Exception('No valid style assigned.');
|
||||
}
|
||||
}
|
||||
|
||||
return $this->style;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue