2014-04-11 02:20:58 +08:00
|
|
|
<!DOCTYPE html>
|
2019-03-18 20:49:01 +08:00
|
|
|
<html lang="{{.Language}}">
|
2015-03-08 04:12:13 +08:00
|
|
|
<head data-suburl="{{AppSubUrl}}">
|
2017-01-25 23:15:25 +08:00
|
|
|
<meta charset="utf-8">
|
2017-12-31 08:47:52 +08:00
|
|
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
2017-01-25 23:15:25 +08:00
|
|
|
<meta http-equiv="x-ua-compatible" content="ie=edge">
|
2019-03-19 10:27:34 +08:00
|
|
|
<title>{{if .Title}}{{.Title}} - {{end}} {{if .Repository.Name}}{{.Repository.Name}} - {{end}}{{AppName}}</title>
|
2019-03-20 05:02:18 +08:00
|
|
|
<link rel="manifest" href="{{AppSubUrl}}/manifest.json" crossorigin="use-credentials">
|
2019-11-22 04:06:23 +08:00
|
|
|
{{if UseServiceWorker}}
|
2018-11-27 23:18:26 +08:00
|
|
|
<script>
|
|
|
|
if ('serviceWorker' in navigator) {
|
2019-11-22 04:06:23 +08:00
|
|
|
navigator.serviceWorker.register('{{AppSubUrl}}/serviceworker.js').then(function(registration) {
|
|
|
|
// Registration was successful
|
|
|
|
console.info('ServiceWorker registration successful with scope: ', registration.scope);
|
|
|
|
}, function(err) {
|
|
|
|
// registration failed :(
|
|
|
|
console.info('ServiceWorker registration failed: ', err);
|
|
|
|
});
|
2018-11-27 23:18:26 +08:00
|
|
|
}
|
|
|
|
</script>
|
2019-11-22 04:06:23 +08:00
|
|
|
{{else}}
|
|
|
|
<script>
|
|
|
|
if ('serviceWorker' in navigator) {
|
|
|
|
navigator.serviceWorker.getRegistrations().then(function(registrations) {
|
|
|
|
registrations.forEach(function(registration) {
|
|
|
|
registration.unregister();
|
|
|
|
console.info('ServiceWorker unregistered');
|
|
|
|
});
|
|
|
|
});
|
|
|
|
}
|
|
|
|
</script>
|
|
|
|
{{end}}
|
2017-01-25 23:15:25 +08:00
|
|
|
<meta name="theme-color" content="{{ThemeColorMetaTag}}">
|
2017-04-01 09:03:01 +08:00
|
|
|
<meta name="author" content="{{if .Repository}}{{.Owner.Name}}{{else}}{{MetaAuthor}}{{end}}" />
|
|
|
|
<meta name="description" content="{{if .Repository}}{{.Repository.Name}}{{if .Repository.Description}} - {{.Repository.Description}}{{end}}{{else}}{{MetaDescription}}{{end}}" />
|
|
|
|
<meta name="keywords" content="{{MetaKeywords}}">
|
2015-07-21 11:19:56 +08:00
|
|
|
<meta name="referrer" content="no-referrer" />
|
2015-03-08 04:12:13 +08:00
|
|
|
<meta name="_csrf" content="{{.CsrfToken}}" />
|
2017-05-09 08:31:30 +08:00
|
|
|
{{if .IsSigned}}
|
|
|
|
<meta name="_uid" content="{{.SignedUser.ID}}" />
|
|
|
|
{{end}}
|
2017-05-18 22:28:29 +08:00
|
|
|
{{if .ContextUser}}
|
|
|
|
<meta name="_context_uid" content="{{.ContextUser.ID}}" />
|
|
|
|
{{end}}
|
2017-08-17 09:31:34 +08:00
|
|
|
{{if .SearchLimit}}
|
|
|
|
<meta name="_search_limit" content="{{.SearchLimit}}" />
|
|
|
|
{{end}}
|
2017-01-25 23:15:25 +08:00
|
|
|
{{if .GoGetImport}}
|
|
|
|
<meta name="go-import" content="{{.GoGetImport}} git {{.CloneLink.HTTPS}}">
|
|
|
|
<meta name="go-source" content="{{.GoGetImport}} _ {{.GoDocDirectory}} {{.GoDocFile}}">
|
|
|
|
{{end}}
|
2017-08-23 22:58:05 +08:00
|
|
|
<script>
|
|
|
|
{{SafeJS `/*
|
|
|
|
@licstart The following is the entire license notice for the
|
|
|
|
JavaScript code in this page.
|
|
|
|
|
|
|
|
Copyright (c) 2016 The Gitea Authors
|
|
|
|
Copyright (c) 2015 The Gogs Authors
|
|
|
|
|
|
|
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
|
|
of this software and associated documentation files (the "Software"), to deal
|
|
|
|
in the Software without restriction, including without limitation the rights
|
|
|
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
|
|
copies of the Software, and to permit persons to whom the Software is
|
|
|
|
furnished to do so, subject to the following conditions:
|
|
|
|
|
|
|
|
The above copyright notice and this permission notice shall be included in
|
|
|
|
all copies or substantial portions of the Software.
|
|
|
|
|
|
|
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
|
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
|
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
|
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
|
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
|
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
|
|
THE SOFTWARE.
|
|
|
|
---
|
|
|
|
Licensing information for additional javascript libraries can be found at:
|
2019-10-22 20:11:01 +08:00
|
|
|
{{StaticUrlPrefix}}/vendor/librejs.html
|
2017-08-23 22:58:05 +08:00
|
|
|
|
|
|
|
@licend The above is the entire license notice
|
|
|
|
for the JavaScript code in this page.
|
|
|
|
*/`}}
|
|
|
|
</script>
|
2020-01-29 05:57:20 +08:00
|
|
|
<script>
|
|
|
|
window.config = {
|
2020-02-12 09:53:18 +08:00
|
|
|
AppSubUrl: '{{AppSubUrl}}',
|
|
|
|
StaticUrlPrefix: '{{StaticUrlPrefix}}',
|
2020-01-29 05:57:20 +08:00
|
|
|
Datetimepicker: {{if .RequireDatetimepicker}}true{{else}}false{{end}},
|
|
|
|
Dropzone: {{if .RequireDropzone}}true{{else}}false{{end}},
|
|
|
|
HighlightJS: {{if .RequireHighlightJS}}true{{else}}false{{end}},
|
|
|
|
Minicolors: {{if .RequireMinicolors}}true{{else}}false{{end}},
|
|
|
|
SimpleMDE: {{if .RequireSimpleMDE}}true{{else}}false{{end}},
|
|
|
|
Tribute: {{if .RequireTribute}}true{{else}}false{{end}},
|
|
|
|
U2F: {{if .RequireU2F}}true{{else}}false{{end}},
|
|
|
|
};
|
|
|
|
</script>
|
2020-01-27 13:10:57 +08:00
|
|
|
<link rel="shortcut icon" href="{{StaticUrlPrefix}}/img/favicon.png">
|
2019-10-22 20:11:01 +08:00
|
|
|
<link rel="mask-icon" href="{{StaticUrlPrefix}}/img/gitea-safari.svg" color="#609926">
|
2020-01-26 02:58:26 +08:00
|
|
|
<link rel="stylesheet" href="{{StaticUrlPrefix}}/vendor/assets/font-awesome/css/font-awesome.min.css">
|
2020-01-26 05:18:31 +08:00
|
|
|
<link rel="preload" as="font" href="{{StaticUrlPrefix}}/fomantic/themes/default/assets/fonts/icons.woff2" type="font/woff2" crossorigin="anonymous">
|
|
|
|
<link rel="preload" as="font" href="{{StaticUrlPrefix}}/fomantic/themes/default/assets/fonts/outline-icons.woff2" type="font/woff2" crossorigin="anonymous">
|
2020-02-12 01:02:41 +08:00
|
|
|
<link rel="preload" as="image" href="{{StaticUrlPrefix}}/img/svg/icons.svg">
|
2017-01-25 23:15:25 +08:00
|
|
|
{{if .RequireSimpleMDE}}
|
2019-10-22 20:11:01 +08:00
|
|
|
<link rel="stylesheet" href="{{StaticUrlPrefix}}/vendor/plugins/simplemde/simplemde.min.css">
|
2017-01-25 23:15:25 +08:00
|
|
|
{{end}}
|
2015-11-26 09:10:25 +08:00
|
|
|
|
2017-12-11 14:03:04 +08:00
|
|
|
{{if .RequireTribute}}
|
2019-10-22 20:11:01 +08:00
|
|
|
<link rel="stylesheet" href="{{StaticUrlPrefix}}/vendor/plugins/tribute/tribute.css">
|
2017-12-11 14:03:04 +08:00
|
|
|
{{end}}
|
2020-01-21 13:17:58 +08:00
|
|
|
<link rel="stylesheet" href="{{StaticUrlPrefix}}/fomantic/semantic.min.css?v={{MD5 AppVer}}">
|
2019-10-22 20:11:01 +08:00
|
|
|
<link rel="stylesheet" href="{{StaticUrlPrefix}}/css/index.css?v={{MD5 AppVer}}">
|
2017-09-19 07:03:01 +08:00
|
|
|
<noscript>
|
|
|
|
<style>
|
|
|
|
.dropdown:hover > .menu { display: block; }
|
|
|
|
.ui.secondary.menu .dropdown.item > .menu { margin-top: 0; }
|
|
|
|
</style>
|
|
|
|
</noscript>
|
2017-01-25 23:15:25 +08:00
|
|
|
{{if .RequireMinicolors}}
|
2019-10-22 20:11:01 +08:00
|
|
|
<link rel="stylesheet" href="{{StaticUrlPrefix}}/vendor/plugins/jquery.minicolors/jquery.minicolors.css">
|
2017-01-25 23:15:25 +08:00
|
|
|
{{end}}
|
|
|
|
{{if .RequireDatetimepicker}}
|
2019-10-22 20:11:01 +08:00
|
|
|
<link rel="stylesheet" href="{{StaticUrlPrefix}}/vendor/plugins/jquery.datetimepicker/jquery.datetimepicker.css">
|
2017-01-25 23:15:25 +08:00
|
|
|
{{end}}
|
|
|
|
{{if .RequireDropzone}}
|
2019-10-22 20:11:01 +08:00
|
|
|
<link rel="stylesheet" href="{{StaticUrlPrefix}}/vendor/plugins/dropzone/dropzone.css">
|
2018-10-23 10:57:42 +08:00
|
|
|
{{end}}
|
|
|
|
{{if .EnableHeatmap}}
|
2019-10-22 20:11:01 +08:00
|
|
|
<link rel="stylesheet" href="{{StaticUrlPrefix}}/vendor/plugins/vue-calendar-heatmap/vue-calendar-heatmap.css">
|
2017-01-25 23:15:25 +08:00
|
|
|
{{end}}
|
2017-01-30 13:57:47 +08:00
|
|
|
<style class="list-search-style"></style>
|
2017-02-11 20:57:33 +08:00
|
|
|
{{if .PageIsUserProfile}}
|
|
|
|
<meta property="og:title" content="{{.Owner.Name}}" />
|
|
|
|
<meta property="og:type" content="profile" />
|
|
|
|
<meta property="og:image" content="{{.Owner.AvatarLink}}" />
|
|
|
|
<meta property="og:url" content="{{.Owner.HTMLURL}}" />
|
2019-10-24 01:54:13 +08:00
|
|
|
{{if .Owner.Description}}
|
|
|
|
<meta property="og:description" content="{{.Owner.Description}}">
|
|
|
|
{{end}}
|
2017-02-11 20:57:33 +08:00
|
|
|
{{else if .Repository}}
|
2019-10-24 01:54:13 +08:00
|
|
|
{{if .Issue}}
|
|
|
|
<meta property="og:title" content="{{.Issue.Title}}" />
|
|
|
|
<meta property="og:url" content="{{.Issue.HTMLURL}}" />
|
|
|
|
{{if .Issue.Content}}
|
|
|
|
<meta property="og:description" content="{{.Issue.Content}}" />
|
|
|
|
{{end}}
|
|
|
|
{{else}}
|
|
|
|
<meta property="og:title" content="{{.Repository.Name}}" />
|
|
|
|
<meta property="og:url" content="{{.Repository.HTMLURL}}" />
|
|
|
|
{{if .Repository.Description}}
|
|
|
|
<meta property="og:description" content="{{.Repository.Description}}" />
|
|
|
|
{{end}}
|
|
|
|
{{end}}
|
2017-02-11 20:57:33 +08:00
|
|
|
<meta property="og:type" content="object" />
|
|
|
|
<meta property="og:image" content="{{.Repository.Owner.AvatarLink}}" />
|
|
|
|
{{else}}
|
|
|
|
<meta property="og:title" content="{{AppName}}">
|
|
|
|
<meta property="og:type" content="website" />
|
2019-10-22 20:11:01 +08:00
|
|
|
<meta property="og:image" content="{{StaticUrlPrefix}}img/gitea-lg.png" />
|
2017-02-11 20:57:33 +08:00
|
|
|
<meta property="og:url" content="{{AppUrl}}" />
|
2017-04-01 09:03:01 +08:00
|
|
|
<meta property="og:description" content="{{MetaDescription}}">
|
2017-02-11 20:57:33 +08:00
|
|
|
{{end}}
|
2019-10-24 01:54:13 +08:00
|
|
|
<meta property="og:site_name" content="{{AppName}}" />
|
2019-01-10 01:22:57 +08:00
|
|
|
{{if .IsSigned }}
|
|
|
|
{{ if ne .SignedUser.Theme "gitea" }}
|
2019-12-19 11:35:03 +08:00
|
|
|
<link rel="stylesheet" href="{{StaticUrlPrefix}}/css/theme-{{.SignedUser.Theme}}.css?v={{MD5 AppVer}}">
|
2019-01-10 01:22:57 +08:00
|
|
|
{{end}}
|
|
|
|
{{else if ne DefaultTheme "gitea"}}
|
2019-12-19 11:35:03 +08:00
|
|
|
<link rel="stylesheet" href="{{StaticUrlPrefix}}/css/theme-{{DefaultTheme}}.css?v={{MD5 AppVer}}">
|
2018-07-06 05:25:04 +08:00
|
|
|
{{end}}
|
2017-12-03 08:26:06 +08:00
|
|
|
{{template "custom/header" .}}
|
2015-03-08 04:12:13 +08:00
|
|
|
</head>
|
|
|
|
<body>
|
2018-01-02 18:32:41 +08:00
|
|
|
{{template "custom/body_outer_pre" .}}
|
|
|
|
|
2015-03-08 04:12:13 +08:00
|
|
|
<div class="full height">
|
2017-09-19 07:03:01 +08:00
|
|
|
<noscript>{{.i18n.Tr "enable_javascript"}}</noscript>
|
2015-08-10 22:38:21 +08:00
|
|
|
|
2018-01-02 18:32:41 +08:00
|
|
|
{{template "custom/body_inner_pre" .}}
|
|
|
|
|
2015-07-08 01:09:03 +08:00
|
|
|
{{if not .PageIsInstall}}
|
2017-12-31 08:47:52 +08:00
|
|
|
<div class="ui top secondary stackable main menu following bar light">
|
2018-09-07 10:59:06 +08:00
|
|
|
{{template "base/head_navbar" .}}
|
2015-12-08 06:30:52 +08:00
|
|
|
</div><!-- end bar -->
|
2015-07-08 01:09:03 +08:00
|
|
|
{{end}}
|
2015-12-08 06:30:52 +08:00
|
|
|
{{/*
|
|
|
|
</div>
|
|
|
|
</body>
|
|
|
|
</html>
|
|
|
|
*/}}
|