]> BookStack Code Mirror - website/blob - themes/bookstack/layouts/partials/header.html
a9e99bf50448770abf55202072f9fee4cb56c667
[website] / themes / bookstack / layouts / partials / header.html
1 <!DOCTYPE html>
2 <html lang="{{.Site.LanguageCode}}">
3 <head>
4
5     <meta charset="utf-8" />
6     <meta http-equiv="X-UA-Compatible" content="IE=edge" />
7
8     {{ partial "twitter_card.html" . }}
9
10         <meta property="og:title" content="{{ if ne .RelPermalink "/" }} {{ .Title }} &middot; {{ end }} {{ .Site.Title }}" />
11         <meta property="og:site_name" content="{{ .Site.Title }}" />
12         <meta property="og:url" content="{{ .Permalink }}" />
13
14
15     {{ $baseURL := .Site.BaseURL }}
16     {{ if and (.IsPage) (ne .Type "about")  }}
17
18     {{ with .Params.image }}
19         <!-- Twitter summary card with large image must be at least 280x150px -->
20         <meta name="twitter:card" content="summary_large_image"/>
21         <meta name="og:image" content="{{ $baseURL }}{{ . }}"/>
22     {{ end }}
23
24         <meta property="og:type" content="article" />
25     <meta property="og:article:published_time" content="{{ .Date.Format "2006-01-02T15:04:05Z07:00" | safeHTML }}" />
26     <meta property="og:article:modified_time" content="{{ .Lastmod.Format "2006-01-02T15:04:05Z07:00" | safeHTML }}" />
27
28     {{ range .Params.tags }}
29     <meta property="og:article:tag" content="{{ . }}" />
30     {{ end }}
31     {{ else }}
32     <meta property="og:type" content="website" />
33     {{ end }}
34
35     <title>
36       {{ if ne .RelPermalink "/" }} {{ .Title }} &middot; {{ end }} {{ .Site.Title }}
37     </title>
38
39     {{ $description := .Site.Params.Description }}
40     {{ if and (.Params.Description) (.IsPage) }}
41       {{ $description = .Params.Description }}
42     {{ else if .IsPage}}
43         {{ $description = .Summary }}
44     {{ end }}
45     <meta name="description" content="{{ $description }}" />
46
47     <meta name="HandheldFriendly" content="True" />
48     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
49
50     <meta name="theme-color" content="#13557D">
51
52     <link rel="apple-touch-icon-precomposed" sizes="114x114" href="/images/apple-touch-icon-114x114.png" />
53     <link rel="apple-touch-icon-precomposed" sizes="72x72" href="/images/apple-touch-icon-72x72.png" />
54     <link rel="apple-touch-icon-precomposed" sizes="152x152" href="/images/apple-touch-icon-152x152.png" />
55
56     <link rel="icon" type="image/png" href="/images/favicon-196x196.png" sizes="196x196" />
57     <link rel="icon" type="image/png" href="/images/favicon-192x192.png" sizes="192x192" />
58     <link rel="icon" type="image/png" href="/images/favicon-96x96.png" sizes="96x96" />
59     <link rel="icon" type="image/png" href="/images/favicon-32x32.png" sizes="32x32" />
60
61     <link rel="stylesheet" type="text/css" href="{{.Site.BaseURL}}css/styles.css?v={{ now.Format "2006-01-02T15:04:05" }}" />
62
63     {{ if .Site.Params.RSSLink}}
64         <link href="{{.Site.Params.RSSLink }}" rel="alternate" type="application/rss+xml" title="{{ .Site.Title }}" />
65     {{else}}
66       {{ if ne .RelPermalink "/" }}
67           <link href="{{ .Site.BaseURL }}index.xml" rel="alternate" type="application/rss+xml" title="{{ .Site.Title }}" />
68       {{ end }}
69       {{if .IsNode}}
70         <link href="{{ with .OutputFormats.Get "RSS" }}{{ .Permalink }}{{ end }}" rel="alternate" type="application/rss+xml" title="{{ if ne .RelPermalink "/" }}{{ .Title }} &middot; {{ end }}{{ .Site.Title }}" />
71       {{end}}
72     {{end}}
73     {{hugo.Generator}}
74
75     <link rel="canonical" href="{{ .Permalink }}" />
76
77     <script async defer data-domain="bookstackapp.com" src="https://analytics.bookstackapp.com/js/plausible.js"></script>
78
79     <!-- at the end of the HEAD -->
80     <link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/2/docsearch.min.css" />
81
82     {{ if .Site.Params.customHeaderPartial }}
83         {{ partial .Site.Params.customHeaderPartial . }}
84     {{ end }}
85 </head>
86 <body class="nav-closed">
87
88       <header id="header" class="header">
89         <div class="container">
90             <div class="row fix-mobile">
91                 <div class="col-md-3 col-sm-6 col-xs-8">
92                     <div class="logo">
93                         <a href="{{.Site.BaseURL}}">
94                             {{partial "icon/logo.svg"}}
95                             <div>BookStack</div>
96                         </a>
97
98                     </div>
99                 </div>
100                 <div class="col-md-9 col-sm-6 menu col-xs-4">
101                     <button tabindex="1" id="menu-button" class="button muted" type="button">{{partial "icon/menu.svg"}}</button>
102                     <div class="inner">
103                         <a href="/docs"><span class="icon" aria-hidden="true">{{partial "icon/book.svg"}}</span>Documentation</a>
104                         <a href="/#features"><span class="icon" aria-hidden="true">{{partial "icon/star.svg"}}</span>Features</a>
105                         <a href="/#demo"><span class="icon" aria-hidden="true">{{partial "icon/touch_app.svg"}}</span>Demo</a>
106                         <a href="https://github.com/BookStackApp/BookStack" target="_blank"><span class="icon" aria-hidden="true">{{partial "icon/github.svg"}}</span>Github</a>
107                         <a href="https://discord.gg/ztkBqR2" target="_blank"><span class="icon" aria-hidden="true">{{partial "icon/discord.svg"}}</span>Discord</a>
108                         <a href="https://twitter.com/bookstack_app" target="_blank"><span class="icon" aria-hidden="true">{{partial "icon/twitter.svg"}}</span>Twitter</a>
109                         <a href="/blog"><span class="icon" aria-hidden="true">{{partial "icon/rss_feed.svg"}}</span>Blog</a>
110                     </div>
111                 </div>
112             </div>
113         </div>
114     </header>
115
116   <div id="content">