9
9
use Magento \ImportExport \Model \Import \Entity \AbstractEntity ;
10
10
use Magento \ImportExport \Model \Import \ErrorProcessing \ProcessingErrorAggregatorInterface ;
11
11
use Magento \ImportExport \Model \History as ModelHistory ;
12
+ use Magento \Framework \Escaper ;
13
+ use Magento \Framework \App \ObjectManager ;
12
14
13
15
/**
14
16
* Import controller
@@ -37,22 +39,31 @@ abstract class ImportResult extends Import
37
39
*/
38
40
protected $ reportHelper ;
39
41
42
+ /**
43
+ * @var Escaper|null
44
+ */
45
+ protected $ escaper ;
46
+
40
47
/**
41
48
* @param \Magento\Backend\App\Action\Context $context
42
49
* @param \Magento\ImportExport\Model\Report\ReportProcessorInterface $reportProcessor
43
50
* @param \Magento\ImportExport\Model\History $historyModel
44
51
* @param \Magento\ImportExport\Helper\Report $reportHelper
52
+ * @param Escaper|null $escaper
45
53
*/
46
54
public function __construct (
47
55
\Magento \Backend \App \Action \Context $ context ,
48
56
\Magento \ImportExport \Model \Report \ReportProcessorInterface $ reportProcessor ,
49
57
\Magento \ImportExport \Model \History $ historyModel ,
50
- \Magento \ImportExport \Helper \Report $ reportHelper
58
+ \Magento \ImportExport \Helper \Report $ reportHelper ,
59
+ Escaper $ escaper = null
51
60
) {
52
61
parent ::__construct ($ context );
53
62
$ this ->reportProcessor = $ reportProcessor ;
54
63
$ this ->historyModel = $ historyModel ;
55
64
$ this ->reportHelper = $ reportHelper ;
65
+ $ this ->escaper = $ escaper
66
+ ?? ObjectManager::getInstance ()->get (Escaper::class);
56
67
}
57
68
58
69
/**
@@ -69,22 +80,20 @@ protected function addErrorMessages(
69
80
if ($ errorAggregator ->getErrorsCount ()) {
70
81
$ message = '' ;
71
82
$ counter = 0 ;
72
- $ unescapedMessages = [];
83
+ $ escapedMessages = [];
73
84
foreach ($ this ->getErrorMessages ($ errorAggregator ) as $ error ) {
74
- $ unescapedMessages [] = (++$ counter ) . '. ' . $ error ;
85
+ $ escapedMessages [] = (++$ counter ) . '. ' . $ this -> escaper -> escapeHtml ( $ error) ;
75
86
if ($ counter >= self ::LIMIT_ERRORS_MESSAGE ) {
76
87
break ;
77
88
}
78
89
}
79
- foreach ($ unescapedMessages as $ unescapedMessage ) {
80
- $ message .= $ resultBlock ->escapeHtml ($ unescapedMessage ) . '<br> ' ;
81
- }
90
+ $ message .= implode ('<br> ' , $ escapedMessages );
82
91
if ($ errorAggregator ->hasFatalExceptions ()) {
83
92
foreach ($ this ->getSystemExceptions ($ errorAggregator ) as $ error ) {
84
- $ message .= $ error ->getErrorMessage ()
93
+ $ message .= $ this -> escaper -> escapeHtml ( $ error ->getErrorMessage () )
85
94
. ' <a href="#" onclick="$(this).next().show();$(this).hide();return false;"> '
86
95
. __ ('Show more ' ) . '</a><div style="display:none;"> ' . __ ('Additional data ' ) . ': '
87
- . $ error ->getErrorDescription () . '</div> ' ;
96
+ . $ this -> escaper -> escapeHtml ( $ error ->getErrorDescription () ) . '</div> ' ;
88
97
}
89
98
}
90
99
try {
0 commit comments