Advertisement
Shariska

user service

Nov 11th, 2019
112
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.93 KB | None | 0 0
  1. import { HttpClient } from '@angular/common/http';
  2. import { Injectable } from '@angular/core';
  3. import firebase from 'firebase';
  4. import { AngularFireAuth } from 'angularfire2/auth';
  5. import { User } from '../../models/user';
  6.  
  7. @Injectable()
  8. export class UsercrudProvider {
  9.  
  10. firedata = firebase.database().ref('/userprofile');
  11. user = {} as User;
  12. constructor(public http: HttpClient, private afireAuth:AngularFireAuth) {
  13. console.log('Hello UsercrudProvider Provider');
  14. }
  15.  
  16.  
  17. addUser(newuser) { // user registration
  18. var promise = new Promise((resolve , reject) => {
  19. this.afireAuth.auth.createUserWithEmailAndPassword(newuser.email, newuser.password).then(()=>{
  20. this.afireAuth.auth.currentUser.updateProfile({
  21. displayName: newuser.level,
  22. photoURL: 'https://firebasestorage.googleapis.com/v0/b/foodapp-ab746.appspot.com/o/icon%2Fuser.png?alt=media&token=eafabe55-2727-4c87-a4f2-4f172d427ca4'
  23. }).then(() => {
  24. this.firedata.child(this.afireAuth.auth.currentUser.uid).set({
  25. uid:this.afireAuth.auth.currentUser.uid,
  26. displayName: newuser.level,
  27. email: newuser.email,
  28. address:newuser.address,
  29. phoneNumber: newuser.phonenumber,
  30. FullName:newuser.name,
  31. photoURL:'https://firebasestorage.googleapis.com/v0/b/foodapp-ab746.appspot.com/o/icon%2Fuser.png?alt=media&token=eafabe55-2727-4c87-a4f2-4f172d427ca4'
  32. }).then(()=>{
  33. resolve(true);
  34. console.log('saveprofile');
  35. }).catch((err)=>{
  36. reject(err);
  37. })
  38. }).catch((err)=>{
  39. reject(err);
  40. })
  41. }).catch((err)=>{
  42. reject(err);
  43. })
  44. })
  45. return promise
  46. }
  47.  
  48. getUserDetails(){
  49. var promise = new Promise((resolve , reject) => {
  50. this.firedata.child(firebase.auth().currentUser.uid).once('value', (snapshot) => {
  51. resolve(snapshot.val());
  52. }).catch((err) => {
  53. console.log(err);
  54. reject(err);
  55. })
  56. })
  57. return promise;
  58. }
  59.  
  60. updateProfilePic(photoURL) { //store profilepic from storage to db
  61. var promise = new Promise((resolve, reject) => {
  62. this.afireAuth.auth.currentUser.updateProfile({
  63. photoURL: photoURL
  64. }).then(() => {
  65. this.firedata.child(this.afireAuth.auth.currentUser.uid).update({photoURL:photoURL}).then(() => {
  66. firebase.database().ref('userprofile/' + firebase.auth().currentUser.uid).update({
  67. photoURL: photoURL,
  68. }).then(() => {
  69. resolve({ success: true });
  70. }).catch((err) => {
  71. reject(err);
  72. })
  73. })
  74. }).catch((err) => {
  75. reject(err);
  76. })
  77. })
  78. return promise;
  79. }
  80.  
  81. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement