diff options
author | Adam T. Carpenter <atc@53hor.net> | 2020-11-11 20:07:12 -0500 |
---|---|---|
committer | Adam T. Carpenter <atc@53hor.net> | 2020-11-11 20:07:12 -0500 |
commit | 7381a7033231e6454a37fd64b1f3de4e8d59355f (patch) | |
tree | 7ae54976c2d036e0fe7cb199a7f6facdd09bbb6d /iridescence/src/models/product.js | |
parent | c5280144de096c274f185fade287ccd63b954ceb (diff) | |
download | theglassyladies-7381a7033231e6454a37fd64b1f3de4e8d59355f.tar.xz theglassyladies-7381a7033231e6454a37fd64b1f3de4e8d59355f.zip |
Kind of flailing with the UI; lots of API bugfixes though.
Diffstat (limited to 'iridescence/src/models/product.js')
-rw-r--r-- | iridescence/src/models/product.js | 62 |
1 files changed, 12 insertions, 50 deletions
diff --git a/iridescence/src/models/product.js b/iridescence/src/models/product.js index fb7fd68..c408b79 100644 --- a/iridescence/src/models/product.js +++ b/iridescence/src/models/product.js @@ -1,54 +1,16 @@ export default class Product { - id = 0; - name = ""; - description = ""; - cents = 0; - quantity = 0; - featured = false; - photo_base = ""; - photo_fullsize = ""; - photo_thumbnail = ""; - category = ""; - - constructor(from) { - if (from) { - this.id = from.id; - this.name = from.name; - this.description = from.description; - this.cents = from.cents; - this.quantity = from.quantity; - this.featured = from.featured; - this.photo_base = from.photo_base; - this.photo_fullsize = from.photo_fullsize; - this.photo_thumbnail = from.photo_thumbnail; - this.category = from.category; + constructor(json) { + if (json) { + this.id = json.id ? json.id : null; + this.name = json.name ? json.name : null; + this.description = json.description ? json.description : null; + this.cents = json.cents ? json.cents : null; + this.quantity = json.quantity ? json.quantity : null; + this.featured = json.featured ? json.featured : false; + this.category = json.category ? json.category : null; + this.photo_base = json.photo_base ? json.photo_base : null; + this.photo_thumbnail = json.photo_thumbnail ? json.photo_thumbnail : null; + this.photo_fullsize = json.photo_fullsize ? json.photo_fullsize : null; } } - - isDifferent(product) { - return ( - this.id != product.id || - this.name != product.name || - this.quantity != product.quantity || - this.cents != product.cents || - this.photo_base != product.photo_base || - this.photo_thumbnail != product.photo_thumbnail || - this.photo_fullsize != product.photo_fullsize || - this.description != product.description || - this.featured != product.featured || - this.category != product.category - ); - } - - isValid() { - return ( - this.cents > 0 && - this.name != "" && - this.photo_thumbnail != "" && - this.photo_base != "" && - this.photo_fullsize != "" && - this.category != "" && - this.description != "" - ); - } } |