2018-12-08 00:22:04 +02:00
|
|
|
<?php
|
|
|
|
|
/**
|
|
|
|
|
* This file is part of PHPWord - A pure PHP library for reading and writing
|
|
|
|
|
* word processing documents.
|
|
|
|
|
*
|
|
|
|
|
* PHPWord is free software distributed under the terms of the GNU Lesser
|
|
|
|
|
* General Public License version 3 as published by the Free Software Foundation.
|
|
|
|
|
*
|
|
|
|
|
* For the full copyright and license information, please read the LICENSE
|
|
|
|
|
* file that was distributed with this source code. For the full list of
|
|
|
|
|
* contributors, visit https://github.com/PHPOffice/PHPWord/contributors.
|
|
|
|
|
*
|
|
|
|
|
* @see https://github.com/PHPOffice/PHPWord
|
2022-09-16 11:45:45 +02:00
|
|
|
*
|
2018-12-08 00:22:04 +02:00
|
|
|
* @license http://www.gnu.org/licenses/lgpl.txt LGPL version 3
|
|
|
|
|
*/
|
|
|
|
|
|
2022-09-16 14:09:17 +02:00
|
|
|
namespace PhpOffice\PhpWordTests;
|
|
|
|
|
|
|
|
|
|
use PhpOffice\PhpWord\TemplateProcessor;
|
2018-12-08 00:22:04 +02:00
|
|
|
|
2018-12-26 22:27:17 +01:00
|
|
|
/**
|
|
|
|
|
* This class is used to expose publicly methods that are otherwise private or protected.
|
2022-09-16 11:45:45 +02:00
|
|
|
* This makes testing those methods easier.
|
2018-12-26 22:27:17 +01:00
|
|
|
*
|
|
|
|
|
* @author troosan
|
|
|
|
|
*/
|
2018-12-08 00:22:04 +02:00
|
|
|
class TestableTemplateProcesor extends TemplateProcessor
|
|
|
|
|
{
|
2019-02-04 23:59:37 +01:00
|
|
|
public function __construct($mainPart = null, $settingsPart = null)
|
2018-12-08 00:22:04 +02:00
|
|
|
{
|
2018-12-27 00:24:45 +01:00
|
|
|
$this->tempDocumentMainPart = $mainPart;
|
2019-02-04 23:59:37 +01:00
|
|
|
$this->tempDocumentSettingsPart = $settingsPart;
|
2018-12-08 00:22:04 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function fixBrokenMacros($documentPart)
|
|
|
|
|
{
|
|
|
|
|
return parent::fixBrokenMacros($documentPart);
|
|
|
|
|
}
|
2018-12-26 22:27:17 +01:00
|
|
|
|
2019-01-31 01:26:19 +01:00
|
|
|
public function splitTextIntoTexts($text)
|
|
|
|
|
{
|
|
|
|
|
return parent::splitTextIntoTexts($text);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function textNeedsSplitting($text)
|
|
|
|
|
{
|
|
|
|
|
return parent::textNeedsSplitting($text);
|
|
|
|
|
}
|
|
|
|
|
|
2018-12-26 22:27:17 +01:00
|
|
|
public function getVariablesForPart($documentPartXML)
|
|
|
|
|
{
|
|
|
|
|
$documentPartXML = parent::fixBrokenMacros($documentPartXML);
|
|
|
|
|
|
|
|
|
|
return parent::getVariablesForPart($documentPartXML);
|
|
|
|
|
}
|
2018-12-27 00:24:45 +01:00
|
|
|
|
2019-01-31 01:26:19 +01:00
|
|
|
public function findXmlBlockStart($offset, $blockType)
|
|
|
|
|
{
|
|
|
|
|
return parent::findXmlBlockStart($offset, $blockType);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function findContainingXmlBlockForMacro($macro, $blockType = 'w:p')
|
|
|
|
|
{
|
|
|
|
|
return parent::findContainingXmlBlockForMacro($macro, $blockType);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function getSlice($startPosition, $endPosition = 0)
|
|
|
|
|
{
|
|
|
|
|
return parent::getSlice($startPosition, $endPosition);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @return string
|
|
|
|
|
*/
|
2018-12-27 00:24:45 +01:00
|
|
|
public function getMainPart()
|
|
|
|
|
{
|
|
|
|
|
return $this->tempDocumentMainPart;
|
|
|
|
|
}
|
2019-02-04 23:59:37 +01:00
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @return string
|
|
|
|
|
*/
|
|
|
|
|
public function getSettingsPart()
|
|
|
|
|
{
|
|
|
|
|
return $this->tempDocumentSettingsPart;
|
|
|
|
|
}
|
2018-12-08 00:22:04 +02:00
|
|
|
}
|