Merge branch 'master' into amal
Showing
... | ... | @@ -3,16 +3,18 @@ |
<ion-menu> | ||
<ion-content> | ||
<div class="side_menu_wrapper"> | ||
<ion-menu-toggle> | ||
<div class="top_banner"> | ||
<div class="top_image"> | ||
</div> | ||
<div class="top_detail"> | ||
<div class="top_detail" > | ||
<h4>John Doe</h4> | ||
<p>[email protected]</p> | ||
</div> | ||
<div class="clear"></div> | ||
</div> | ||
</ion-menu-toggle> | ||
<div class="sidemenu_list"> | ||
<ul> | ||
<ion-menu-toggle> | ||
... | ... |
import { Injectable } from "@angular/core"; | ||
import { | ||
AngularFirestore, | ||
AngularFirestoreDocument, | ||
AngularFirestoreCollection | ||
} from "@angular/fire/firestore"; | ||
import { Router, ActivatedRoute } from "@angular/router"; | ||
import { Products } from "./services/product"; | ||
import { Cart, CartItem } from "./services/cart"; | ||
import { ServiceService } from "./service.service"; | ||
import * as firebase from "firebase"; | ||
import { take } from "rxjs/operators"; | ||
import { User } from "./services/user"; | ||
import { from } from "rxjs"; | ||
import { Injectable } from '@angular/core'; | ||
import { AngularFirestore, AngularFirestoreDocument, AngularFirestoreCollection } from '@angular/fire/firestore'; | ||
import { Router, ActivatedRoute } from '@angular/router'; | ||
import { Products } from './services/product'; | ||
import { Cart, CartItem } from './services/cart'; | ||
import { ServiceService } from './service.service'; | ||
import * as firebase from 'firebase'; | ||
import { take } from 'rxjs/operators'; | ||
import { User } from './services/user'; | ||
import { from } from 'rxjs'; | ||
@Injectable({ | ||
providedIn: "root" | ||
providedIn: 'root' | ||
}) | ||
export class CartsService { | ||
size: string; | ||
... | ... | @@ -31,15 +27,13 @@ export class CartsService { |
public router: Router, | ||
public service: ServiceService | ||
) { | ||
this.custId = ""; | ||
this.custId = ''; | ||
this.carts = []; | ||
const users = this.service.get("user").then(data => { | ||
const users = this.service.get('user').then(data => { | ||
if (data) { | ||
data = JSON.parse(data); | ||
this.custId = data.uid; | ||
console.log(this.custId); | ||
} else { | ||
this.custId = "WwHnLICVY2dvZGUHuKqasiTB91a2"; | ||
} | ||
}); | ||
} | ||
... | ... | @@ -48,20 +42,20 @@ export class CartsService { |
this.prodId = product.prodId; | ||
const prodRef = firebase | ||
.firestore() | ||
.collection("products") | ||
.collection('products') | ||
.doc(this.prodId); | ||
this.size = this.size === undefined ? product.size[0] : this.size; | ||
this.color = this.color === undefined ? product.color[0] : this.color; | ||
const cartRef: AngularFirestoreCollection<any> = this.afs.collection( | ||
"carts", | ||
'carts', | ||
ref => | ||
ref | ||
.where("size", "==", this.size) | ||
.where("color", "==", this.color) | ||
.where("custId", "==", this.custId) | ||
.where("product", "==", prodRef) | ||
.where('size', '==', this.size) | ||
.where('color', '==', this.color) | ||
.where('custId', '==', this.custId) | ||
.where('product', '==', prodRef) | ||
); | ||
cartRef | ||
.valueChanges() | ||
... | ... | @@ -71,7 +65,7 @@ export class CartsService { |
if (value.length === 0) { | ||
product.image = | ||
product.image === undefined | ||
? "../assets/[email protected]" | ||
? '../assets/[email protected]' | ||
: product.image; | ||
const cart: Cart = { | ||
color: this.color, | ||
... | ... | @@ -88,21 +82,21 @@ export class CartsService { |
}; | ||
console.log(cart); | ||
this.afs | ||
.collection("carts") | ||
.collection('carts') | ||
.add(cart) | ||
.then(docRef => { | ||
const neworderId = docRef.id; | ||
this.afs | ||
.collection("carts") | ||
.collection('carts') | ||
.doc(neworderId) | ||
.update({ cartId: docRef.id }) | ||
.then(() => { | ||
console.log("Booking Successfully"); | ||
console.log('Booking Successfully'); | ||
document.body.scrollTop = document.documentElement.scrollTop = 0; | ||
}); | ||
}) | ||
.catch(error => { | ||
console.error("Error adding document: ", error); | ||
console.error('Error adding document: ', error); | ||
}); | ||
} else { | ||
console.log(value); | ||
... | ... | @@ -111,11 +105,11 @@ export class CartsService { |
// tslint:disable-next-line:radix | ||
const qty = parseInt(value[0].qty) + 1; | ||
this.afs | ||
.collection("carts") | ||
.collection('carts') | ||
.doc(cartId) | ||
.update({ qty: `${qty}` }) | ||
.then(() => { | ||
console.log("Booking Successfully"); | ||
console.log('Booking Successfully'); | ||
document.body.scrollTop = document.documentElement.scrollTop = 0; | ||
}); | ||
} | ||
... | ... | @@ -124,8 +118,8 @@ export class CartsService { |
public async cartList() { | ||
const cartRef: AngularFirestoreCollection<any> = this.afs.collection( | ||
"carts", | ||
ref => ref.where("custId", "==", this.custId) | ||
'carts', | ||
ref => ref.where('custId', '==', this.custId) | ||
); | ||
cartRef.valueChanges().subscribe(value => { | ||
this.carts = []; | ||
... | ... | @@ -183,7 +177,7 @@ export class CartsService { |
this.carts[index].qty = qty; | ||
console.log(this.carts[index].qty); | ||
this.afs | ||
.collection("carts") | ||
.collection('carts') | ||
.doc(this.carts[index].cartId) | ||
.update({ | ||
qty: this.carts[index].qty | ||
... | ... | @@ -195,7 +189,7 @@ export class CartsService { |
this.cartTotal = 0; | ||
this.carts[index].qty = qty; | ||
this.afs | ||
.collection("carts") | ||
.collection('carts') | ||
.doc(this.carts[index].cartId) | ||
.update({ | ||
qty: this.carts[index].qty | ||
... | ... | @@ -204,8 +198,21 @@ export class CartsService { |
removeItem(index) { | ||
this.afs | ||
.collection("carts") | ||
.collection('carts') | ||
.doc(this.carts[index].cartId) | ||
.delete(); | ||
} | ||
checkPromo(promoCode: string) { | ||
console.log(promoCode); | ||
const state = true; | ||
const promoRef: AngularFirestoreCollection<any> = this.afs.collection('promocode', ref => ref.where('promoCode', '==', promoCode) | ||
.where('status', '==', state)); | ||
return promoRef.valueChanges(); | ||
} | ||
} |
Please
register
or
sign in
to comment