Advertisement
Guest User

Untitled

a guest
Jul 17th, 2018
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.89 KB | None | 0 0
  1. users: {
  2. getById: [
  3. {
  4. auth: true,
  5. params: {
  6. id: [
  7. utils.PARAM_REQUIRED,
  8. utils.PARAM_INTEGER,
  9. utils.PARAM_POSITIVE,
  10. [utils.PARAM_MIN, 1]
  11. ],
  12. }
  13. }, (params, request, response) => {
  14. return users.getById(params.id).then((data) => resultUser(response, data));
  15. }
  16. ],
  17. login: [
  18. {
  19. auth: false,
  20. params: {
  21. password: [
  22. utils.PARAM_REQUIRED,
  23. utils.PARAM_STRING,
  24. [utils.PARAM_LENGTH_MAX, users.CREDENTIALS_MAX_LENGTH],
  25. [utils.PARAM_LENGTH_MIN, users.CREDENTIALS_MIN_LENGTH]
  26. ],
  27. email: [
  28. utils.PARAM_REQUIRED,
  29. utils.PARAM_STRING,
  30. [utils.PARAM_LENGTH_MAX, users.CREDENTIALS_MAX_LENGTH],
  31. [utils.PARAM_LENGTH_MIN, users.CREDENTIALS_MIN_LENGTH]
  32. ],
  33. }
  34. }, (params, request, response) => {
  35. return users.login(request, response, params.email, params.password).then((data) => resultUser(response, data));
  36. }
  37. ],
  38. logout: [
  39. {
  40. auth: true,
  41. }, (params, request, response) => {
  42. users.logout(request, response);
  43. return Promise.resolve(OK);
  44. }
  45. ],
  46. create: [
  47. {
  48. auth: false,
  49. params: {
  50. password: [
  51. utils.PARAM_REQUIRED,
  52. utils.PARAM_STRING,
  53. [utils.PARAM_LENGTH_MAX, users.CREDENTIALS_MAX_LENGTH],
  54. [utils.PARAM_LENGTH_MIN, users.CREDENTIALS_MIN_LENGTH]
  55. ],
  56. email: [
  57. utils.PARAM_REQUIRED,
  58. utils.PARAM_STRING,
  59. [utils.PARAM_LENGTH_MAX, users.CREDENTIALS_MAX_LENGTH],
  60. [utils.PARAM_LENGTH_MIN, users.CREDENTIALS_MIN_LENGTH]
  61. ],
  62. first_name: [
  63. utils.PARAM_REQUIRED,
  64. utils.PARAM_STRING,
  65. [utils.PARAM_LENGTH_MAX, users.NAME_MAX_LENGTH],
  66. [utils.PARAM_LENGTH_MIN, users.NAME_MIN_LENGTH]
  67. ],
  68. last_name: [
  69. utils.PARAM_STRING,
  70. [utils.PARAM_LENGTH_MAX, users.NAME_MAX_LENGTH],
  71. [utils.PARAM_LENGTH_MIN, users.NAME_MIN_LENGTH]
  72. ],
  73. lang_id: [
  74. utils.PARAM_INTEGER,
  75. [utils.PARAM_IN_ARRAY, [lang.EN, lang.RU]]
  76. ],
  77. }
  78. }, (params, request, response) => {
  79. if (!params.lang_id) {
  80. params.lang_id = lang.detect(request);
  81. }
  82.  
  83. return users.create(params.email, params.password, params.first_name, params.last_name, params.lang_id).then((data) => resultUser(response, data));
  84. }
  85. ],
  86. update: [
  87. {
  88. auth: true,
  89. params: {
  90. id: [
  91. utils.PARAM_REQUIRED,
  92. utils.PARAM_INTEGER,
  93. utils.PARAM_POSITIVE,
  94. [utils.PARAM_MIN, 1]
  95. ],
  96. email: [
  97. utils.PARAM_STRING,
  98. [utils.PARAM_LENGTH_MAX, users.CREDENTIALS_MAX_LENGTH],
  99. [utils.PARAM_LENGTH_MIN, users.CREDENTIALS_MIN_LENGTH]
  100. ],
  101. first_name: [
  102. utils.PARAM_STRING,
  103. [utils.PARAM_LENGTH_MAX, users.NAME_MAX_LENGTH],
  104. [utils.PARAM_LENGTH_MIN, users.NAME_MIN_LENGTH]
  105. ],
  106. last_name: [
  107. utils.PARAM_STRING,
  108. [utils.PARAM_LENGTH_MAX, users.NAME_MAX_LENGTH],
  109. [utils.PARAM_LENGTH_MIN, users.NAME_MIN_LENGTH]
  110. ],
  111. lang_id: [
  112. utils.PARAM_INTEGER,
  113. [utils.PARAM_IN_ARRAY, [lang.EN, lang.RU]]
  114. ],
  115. }
  116. }, (params, request, response) => {
  117. if (response.locals.user.id !== params.id) {
  118. return Promise.reject(CONST.ERROR_ACCESS_DENIED);
  119. }
  120.  
  121. return users.update(params.id, params).then((data) => resultUser(response, data));
  122. }
  123. ],
  124. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement