| </div> |
| </div> |
| </div> |
| <div class="footer"> |
| <div class="footer__inner"> |
| <div class="footer__legal"> |
| <span class="footer__legal__one">The contents of this website are © 2017 <a href="https://www.apache.org/" target="_blank">Apache Software Foundation</a> under the terms of the <a href="https://www.apache.org/licenses/LICENSE-2.0.html" target="_blank">Apache License v2</a>.</span> |
| <span class="footer__legal__two">Apache Kafka, Kafka, and the Kafka logo are either registered trademarks or trademarks of The Apache Software Foundation</span> |
| <span class="footer__legal__three">in the United States and other countries.</span> |
| </div> |
| <a class="apache-feather" target="_blank" href="http://www.apache.org"> |
| <img width="40" src="/images/feather-small.png" alt="Apache Feather"> |
| </a> |
| </div> |
| </div> |
| </body> |
| |
| <script type="text/javascript" src="/js/syntaxhighlighter.js"></script> |
| <script src="https://cdnjs.cloudflare.com/ajax/libs/handlebars.js/2.0.0/handlebars.js"></script> |
| <script> |
| $(function () { |
| // list of pages that are rendered with Handlebars |
| var templates = [ |
| 'introduction', |
| 'implementation', |
| 'design', |
| 'api', |
| 'configuration', |
| 'ops', |
| 'security', |
| 'connect', |
| 'streams', |
| 'quickstart', |
| 'toc', |
| 'upgrade', |
| 'content' |
| ]; |
| |
| // loop through all Handlebar templates on the page and render them |
| for(var i = 0; i < templates.length; i++) { |
| var templateScript = $("#" + templates[i] + "-template").html(); |
| if(templateScript) { |
| var template = Handlebars.compile(templateScript); |
| var html = template(context); |
| $(".p-" + templates[i]).html(html); |
| } |
| } |
| }); |
| </script> |
| |
| <script src="/js/jquery.sticky-kit.min.js"></script> |
| <script> |
| $(function() { |
| |
| |
| $('.download-version').mouseenter(function(){ |
| $('a',this).css('visibility','visible'); |
| }); |
| |
| $('.download-version').mouseleave(function(){ |
| $('a',this).css('visibility','hidden'); |
| }); |
| |
| $('.download-version a').click(function(){ |
| $('a',this).css('visibility','hidden'); |
| }); |
| |
| |
| $('.download-version a').mouseenter(function(){ |
| $('a',this).css('visibility','visible'); |
| }); |
| |
| // Set mobile scroll position on nav |
| function setNavScroll(offsetLeft) { |
| $('.nav-scroller').animate({ |
| scrollLeft: $('.nav-scroller').scrollLeft() + $('nav .selected').offset().left - offsetLeft |
| }, 50); |
| } |
| |
| // Helper classes for nav |
| $('nav').mouseenter(function(){ |
| $(this).addClass('hovering'); |
| }); |
| $('nav').mouseleave(function(){ |
| $(this).removeClass('hovering'); |
| }); |
| |
| // Handle expanding sections of nav (async) |
| $('.b-nav__sub__anchor').click(function(){ |
| $('nav .selected').removeClass('selected'); |
| $('.nav__item__with__subs--expanded').removeClass('nav__item__with__subs--expanded'); |
| |
| $(this).addClass('selected'); |
| $(this).parent().toggleClass('nav__item__with__subs--expanded'); |
| |
| if($(window).width() <= 650) { |
| window.setTimeout(function(){ |
| setNavScroll(30); |
| }, 300); |
| } |
| }); |
| |
| // Initialize sticky elements on the page |
| if($(window).width() > 650) { |
| // Nav for desktop |
| $('.b-sticky-nav').stick_in_parent({offset_top: 40}); |
| // Documentation banner for desktop |
| $('.b-sticky-doc-banner').stick_in_parent({offset_top: 0}); |
| } else { |
| // Scroll nav for mobile so current nav item is in view |
| window.setTimeout(function(){ |
| setNavScroll(80); |
| }, 300); |
| } |
| |
| // On window resize check to see if stuff should be unstuck |
| window.onresize = function(event) { |
| if($(window).width() <= 650) { |
| $('.b-sticky-nav').trigger("sticky_kit:detach"); |
| } else { |
| $('.b-sticky-nav').stick_in_parent({offset_top: 40}); |
| $('.b-sticky-doc-banner').stick_in_parent({offset_top: 0}); |
| } |
| }; |
| }); |
| </script> |
| |
| <script> |
| (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ |
| (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), |
| m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) |
| })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); |
| |
| ga('create', 'UA-7818013-4', 'apache.org'); |
| ga('send', 'pageview'); |
| |
| </script> |
| </html> |