@websy/websy-designs 1.5.1 → 1.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -121,7 +121,7 @@ class AuthHelper {
121
121
  })
122
122
  }
123
123
  isLoggedIn (req, res, next) {
124
- if (req.session && req.session.user) {
124
+ if (req.session && req.session.user && !req.session.user.isAnonymous) {
125
125
  console.log('in condition D')
126
126
  next()
127
127
  }
@@ -363,6 +363,55 @@ class PGHelper {
363
363
  }
364
364
  })
365
365
  }
366
+ getBasket (req, basketCompare) {
367
+ return new Promise((resolve, reject) => {
368
+ if (req.session && req.session.user) {
369
+ const sql = `
370
+ SELECT * FROM ${basketCompare} WHERE userid = '${req.session.user.id}'
371
+ `
372
+ this.execute(sql).then(result => {
373
+ if (result.rows.length > 0) {
374
+ let basket = result.rows[0]
375
+ try {
376
+ basket.items = JSON.parse(this.JSONSafeRead(basket.items))
377
+ }
378
+ catch (error) {
379
+ if (basket.items) {
380
+ basket.items = JSON.parse(basket.items)
381
+ }
382
+ else {
383
+ basket.items = {}
384
+ }
385
+ }
386
+ try {
387
+ basket.meta = JSON.parse(this.JSONSafeRead(basket.meta))
388
+ }
389
+ catch (error) {
390
+ // console.log('data got saved incorrectly')
391
+ if (basket.meta) {
392
+ try {
393
+ basket.meta = JSON.parse(basket.meta)
394
+ }
395
+ catch (error) {
396
+ //
397
+ }
398
+ }
399
+ else {
400
+ basket.meta = {}
401
+ }
402
+ }
403
+ resolve(basket)
404
+ }
405
+ else {
406
+ resolve({items: {}, meta: {}})
407
+ }
408
+ })
409
+ }
410
+ else {
411
+ resolve({items: {}, meta: {}})
412
+ }
413
+ })
414
+ }
366
415
  JSONSafeWrite (v) {
367
416
  return v.replace(/'/g, '\'\'').replace(/\\(?=[bfnrtv0'"])/g, '\\\\')
368
417
  }
@@ -41,6 +41,7 @@ function ShopRoutes (dbHelper, engine, app) {
41
41
  else {
42
42
  readyCallback()
43
43
  }
44
+
44
45
  router.get('/:basketCompare', (req, res) => {
45
46
  getBasket(req).then(basket => {
46
47
  basket.items = Object.values(basket.items)