links.pug 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. include ./material_symbol
  2. mixin linkBenefits(linkText, linkClass)
  3. a(href=(settings.siteUrl ? settings.siteUrl : '') + '/for/authors' class=linkClass)
  4. | #{linkText ? linkText : 'benefits'}
  5. mixin linkBlog(linkText, linkClass, slug)
  6. if slug
  7. a(
  8. href=(settings.siteUrl ? settings.siteUrl : '') + '/blog/' + slug
  9. class=linkClass
  10. )
  11. | #{linkText ? linkText : 'blog'}
  12. mixin linkContact(linkText, linkClass)
  13. a(href=(settings.siteUrl ? settings.siteUrl : '') + '/contact' class=linkClass)
  14. | #{linkText ? linkText : 'contact'}
  15. mixin linkDash(linkText, linkClass)
  16. a(href='/project' class=linkClass)
  17. | #{linkText ? linkText : 'project dashboard'}
  18. mixin linkInvite(linkText, linkClass, track)
  19. - var gaCategory = track && track.category ? track.category : 'All'
  20. - var gaAction = track && track.action ? track.action : null
  21. - var gaLabel = track && track.label ? track.label : null
  22. - var mb = track && track.mb ? 'true' : null
  23. - var mbSegmentation = track && track.segmentation ? track.segmentation : null
  24. - var trigger = track && track.trigger ? track.trigger : null
  25. a(
  26. href='/user/bonus'
  27. class=linkClass
  28. event-tracking-ga=gaCategory
  29. event-tracking=gaAction
  30. event-tracking-label=gaLabel
  31. event-tracking-trigger=trigger
  32. event-tracking-mb=mb
  33. event-segmentation=mbSegmentation
  34. )
  35. span #{linkText ? linkText : 'invite your friends'}
  36. mixin linkPlansAndPricing(linkText, linkClass)
  37. a(href='/user/subscription/plans' class=linkClass)
  38. | #{linkText ? linkText : 'plans and pricing'}
  39. mixin linkPrintNewTab(linkText, linkClass, track)
  40. - var gaCategory = track && track.category ? track.category : null
  41. - var gaAction = track && track.action ? track.action : null
  42. - var gaLabel = track && track.label ? track.label : null
  43. - var mb = track && track.mb ? 'true' : null
  44. - var mbSegmentation = track && track.segmentation ? track.segmentation : null
  45. - var trigger = track && track.trigger ? track.trigger : null
  46. a(
  47. href='?media=print'
  48. class=linkClass
  49. event-tracking-ga=gaCategory
  50. event-tracking=gaAction
  51. event-tracking-label=gaLabel
  52. event-tracking-trigger=trigger
  53. event-tracking-mb=mb
  54. event-segmentation=mbSegmentation
  55. target='_BLANK'
  56. rel='noopener noreferrer'
  57. )
  58. span #{linkText ? linkText : 'print'}
  59. mixin linkSignIn(linkText, linkClass, redirect)
  60. a(href=`/login${redirect ? '?redir=' + redirect : ''}` class=linkClass)
  61. | #{linkText ? linkText : 'sign in'}
  62. mixin linkSignUp(linkText, linkClass, redirect)
  63. a(href=`/register${redirect ? '?redir=' + redirect : ''}` class=linkClass)
  64. | #{linkText ? linkText : 'sign up'}
  65. mixin linkTweet(linkText, linkClass, tweetText, track)
  66. //- twitter-share-button is required by twitter
  67. - var gaCategory = track && track.category ? track.category : 'All'
  68. - var gaAction = track && track.action ? track.action : null
  69. - var gaLabel = track && track.label ? track.label : null
  70. - var mb = track && track.mb ? 'true' : null
  71. - var mbSegmentation = track && track.segmentation ? track.segmentation : null
  72. - var trigger = track && track.trigger ? track.trigger : null
  73. a(
  74. class='twitter-share-button ' + linkClass
  75. event-tracking-ga=gaCategory
  76. event-tracking=gaAction
  77. event-tracking-label=gaLabel
  78. event-tracking-trigger=trigger
  79. event-tracking-mb=mb
  80. event-segmentation=mbSegmentation
  81. href='https://twitter.com/intent/tweet?text=' + tweetText
  82. target='_BLANK'
  83. rel='noopener noreferrer'
  84. ) #{linkText ? linkText : 'tweet'}
  85. mixin linkUniversities(linkText, linkClass)
  86. a(
  87. href=(settings.siteUrl ? settings.siteUrl : '') + '/for/universities'
  88. class=linkClass
  89. )
  90. | #{linkText ? linkText : 'universities'}
  91. mixin linkWithArrow({text, href, eventTracking, eventSegmentation, eventTrackingTrigger})
  92. a.link-with-arrow(
  93. href=href
  94. event-tracking=eventTracking
  95. event-segmentation=eventSegmentation
  96. event-tracking-trigger=eventTrackingTrigger
  97. event-tracking-mb
  98. )
  99. | #{text}
  100. +material-symbol('arrow_right_alt')