@@ -51,17 +51,18 @@ public function newAction(Request $request)
51
51
$ user = new User ();
52
52
$ user ->setRoles (['ROLE_USER ' , 'ROLE_API ' ]);
53
53
$ form = $ this ->createForm (UserType::class, $ user );
54
+ $ locale = $ request ->getLocale ();
54
55
55
56
$ form ->handleRequest ($ request );
56
57
57
58
if ($ form ->isSubmitted () && $ form ->isValid ()) {
58
59
try {
59
- $ this ->validateUsername ($ form , $ request , new User ());
60
- $ this ->validatePassword ($ form , $ request );
61
- $ this ->validateEmail ($ form , $ request , new User ());
62
- $ this ->validateFirstname ($ form , $ request );
63
- $ this ->validateDob ($ form , $ request );
64
- $ this ->validateRoles ($ form , $ request );
60
+ $ this ->validateUsername ($ form , $ locale , new User ());
61
+ $ this ->validatePassword ($ form , $ locale );
62
+ $ this ->validateEmail ($ form , $ locale , new User ());
63
+ $ this ->validateFirstname ($ form , $ locale );
64
+ $ this ->validateDob ($ form , $ locale );
65
+ $ this ->validateRoles ($ form , $ locale );
65
66
66
67
// Everything ok, now proceed to create the user
67
68
$ userManager = $ this ->container ->get ('fos_user.user_manager ' );
@@ -131,17 +132,18 @@ public function editAction(User $user, Request $request)
131
132
132
133
$ editForm = $ this ->createForm (UserType::class, $ user );
133
134
$ deleteForm = $ this ->createDeleteForm ($ user );
135
+ $ locale = $ request ->getLocale ();
134
136
135
137
$ editForm ->handleRequest ($ request );
136
138
137
139
if ($ editForm ->isSubmitted () && $ editForm ->isValid ()) {
138
140
try {
139
- $ this ->validateUsername ($ editForm , $ request , $ user );
140
- $ this ->validatePassword ($ editForm , $ request );
141
- $ this ->validateEmail ($ editForm , $ request , $ user );
142
- $ this ->validateFirstname ($ editForm , $ request );
143
- $ this ->validateDob ($ editForm , $ request );
144
- $ this ->validateRoles ($ editForm , $ request );
141
+ $ this ->validateUsername ($ editForm , $ locale , $ user );
142
+ $ this ->validatePassword ($ editForm , $ locale );
143
+ $ this ->validateEmail ($ editForm , $ locale , $ user );
144
+ $ this ->validateFirstname ($ editForm , $ locale );
145
+ $ this ->validateDob ($ editForm , $ locale );
146
+ $ this ->validateRoles ($ editForm , $ locale );
145
147
146
148
$ user ->setFirstname ($ editForm ['firstname ' ]->getData ());
147
149
$ user ->setLastname ($ editForm ['lastname ' ]->getData ());
@@ -183,12 +185,12 @@ public function editAction(User $user, Request $request)
183
185
/**
184
186
* Validate username
185
187
*/
186
- private function validateUsername (\Symfony \Component \Form \Form $ form , Request $ request , User $ user ) {
188
+ private function validateUsername (\Symfony \Component \Form \Form $ form , $ locale , User $ user ) {
187
189
$ username = $ form ['username ' ]->getData ();
188
190
189
191
// Check if username is empty
190
192
if (null == $ username ) {
191
- $ this ->logMessageAndFlash (400 , 'danger ' , 'Empty username ' , $ this ->get ('translator ' )->trans ('api.show_error_username_missing ' , array (), 'messages ' , $ request -> getLocale ()) , $ request -> getLocale () );
193
+ $ this ->logMessageAndFlash (400 , 'danger ' , 'Empty username ' , $ this ->get ('translator ' )->trans ('api.show_error_username_missing ' , array (), 'messages ' , $ locale ) , $ locale );
192
194
}
193
195
194
196
// If the username belongs to same user, no need to further check
@@ -197,80 +199,80 @@ private function validateUsername(\Symfony\Component\Form\Form $form, Request $r
197
199
/** @var $user UserInterface */
198
200
$ user = $ this ->container ->get ('fos_user.user_manager ' )->findUserByUsernameOrEmail ($ username );
199
201
if (null != $ user ) {
200
- $ this ->logMessageAndFlash (400 , 'danger ' , 'User already exists. Username: ' .$ user ->getUsername (), $ this ->get ('translator ' )->trans ('api.show_error_username_taken ' , array (), 'messages ' , $ request -> getLocale ()) , $ request -> getLocale () );
202
+ $ this ->logMessageAndFlash (400 , 'danger ' , 'User already exists. Username: ' .$ user ->getUsername (), $ this ->get ('translator ' )->trans ('api.show_error_username_taken ' , array (), 'messages ' , $ locale ) , $ locale );
201
203
}
202
204
}
203
205
}
204
206
205
207
/**
206
208
* Validate password
207
209
*/
208
- private function validatePassword (\Symfony \Component \Form \Form $ form , Request $ request ) {
210
+ private function validatePassword (\Symfony \Component \Form \Form $ form , $ locale ) {
209
211
$ password = $ form ['password ' ]->getData ();
210
212
211
213
// Check if password is empty
212
214
if (null == $ password ) {
213
- $ this ->logMessageAndFlash (400 , 'danger ' , 'Invalid empty password ' , $ this ->get ('translator ' )->trans ('api.show_error_password ' , array (), 'messages ' , $ request -> getLocale ()) , $ request -> getLocale () );
215
+ $ this ->logMessageAndFlash (400 , 'danger ' , 'Invalid empty password ' , $ this ->get ('translator ' )->trans ('api.show_error_password ' , array (), 'messages ' , $ locale ) , $ locale );
214
216
}
215
217
}
216
218
217
219
/**
218
220
* Validate email
219
221
*/
220
- private function validateEmail (\Symfony \Component \Form \Form $ form , Request $ request , User $ user ) {
222
+ private function validateEmail (\Symfony \Component \Form \Form $ form , $ locale , User $ user ) {
221
223
$ email = $ form ['email ' ]->getData ();
222
224
223
225
// Check if email is valid
224
226
if (!filter_var ($ email , FILTER_VALIDATE_EMAIL )) {
225
- $ this ->logMessageAndFlash (400 , 'danger ' , 'Invalid email: ' .$ email , $ this ->get ('translator ' )->trans ('api.show_error_email ' , array (), 'messages ' , $ request -> getLocale ()) , $ request -> getLocale () );
227
+ $ this ->logMessageAndFlash (400 , 'danger ' , 'Invalid email: ' .$ email , $ this ->get ('translator ' )->trans ('api.show_error_email ' , array (), 'messages ' , $ locale ) , $ locale );
226
228
}
227
229
228
230
// If the email belongs to same user, no need to further check
229
231
if (!($ user ->getEmail () == $ email )) {
230
232
$ user = $ this ->container ->get ('fos_user.user_manager ' )->findUserByUsernameOrEmail ($ email );
231
233
if (null != $ user ) {
232
- $ this ->logMessageAndFlash (400 , 'danger ' , 'Email ' .$ user ->getEmail ().' already taken by Username: ' .$ user ->getUsername (), $ this ->get ('translator ' )->trans ('api.show_error_email_taken ' , array (), 'messages ' , $ request -> getLocale ()) , $ request -> getLocale () );
234
+ $ this ->logMessageAndFlash (400 , 'danger ' , 'Email ' .$ user ->getEmail ().' already taken by Username: ' .$ user ->getUsername (), $ this ->get ('translator ' )->trans ('api.show_error_email_taken ' , array (), 'messages ' , $ locale ) , $ locale );
233
235
}
234
236
}
235
237
}
236
238
237
239
/**
238
240
* Validate firstname
239
241
*/
240
- private function validateFirstname (\Symfony \Component \Form \Form $ form , Request $ request ) {
242
+ private function validateFirstname (\Symfony \Component \Form \Form $ form , $ locale ) {
241
243
$ firstname = $ form ['firstname ' ]->getData ();
242
244
243
245
// Check if firstname is empty. At least firstname is required.
244
246
if (null == $ firstname ) {
245
- $ this ->logMessageAndFlash (400 , 'danger ' , 'Invalid empty firstname ' , $ this ->get ('translator ' )->trans ('api.show_error_firstname ' , array (), 'messages ' , $ request -> getLocale ()) , $ request -> getLocale () );
247
+ $ this ->logMessageAndFlash (400 , 'danger ' , 'Invalid empty firstname ' , $ this ->get ('translator ' )->trans ('api.show_error_firstname ' , array (), 'messages ' , $ locale ) , $ locale );
246
248
}
247
249
248
250
}
249
251
250
252
/**
251
253
* Validate dob
252
254
*/
253
- private function validateDob (\Symfony \Component \Form \Form $ form , Request $ request ) {
255
+ private function validateDob (\Symfony \Component \Form \Form $ form , $ locale ) {
254
256
$ dob = $ form ['dob ' ]->getData ();
255
257
256
258
// Check if dob is valid
257
259
list ($ mm ,$ dd ,$ yyyy ) = explode ('/ ' , $ dob ->format ('m/d/Y ' ) );
258
260
if (!checkdate ($ mm ,$ dd ,$ yyyy )) {
259
- $ this ->logMessageAndFlash (400 , 'danger ' , 'Invalid mm/dd/yyyy DOB: ' .$ dob , $ this ->get ('translator ' )->trans ('api.show_error_dob ' , array (), 'messages ' , $ request -> getLocale ()) , $ request -> getLocale () );
261
+ $ this ->logMessageAndFlash (400 , 'danger ' , 'Invalid mm/dd/yyyy DOB: ' .$ dob , $ this ->get ('translator ' )->trans ('api.show_error_dob ' , array (), 'messages ' , $ locale ) , $ locale );
260
262
}
261
263
}
262
264
263
265
/**
264
266
* Validate roles
265
267
*/
266
- private function validateRoles (\Symfony \Component \Form \Form $ form , Request $ request ) {
268
+ private function validateRoles (\Symfony \Component \Form \Form $ form , $ locale ) {
267
269
$ roles = $ form ['roles ' ]->getData ();
268
270
$ permittedRoles = ['ROLE_API ' , "ROLE_USER " ];
269
271
270
272
foreach ($ roles as $ role ) {
271
273
// Check if role is valid
272
274
if (!in_array ($ role , $ permittedRoles ) )
273
- $ this ->logMessageAndFlash (400 , 'warning ' , 'Invalid role: ' .$ role , $ this ->get ('translator ' )->trans ('api.show_error_role ' .' ' .$ role , array (), 'messages ' , $ request -> getLocale ()) , $ request -> getLocale () );
275
+ $ this ->logMessageAndFlash (400 , 'warning ' , 'Invalid role: ' .$ role , $ this ->get ('translator ' )->trans ('api.show_error_role ' .' ' .$ role , array (), 'messages ' , $ locale ) , $ locale );
274
276
}
275
277
}
276
278
0 commit comments