Artifact bef080a6929a3e6fbd73cc1aca5377f6cd374decf1ffdb126e49c4b70dd879af:
- File
skins/bootstrap/header.txt
— part of check-in
[14ac2cacdd]
at
2019-08-21 08:52:21
on branch trunk
— Replaced the redundant copy of the default CSP in
skins/bootstrap/header.txt with "$default_csp", allowing the TH1 setup
script to override the CSP as in all the other stock skins. (Bootstrap
is the last stock skin to define a custom <head> element.)
(user:
wyoung
size: 5785)
[more...]
1 <html lang="en">
2 <head>
3 <meta charset="utf-8">
4 <base href="$baseurl/$current_page" />
5 <title>$<project_name>: $<title></title>
6 <meta name="viewport" content="width=device-width, initial-scale=1.0">
7 <meta http-equiv="Content-Security-Policy" content="$default_csp"/>
8 <link rel="alternate" type="application/rss+xml" title="RSS Feed" href="$home/timeline.rss" />
9 <link rel="stylesheet" href="$home/style.css?default" type="text/css" media="screen" />
10 <script nonce="$<nonce>">
11 function gebi(x){
12 if(/^#/.test(x)) x = x.substr(1);
13 var e = document.getElementById(x);
14 if(!e) throw new Error("Expecting element with ID "+x);
15 else return e;
16 }
17 </script>
18 </head>
19 <body data-spy="scroll" data-target=".sidebar">
20 <div id="wrap">
21 <div class="navbar navbar-inverse navbar-fixed-top" role="navigation">
22 <div class="container">
23 <div class="navbar-header">
24 <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target=".navbar-collapse">
25 <span class="sr-only">Toggle navigation</span>
26 <span class="icon-bar"></span>
27 <span class="icon-bar"></span>
28 <span class="icon-bar"></span>
29 </button>
30 <th1>html "<a class='navbar-brand' href='$home$index_page'>$project_name</a>"</th1>
31 </div>
32 <div class="collapse navbar-collapse">
33 <p class="navbar-text pull-right"><th1>
34 if {[info exists login]} {
35 puts "Logged in as $login"
36 html " · <a href='$home/login'>Logout</a>"
37 } else {
38 puts "Not logged in"
39 html " · <a href='$home/login'>Login</a>"
40 }
41 </th1></p>
42 <ul class="nav navbar-nav">
43 <th1>
44 set is_index [expr [string compare [string range $current_page 0 4] "index"]==0]
45 set is_home [expr [string compare [string range $current_page 0 [expr [string length $index_page]-1] ] $index_page]==0]
46 if {$is_index || $is_home} {
47 html "<li class='active'><a href='$home$index_page'>Home</a></li>\n"
48 } else {
49 html "<li><a href='$home$index_page'>Home</a></li>\n"
50 }
51 if {[hascap j]} {
52 if {[string compare [string range $current_page 0 3] "wiki"] == 0} {
53 html "<li class='active'><a href='$home/wiki'>Wiki</a></li>\n"
54 } else {
55 html "<li><a href='$home/wiki'>Wiki</a></li>\n"
56 }
57 }
58 if {[anycap jor]} {
59 if {[string compare $current_page "timeline"] == 0} {
60 html "<li class='active'><a href='$home/timeline'>Timeline</a></li>\n"
61 } else {
62 html "<li><a href='$home/timeline'>Timeline</a></li>\n"
63 }
64 }
65 if {[hascap oh]} {
66 if {[string compare [string range $current_page 0 2] "dir"] == 0} {
67 html "<li class='active'><a href='$home/dir?ci=tip'>Files</a></li>\n"
68 } else {
69 html "<li><a href='$home/dir?ci=tip'>Files</a></li>\n"
70 }
71 }
72 if {[hascap o]} {
73 if {[string compare $current_page "brlist"] == 0} {
74 html "<li class='active'><a href='$home/brlist'>Branches</a></li>\n"
75 } else {
76 html "<li><a href='$home/brlist'>Branches</a></li>\n"
77 }
78 if {[string compare $current_page "taglist"] == 0} {
79 html "<li class='active'><a href='$home/taglist'>Tags</a></li>\n"
80 } else {
81 html "<li><a href='$home/taglist'>Tags</a></li>\n"
82 }
83 }
84 if {[anycap 23456] || [anoncap 2] || [anoncap 3]} {
85 if {[string compare $current_page "forum"] == 0} {
86 html "<li class='active'><a href='$home/forum'>Forum</a></li>\n"
87 } else {
88 html "<li><a href='$home/forum'>Forum</a></li>\n"
89 }
90 }
91 if {[hascap r]} {
92 if {[string compare $current_page "reportlist"] == 0} {
93 html "<li class='active'><a href='$home/reportlist'>Tickets</a></li>\n"
94 } else {
95 html "<li><a href='$home/reportlist'>Tickets</a></li>\n"
96 }
97 }
98 if {[hascap s]} {
99 if {[string compare [string range $current_page 0 4] "setup"] == 0} {
100 html "<li class='active'><a href='$home/setup'>Admin</a></li>\n"
101 } else {
102 html "<li><a href='$home/setup'>Admin</a></li>\n"
103 }
104 } elseif {[hascap a]} {
105 if {[string compare [string range $current_page 0 4] "setup"] == 0} {
106 html "<li class='active'><a href='$home/setup_ulist'>Users</a></li>\n"
107 } else {
108 html "<li><a href='$home/setup_ulist'>Users</a></li>\n"
109 }
110 }
111 </th1>
112 </ul>
113 </div><!--/.nav-collapse -->
114 </div>
115 </div>
116 <div class="content">
117 <th1>
118 html "<div class='container'>"
119 html "<ul class='breadcrumb'>"
120 html "<li><a href='$home$index_page'>Home</a></li>"
121 html "<li><a href='$home/$current_page'>[htmlize $title]</a></li>"
122 html "</ul>"
123 </th1>