export default class Dichroism {
constructor() {
this.products = [
{
id: 1,
name: "Beach Box",
quantity: 0,
cents: 1100,
imgPath: "/beach_box.jpg",
description: "This is a beach box.",
featured: false,
categories: ["Fused Glass", "Beachy"]
},
{
id: 2,
name: "Wind Chime",
quantity: 0,
cents: 4500,
imgPath: "/wind-chime.jpg",
description: "Makes noise when the wind blows.",
featured: false,
categories: ["Fused Glass", "Beachy"]
},
{
id: 3,
name: "Beach Box",
quantity: 5,
cents: 1100,
imgPath: "/beach_box.jpg",
description: "This is a beach box.",
featured: false,
categories: ["Stained Glass", "Christmas"]
},
{
id: 4,
name: "Wind Chime",
quantity: 2,
cents: 4500,
imgPath: "/wind-chime.jpg",
description: "Makes noise when the wind blows.",
featured: false,
categories: ["Fused Glass", "Kiln-y"]
},
{
id: 5,
name: "Beach Box (New!)",
quantity: 5,
cents: 1100,
imgPath: "/beach_box.jpg",
description: "This is a beach box.",
featured: true,
categories: ["Stained Glass", "Christmas"]
}
];
}
async uploadPhoto(file) {
const fd = new FormData();
fd.append(file.name, file);
return fetch("http://localhost:8000/photos", {
method: "POST",
body: fd
});
}
getProducts() {
return this.products.slice(0);
}
updateProduct(newProduct) {
if (!newProduct) {
return;
}
for (let i = 0; i < this.products.length; i++) {
if (newProduct.id == this.products[i].id) {
let currentProduct = this.products[i];
currentProduct.id = newProduct.id;
currentProduct.name = newProduct.name;
currentProduct.quantity = newProduct.quantity;
currentProduct.cents = newProduct.cents;
currentProduct.imgPath = newProduct.imgPath;
currentProduct.description = newProduct.description;
currentProduct.featured = newProduct.featured;
currentProduct.categories = newProduct.categories.slice(0);
return;
}
}
}
}