@@ -53,6 +53,16 @@ class Save extends \Magento\Catalog\Controller\Adminhtml\Product
53
53
*/
54
54
private $ storeManager ;
55
55
56
+ /**
57
+ * @var \Magento\Framework\Escaper|null
58
+ */
59
+ private $ escaper ;
60
+
61
+ /**
62
+ * @var null|\Psr\Log\LoggerInterface
63
+ */
64
+ private $ logger ;
65
+
56
66
/**
57
67
* Save constructor.
58
68
*
@@ -62,19 +72,25 @@ class Save extends \Magento\Catalog\Controller\Adminhtml\Product
62
72
* @param \Magento\Catalog\Model\Product\Copier $productCopier
63
73
* @param \Magento\Catalog\Model\Product\TypeTransitionManager $productTypeManager
64
74
* @param \Magento\Catalog\Api\ProductRepositoryInterface $productRepository
75
+ * @param \Magento\Framework\Escaper|null $escaper
76
+ * @param \Psr\Log\LoggerInterface|null $logger
65
77
*/
66
78
public function __construct (
67
79
\Magento \Backend \App \Action \Context $ context ,
68
80
Product \Builder $ productBuilder ,
69
81
Initialization \Helper $ initializationHelper ,
70
82
\Magento \Catalog \Model \Product \Copier $ productCopier ,
71
83
\Magento \Catalog \Model \Product \TypeTransitionManager $ productTypeManager ,
72
- \Magento \Catalog \Api \ProductRepositoryInterface $ productRepository
84
+ \Magento \Catalog \Api \ProductRepositoryInterface $ productRepository ,
85
+ \Magento \Framework \Escaper $ escaper = null ,
86
+ \Psr \Log \LoggerInterface $ logger = null
73
87
) {
74
88
$ this ->initializationHelper = $ initializationHelper ;
75
89
$ this ->productCopier = $ productCopier ;
76
90
$ this ->productTypeManager = $ productTypeManager ;
77
91
$ this ->productRepository = $ productRepository ;
92
+ $ this ->escaper = $ escaper ?? $ this ->_objectManager ->get (\Magento \Framework \Escaper::class);
93
+ $ this ->logger = $ logger ?? $ this ->_objectManager ->get (\Psr \Log \LoggerInterface::class);
78
94
parent ::__construct ($ context , $ productBuilder );
79
95
}
80
96
@@ -128,12 +144,8 @@ public function execute()
128
144
$ this ->messageManager ->addNoticeMessage (
129
145
__ (
130
146
'SKU for product %1 has been changed to %2. ' ,
131
- $ this ->_objectManager ->get (
132
- \Magento \Framework \Escaper::class
133
- )->escapeHtml ($ product ->getName ()),
134
- $ this ->_objectManager ->get (
135
- \Magento \Framework \Escaper::class
136
- )->escapeHtml ($ product ->getSku ())
147
+ $ this ->escaper ->escapeHtml ($ product ->getName ()),
148
+ $ this ->escaper ->escapeHtml ($ product ->getSku ())
137
149
)
138
150
);
139
151
}
@@ -148,12 +160,12 @@ public function execute()
148
160
$ this ->messageManager ->addSuccessMessage (__ ('You duplicated the product. ' ));
149
161
}
150
162
} catch (\Magento \Framework \Exception \LocalizedException $ e ) {
151
- $ this ->_objectManager -> get (\ Psr \ Log \LoggerInterface::class) ->critical ($ e );
163
+ $ this ->logger ->critical ($ e );
152
164
$ this ->messageManager ->addExceptionMessage ($ e );
153
165
$ this ->getDataPersistor ()->set ('catalog_product ' , $ data );
154
166
$ redirectBack = $ productId ? true : 'new ' ;
155
167
} catch (\Exception $ e ) {
156
- $ this ->_objectManager -> get (\ Psr \ Log \LoggerInterface::class) ->critical ($ e );
168
+ $ this ->logger ->critical ($ e );
157
169
$ this ->messageManager ->addErrorMessage ($ e ->getMessage ());
158
170
$ this ->getDataPersistor ()->set ('catalog_product ' , $ data );
159
171
$ redirectBack = $ productId ? true : 'new ' ;
0 commit comments