22
22
use Magento \Customer \Model \CustomerExtractor ;
23
23
use Magento \Customer \Model \Session ;
24
24
use Magento \Framework \App \Action \Context ;
25
+ use Magento \Framework \Escaper ;
25
26
use Magento \Framework \Exception \InputException ;
26
27
use Magento \Framework \Exception \InvalidEmailOrPasswordException ;
27
28
use Magento \Framework \Exception \State \UserLockedException ;
@@ -79,28 +80,36 @@ class EditPost extends AbstractAccount implements CsrfAwareActionInterface, Http
79
80
*/
80
81
private $ customerMapper ;
81
82
83
+ /**
84
+ * @var Escaper
85
+ */
86
+ private $ escaper ;
87
+
82
88
/**
83
89
* @param Context $context
84
90
* @param Session $customerSession
85
91
* @param AccountManagementInterface $customerAccountManagement
86
92
* @param CustomerRepositoryInterface $customerRepository
87
93
* @param Validator $formKeyValidator
88
94
* @param CustomerExtractor $customerExtractor
95
+ * @param Escaper|null $escaper
89
96
*/
90
97
public function __construct (
91
98
Context $ context ,
92
99
Session $ customerSession ,
93
100
AccountManagementInterface $ customerAccountManagement ,
94
101
CustomerRepositoryInterface $ customerRepository ,
95
102
Validator $ formKeyValidator ,
96
- CustomerExtractor $ customerExtractor
103
+ CustomerExtractor $ customerExtractor ,
104
+ ?Escaper $ escaper = null
97
105
) {
98
106
parent ::__construct ($ context );
99
107
$ this ->session = $ customerSession ;
100
108
$ this ->customerAccountManagement = $ customerAccountManagement ;
101
109
$ this ->customerRepository = $ customerRepository ;
102
110
$ this ->formKeyValidator = $ formKeyValidator ;
103
111
$ this ->customerExtractor = $ customerExtractor ;
112
+ $ this ->escaper = $ escaper ?: ObjectManager::getInstance ()->get (Escaper::class);
104
113
}
105
114
106
115
/**
@@ -196,7 +205,7 @@ public function execute()
196
205
$ this ->messageManager ->addSuccess (__ ('You saved the account information. ' ));
197
206
return $ resultRedirect ->setPath ('customer/account ' );
198
207
} catch (InvalidEmailOrPasswordException $ e ) {
199
- $ this ->messageManager ->addError ( $ e ->getMessage ());
208
+ $ this ->messageManager ->addErrorMessage ( $ this -> escaper -> escapeHtml ( $ e ->getMessage () ));
200
209
} catch (UserLockedException $ e ) {
201
210
$ message = __ (
202
211
'The account sign-in was incorrect or your account is disabled temporarily. '
@@ -207,9 +216,9 @@ public function execute()
207
216
$ this ->messageManager ->addError ($ message );
208
217
return $ resultRedirect ->setPath ('customer/account/login ' );
209
218
} catch (InputException $ e ) {
210
- $ this ->messageManager ->addError ( $ e ->getMessage ());
219
+ $ this ->messageManager ->addErrorMessage ( $ this -> escaper -> escapeHtml ( $ e ->getMessage () ));
211
220
foreach ($ e ->getErrors () as $ error ) {
212
- $ this ->messageManager ->addError ( $ error ->getMessage ());
221
+ $ this ->messageManager ->addErrorMessage ( $ this -> escaper -> escapeHtml ( $ error ->getMessage () ));
213
222
}
214
223
} catch (\Magento \Framework \Exception \LocalizedException $ e ) {
215
224
$ this ->messageManager ->addError ($ e ->getMessage ());
0 commit comments