api_docs/source/layouts/layout.erb
Robert Lord c404bc02df Add default language selecting with localStorage
Now, Slate will use localStorage to track the last selected
language, so if the user visits again with no language in the URL,
they will be redirected to the last language they used.

This update also fixes a bug with how the layout inserts the
language names into the javascript. Previously, they would be,
(for some inane reason) arrays within arrays. It is now just
an array. Whoever wrote that previous code was clearly a fool.
2013-10-29 10:40:07 -07:00

97 lines
No EOL
3 KiB
Text

<%#
Copyright 2008-2013 Concur Technologies, Inc.
Licensed under the Apache License, Version 2.0 (the "License"); you may
not use this file except in compliance with the License. You may obtain
a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
License for the specific language governing permissions and limitations
under the License.
%>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<!-- Always force latest IE rendering engine or request Chrome Frame -->
<meta content="IE=edge,chrome=1" http-equiv="X-UA-Compatible">
<!-- Use title if it's in the page YAML frontmatter -->
<title><%= current_page.data.title || "API Documentation" %></title>
<%= stylesheet_link_tag "screen", media: 'screen' %>
<%= stylesheet_link_tag "print", media: 'print' %>
<script src="http://code.jquery.com/jquery-1.10.1.min.js"></script>
<%= javascript_include_tag "all" %>
<script>
$(function() {
var toc = $("#toc").tocify({
selectors: "h1,h2",
extendPage: false,
theme: "none",
smoothScroll: false,
showEffectSpeed: 180,
hideEffectSpeed: 180,
ignoreSelector: ".toc-ignore",
hashGenerator: 'pretty',
highlightOffset: 60,
scrollTo: -2,
scrollHistory: true,
hashGenerator: function(text, element) {
return element[0].getAttribute('id');
}
});
setupLanguages([
<% if current_page.data.language_tabs %>
<% current_page.data.language_tabs.each do |lang| %>
<% if lang.is_a? Hash %>
'<%= lang.keys[0] %>',
<% else %>
'<%= lang %>',
<% end %>
<% end %>
<% end %>
]);
});
</script>
</head>
<body class="<%= page_classes %>">
<div class="tocify-wrapper">
<%= image_tag "logo.png" %>
<div id="toc">
</div>
<% if current_page.data.toc_footers %>
<ul class="toc-footer">
<% current_page.data.toc_footers.each do |footer| %>
<li><%= footer %></li>
<% end %>
</ul>
<% end %>
</div>
<div class="page-wrapper">
<div class="content">
<%= yield %>
</div>
<div class="dark-box">
<div id="lang-selector">
<% if current_page.data.language_tabs %>
<% current_page.data.language_tabs.each do |lang| %>
<% if lang.is_a? Hash %>
<a href="#" data-language-name="<%= lang.keys[0] %>"><%= lang.values[0] %></a>
<% else %>
<a href="#" data-language-name="<%= lang %>"><%= lang %></a>
<% end %>
<% end %>
<% end %>
</div>
</div>
</div>
</body>
</html>