From ae2333f5249c8abfcb7181e5da9d3ba1c4aa9ba0 Mon Sep 17 00:00:00 2001
From: Oleksandr Karpenko <okarpenko@ebay.com>
Date: Wed, 6 Apr 2016 12:29:44 +0300
Subject: [PATCH] MAGETWO-51604: [TD] Add functionality to save image in custom
 folder

---
 app/code/Magento/Theme/Model/Design/Backend/Favicon.php | 2 +-
 app/code/Magento/Theme/Model/Design/Backend/File.php    | 8 ++++----
 app/code/Magento/Theme/Model/Design/Backend/Logo.php    | 2 +-
 3 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/app/code/Magento/Theme/Model/Design/Backend/Favicon.php b/app/code/Magento/Theme/Model/Design/Backend/Favicon.php
index e7067aae785..9579eadafe2 100644
--- a/app/code/Magento/Theme/Model/Design/Backend/Favicon.php
+++ b/app/code/Magento/Theme/Model/Design/Backend/Favicon.php
@@ -41,7 +41,7 @@ class Favicon extends File
      *
      * @return string[]
      */
-    protected function _getAllowedExtensions()
+    public function getAllowedExtensions()
     {
         return ['ico', 'png', 'gif', 'jpg', 'jpeg', 'apng', 'svg'];
     }
diff --git a/app/code/Magento/Theme/Model/Design/Backend/File.php b/app/code/Magento/Theme/Model/Design/Backend/File.php
index 48eb89bae2c..bb8a2b90a77 100644
--- a/app/code/Magento/Theme/Model/Design/Backend/File.php
+++ b/app/code/Magento/Theme/Model/Design/Backend/File.php
@@ -134,7 +134,6 @@ class File extends BackendFile
     protected function _getUploadDir()
     {
         $fieldConfig = $this->getFieldConfig();
-        /* @var $fieldConfig \Magento\Framework\Simplexml\Element */
 
         if (!array_key_exists('upload_dir', $fieldConfig)) {
             throw new \Magento\Framework\Exception\LocalizedException(
@@ -142,9 +141,12 @@ class File extends BackendFile
             );
         }
 
+        $uploadDir = (string)$fieldConfig['upload_dir'];
         if (is_array($fieldConfig['upload_dir'])) {
             $uploadDir = $fieldConfig['upload_dir']['value'];
-            if (array_key_exists('scope_info', $fieldConfig['upload_dir']) && $fieldConfig['upload_dir']['scope_info']
+            if (
+                array_key_exists('scope_info', $fieldConfig['upload_dir'])
+                && $fieldConfig['upload_dir']['scope_info']
             ) {
                 $uploadDir = $this->_appendScopeInfo($uploadDir);
             }
@@ -152,8 +154,6 @@ class File extends BackendFile
             if (array_key_exists('config', $fieldConfig['upload_dir'])) {
                 $uploadDir = $this->_mediaDirectory->getRelativePath($uploadDir);
             }
-        } else {
-            $uploadDir = (string)$fieldConfig['upload_dir'];
         }
 
         return $uploadDir;
diff --git a/app/code/Magento/Theme/Model/Design/Backend/Logo.php b/app/code/Magento/Theme/Model/Design/Backend/Logo.php
index 55e5a5b62ce..95da4e6e5dd 100644
--- a/app/code/Magento/Theme/Model/Design/Backend/Logo.php
+++ b/app/code/Magento/Theme/Model/Design/Backend/Logo.php
@@ -39,7 +39,7 @@ class Logo extends File
      *
      * @return string[]
      */
-    protected function _getAllowedExtensions()
+    public function getAllowedExtensions()
     {
         return ['jpg', 'jpeg', 'gif', 'png', 'svg'];
     }
-- 
GitLab