Advertisement
Guest User

Untitled

a guest
Sep 25th, 2016
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.44 KB | None | 0 0
  1. <?php
  2.  
  3. namespace AppBundleController;
  4.  
  5. use SymfonyBundleFrameworkBundleControllerController;
  6. use SymfonyComponentHttpFoundationRequest;
  7. use SymfonyComponentValidatorConstraints as Assert;
  8. use SymfonyComponentHttpFoundationJsonResponse;
  9. use BackendBundleEntityUser;
  10.  
  11. class UserController extends Controller {
  12.  
  13. public function newAction(Request $request) {
  14. $helpers = $this->get("app.helpers");
  15.  
  16. $json = $request->get("json", null);
  17. $params = json_decode($json);
  18. $data = array(
  19. "status" => "error",
  20. "code" => 400,
  21. "msg" => "User not created"
  22. );
  23.  
  24. if ($json != null) {
  25. $createdAt = new Datetime("now");
  26. $image = null;
  27. $role = "user";
  28.  
  29. $email = (isset($params->email)) ? $params->email : null;
  30. $name = (isset($params->name) && ctype_alpha($params->name)) ? $params->name : null;
  31. $surname = (isset($params->surname) && ctype_alpha($params->surname)) ? $params->surname : null;
  32. $password = (isset($params->password)) ? $params->password : null;
  33.  
  34. $emailConstraint = new AssertEmail();
  35. $emailConstraint->message = "This email is not valid";
  36. $validate_email = $this->get("validator")->validate($email, $emailConstraint);
  37.  
  38. if ($email != null && count($validate_email) == 0 &&
  39. $password != null && $name != null && $surname != null
  40. ) {
  41. $user = new User();
  42. $user->setCreatedAt($createdAt);
  43. $user->setImage($image);
  44. $user->setRole($role);
  45. $user->setEmail($email);
  46. $user->setName($name);
  47. $user->setSurname($surname);
  48.  
  49. //Cifrar la Password
  50. $pwd = hash('sha256', $password);
  51. $user->setPassword($pwd);
  52.  
  53. $em = $this->getDoctrine()->getManager();
  54. $isset_user = $em->getRepository("BackendBundle:User")->findBy(
  55. array(
  56. "email" => $email
  57. ));
  58. if (count($isset_user) == 0) {
  59. $em->persist($user);
  60. $em->flush();
  61.  
  62. $data["status"] = 'success';
  63. $data["code"] = 200;
  64. $data["msg"] = 'New user created !!';
  65. } else {
  66. $data = array(
  67. "status" => "error",
  68. "code" => 400,
  69. "msg" => "User not created, duplicated"
  70. );
  71. }
  72. }
  73. }
  74. return $helpers->json($data);
  75. }
  76.  
  77. public function editAction(Request $request) {
  78. $helpers = $this->get("app.helpers");
  79.  
  80. $hash = $request->get("authorization", null);
  81. $authCheck = $helpers->authCheck($hash);
  82.  
  83. if ($authCheck == true) {
  84.  
  85. $identity = $helpers->authCheck($hash, true);
  86.  
  87. $em = $this->getDoctrine()->getManager();
  88. $user = $em->getRepository("BackendBundle:User")->findOneBy(array(
  89. "id" => $identity->sub
  90. ));
  91.  
  92. $json = $request->get("json", null);
  93. $params = json_decode($json);
  94.  
  95. $data = array(
  96. "status" => "error",
  97. "code" => 400,
  98. "msg" => "User not updated"
  99. );
  100.  
  101. if ($json != null) {
  102. $createdAt = new Datetime("now");
  103. $image = null;
  104. $role = "user";
  105.  
  106. $email = (isset($params->email)) ? $params->email : null;
  107. $name = (isset($params->name) && ctype_alpha($params->name)) ? $params->name : null;
  108. $surname = (isset($params->surname) && ctype_alpha($params->surname)) ? $params->surname : null;
  109. $password = (isset($params->password)) ? $params->password : null;
  110.  
  111. $emailContraint = new AssertEmail();
  112. $emailContraint->message = "This email is not valid !!";
  113. $validate_email = $this->get("validator")->validate($email, $emailContraint);
  114.  
  115. if ($email != null && count($validate_email) == 0 &&
  116. $name != null && $surname != null
  117. ) {
  118. $user->setCreatedAt($createdAt);
  119. //$user->setImage($image);
  120. $user->setRole($role);
  121. $user->setEmail($email);
  122. $user->setName($name);
  123. $user->setSurname($surname);
  124.  
  125. if($password != null && !empty($password)){
  126. //Cifrar la password
  127. $pwd = hash('sha256', $password);
  128. $user->setPassword($pwd);
  129. }
  130.  
  131. $em = $this->getDoctrine()->getManager();
  132. $isset_user = $em->getRepository("BackendBundle:User")->findBy(
  133. array(
  134. "email" => $email
  135. ));
  136.  
  137. if (count($isset_user) == 0 || $identity->email == $email) {
  138. $em->persist($user);
  139. $em->flush();
  140.  
  141. $data["status"] = 'success';
  142. $data["code"] = 200;
  143. $data["msg"] = 'User updated !!';
  144. } else {
  145. $data = array(
  146. "status" => "error",
  147. "code" => 400,
  148. "msg" => "User not updated, duplicated!!"
  149. );
  150. }
  151. }
  152. } else {
  153. $data = array(
  154. "status" => "error",
  155. "code" => 400,
  156. "msg" => "Authorization not valid"
  157. );
  158. }
  159. }
  160.  
  161. return $helpers->json($data);
  162. }
  163. // public function uploadImageAction(Request $request) {
  164. // $helpers = $this->get("app.helpers");
  165. //
  166. // $hash = $request->get("authorization", null);
  167. // $authCheck = $helpers->authCheck($hash);
  168. //
  169. // if ($authCheck) {
  170. // $identity = $helpers->authCheck($hash, true);
  171. //
  172. // $em = $this->getDoctrine()->getManager();
  173. // $user = $em->getRepository("BackendBundle:User")->findOneBy(array(
  174. // "id" => $identity->sub
  175. // ));
  176. //
  177. // //Upload File
  178. // $file = $request->files->get("image");
  179. // if (!empty($file) && $file != null) {
  180. // $ext = $file->guessExtension();
  181. // $file_name = time() . "." . $ext;
  182. // $file->move("uploads/users", $file_name);
  183. //
  184. // $user->setImage($file_name);
  185. // $em->persist($user);
  186. // $em->flush();
  187. //
  188. // $data = array(
  189. // "status" => "success",
  190. // "code" => 200,
  191. // "msg" => "Image for user uploaded success !!"
  192. // );
  193. // } else {
  194. // $data = array(
  195. // "status" => "error",
  196. // "code" => 400,
  197. // "msg" => "Image not uploaded"
  198. // );
  199. // }
  200. // } else {
  201. // $data = array(
  202. // "status" => "error",
  203. // "code" => 400,
  204. // "msg" => "Authorization not valid"
  205. // );
  206. // }
  207. // return $helpers->json($data);
  208. // }
  209. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement