Advertisement
Guest User

Untitled

a guest
Oct 19th, 2019
275
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.30 KB | None | 0 0
  1. <template lang="pug">
  2. .reg-section
  3. .reg-section__inner.wrapper
  4. h2.heading.heading--center.reg-section__heading Как зарегистрировать ребёнка
  5. .reg-section__grid
  6. .reg-section__wrap-media
  7. .reg-section__media.video.video--timerkids
  8.  
  9.  
  10. .reg-section__info
  11. ul.reg-section__steps
  12. li.reg-section__step
  13. span.reg-section__marker 1 шаг
  14. | Регистрация родителя
  15. li.reg-section__step
  16. span.reg-section__marker 2 шаг
  17. | Зполнение анкеты родителя
  18. li.reg-section__step
  19. span.reg-section__marker 3 шаг
  20. | Выбор мероприятия
  21. li.reg-section__step
  22. span.reg-section__marker 4 шаг
  23. | Заполнение анкеты ребенка
  24.  
  25. form.form(@submit.prevent="submit", v-if="!loggedIn")
  26. fieldset.form__fieldset
  27. legend.form__legend.screen-reader Форма авторизации на сайте
  28. label.field-text(:class="{ 'field-text--error': (!$v.email.required || !$v.email.email) && $v.email.$dirty }")
  29. span.field-text__name Email
  30. span.field-text__input-wrap
  31. input.field-text__input(type='email', v-model.trim="$v.email.$model" @input="setEmail($event.target.value)" name='email', placeholder='Введите e-mail')
  32. span.field-text__help-text(v-if="!$v.email.required && $v.email.$dirty") Поле обязательно для заполнения
  33. span.field-text__help-text(v-if="!$v.email.email && $v.email.$dirty") Введите корректный email
  34. label.field-text(:class="{ 'field-text--error': !$v.password.required && $v.password.$dirty }")
  35. span.field-text__name Пароль
  36. span.field-text__input-wrap
  37. input.field-text__input(type='password', v-model.trim="$v.password.$model" @input="setPassword($event.target.value)" name='pass', placeholder='Введите пароль')
  38. span.field-text__help-text(v-if="!$v.password.required && $v.password.$dirty") Поле обязательно для заполнения
  39. .form__link-action
  40. button.btn.btn--main.btn--size-lg(type='submit') Войти
  41. p.text--red(v-if="submitStatus === 'ERROR'") Произошла ошибка! Проверьте правильность указанных данных.
  42. .form__link-help
  43. a.link.link--default.pointer(@click="goToRegister") Зарегистрироваться
  44. a.link.link--default(@click="goToForgotPassword") Восстановить пароль
  45. </template>
  46.  
  47. <script>
  48. import { required, email } from "vuelidate/lib/validators";
  49. import axios from "axios";
  50. import Single from "vue-silentbox/components/single.vue";
  51. export default {
  52. components: {
  53. "silentbox-single": Single
  54. },
  55. name: "regSectionTimerkids",
  56. mounted() {
  57. this.$store.commit("SUBMIT_STATUS", "WAIT_FOR_SUBMIT");
  58. this.email = "";
  59. this.password = "";
  60. this.$v.email.$reset();
  61. this.$v.password.$reset();
  62. var vm = this;
  63. },
  64. data() {
  65. return {
  66. email: "",
  67. password: ""
  68. };
  69. },
  70. computed: {
  71. submitStatus() {
  72. return this.$store.getters.submitStatus;
  73. },
  74. loggedIn() {
  75. return this.$store.getters.loggedIn;
  76. }
  77. },
  78. validations: {
  79. email: {
  80. required,
  81. email
  82. },
  83. password: {
  84. required
  85. }
  86. },
  87. methods: {
  88. setEmail(val) {
  89. this.email = val;
  90. this.$v.email.$touch();
  91. },
  92. setPassword(val) {
  93. this.password = val;
  94. this.$v.password.$touch();
  95. },
  96. goToRegister() {
  97. this.$emit("handleClose");
  98. this.$router.push({ name: "main-register" });
  99. },
  100. goToForgotPassword() {
  101. this.$emit("handleClose");
  102. this.$router.push({ name: "forgot-password" });
  103. },
  104. async submit() {
  105. let body = {
  106. userName: this.email,
  107. password: this.password
  108. };
  109. this.$v.$touch();
  110. if (this.$v.$invalid) {
  111. } else {
  112. axios.post("/api/v1/token", body).then(
  113. response => {
  114. this.$store.commit("LOGIN", response.data);
  115. this.$store.dispatch("getAccountInfo");
  116. },
  117. response => {
  118. this.$store.commit("FAILED_LOGIN");
  119. }
  120. );
  121. }
  122. }
  123. }
  124. };
  125. </script>
  126.  
  127. <style scoped>
  128. .pointer {
  129. cursor: pointer;
  130. }
  131. .video::before{
  132. background-color: rgba(0,0,0,0) !important;
  133. }
  134. .video:hover::before{
  135. background-color: rgba(0,0,0,0) !important;
  136. }
  137. </style>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement