Commit 8fa93f08 by muhsin

some changes

parent 645657c4
...@@ -15,12 +15,13 @@ ...@@ -15,12 +15,13 @@
</div> </div>
<div class="row"> <div class="row">
<input <input
[(value)]="userData && userData.name"
name="name" name="name"
required required
class="" class=""
type="text" type="text"
[(ngModel)]="updateData.name" [(ngModel)]="userData && userData.name"
placeholder="John Doe" [(placeholder)]="userData && userData.name"
#name="ngModel" #name="ngModel"
/> />
<div <div
...@@ -33,12 +34,13 @@ ...@@ -33,12 +34,13 @@
</div> </div>
<div class="row"> <div class="row">
<input <input
[(value)]="userData && userData.emailId"
required required
class="" class=""
name="emailId" name="emailId"
type="mail" type="mail"
[(ngModel)]="updateData.emailId" [(ngModel)]="userData && userData.emailId"
placeholder="[email protected]" [(placeholder)]="userData && userData.emailId"
pattern="[a-zA-Z0-9.-_]{1,}@[a-zA-Z.-]{2,}[.]{1}[a-zA-Z]{2,}" pattern="[a-zA-Z0-9.-_]{1,}@[a-zA-Z.-]{2,}[.]{1}[a-zA-Z]{2,}"
#emailId="ngModel" #emailId="ngModel"
/> />
...@@ -57,14 +59,15 @@ ...@@ -57,14 +59,15 @@
<div class="row"> <div class="row">
<input <input
[(value)]="userData && userData.phone"
required required
class="" class=""
name="phone" name="phone"
type="number" type="number"
pattern="(\(+61\)|\+61|\(0[1-9]\)|0[1-9])?( ?-?[0-9]){6,9}" pattern="(\(+61\)|\+61|\(0[1-9]\)|0[1-9])?( ?-?[0-9]){6,9}"
maxlength="10" maxlength="10"
[(ngModel)]="updateData.phone" [(ngModel)]="userData && userData.phone"
placeholder="+00 9851 5871 6985" [(placeholder)]="userData && userData.phone"
#phone="ngModel" #phone="ngModel"
/> />
<div <div
...@@ -79,18 +82,42 @@ ...@@ -79,18 +82,42 @@
</div> </div>
</div> </div>
</div> </div>
<div class="row"> <div *ngIf="userData && userData.loginType == 0">
<h6>Change Password</h6> <div class="row">
</div> <h6>Change Password</h6>
<div class="row"> </div>
<!-- <div class="row">
<input class="" type="password" placeholder="Current Password" /> <input class="" type="password" placeholder="Current Password" />
</div> -->
<div class="row">
<input
class=""
[(ngModel)]="updatePassword.password"
name="password"
type="password"
placeholder="New Password"
minlength="6"
#password="ngModel"
/>
<div *ngIf="password.errors && password.errors.minlength">
Password must be at least 6 characters
</div>
</div>
<div class="row">
<input
class=""
#confirmPassword="ngModel"
[(ngModel)]="updatePassword.confirmPassword"
name="confirmPassword"
type="password"
placeholder="Confirm Password"
/>
<div *ngIf="">
Password should match
</div>
</div>
</div> </div>
<div class="row">
<input class="" type="password" placeholder="New Password" />
</div>
<div class="row">
<input class="" type="password" placeholder="Confirm Password" />
</div>
<div class="row"> <div class="row">
<button class="login_btn" (click)="onFormSubmit(updateForm)"> <button class="login_btn" (click)="onFormSubmit(updateForm)">
UPDATE UPDATE
......
import { Component, OnInit } from "@angular/core"; import { Component, OnInit } from '@angular/core';
import { Location } from "@angular/common"; import { Location } from '@angular/common';
import { Router, ActivatedRoute } from "@angular/router"; import { Router, ActivatedRoute } from '@angular/router';
import { UpdateUserDetails } from "../../config/services/user"; import { UpdateUserDetails, UpdatePassword } from '../../config/services/user';
import { UpdateService } from "../../config/update.service"; import { UpdateService } from '../../config/update.service';
import { ServiceService } from "../../config/service.service"; import { ServiceService } from '../../config/service.service';
import { NgForm } from "@angular/forms"; import { NgForm } from '@angular/forms';
@Component({ @Component({
selector: "app-changedetails", selector: 'app-changedetails',
templateUrl: "./changedetails.page.html", templateUrl: './changedetails.page.html',
styleUrls: ["./changedetails.page.scss"] styleUrls: ['./changedetails.page.scss']
}) })
export class ChangedetailsPage implements OnInit { export class ChangedetailsPage implements OnInit {
userData: any; userData: any;
updateData: UpdateUserDetails = { updateData: UpdateUserDetails = {
emailId: "", emailId: '',
name: "", name: '',
phone: "" phone: ''
};
updatePassword: UpdatePassword = {
password: '',
confirmPassword: ''
}; };
submitted = false; submitted = false;
...@@ -27,8 +32,10 @@ export class ChangedetailsPage implements OnInit { ...@@ -27,8 +32,10 @@ export class ChangedetailsPage implements OnInit {
public register: UpdateService, public register: UpdateService,
private service: ServiceService private service: ServiceService
) { ) {
this.service.get("params").then(val => { // Gets userdata
this.service.get('params').then(val => {
this.userData = val; this.userData = val;
console.log(val);
}); });
} }
...@@ -45,9 +52,21 @@ export class ChangedetailsPage implements OnInit { ...@@ -45,9 +52,21 @@ export class ChangedetailsPage implements OnInit {
onFormSubmit(form: NgForm) { onFormSubmit(form: NgForm) {
this.submitted = true; this.submitted = true;
console.log(form.value);
if (form.valid) { if (form.valid) {
console.log("valid form values", form.value); // Change Password
if (
form.value.password &&
form.value.password != form.value.confirmPassword
) {
this.register.updatePassword(form.value.password);
} else {
alert('Password should match');
}
// Calls update user data fn
this.register.updateData(form.value, this.userData.uid); this.register.updateData(form.value, this.userData.uid);
console.log('valid form values', form.value);
} }
} }
} }
...@@ -32,7 +32,10 @@ export interface UpdateUserDetails { ...@@ -32,7 +32,10 @@ export interface UpdateUserDetails {
phone: string; phone: string;
} }
// Model to Update Password // Model to Update Password
export interface UpdateUserDetails {} export interface UpdatePassword {
password: string;
confirmPassword: string;
}
export interface Otp { export interface Otp {
uid: string; uid: string;
......
import { Injectable } from "@angular/core"; import { Injectable } from "@angular/core";
import { User, UpdateUserDetails, Address } from "./services/user"; import {
User,
UpdateUserDetails,
Address,
updatePassword
} from "./services/user";
import { auth } from "firebase/app"; import { auth } from "firebase/app";
import { Router, ActivatedRoute } from "@angular/router"; import { Router, ActivatedRoute } from "@angular/router";
import { AngularFireAuth } from "@angular/fire/auth"; import { AngularFireAuth } from "@angular/fire/auth";
...@@ -69,4 +74,21 @@ export class UpdateService { ...@@ -69,4 +74,21 @@ export class UpdateService {
console.log(error); console.log(error);
}); });
} }
// Change Password
updatePassword(userData: updatePassword) {
// Gets current user
let user = this.afAuth.auth.currentUser;
let newPassword = userData.password;
// Update password
user
.updatePassword(newPassword)
.then(() => {
console.log("Password Changed");
})
.catch(err => {
console.log(err);
});
}
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment