prevent export and invoice from breaking on equal sign (#2054)
This commit is contained in:
@@ -21,6 +21,7 @@ use App\Repository\Query\CustomerQuery;
|
|||||||
use App\Repository\Query\TimesheetQuery;
|
use App\Repository\Query\TimesheetQuery;
|
||||||
use App\Twig\DateExtensions;
|
use App\Twig\DateExtensions;
|
||||||
use DateTime;
|
use DateTime;
|
||||||
|
use PhpOffice\PhpSpreadsheet\Cell\DataType;
|
||||||
use PhpOffice\PhpSpreadsheet\Shared\Date;
|
use PhpOffice\PhpSpreadsheet\Shared\Date;
|
||||||
use PhpOffice\PhpSpreadsheet\Spreadsheet;
|
use PhpOffice\PhpSpreadsheet\Spreadsheet;
|
||||||
use PhpOffice\PhpSpreadsheet\Style\Border;
|
use PhpOffice\PhpSpreadsheet\Style\Border;
|
||||||
@@ -312,7 +313,7 @@ abstract class AbstractSpreadsheetRenderer
|
|||||||
$columns['description']['render'] = function (Worksheet $sheet, int $row, int $column, ExportItemInterface $entity) use (&$isColumnFormatted, $maxWidth, $wrapText) {
|
$columns['description']['render'] = function (Worksheet $sheet, int $row, int $column, ExportItemInterface $entity) use (&$isColumnFormatted, $maxWidth, $wrapText) {
|
||||||
$cell = $sheet->getCellByColumnAndRow($column, $row);
|
$cell = $sheet->getCellByColumnAndRow($column, $row);
|
||||||
|
|
||||||
$cell->setValue($entity->getDescription());
|
$cell->setValueExplicit($entity->getDescription(), DataType::TYPE_STRING);
|
||||||
|
|
||||||
// Apply wrap text if configured
|
// Apply wrap text if configured
|
||||||
if ($wrapText) {
|
if ($wrapText) {
|
||||||
|
|||||||
@@ -12,6 +12,7 @@ namespace App\Invoice\Renderer;
|
|||||||
use App\Entity\InvoiceDocument;
|
use App\Entity\InvoiceDocument;
|
||||||
use App\Invoice\InvoiceModel;
|
use App\Invoice\InvoiceModel;
|
||||||
use PhpOffice\PhpSpreadsheet\Cell\Cell;
|
use PhpOffice\PhpSpreadsheet\Cell\Cell;
|
||||||
|
use PhpOffice\PhpSpreadsheet\Cell\DataType;
|
||||||
use PhpOffice\PhpSpreadsheet\IOFactory;
|
use PhpOffice\PhpSpreadsheet\IOFactory;
|
||||||
use PhpOffice\PhpSpreadsheet\Spreadsheet;
|
use PhpOffice\PhpSpreadsheet\Spreadsheet;
|
||||||
use PhpOffice\PhpSpreadsheet\Worksheet\Worksheet;
|
use PhpOffice\PhpSpreadsheet\Worksheet\Worksheet;
|
||||||
@@ -93,7 +94,11 @@ abstract class AbstractSpreadsheetRenderer extends AbstractRenderer
|
|||||||
$value = str_replace($searchKey, $content, $value);
|
$value = str_replace($searchKey, $content, $value);
|
||||||
}
|
}
|
||||||
|
|
||||||
$cell->setValue($value);
|
if (\is_string($value)) {
|
||||||
|
$cell->setValueExplicit($value, DataType::TYPE_STRING);
|
||||||
|
} else {
|
||||||
|
$cell->setValue($value);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($sheetValues !== false && $entryRow < $invoiceItemCount - 1) {
|
if ($sheetValues !== false && $entryRow < $invoiceItemCount - 1) {
|
||||||
|
|||||||
@@ -140,6 +140,7 @@ abstract class AbstractRendererTest extends KernelTestCase
|
|||||||
->setDuration(400)
|
->setDuration(400)
|
||||||
->setRate(1947.99)
|
->setRate(1947.99)
|
||||||
->setUser($user2)
|
->setUser($user2)
|
||||||
|
->setDescription('== jhg ljhg ') // make sure that spreadsheets don't render it as formula
|
||||||
->setActivity($activity)
|
->setActivity($activity)
|
||||||
->setProject($project)
|
->setProject($project)
|
||||||
->setBegin(new \DateTime())
|
->setBegin(new \DateTime())
|
||||||
|
|||||||
@@ -162,6 +162,7 @@ trait RendererTestTrait
|
|||||||
->setRate(111.11)
|
->setRate(111.11)
|
||||||
->setUser($user1)
|
->setUser($user1)
|
||||||
->setActivity($activity2)
|
->setActivity($activity2)
|
||||||
|
->setDescription('== jhg ljhg ') // make sure that spreadsheets don't render it as formula
|
||||||
->setProject($project2)
|
->setProject($project2)
|
||||||
->setBegin(new \DateTime())
|
->setBegin(new \DateTime())
|
||||||
->setEnd(new \DateTime())
|
->setEnd(new \DateTime())
|
||||||
|
|||||||
Reference in New Issue
Block a user