Tinebase_Export - unify export file name
authorPaul Mehrer <p.mehrer@metaways.de>
Fri, 11 Aug 2017 12:58:35 +0000 (14:58 +0200)
committerPaul Mehrer <p.mehrer@metaways.de>
Fri, 11 Aug 2017 13:59:36 +0000 (15:59 +0200)
Change-Id: Id1d512408b299c5055fbc1b4eca4a0f1f39d7d76
Reviewed-on: http://gerrit.tine20.com/customers/5455
Tested-by: Jenkins CI (http://ci.tine20.com/) <tine20-jenkins@metaways.de>
Reviewed-by: Paul Mehrer <p.mehrer@metaways.de>
Tested-by: Paul Mehrer <p.mehrer@metaways.de>
tine20/Tinebase/Export/Abstract.php
tine20/Tinebase/Export/Doc.php
tine20/Tinebase/Export/Xls.php

index e752cb4..345320a 100644 (file)
@@ -427,7 +427,11 @@ abstract class Tinebase_Export_Abstract implements Tinebase_Record_IteratableInt
      */
     public function getDownloadFilename($_appName, $_format)
     {
-        return 'export_' . strtolower($_appName) . '.' . $_format;
+        $model = '';
+        if (null !== $this->_modelName && count($modelParts = explode('_', $this->_modelName, 3)) === 3) {
+            $model = '_' . strtolower($modelParts[2]);
+        }
+        return 'export_' . strtolower($_appName) . $model . '.' . $_format;
     }
 
 
index def5427..50d47ec 100644 (file)
@@ -73,8 +73,6 @@ class Tinebase_Export_Doc extends Tinebase_Export_Abstract implements Tinebase_R
     protected $_subTwigTemplates = array();
     protected $_subTwigMappings = array();
 
-
-
     /**
      * get download content type
      *
@@ -85,19 +83,6 @@ class Tinebase_Export_Doc extends Tinebase_Export_Abstract implements Tinebase_R
         return 'application/vnd.ms-word';
     }
 
-
-    /**
-     * return download filename
-     *
-     * @param string $_appName
-     * @param string $_format
-     * @return string
-     */
-    public function getDownloadFilename($_appName, $_format)
-    {
-        return 'letter_' . strtolower($_appName) . '.docx';
-    }
-
     public static function getDefaultFormat()
     {
         return 'docx';
index 070c880..aa9b644 100644 (file)
@@ -104,7 +104,7 @@ class Tinebase_Export_Xls extends Tinebase_Export_Abstract implements Tinebase_R
     {
         $result = parent::getDownloadFilename($_appName, $_format);
 
-        if ('Excel2007' === $this->_excelVersion) {
+        if ('Excel2007' === $this->_excelVersion && $_format !== 'xlsx') {
             // excel2007 extension is .xlsx
             $result .= 'x';
         }