single.html 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255
  1. <!DOCTYPE html>
  2. <html lang="{{ .Site.LanguageCode }}">
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="robots" content="all,follow">
  6. <meta name="googlebot" content="index,follow,snippet,archive">
  7. <meta name="viewport" content="width=device-width, initial-scale=1">
  8. {{ $title_plain := .Title | markdownify | plainify }}
  9. <title>{{ $title_plain }}</title>
  10. <meta name="author" content="{{ .Param "author" }}" />
  11. {{ $keywords := .Site.Params.defaultKeywords | default (slice "" | first 0) }}
  12. {{ if isset .Params "tags" }}{{ range .Params.tags }}{{ $keywords = $keywords | append . }}{{ end }}{{ end }}
  13. {{ if isset .Params "keywords" }}{{ range .Params.keywords }}{{ $keywords = $keywords | append . }}{{ end }}{{ end }}
  14. {{ if gt (len $keywords) 0 }}
  15. <meta name="keywords" content="{{ delimit (uniq $keywords) ", " }}">
  16. {{ end }}
  17. {{ $description_plain := default .Site.Params.defaultDescription .Description | markdownify | plainify }}
  18. <meta name="description" content="{{ $description_plain }}">
  19. {{ hugo.Generator }}
  20. <!-- Font -->
  21. <link href='//fonts.googleapis.com/css?family=Roboto:400,100,100italic,300,300italic,500,700,800' rel='stylesheet' type='text/css'>
  22. <!-- Bootstrap and Font Awesome CSS -->
  23. <link rel="stylesheet" href="//use.fontawesome.com/releases/v5.11.2/css/all.css">
  24. <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
  25. <!-- CSS animations -->
  26. <link href="{{ "css/animate.css" | relURL}}" rel="stylesheet">
  27. <!-- Theme stylesheet, if possible do not edit this stylesheet -->
  28. {{ with .Site.Params.style }}
  29. <link href="{{ "css/style" | relURL}}.{{ . }}.css" rel="stylesheet" id="theme-stylesheet">
  30. {{ else }}
  31. <link href="{{ "css/style.default.css" | relURL}}" rel="stylesheet" id="theme-stylesheet">
  32. {{ end }}
  33. <!-- Custom stylesheet - for your changes -->
  34. <link href="{{ "css/custom.css" | relURL}}" rel="stylesheet">
  35. <link href="{{ "css/customnft.css" | relURL}}" rel="stylesheet">
  36. <!-- Responsivity for older IE -->
  37. {{ `
  38. <!--[if lt IE 9]>
  39. <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
  40. <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
  41. <![endif]-->
  42. ` | safeHTML }}
  43. <!-- Favicon and Apple touch icons-->
  44. <link rel="shortcut icon" href="{{ "img/favicon.ico" | relURL }}" type="image/x-icon" />
  45. <link rel="apple-touch-icon" href="{{ "img/apple-touch-icon.png" | relURL }}" />
  46. <!-- owl carousel CSS -->
  47. <link href="{{ "css/owl.carousel.css" | relURL}}" rel="stylesheet">
  48. <link href="{{ "css/owl.theme.css" | relURL}}" rel="stylesheet">
  49. <link rel="stylesheet" type="text/css" href="//cdn.jsdelivr.net/npm/slick-carousel@1.8.1/slick/slick.css"/>
  50. <!-- RSS feed -->
  51. <link rel="alternate" href="{{ "/index.xml" | absURL }}" type="application/rss+xml" title="{{ .Site.Title }}">
  52. <!-- Facebook OpenGraph tags -->
  53. {{ $is_blog := and (eq .Type "blog") (eq .Kind "page") }}
  54. {{ $has_image := isset .Params "banner" }}
  55. {{ $image := cond $has_image .Params.banner (.Site.Params.default_sharing_image | default "img/sharing-default.png") }}
  56. {{ $is_valid_image := print "static/" $image | fileExists }}
  57. {{ if $is_valid_image }}
  58. {{ $image_ext := path.Ext $image }}
  59. <meta property="og:locale" content="{{ replace .Site.LanguageCode "-" "_" }}">
  60. <meta property="og:site_name" content="{{ .Site.Title }}">
  61. <meta property="og:title" content="{{ $title_plain }}">
  62. <meta property="og:type" content="{{ cond $is_blog "article" "website" }}">
  63. <meta property="og:url" content="{{ .Permalink }}" />
  64. <meta property="og:description" content="{{ $description_plain }}">
  65. <meta property="og:image" content="{{ $image | absURL }}">
  66. <meta property="og:image:type" content="image/{{ if eq $image_ext ".svg" }}svg+xml{{ else }}{{ trim $image_ext "." }}{{ end }}">
  67. {{ with .Params.banner_alt }}<meta property="og:image:alt" content="{{ . | markdownify | plainify }}">{{ end }}
  68. {{ $image_local := printf "/static/%s" $image}}
  69. {{ with (imageConfig $image_local) }}
  70. <meta property="og:image:width" content="{{ .Width }}">
  71. <meta property="og:image:height" content="{{ .Height }}">
  72. {{ end }}
  73. {{ end }}
  74. {{ with .Lastmod }}<meta property="og:updated_time" content="{{ .Format "2006-01-02T15:04:05Z0700" }}">{{ end }}
  75. {{ if $is_blog }}
  76. {{ with .Param "facebook_site" }}<meta property="article:publisher" content="https://www.facebook.com/{{ . }}/">{{ end }}
  77. {{ with .Param "facebook_author" }}<meta property="article:author" content="https://www.facebook.com/{{ . }}/">{{ end }}
  78. {{ with .Params.categories }}<meta property="article:section" content="{{ index . 0 }}">{{ end }}
  79. {{ range .Params.tags }}<meta property="article:tag" content="{{ . }}">
  80. {{ end }}
  81. {{ if gt .ExpiryDate .PublishDate }}<meta property="article:expiration_time" content="{{ .ExpiryDate.Format "2006-01-02T15:04:05Z0700" }}">{{ end }}
  82. {{ with .PublishDate }}<meta property="article:published_time" content="{{ .Format "2006-01-02T15:04:05Z0700" }}">{{ end }}
  83. {{ with .Lastmod }}<meta property="article:modified_time" content="{{ .Format "2006-01-02T15:04:05Z0700" }}">{{ end }}
  84. {{ end }}
  85. <!-- Twitter Card meta tags -->
  86. <meta name="twitter:card" content="summary{{ if (and $is_blog (and $has_image $is_valid_image)) }}_large_image{{ end }}">
  87. {{ with .Param "twitter_site" }}<meta name="twitter:site" content="@{{ . }}">{{ end }}
  88. <meta name="twitter:title" content="{{ $title_plain | truncate 70 }}">
  89. {{ if $is_valid_image }}
  90. <meta name="twitter:image" content="{{ $image | absURL }}">
  91. {{ end }}
  92. <meta name="twitter:description" content="{{ $description_plain | truncate 200 }}">
  93. {{ with .Param "twitter_author" }}<meta name="twitter:creator" content="@{{ . }}">{{ end }}
  94. <meta name="facebook-domain-verification" content="3xipgs46lfxeohb6sq2xw3ulmq94ew" />
  95. <!-- Start of HubSpot Embed Code -->
  96. <script type="text/javascript" id="hs-script-loader" async defer src="//js-na1.hs-scripts.com/9082955.js"></script>
  97. <!-- End of HubSpot Embed Code -->
  98. <!-- Global site tag (gtag.js) - Google Ads: 474336061 -->
  99. <script async src="https://www.googletagmanager.com/gtag/js?id=AW-474336061"></script>
  100. <script>
  101. window.dataLayer = window.dataLayer || [];
  102. function gtag(){dataLayer.push(arguments);}
  103. gtag('js', new Date());
  104. gtag('config', 'AW-474336061');
  105. </script>
  106. <!-- Google Tag Manager -->
  107. <script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
  108. new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
  109. j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
  110. 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
  111. })(window,document,'script','dataLayer','GTM-MTWWP3G');</script>
  112. <!-- End Google Tag Manager -->
  113. <!-- Global site tag (gtag.js) - Google Analytics -->
  114. <script async src="https://www.googletagmanager.com/gtag/js?id=G-9JHSFXZ4TT"></script>
  115. <script>
  116. window.dataLayer = window.dataLayer || [];
  117. function gtag(){dataLayer.push(arguments);}
  118. gtag('js', new Date());
  119. gtag('config', 'G-9JHSFXZ4TT');
  120. </script>
  121. <!-- Event snippet for ChoozMo video marking conversion page -->
  122. <script>
  123. gtag('event', 'conversion', {'send_to': 'AW-474336061/nOm7CPHvtZ0DEL2Wl-IB'});
  124. </script>
  125. </head>
  126. <body>
  127. <!-- Google Tag Manager (noscript) -->
  128. <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-MTWWP3G"
  129. height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
  130. <!-- End Google Tag Manager (noscript) -->
  131. <div id="all" style="overflow-x:hidden;">
  132. {{ partial "nav.html" . }}
  133. {{ partial "LP_components/hero.html" . }}
  134. {{ partial "LP_components/use_cases.html" . }}
  135. {{ partial "LP_components/steps.html" . }}
  136. {{ partial "LP_components/features.html" . }}
  137. {{ partial "LP_components/blogs_tab.html" . }}
  138. {{ partial "LP_components/action.html" . }}
  139. {{ partial "LP_components/Footer.html" . }}
  140. {{ partial "LP_components/news.html" . }}
  141. </div>
  142. <!-- /#all -->
  143. {{ partial "scripts.html" . }}
  144. <script type="application/javascript">
  145. var doNotTrack = false;
  146. if (!doNotTrack) {
  147. (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  148. (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  149. m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  150. })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
  151. ga('create', 'UA-153100602-5', 'auto');
  152. ga('send', 'pageview');
  153. }
  154. </script>
  155. <script>
  156. function tabLP () {
  157. console.log('pass');
  158. if(('.m-tabs').length){
  159. // Show the first tab by default
  160. $('.blog-tabs-stage>div').hide();
  161. $('.blog-tabs-stage>div:first').show();
  162. $('.blog-tabs-nav li:first').addClass('blog-tab-active');
  163. // Change tab class and display content
  164. $('.blog-tabs-nav a').on('click', function(event){
  165. event.preventDefault();
  166. $('.blog-tabs-nav li').removeClass('blog-tab-active');
  167. $(this).parent().addClass('blog-tab-active');
  168. $('.blog-tabs-stage>div').hide();
  169. $($(this).attr('href')).show();
  170. });
  171. }
  172. }
  173. tabLP();
  174. function debounce(func, wait = 20, immediate = true) {
  175. var timeout;
  176. return function() {
  177. var context = this, args = arguments;
  178. var later = function() {
  179. timeout = null;
  180. if (!immediate) func.apply(context, args);
  181. };
  182. var callNow = immediate && !timeout;
  183. clearTimeout(timeout);
  184. timeout = setTimeout(later, wait);
  185. if (callNow) func.apply(context, args);
  186. };
  187. };
  188. const featuresBlock = document.querySelectorAll('.features-block');
  189. const featuresRow = document.querySelectorAll('.sec-features .row');
  190. function checkSlide() {
  191. console.log('pass');
  192. featuresRow.forEach((block, i) => {
  193. // half way through the image
  194. const slideInAt = (window.scrollY + window.innerHeight) - block.offsetHeight / 2;
  195. console.log(slideInAt);
  196. console.log(block.offsetTop);
  197. // bottom of the image
  198. const isHalfShown = slideInAt > block.offsetTop;
  199. if (isHalfShown) {
  200. console.log('active');
  201. featuresBlock[i].classList.add('active');
  202. }
  203. });
  204. }
  205. window.addEventListener('scroll', debounce(checkSlide));
  206. $('.navbar-nav .dropdown:nth-of-type(2)').click(function() {
  207. $('html, body').animate({
  208. scrollTop: $("#sec-features").offset().top
  209. }, 1000);
  210. })
  211. </script>
  212. </body>
  213. </html>