Blame view

src/pages/Authentication/forgetpassword.vue 10.4 KB
93a68cfa1   Jatinder Singh   first commit
1
2
  <template>
    <v-app id="login">
caaa85a2c   Shikha Mishra   set api's of forg...
3
4
      <v-toolbar dense flat class="transparent mb-4">
        <v-toolbar-items class="mx-auto">
860da881d   Shikha Mishra   comment all consoles
5
          <img src="/static/icon.png" height="50" width="140" alt="logo" style=" margin-top: 15%" />
f0281dd43   Neeraj Sharma   add run api of re...
6
7
8
9
        </v-toolbar-items>
      </v-toolbar>
      <v-container fluid>
        <v-layout align-center justify-center fill-height>
caaa85a2c   Shikha Mishra   set api's of forg...
10
          <v-flex xs12 sm10 md6 lg4>
f0281dd43   Neeraj Sharma   add run api of re...
11
12
13
14
15
16
17
18
19
20
21
            <div>
              <v-app>
                <v-stepper v-model="e2">
                  <v-stepper-header>
                    <v-stepper-step :complete="e2 > 1" step="1">Fill Your Email</v-stepper-step>
                    <v-divider></v-divider>
                    <v-stepper-step step="2">Last Step of Forget Password</v-stepper-step>
                  </v-stepper-header>
                  <v-stepper-items>
                    <v-stepper-content step="1">
                      <v-content>
1c1942362   Neeraj Sharma   commit code Schoo...
22
                        <v-container fluid class="content">
f0281dd43   Neeraj Sharma   add run api of re...
23
                          <v-layout align-center justify-center fill-height>
caaa85a2c   Shikha Mishra   set api's of forg...
24
25
                            <v-flex>
                              <v-toolbar style="background-color: #7852cc" dark>
f0281dd43   Neeraj Sharma   add run api of re...
26
27
28
29
30
31
                                <v-spacer></v-spacer>
                                <v-toolbar-title>Forget Password</v-toolbar-title>
                                <v-spacer></v-spacer>
                              </v-toolbar>
                              <v-card class="elevation-1 pa-1">
                                <v-card-text>
860da881d   Shikha Mishra   comment all consoles
32
33
34
35
                                  <h5
                                    class="text-xs-center"
                                  >Not to Worry! Enter to your registered Email ID.</h5>
                                  <h5 class="text-xs-center">We'll send you a reset.</h5>
1c1942362   Neeraj Sharma   commit code Schoo...
36
                                  <v-flex lg6 sm6 xs10 offset-sm3 offset-xs1 offset-lg3>
860da881d   Shikha Mishra   comment all consoles
37
                                    <v-form ref="form" v-model="valid" lazy-validation>
f0281dd43   Neeraj Sharma   add run api of re...
38
                                      <div class="custom-input-align">
860da881d   Shikha Mishra   comment all consoles
39
40
41
42
43
44
45
                                        <v-text-field
                                          class="text-md-center"
                                          :rules="emailRules"
                                          v-model="forgetemail"
                                          label="Enter Your email ID"
                                          required
                                        ></v-text-field>
f0281dd43   Neeraj Sharma   add run api of re...
46
47
48
49
50
51
                                      </div>
                                    </v-form>
                                  </v-flex>
                                </v-card-text>
                                <v-card-actions>
                                  <v-flex text-xs-center>
860da881d   Shikha Mishra   comment all consoles
52
53
54
55
56
57
                                    <v-btn
                                      style="background-color: #71d9ea; color: #0c0754;"
                                      dark
                                      flat
                                      @click="reset"
                                    >Send Request</v-btn>
f0281dd43   Neeraj Sharma   add run api of re...
58
59
60
                                  </v-flex>
                                </v-card-actions>
                                <v-snackbar
caaa85a2c   Shikha Mishra   set api's of forg...
61
62
63
64
65
                                  :timeout="timeout"
                                  :top="y === 'top'"
                                  :right="x === 'right'"
                                  :vertical="mode === 'vertical'"
                                  v-model="snackbar"
860da881d   Shikha Mishra   comment all consoles
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
                                  :color="color"
                                >{{ text }}</v-snackbar>
                              </v-card>
                            </v-flex>
                          </v-layout>
                        </v-container>
                      </v-content>
                    </v-stepper-content>
                    <v-stepper-content step="2">
                      <v-content>
                        <v-container fluid fill-height>
                          <v-layout align-center justify-center>
                            <v-flex>
                              <v-toolbar style="background-color: #7852cc" dark>
                                <v-spacer></v-spacer>
                                <v-toolbar-title>Forget Password</v-toolbar-title>
                                <v-spacer></v-spacer>
                              </v-toolbar>
                              <v-card class="elevation-1 pa-1">
                                <v-card-text>
                                  <h5
                                    class="text-xs-center"
                                  >Not to Worry! Enter to your registered Email ID And New Password.</h5>
                                  <h5 class="text-xs-center">We'll send you a reset.</h5>
                                  <v-flex lg6 sm6 xs10 offset-sm3 offset-xs1 offset-lg3>
                                    <v-form class="mt-4">
                                      <div class="custom-input-align">
                                        <v-text-field
                                          class="text-md-center"
                                          v-model="uniqueCode"
                                          type="text"
                                          label="Enter Unique Code"
                                          required
                                        ></v-text-field>
                                        <v-text-field
                                          :rules="[rules.required,rules.min]"
                                          v-model="changepassword"
                                          :append-icon="e1 ? 'visibility_off' : 'visibility'"
                                          :append-icon-cb="() => (e1 = !e1)"
                                          :type="e1 ? 'password' : 'text'"
                                          name="input-10-1"
                                          label="New Password"
                                          counter
                                        ></v-text-field>
                                      </div>
                                    </v-form>
                                  </v-flex>
                                </v-card-text>
                                <v-card-actions>
                                  <v-flex text-xs-center>
                                    <v-btn
                                      style="background-color: #71d9ea; color: #0c0754;"
                                      dark
                                      flat
                                      @click="resetPassword"
                                    >Send Request</v-btn>
                                  </v-flex>
                                </v-card-actions>
                                <v-snackbar
                                  :timeout="timeout"
                                  :top="y === 'top'"
                                  :right="x === 'right'"
                                  :vertical="mode === 'vertical'"
                                  v-model="snackbar"
                                  :color="color"
                                >{{ text }}</v-snackbar>
                              </v-card>
                            </v-flex>
                          </v-layout>
                        </v-container>
                      </v-content>
                      <v-btn color="#7852cc" dark @click="e2 = 1">Back</v-btn>
                    </v-stepper-content>
                  </v-stepper-items>
                </v-stepper>
              </v-app>
            </div>
          </v-flex>
        </v-layout>
      </v-container>
      <!-- <v-footer class="pa-4 fixcolors">
      </v-footer>-->
    </v-app>
93a68cfa1   Jatinder Singh   first commit
149
  </template>
f0281dd43   Neeraj Sharma   add run api of re...
150

93a68cfa1   Jatinder Singh   first commit
151
  <script>
860da881d   Shikha Mishra   comment all consoles
152
  import http from "@/Services/http.js";
03dcbf0c1   Neeraj Sharma   fix all api and r...
153

93a68cfa1   Jatinder Singh   first commit
154
155
  export default {
    data: () => ({
f0281dd43   Neeraj Sharma   add run api of re...
156
      e1: true,
860da881d   Shikha Mishra   comment all consoles
157
      e2: 0,
04e3fbc56   Jatinder Singh   minor fix
158
      snackbar: false,
860da881d   Shikha Mishra   comment all consoles
159
160
161
      y: "top",
      x: "right",
      mode: "",
03dcbf0c1   Neeraj Sharma   fix all api and r...
162
      timeout: 4000,
860da881d   Shikha Mishra   comment all consoles
163
      text: "",
93a68cfa1   Jatinder Singh   first commit
164
      loading: false,
860da881d   Shikha Mishra   comment all consoles
165
166
167
168
      forgetemail: "",
      uniqueCode: "",
      password: "",
      changepassword: "",
603a06702   Neeraj Sharma   implemented chang...
169
      valid: true,
f0281dd43   Neeraj Sharma   add run api of re...
170
      emailRules: [
860da881d   Shikha Mishra   comment all consoles
171
172
        (v) => !!v || "E-mail is required",
        (v) =>
603a06702   Neeraj Sharma   implemented chang...
173
          /^\w+([.-]?\w+)*@\w+([.-]?\w+)*(\.\w{2,3})+$/.test(v) ||
860da881d   Shikha Mishra   comment all consoles
174
          "E-mail must be valid",
f0281dd43   Neeraj Sharma   add run api of re...
175
      ],
caaa85a2c   Shikha Mishra   set api's of forg...
176

f0281dd43   Neeraj Sharma   add run api of re...
177
      rules: {
860da881d   Shikha Mishra   comment all consoles
178
179
180
181
182
183
184
185
        required: (value) => !!value || "password is Required.",
        min: (v) =>
          (/^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[!@#$%^&*])(?=.{8,})/.test(
            v
          ) &&
            v.length >= 6) ||
          "Min 4 characters upper case lower case symbol required",
      },
93a68cfa1   Jatinder Singh   first commit
186
187
188
    }),
  
    methods: {
860da881d   Shikha Mishra   comment all consoles
189
      reset() {
603a06702   Neeraj Sharma   implemented chang...
190
        if (this.$refs.form.validate()) {
860da881d   Shikha Mishra   comment all consoles
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
          http()
            .get("/forgot-password?email=" + this.forgetemail)
            .then((response) => {
              // console.log("response=====>",response.data.data.token);
              this.$store.dispatch("setToken", response.data.data.token);
              this.loading = true;
              this.e2 = 2;
              if ((this.snackbar = true)) {
                this.text = "Please Fill your Last Step of Forget Password!";
              }
            })
            .catch((err) => {
              this.text = "User Not Found or Incorrect Email";
              this.snackbar = true;
              this.loading = false;
            });
        }
f0281dd43   Neeraj Sharma   add run api of re...
208
      },
860da881d   Shikha Mishra   comment all consoles
209
      resetPassword() {
f0281dd43   Neeraj Sharma   add run api of re...
210
        let forgotPassword = {
caaa85a2c   Shikha Mishra   set api's of forg...
211
212
          email: this.forgetemail,
          uniqueCode: this.uniqueCode,
860da881d   Shikha Mishra   comment all consoles
213
214
215
216
217
218
          password: this.changepassword,
        };
        http()
          .post("/reset-password", forgotPassword)
          .then((response) => {
            //   console.log("response=====>",response);
03dcbf0c1   Neeraj Sharma   fix all api and r...
219
            this.loading = true;
860da881d   Shikha Mishra   comment all consoles
220
221
            if ((this.snackbar = true)) {
              this.text = "Successfully Change your Password";
03dcbf0c1   Neeraj Sharma   fix all api and r...
222
223
            }
            setTimeout(() => {
860da881d   Shikha Mishra   comment all consoles
224
225
226
227
228
229
230
231
232
233
234
235
236
237
              this.$router.push("/");
            }, 1000);
          })
          .catch((err) => {
            this.text = "User Not Found or Incorrect Email";
            this.snackbar = true;
            this.loading = false;
          });
      },
    },
    computed: {
      color() {
        return this.loading ? "success" : "error";
      },
03dcbf0c1   Neeraj Sharma   fix all api and r...
238
    },
93a68cfa1   Jatinder Singh   first commit
239
  };
1c1942362   Neeraj Sharma   commit code Schoo...
240
241
242
  </script>
  <style scoped lang="css">
  .content {
860da881d   Shikha Mishra   comment all consoles
243
    padding: 100px 0px 100px 0px !important;
1c1942362   Neeraj Sharma   commit code Schoo...
244
  }
860da881d   Shikha Mishra   comment all consoles
245
246
247
248
249
250
251
252
253
254
255
256
257
  #login {
    height: 50%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    z-index: 0;
  }
  img {
    /* position:absolute; */
    top: 13px;
    left: 8px;
04e3fbc56   Jatinder Singh   minor fix
258
259
  }
  .v-btn--large {
860da881d   Shikha Mishra   comment all consoles
260
    padding: 0px 74px;
04e3fbc56   Jatinder Singh   minor fix
261
  }
860da881d   Shikha Mishra   comment all consoles
262
  .button {
9f9522c1d   Neeraj Sharma   fix button text a...
263
264
    text-transform: none;
  }
03dcbf0c1   Neeraj Sharma   fix all api and r...
265
  @media screen and (max-width: 472px) {
860da881d   Shikha Mishra   comment all consoles
266
267
268
269
270
    .v-btn--large {
      padding: 0px 20px !important;
      font-size: 13px;
    }
    h5 {
03dcbf0c1   Neeraj Sharma   fix all api and r...
271
      font-size: 11px;
860da881d   Shikha Mishra   comment all consoles
272
    }
03dcbf0c1   Neeraj Sharma   fix all api and r...
273
  }
860da881d   Shikha Mishra   comment all consoles
274
275
276
  @media screen and (max-width: 600px) {
    .theme--light .v-btn,
    .application .theme--light.v-btn {
55f72b7d7   Neeraj Sharma   add new page are ...
277
      color: white !important;
860da881d   Shikha Mishra   comment all consoles
278
279
280
281
282
283
    }
    .logoSchool {
      font-size: 18px;
      margin-top: 20px !important;
    }
    .content {
55f72b7d7   Neeraj Sharma   add new page are ...
284
      padding: 0px 0px 0px 0px !important;
860da881d   Shikha Mishra   comment all consoles
285
    }
a0fe54618   Neeraj Sharma   finally fix
286
  }
93a68cfa1   Jatinder Singh   first commit
287
  </style>