ReferalConnect.js 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. /* eslint-disable
  2. max-len,
  3. */
  4. // TODO: This file was created by bulk-decaffeinate.
  5. // Fix any style issues and re-enable lint.
  6. /*
  7. * decaffeinate suggestions:
  8. * DS102: Remove unnecessary code created because of implicit returns
  9. * DS207: Consider shorter variations of null checks
  10. * Full docs: https://github.com/decaffeinate/decaffeinate/blob/master/docs/suggestions.md
  11. */
  12. module.exports = {
  13. use(req, res, next) {
  14. if (req.query != null) {
  15. if (req.query.referal != null) {
  16. req.session.referal_id = req.query.referal
  17. } else if (req.query.r != null) {
  18. // Short hand for referal
  19. req.session.referal_id = req.query.r
  20. } else if (req.query.fb_ref != null) {
  21. req.session.referal_id = req.query.fb_ref
  22. }
  23. if (req.query.rm != null) {
  24. // referal medium e.g. twitter, facebook, email
  25. switch (req.query.rm) {
  26. case 'fb':
  27. req.session.referal_medium = 'facebook'
  28. break
  29. case 't':
  30. req.session.referal_medium = 'twitter'
  31. break
  32. case 'gp':
  33. req.session.referal_medium = 'google_plus'
  34. break
  35. case 'e':
  36. req.session.referal_medium = 'email'
  37. break
  38. case 'd':
  39. req.session.referal_medium = 'direct'
  40. break
  41. }
  42. }
  43. if (req.query.rs != null) {
  44. // referal source e.g. project share, bonus
  45. switch (req.query.rs) {
  46. case 'b':
  47. req.session.referal_source = 'bonus'
  48. break
  49. case 'ps':
  50. req.session.referal_source = 'public_share'
  51. break
  52. case 'ci':
  53. req.session.referal_source = 'collaborator_invite'
  54. break
  55. }
  56. }
  57. }
  58. return next()
  59. }
  60. }