From 24dc2716f79a9db703aa0925661483aa7fff2ecb Mon Sep 17 00:00:00 2001 From: yuri Date: Thu, 18 May 2017 12:44:10 +0300 Subject: [PATCH 1/3] fix excel export label --- application/Espo/Core/Export/Xlsx.php | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/application/Espo/Core/Export/Xlsx.php b/application/Espo/Core/Export/Xlsx.php index ebca7e5be6..602223b345 100644 --- a/application/Espo/Core/Export/Xlsx.php +++ b/application/Espo/Core/Export/Xlsx.php @@ -174,7 +174,16 @@ class Xlsx extends \Espo\Core\Injectable $defs['type'] = 'base'; } - $label = $this->getInjection('language')->translate($name, 'fields', $entityType); + $label = $name; + if (strpos($name, '_') !== false) { + list($linkName, $foreignField) = explode('_', $name); + $foreigScope = $this->getInjection('metadata')->get(['entityDefs', $entityType, 'links', $linkName, 'entity']); + if ($foreigScope) { + $label = $this->getInjection('language')->translate($linkName, 'links', $entityType) . '.' . $this->getInjection('language')->translate($foreignField, 'fields', $foreigScope); + } + } else { + $label = $this->getInjection('language')->translate($name, 'fields', $entityType); + } $sheet->setCellValue($col . $rowNumber, $label); $sheet->getColumnDimension($col)->setAutoSize(true); From a63a690307f0b292e26a9e013ee4d2c5de0ba615 Mon Sep 17 00:00:00 2001 From: yuri Date: Thu, 18 May 2017 13:24:15 +0300 Subject: [PATCH 2/3] field manager: forbid underscore name --- client/src/views/admin/field-manager/edit.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/client/src/views/admin/field-manager/edit.js b/client/src/views/admin/field-manager/edit.js index fb940cb6f1..4a8be748bd 100644 --- a/client/src/views/admin/field-manager/edit.js +++ b/client/src/views/admin/field-manager/edit.js @@ -248,7 +248,7 @@ Espo.define('views/admin/field-manager/edit', ['view', 'model'], function (Dep, var name = this.model.get('name'); this.model.set('label', name); if (name) { - name = name.replace('-', '').replace(/[^\w\s]/gi, '').replace(/ (.)/g, function(match, g) { + name = name.replace(/-/i, '').replace(/_/i, '').replace(/[^\w\s]/gi, '').replace(/ (.)/g, function(match, g) { return g.toUpperCase(); }).replace(' ', ''); if (name.length) { From 9bca545f012286d7355cd1212fbce4f6cbdc9d33 Mon Sep 17 00:00:00 2001 From: yuri Date: Fri, 19 May 2017 15:11:05 +0300 Subject: [PATCH 3/3] fix excel temp file name --- application/Espo/Core/Export/Xlsx.php | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/application/Espo/Core/Export/Xlsx.php b/application/Espo/Core/Export/Xlsx.php index 602223b345..b23da6b3a7 100644 --- a/application/Espo/Core/Export/Xlsx.php +++ b/application/Espo/Core/Export/Xlsx.php @@ -401,12 +401,13 @@ class Xlsx extends \Espo\Core\Injectable $sheet->getStyle($linkColumn.$startingRowNumber.':'.$linkColumn.$rowNumber)->applyFromArray($linkStyle); } - $tempOutput = tempnam('/tmp/', 'ESPO'); $objWriter = \PHPExcel_IOFactory::createWriter($phpExcel, 'Excel2007'); - $objWriter->save($tempOutput); - $fp = fopen($tempOutput, 'r'); + + $tempFileName = @tempnam(\PHPExcel_Shared_File::sys_get_temp_dir(), 'phpxltmp'); + $objWriter->save($tempFileName); + $fp = fopen($tempFileName, 'r'); $xlsx = stream_get_contents($fp); - unlink($tempOutput); + unlink($tempFileName); return $xlsx; }