@@ -1,41 +0,0 @@ | |||
<footer> | |||
<div class="ui container"> | |||
<div class="ui grid"> | |||
<div class="sixteen wide mobile eight wide tablet eight wide computer column"> | |||
<div class="ui three column grid"> | |||
<div class="column ui vertical text menu"> | |||
<div class="header item">{{.i18n.Tr "custom.head.community"}}</div> | |||
<a href="https://www.openi.org.cn/html/Club/2019/0227/14.html" class="item">{{.i18n.Tr "custom.foot.council"}}</a> | |||
<a href="https://www.openi.org.cn/html/Club/2019/0227/14.html" class="item">{{.i18n.Tr "custom.foot.technical_committee"}}</a> | |||
<a href="https://www.openi.org.cn/html/Club/2019/0228/17.html" class="item">{{.i18n.Tr "custom.foot.join"}}</a> | |||
</div> | |||
<div class="column ui vertical text menu"> | |||
<div class="header item">{{.i18n.Tr "custom.foot.news"}}</div> | |||
<a href="https://www.openi.org.cn/html/news/dongtai/" class="item">{{.i18n.Tr "custom.foot.community_news"}}</a> | |||
<a href="https://www.openi.org.cn/html/news/huodong/" class="item">{{.i18n.Tr "custom.foot.member_news"}}</a> | |||
<a href="https://www.openi.org.cn/html/news/zixun/" class="item">{{.i18n.Tr "custom.foot.industry_advisory"}}</a> | |||
</div> | |||
<div class="column ui vertical text menu"> | |||
<div class="header item">{{.i18n.Tr "custom.foot.help"}}</div> | |||
<div class="ui language bottom floating slide up dropdown link item"> | |||
<i class="world icon"></i> | |||
<div class="text">{{.LangName}}</div> | |||
<div class="menu"> | |||
{{range .AllLangs}} | |||
<a lang="{{.Lang}}" class="item {{if eq $.Lang .Lang}}active selected{{end}}" href="{{if eq $.Lang .Lang}}#{{else}}{{$.Link}}?lang={{.Lang}}{{end}}">{{.Name}}</a> | |||
{{end}} | |||
</div> | |||
</div> | |||
{{template "custom/extra_links_footer" .}} | |||
</div> | |||
</div> | |||
</div> | |||
<div class="sixteen wide mobile eight wide tablet eight wide computer column" style=" margin:2.0rem 0"> | |||
{{.i18n.Tr "custom.foot.copyright"}} <a href="http://www.miitbeian.gov.cn/" target="_blank">京ICP备18004880号</a> | |||
<br> | |||
{{.i18n.Tr "powered_by" "鹏城实验室云脑、Trustie、华为云 DevCloud、gitea"}} | |||
<br> | |||
</div> | |||
</div> | |||
</div> | |||
</footer> |
@@ -1,196 +0,0 @@ | |||
<!DOCTYPE html> | |||
<html lang="{{.Language}}"> | |||
<head data-suburl="{{AppSubUrl}}"> | |||
<meta charset="utf-8"> | |||
<meta name="viewport" content="width=device-width, initial-scale=1"> | |||
<meta http-equiv="x-ua-compatible" content="ie=edge"> | |||
<title>{{if .Title}}{{.Title}} - {{end}} {{if .Repository.Name}}{{.Repository.Name}} - {{end}}{{AppName}}</title> | |||
<link rel="manifest" href="{{AppSubUrl}}/manifest.json" crossorigin="use-credentials"> | |||
{{if UseServiceWorker}} | |||
<script> | |||
if ('serviceWorker' in navigator) { | |||
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); | |||
}); | |||
} | |||
</script> | |||
{{else}} | |||
<script> | |||
if ('serviceWorker' in navigator) { | |||
navigator.serviceWorker.getRegistrations().then(function(registrations) { | |||
registrations.forEach(function(registration) { | |||
registration.unregister(); | |||
console.info('ServiceWorker unregistered'); | |||
}); | |||
}); | |||
} | |||
</script> | |||
{{end}} | |||
<meta name="theme-color" content="{{ThemeColorMetaTag}}"> | |||
<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}}"> | |||
<meta name="referrer" content="no-referrer" /> | |||
<meta name="_csrf" content="{{.CsrfToken}}" /> | |||
{{if .IsSigned}} | |||
<meta name="_uid" content="{{.SignedUser.ID}}" /> | |||
{{end}} | |||
{{if .ContextUser}} | |||
<meta name="_context_uid" content="{{.ContextUser.ID}}" /> | |||
{{end}} | |||
{{if .SearchLimit}} | |||
<meta name="_search_limit" content="{{.SearchLimit}}" /> | |||
{{end}} | |||
{{if .GoGetImport}} | |||
<meta name="go-import" content="{{.GoGetImport}} git {{.CloneLink.HTTPS}}"> | |||
<meta name="go-source" content="{{.GoGetImport}} _ {{.GoDocDirectory}} {{.GoDocFile}}"> | |||
{{end}} | |||
<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: | |||
{{StaticUrlPrefix}}/vendor/librejs.html | |||
@licend The above is the entire license notice | |||
for the JavaScript code in this page. | |||
*/`}} | |||
</script> | |||
<script> | |||
window.config = { | |||
AppSubUrl: '{{AppSubUrl}}', | |||
StaticUrlPrefix: '{{StaticUrlPrefix}}', | |||
csrf: '{{.CsrfToken}}', | |||
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}}, | |||
Heatmap: {{if .EnableHeatmap}}true{{else}}false{{end}}, | |||
heatmapUser: {{if .HeatmapUser}}'{{.HeatmapUser}}'{{else}}null{{end}}, | |||
NotificationSettings: { | |||
MinTimeout: {{NotificationSettings.MinTimeout}}, | |||
TimeoutStep: {{NotificationSettings.TimeoutStep}}, | |||
MaxTimeout: {{NotificationSettings.MaxTimeout}}, | |||
EventSourceUpdateTime: {{NotificationSettings.EventSourceUpdateTime}}, | |||
}, | |||
{{if .RequireTribute}} | |||
tributeValues: [ | |||
{{ range .Assignees }} | |||
{key: '{{.Name}} {{.FullName}}', value: '{{.Name}}', | |||
name: '{{.Name}}', fullname: '{{.FullName}}', avatar: '{{.RelAvatarLink}}'}, | |||
{{ end }} | |||
], | |||
{{end}} | |||
}; | |||
</script> | |||
<link rel="shortcut icon" href="{{StaticUrlPrefix}}/img/favicon.png"> | |||
<link rel="mask-icon" href="{{StaticUrlPrefix}}/img/gitea-safari.svg" color="#609926"> | |||
<link rel="fluid-icon" href="{{StaticUrlPrefix}}/img/gitea-lg.png" title="{{AppName}}"> | |||
<link rel="stylesheet" href="{{StaticUrlPrefix}}/vendor/assets/font-awesome/css/font-awesome.min.css"> | |||
<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"> | |||
{{if .RequireSimpleMDE}} | |||
<link rel="stylesheet" href="{{StaticUrlPrefix}}/vendor/plugins/simplemde/simplemde.min.css"> | |||
{{end}} | |||
{{if .RequireTribute}} | |||
<link rel="stylesheet" href="{{StaticUrlPrefix}}/vendor/plugins/tribute/tribute.css"> | |||
{{end}} | |||
<link rel="stylesheet" href="{{StaticUrlPrefix}}/fomantic/semantic.min.css?v={{MD5 AppVer}}"> | |||
<link rel="stylesheet" href="{{StaticUrlPrefix}}/css/index.css?v={{MD5 AppVer}}"> | |||
<noscript> | |||
<style> | |||
.dropdown:hover > .menu { display: block; } | |||
.ui.secondary.menu .dropdown.item > .menu { margin-top: 0; } | |||
</style> | |||
</noscript> | |||
{{if .RequireMinicolors}} | |||
<link rel="stylesheet" href="{{StaticUrlPrefix}}/vendor/plugins/jquery.minicolors/jquery.minicolors.css"> | |||
{{end}} | |||
<style class="list-search-style"></style> | |||
{{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}}" /> | |||
{{if .Owner.Description}} | |||
<meta property="og:description" content="{{.Owner.Description}}"> | |||
{{end}} | |||
{{else if .Repository}} | |||
{{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}} | |||
<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" /> | |||
<meta property="og:image" content="{{StaticUrlPrefix}}/img/gitea-lg.png" /> | |||
<meta property="og:url" content="{{AppUrl}}" /> | |||
<meta property="og:description" content="{{MetaDescription}}"> | |||
{{end}} | |||
<meta property="og:site_name" content="{{AppName}}" /> | |||
{{if .IsSigned }} | |||
{{ if ne .SignedUser.Theme "gitea" }} | |||
<link rel="stylesheet" href="{{StaticUrlPrefix}}/css/theme-{{.SignedUser.Theme}}.css?v={{MD5 AppVer}}"> | |||
{{end}} | |||
{{else if ne DefaultTheme "gitea"}} | |||
<link rel="stylesheet" href="{{StaticUrlPrefix}}/css/theme-{{DefaultTheme}}.css?v={{MD5 AppVer}}"> | |||
{{end}} | |||
{{template "custom/header" .}} | |||
</head> | |||
<body> | |||
{{template "custom/body_outer_pre" .}} | |||
<div class="full height"> | |||
<noscript>{{.i18n.Tr "enable_javascript"}}</noscript> | |||
{{template "custom/body_inner_pre" .}} | |||
{{if not .PageIsInstall}} | |||
<div class="ui top secondary stackable main menu following bar dark"> | |||
{{template "base/head_navbar" .}} | |||
</div><!-- end bar --> | |||
{{end}} | |||
{{/* | |||
</div> | |||
</body> | |||
</html> | |||
*/}} |
@@ -1,183 +0,0 @@ | |||
<div class="ui container" id="navbar"> | |||
<div class="item brand" style="justify-content: space-between;"> | |||
<a href="/"> | |||
<img class="ui mini image" src="{{StaticUrlPrefix}}/img/openi-logo-w.svg?v=2020041802"> | |||
</a> | |||
<div class="ui basic icon button mobile-only" id="navbar-expand-toggle"> | |||
<i class="sidebar icon"></i> | |||
</div> | |||
</div> | |||
{{if .IsSigned}} | |||
<a class="item {{if .PageIsDashboard}}active{{end}}" href="/">{{.i18n.Tr "dashboard"}}</a> | |||
<div class="ui dropdown item"> | |||
{{.i18n.Tr "custom.head.community"}} | |||
<i class="dropdown icon"></i> | |||
<div class="menu"> | |||
<a class="item" href="https://www.openi.org.cn/html/Club/2019/0228/17.html">{{.i18n.Tr "custom.head.welcome"}}</a> | |||
<a class="item" href="https://www.openi.org.cn/html/Club/2019/0227/14.html">{{.i18n.Tr "custom.head.about_org"}}</a> | |||
<a class="item" href="https://www.openi.org.cn/html/Club/2019/0227/15.html">{{.i18n.Tr "custom.head.license"}}</a> | |||
<a class="item" href="https://www.openi.org.cn/html/Club/2019/0227/16.html">{{.i18n.Tr "custom.head.community_charter"}}</a> | |||
<a class="item" href="https://www.openi.org.cn/html/news/dongtai/">{{.i18n.Tr "custom.head.community_infos"}}</a> | |||
</div> | |||
</div> | |||
<a class="item" href="{{AppSubUrl}}/explore/datasets">{{.i18n.Tr "datasets"}}</a> | |||
<a class="item" href="{{AppSubUrl}}/explore/repos">{{.i18n.Tr "custom.head.project"}}</a> | |||
{{if not .UnitIssuesGlobalDisabled}} | |||
<a class="item {{if .PageIsIssues}}active{{end}}" href="{{AppSubUrl}}/issues">{{.i18n.Tr "issues"}}</a> | |||
{{end}} | |||
{{if not .UnitPullsGlobalDisabled}} | |||
<a class="item {{if .PageIsPulls}}active{{end}}" href="{{AppSubUrl}}/pulls">{{.i18n.Tr "pull_requests"}}</a> | |||
{{end}} | |||
{{if not (and .UnitIssuesGlobalDisabled .UnitPullsGlobalDisabled)}} | |||
{{if .ShowMilestonesDashboardPage}}<a class="item {{if .PageIsMilestonesDashboard}}active{{end}}" href="{{AppSubUrl}}/milestones">{{.i18n.Tr "milestones"}}</a>{{end}} | |||
{{end}} | |||
<div class="ui dropdown item"> | |||
{{.i18n.Tr "explore"}} | |||
<i class="dropdown icon"></i> | |||
<div class="menu"> | |||
<a class="item" href="{{AppSubUrl}}/explore/repos">{{.i18n.Tr "custom.head.project"}}</a> | |||
<a class="item" href="{{AppSubUrl}}/explore/datasets">{{.i18n.Tr "custom.head.dataset"}}</a> | |||
<a class="item" href="javascript:alert('WIP')">{{.i18n.Tr "custom.head.study"}}</a> | |||
<a class="item" href="javascript:alert('WIP')">{{.i18n.Tr "custom.head.activity"}}</a> | |||
</div> | |||
</div> | |||
{{else if .IsLandingPageHome}} | |||
<a class="item {{if .PageIsHome}}active{{end}}" href="/">{{.i18n.Tr "home"}}</a> | |||
<div class="ui dropdown item"> | |||
{{.i18n.Tr "custom.head.community"}} | |||
<i class="dropdown icon"></i> | |||
<div class="menu"> | |||
<a class="item" href="https://www.openi.org.cn/html/Club/2019/0228/17.html">{{.i18n.Tr "custom.head.welcome"}}</a> | |||
<a class="item" href="https://www.openi.org.cn/html/Club/2019/0227/14.html">{{.i18n.Tr "custom.head.about_org"}}</a> | |||
<a class="item" href="https://www.openi.org.cn/html/Club/2019/0227/15.html">{{.i18n.Tr "custom.head.license"}}</a> | |||
<a class="item" href="https://www.openi.org.cn/html/Club/2019/0227/16.html">{{.i18n.Tr "custom.head.community_charter"}}</a> | |||
<a class="item" href="https://www.openi.org.cn/html/news/dongtai/">{{.i18n.Tr "custom.head.community_infos"}}</a> | |||
</div> | |||
</div> | |||
<a class="item" href="{{AppSubUrl}}/explore/repos">{{.i18n.Tr "custom.head.project"}}</a> | |||
<div class="ui dropdown item"> | |||
{{.i18n.Tr "explore"}} | |||
<i class="dropdown icon"></i> | |||
<div class="menu"> | |||
<a class="item {{if .PageIsExplore}}active{{end}}" href="{{AppSubUrl}}/explore/repos">{{.i18n.Tr "custom.head.project"}}</a> | |||
<a class="item" href="{{AppSubUrl}}/explore/datasets">{{.i18n.Tr "datasets"}}</a> | |||
<a class="item" href="javascript:alert('WIP')" target="_blank">{{.i18n.Tr "custom.head.project"}}</a> | |||
<a class="item" href="javascript:alert('WIP')" target="_blank">{{.i18n.Tr "custom.head.activity"}}</a> | |||
</div> | |||
</div> | |||
{{else if .IsLandingPageExplore}} | |||
<a class="item {{if .PageIsExplore}}active{{end}}" href="{{AppSubUrl}}/explore/repos">{{.i18n.Tr "home"}}</a> | |||
{{else if .IsLandingPageOrganizations}} | |||
<a class="item {{if .PageIsExplore}}active{{end}}" href="{{AppSubUrl}}/explore/organizations">{{.i18n.Tr "home"}}</a> | |||
{{end}} | |||
{{template "custom/extra_links" .}} | |||
{{/* | |||
<div class="item"> | |||
<div class="ui icon input"> | |||
<input class="searchbox" type="text" placeholder="{{.i18n.Tr "search_project"}}"> | |||
<i class="search icon"></i> | |||
</div> | |||
</div> | |||
*/}} | |||
{{if .IsSigned}} | |||
<div class="right stackable menu"> | |||
<a href="{{AppSubUrl}}/notifications" class="item poping up" data-content='{{.i18n.Tr "notifications"}}' data-variation="tiny inverted"> | |||
<span class="text"> | |||
<span class="fitted">{{svg "octicon-bell" 16}}</span> | |||
<span class="sr-mobile-only">{{.i18n.Tr "notifications"}}</span> | |||
{{$notificationUnreadCount := 0}} | |||
{{if .NotificationUnreadCount}}{{$notificationUnreadCount = call .NotificationUnreadCount}}{{end}} | |||
<span class="ui red label {{if not $notificationUnreadCount}}hidden{{end}} notification_count"> | |||
{{$notificationUnreadCount}} | |||
</span> | |||
</span> | |||
</a> | |||
<div class="ui dropdown jump item poping up" data-content="{{.i18n.Tr "create_new"}}" data-variation="tiny inverted"> | |||
<span class="text"> | |||
<span class="fitted">{{svg "octicon-plus" 16}}</span> | |||
<span class="sr-mobile-only">{{.i18n.Tr "create_new"}}</span> | |||
<span class="fitted not-mobile">{{svg "octicon-triangle-down" 16}}</span> | |||
</span> | |||
<div class="menu"> | |||
<a class="item" href="{{AppSubUrl}}/repo/create"> | |||
<span class="fitted">{{svg "octicon-plus" 16}}</span> {{.i18n.Tr "new_repo"}} | |||
</a> | |||
<a class="item" href="{{AppSubUrl}}/repo/migrate"> | |||
<span class="fitted">{{svg "octicon-repo-clone" 16}}</span> {{.i18n.Tr "new_migrate"}} | |||
</a> | |||
{{if .SignedUser.CanCreateOrganization}} | |||
<a class="item" href="{{AppSubUrl}}/org/create"> | |||
<span class="fitted">{{svg "octicon-organization" 16}}</span> {{.i18n.Tr "new_org"}} | |||
</a> | |||
{{end}} | |||
</div><!-- end content create new menu --> | |||
</div><!-- end dropdown menu create new --> | |||
<div class="ui dropdown jump item poping up" tabindex="-1" data-content="{{.i18n.Tr "user_profile_and_more"}}" data-variation="tiny inverted"> | |||
<span class="text"> | |||
<img class="ui tiny avatar image" width="24" height="24" src="{{.SignedUser.RelAvatarLink}}"> | |||
<span class="sr-only">{{.i18n.Tr "user_profile_and_more"}}</span> | |||
<span class="mobile-only">{{.SignedUser.Name}}</span> | |||
<span class="fitted not-mobile" tabindex="-1">{{svg "octicon-triangle-down" 16}}</span> | |||
</span> | |||
<div class="menu user-menu" tabindex="-1"> | |||
<div class="ui header"> | |||
{{.i18n.Tr "signed_in_as"}} <strong>{{.SignedUser.Name}}</strong> | |||
</div> | |||
<div class="divider"></div> | |||
<a class="item" href="{{AppSubUrl}}/{{.SignedUser.Name}}"> | |||
{{svg "octicon-person" 16}} | |||
{{.i18n.Tr "your_profile"}}<!-- Your profile --> | |||
</a> | |||
<a class="item" href="{{AppSubUrl}}/{{.SignedUser.Name}}?tab=stars"> | |||
{{svg "octicon-star" 16}} | |||
{{.i18n.Tr "your_starred"}} | |||
</a> | |||
<a class="{{if .PageIsUserSettings}}active{{end}} item" href="{{AppSubUrl}}/user/settings"> | |||
{{svg "octicon-settings" 16}} | |||
{{.i18n.Tr "your_settings"}}<!-- Your settings --> | |||
</a> | |||
<!--a class="item" target="_blank" rel="noopener noreferrer" href="https://docs.gitea.io"> | |||
{{svg "octicon-question" 16}} | |||
{{.i18n.Tr "help"}}<!-- Help --> | |||
</a--> | |||
{{if .IsAdmin}} | |||
<div class="divider"></div> | |||
<a class="{{if .PageIsAdmin}}active{{end}} item" href="{{AppSubUrl}}/admin"> | |||
<i class="icon settings"></i> | |||
{{.i18n.Tr "admin_panel"}}<!-- Admin Panel --> | |||
</a> | |||
{{end}} | |||
<div class="divider"></div> | |||
<a class="item link-action" href data-url="{{AppSubUrl}}/user/logout" data-redirect="{{AppSubUrl}}/"> | |||
{{svg "octicon-sign-out" 16}} | |||
{{.i18n.Tr "sign_out"}}<!-- Sign Out --> | |||
</a> | |||
</div><!-- end content avatar menu --> | |||
</div><!-- end dropdown avatar menu --> | |||
</div><!-- end signed user right menu --> | |||
{{else}} | |||
<!--a class="item" target="_blank" rel="noopener noreferrer" href="https://docs.gitea.io">{{.i18n.Tr "help"}}</a--> | |||
<div class="right stackable menu"> | |||
{{if .ShowRegistrationButton}} | |||
<a class="item{{if .PageIsSignUp}} active{{end}}" href="{{AppSubUrl}}/user/sign_up"> | |||
{{svg "octicon-person" 16}} {{.i18n.Tr "register"}} | |||
</a> | |||
{{end}} | |||
<a class="item{{if .PageIsSignIn}} active{{end}}" rel="nofollow" href="{{AppSubUrl}}/user/login?redirect_to={{.Link}}"> | |||
{{svg "octicon-sign-in" 16}} {{.i18n.Tr "sign_in"}} | |||
</a> | |||
</div><!-- end anonymous right menu --> | |||
{{end}} | |||
</div> |
@@ -1,3 +0,0 @@ | |||
<!--新增OpenI样式文件--> | |||
<link rel="stylesheet" href="/css/openi.css?v={{MD5 AppVer}}"> | |||
<script type="text/javascript" src="/js/jquery.particleground.min.js"></script> |
@@ -1,27 +0,0 @@ | |||
<div class="organization-header"> | |||
<div class="ui container"> | |||
<div class="ui vertically grid head"> | |||
<div class="column"> | |||
<div class="ui header"> | |||
{{with .Org}} | |||
<img class="ui image" src="{{.SizedRelAvatarLink 100}}"> | |||
<span class="text thin grey"><a href="{{.HomeLink}}">{{.DisplayName}}</a></span> | |||
{{end}} | |||
{{if .IsOrganizationOwner}} | |||
<div class="ui right"> | |||
<a class="ui green button" href="{{.OrgLink}}/teams/new">{{svg "octicon-plus" 16}} {{.i18n.Tr "org.create_new_team"}}</a> | |||
</div> | |||
{{end}} | |||
{{if .CanCreateOrgRepo}} | |||
<div class="ui right"> | |||
<a class="ui green button" href="{{AppSubUrl}}/repo/create?org={{.Org.ID}}">{{svg "octicon-plus" 16}} {{.i18n.Tr "new_repo"}}</a> | |||
</div> | |||
{{end}} | |||
</div> | |||
</div> | |||
</div> | |||
</div> | |||
</div> | |||
@@ -1,87 +0,0 @@ | |||
{{template "base/head" .}} | |||
<div class="organization profile"> | |||
{{/* overflow: auto is the clearfix - this avoids the image going beyond | |||
the container where it is supposed to stay inside. */}} | |||
<div class="organization-info"> | |||
<div class="ui center aligned container " style="overflow: auto"> | |||
<img class="ui circular image" id="org-avatar" src="{{.Org.SizedRelAvatarLink 140}}"/> | |||
<div id="org-info"> | |||
<div class="ui header"> | |||
{{.Org.DisplayName}} | |||
{{if .IsOrganizationOwner}}<a class="middle text grey" href="{{.OrgLink}}/settings">{{svg "octicon-gear" 16}}</a>{{end}} | |||
</div> | |||
{{if .Org.Description}}<p class="text grey desc">{{.Org.Description}}</p>{{end}} | |||
<div class="meta"> | |||
{{if .Org.Location}}<div class="item">{{svg "octicon-location" 16}} <span>{{.Org.Location}}</span></div>{{end}} | |||
{{if .Org.Website}}<div class="item">{{svg "octicon-link" 16}} <a target="_blank" rel="noopener noreferrer" href="{{.Org.Website}}">{{.Org.Website}}</a></div>{{end}} | |||
</div> | |||
</div> | |||
</div> | |||
</div> | |||
<div class="ui container"> | |||
<div class="ui stackable grid"> | |||
{{template "org/navber" .}} | |||
<div class="ui fourteen wide computer column"> | |||
<div class="ui mobile reversed stackable grid"> | |||
<div class="ui ten wide tablet eleven wide computer column"> | |||
{{if .CanCreateOrgRepo}} | |||
<div class="text right"> | |||
<a class="ui green button" href="{{AppSubUrl}}/repo/create?org={{.Org.ID}}">{{.i18n.Tr "new_repo"}}</a> | |||
</div> | |||
{{end}} | |||
{{template "org/repo_list" .}} | |||
{{template "base/paginate" .}} | |||
</div> | |||
<div class="ui sixteen wide mobile six wide tablet five wide computer column"> | |||
<h4 class="ui top attached header"> | |||
<strong>{{.i18n.Tr "org.people"}}</strong> | |||
{{if .IsOrganizationMember}} | |||
<div class="ui right"> | |||
<a class="text grey" href="{{.OrgLink}}/members">{{.Org.NumMembers}} {{svg "octicon-chevron-right" 16}}</a> | |||
</div> | |||
{{end}} | |||
</h4> | |||
<div class="ui attached segment members"> | |||
{{$isMember := .IsOrganizationMember}} | |||
{{range .Members}} | |||
{{if or $isMember (.IsPublicMember $.Org.ID)}} | |||
<a href="{{.HomeLink}}" title="{{.Name}}{{if .FullName}} ({{.FullName}}){{end}}"><img class="ui avatar" src="{{.RelAvatarLink}}"></a> | |||
{{end}} | |||
{{end}} | |||
</div> | |||
{{if .IsOrganizationMember}} | |||
<div class="ui top attached header"> | |||
<strong>{{.i18n.Tr "org.teams"}}</strong> | |||
<div class="ui right"> | |||
<a class="text grey" href="{{.OrgLink}}/teams"><span>{{.Org.NumTeams}}</span> {{svg "octicon-chevron-right" 16}}</a> | |||
</div> | |||
</div> | |||
<div class="ui attached table segment teams"> | |||
{{range .Teams}} | |||
<div class="item"> | |||
<a href="{{$.OrgLink}}/teams/{{.LowerName}}"><strong class="team-name">{{.Name}}</strong></a> | |||
<p class="text grey"> | |||
<a href="{{$.OrgLink}}/teams/{{.LowerName}}"><strong>{{.NumMembers}}</strong> {{$.i18n.Tr "org.lower_members"}}</a> · | |||
<a href="{{$.OrgLink}}/teams/{{.LowerName}}/repositories"><strong>{{.NumRepos}}</strong> {{$.i18n.Tr "org.lower_repositories"}}</a> | |||
</p> | |||
</div> | |||
{{end}} | |||
</div> | |||
{{if .IsOrganizationOwner}} | |||
<div class="ui bottom attached segment"> | |||
<a class="ui blue small button" href="{{.OrgLink}}/teams/new">{{.i18n.Tr "org.create_new_team"}}</a> | |||
</div> | |||
{{end}} | |||
{{end}} | |||
</div> | |||
</div> | |||
</div> | |||
</div> | |||
</div> | |||
</div> | |||
{{template "base/footer" .}} |
@@ -1,75 +0,0 @@ | |||
{{template "base/head" .}} | |||
<div class="organization members"> | |||
{{template "org/header" .}} | |||
<div class="ui container"> | |||
{{template "base/alert" .}} | |||
<div class="ui stackable grid"> | |||
{{template "org/navber" .}} | |||
<div class="ui fourteen wide computer column list"> | |||
{{ range .Members}} | |||
<div class="item ui grid"> | |||
<div class="ui two wide column"> | |||
<img class="ui avatar" src="{{.SizedRelAvatarLink 48}}"> | |||
</div><div class="ui three wide column"> | |||
<div class="meta"><a href="{{.HomeLink}}">{{.Name}}</a></div> | |||
<div class="meta">{{.FullName}}</div> | |||
</div><div class="ui four wide column center"> | |||
<div class="meta"> | |||
{{$.i18n.Tr "org.members.membership_visibility"}} | |||
</div> | |||
<div class="meta"> | |||
{{ $isPublic := index $.MembersIsPublicMember .ID}} | |||
{{if $isPublic}} | |||
<strong>{{$.i18n.Tr "org.members.public"}}</strong> | |||
{{if or (eq $.SignedUser.ID .ID) $.IsOrganizationOwner}}(<a class="link-action" href data-url="{{$.OrgLink}}/members/action/private?uid={{.ID}}">{{$.i18n.Tr "org.members.public_helper"}}</a>){{end}} | |||
{{else}} | |||
<strong>{{$.i18n.Tr "org.members.private"}}</strong> | |||
{{if or (eq $.SignedUser.ID .ID) $.IsOrganizationOwner}}(<a class="link-action" href data-url="{{$.OrgLink}}/members/action/public?uid={{.ID}}">{{$.i18n.Tr "org.members.private_helper"}}</a>){{end}} | |||
{{end}} | |||
</div> | |||
</div><div class="ui three wide column center"> | |||
<div class="meta"> | |||
{{$.i18n.Tr "org.members.member_role"}} | |||
</div> | |||
<div class="meta"> | |||
<strong>{{if index $.MembersIsUserOrgOwner .ID}}{{svg "octicon-shield-lock" 16}} {{$.i18n.Tr "org.members.owner"}}{{else}}{{$.i18n.Tr "org.members.member"}}{{end}}</strong> | |||
</div> | |||
</div><div class="ui one wide column center"> | |||
<div class="meta"> | |||
2FA | |||
</div> | |||
<div class="meta"> | |||
<strong> | |||
{{if index $.MembersTwoFaStatus .ID}} | |||
<span class="text green">{{svg "octicon-check" 16}}</span> | |||
{{else}} | |||
{{svg "octicon-x" 16}} | |||
{{end}} | |||
</strong> | |||
</div> | |||
</div><div class="ui three wide column"> | |||
<div class="text right"> | |||
{{if eq $.SignedUser.ID .ID}} | |||
<form method="post" action="{{$.OrgLink}}/members/action/leave"> | |||
{{$.CsrfTokenHtml}} | |||
<button type="submit" class="ui red small button" name="uid" value="{{.ID}}">{{$.i18n.Tr "org.members.leave"}}</button> | |||
</form> | |||
{{else if $.IsOrganizationOwner}} | |||
<form method="post" action="{{$.OrgLink}}/members/action/remove"> | |||
{{$.CsrfTokenHtml}} | |||
<button type="submit" class="ui red small button" name="uid" value="{{.ID}}">{{$.i18n.Tr "org.members.remove"}}</button> | |||
</form> | |||
{{end}} | |||
</div> | |||
</div> | |||
</div> | |||
{{end}} | |||
</div> | |||
{{template "base/paginate" .}} | |||
</div> | |||
</div> | |||
</div> | |||
{{template "base/footer" .}} |
@@ -1,48 +0,0 @@ | |||
{{template "base/head" .}} | |||
<div class="organization teams"> | |||
{{template "org/header" .}} | |||
<div class="ui container"> | |||
{{template "base/alert" .}} | |||
<div class="ui stackable grid"> | |||
{{template "org/navber" .}} | |||
<div class="ui fourteen wide computer column list"> | |||
<div class="ui two column grid"> | |||
{{range .Teams}} | |||
<div class="column"> | |||
<div class="ui top attached header"> | |||
<a class="text black" href="{{$.OrgLink}}/teams/{{.LowerName}}"><strong>{{.Name}}</strong></a> | |||
<div class="ui right"> | |||
{{if .IsMember $.SignedUser.ID}} | |||
<form method="post" action="{{$.OrgLink}}/teams/{{.LowerName}}/action/leave"> | |||
{{$.CsrfTokenHtml}} | |||
<button type="submit" class="ui red small button" name="uid" value="{{$.SignedUser.ID}}">{{$.i18n.Tr "org.teams.leave"}}</button> | |||
</form> | |||
{{else if $.IsOrganizationOwner}} | |||
<form method="post" action="{{$.OrgLink}}/teams/{{.LowerName}}/action/join"> | |||
{{$.CsrfTokenHtml}} | |||
<button type="submit" class="ui blue small button" name="uid" value="{{$.SignedUser.ID}}">{{$.i18n.Tr "org.teams.join"}}</button> | |||
</form> | |||
{{end}} | |||
</div> | |||
</div> | |||
<div class="ui attached segment members"> | |||
{{range .Members}} | |||
<a href="{{.HomeLink}}" title="{{.Name}}"> | |||
<img class="ui avatar image" src="{{.RelAvatarLink}}"> | |||
</a> | |||
{{end}} | |||
</div> | |||
<div class="ui bottom attached header"> | |||
<p class="team-meta">{{.NumMembers}} {{$.i18n.Tr "org.lower_members"}} · {{.NumRepos}} {{$.i18n.Tr "org.lower_repositories"}}</p> | |||
</div> | |||
</div> | |||
{{end}} | |||
</div> | |||
</div> | |||
</div> | |||
</div> | |||
</div> | |||
{{template "base/footer" .}} |
@@ -1,26 +1,41 @@ | |||
<footer> | |||
<div class="ui container"> | |||
<div class="ui left"> | |||
{{.i18n.Tr "powered_by" "Gitea"}} {{if (or .ShowFooterVersion .PageIsAdmin)}}{{.i18n.Tr "version"}}: {{AppVer}}{{end}} {{if ShowFooterTemplateLoadTime}}{{.i18n.Tr "page"}}: <strong>{{LoadTimes .PageStartTime}}</strong> {{.i18n.Tr "template"}}: <strong>{{call .TmplLoadTimes}}</strong>{{end}} | |||
</div> | |||
<div class="ui right links"> | |||
{{if .ShowFooterBranding}} | |||
<a target="_blank" rel="noopener noreferrer" href="https://github.com/go-gitea/gitea"><i class="fa fa-github-square"></i><span class="sr-only">GitHub</span></a> | |||
{{end}} | |||
<div class="ui language bottom floating slide up dropdown link item"> | |||
<i class="world icon"></i> | |||
<div class="text">{{.LangName}}</div> | |||
<div class="menu"> | |||
{{range .AllLangs}} | |||
<a lang="{{.Lang}}" class="item {{if eq $.Lang .Lang}}active selected{{end}}" href="{{if eq $.Lang .Lang}}#{{else}}{{$.Link}}?lang={{.Lang}}{{end}}">{{.Name}}</a> | |||
{{end}} | |||
<div class="ui grid"> | |||
<div class="sixteen wide mobile eight wide tablet eight wide computer column"> | |||
<div class="ui three column grid"> | |||
<div class="column ui vertical text menu"> | |||
<div class="header item">{{.i18n.Tr "custom.head.community"}}</div> | |||
<a href="https://www.openi.org.cn/html/Club/2019/0227/14.html" class="item">{{.i18n.Tr "custom.foot.council"}}</a> | |||
<a href="https://www.openi.org.cn/html/Club/2019/0227/14.html" class="item">{{.i18n.Tr "custom.foot.technical_committee"}}</a> | |||
<a href="https://www.openi.org.cn/html/Club/2019/0228/17.html" class="item">{{.i18n.Tr "custom.foot.join"}}</a> | |||
</div> | |||
<div class="column ui vertical text menu"> | |||
<div class="header item">{{.i18n.Tr "custom.foot.news"}}</div> | |||
<a href="https://www.openi.org.cn/html/news/dongtai/" class="item">{{.i18n.Tr "custom.foot.community_news"}}</a> | |||
<a href="https://www.openi.org.cn/html/news/huodong/" class="item">{{.i18n.Tr "custom.foot.member_news"}}</a> | |||
<a href="https://www.openi.org.cn/html/news/zixun/" class="item">{{.i18n.Tr "custom.foot.industry_advisory"}}</a> | |||
</div> | |||
<div class="column ui vertical text menu"> | |||
<div class="header item">{{.i18n.Tr "custom.foot.help"}}</div> | |||
<div class="ui language bottom floating slide up dropdown link item"> | |||
<i class="world icon"></i> | |||
<div class="text">{{.LangName}}</div> | |||
<div class="menu"> | |||
{{range .AllLangs}} | |||
<a lang="{{.Lang}}" class="item {{if eq $.Lang .Lang}}active selected{{end}}" href="{{if eq $.Lang .Lang}}#{{else}}{{$.Link}}?lang={{.Lang}}{{end}}">{{.Name}}</a> | |||
{{end}} | |||
</div> | |||
</div> | |||
{{template "custom/extra_links_footer" .}} | |||
</div> | |||
</div> | |||
</div> | |||
<a href="{{StaticUrlPrefix}}/vendor/librejs.html" data-jslicense="1">JavaScript licenses</a> | |||
{{if .EnableSwagger}}<a href="{{AppSubUrl}}/api/swagger">API</a>{{end}} | |||
<a target="_blank" rel="noopener noreferrer" href="https://gitea.io">{{.i18n.Tr "website"}}</a> | |||
{{template "custom/extra_links_footer" .}} | |||
{{if (or .ShowFooterVersion .PageIsAdmin)}}<span class="version">{{GoVer}}</span>{{end}} | |||
<div class="sixteen wide mobile eight wide tablet eight wide computer column" style=" margin:2.0rem 0"> | |||
{{.i18n.Tr "custom.foot.copyright"}} <a href="http://www.miitbeian.gov.cn/" target="_blank">京ICP备18004880号</a> | |||
<br> | |||
{{.i18n.Tr "powered_by" "鹏城实验室云脑、Trustie、华为云 DevCloud、gitea"}} | |||
<br> | |||
</div> | |||
</div> | |||
</div> | |||
</footer> |
@@ -1,10 +1,10 @@ | |||
<!DOCTYPE html> | |||
<html lang="{{.Language}}" class="theme-{{.SignedUser.Theme}}"> | |||
<html lang="{{.Language}}"> | |||
<head data-suburl="{{AppSubUrl}}"> | |||
<meta charset="utf-8"> | |||
<meta name="viewport" content="width=device-width, initial-scale=1"> | |||
<meta http-equiv="x-ua-compatible" content="ie=edge"> | |||
<title>{{if .Title}}{{.Title | RenderEmojiPlain}} - {{end}} {{if .Repository.Name}}{{.Repository.Name}} - {{end}}{{AppName}} </title> | |||
<title>{{if .Title}}{{.Title}} - {{end}} {{if .Repository.Name}}{{.Repository.Name}} - {{end}}{{AppName}}</title> | |||
<link rel="manifest" href="{{AppSubUrl}}/manifest.json" crossorigin="use-credentials"> | |||
{{if UseServiceWorker}} | |||
<script> | |||
@@ -185,7 +185,7 @@ | |||
{{template "custom/body_inner_pre" .}} | |||
{{if not .PageIsInstall}} | |||
<div class="ui top secondary stackable main menu following bar light"> | |||
<div class="ui top secondary stackable main menu following bar dark"> | |||
{{template "base/head_navbar" .}} | |||
</div><!-- end bar --> | |||
{{end}} | |||
@@ -1,7 +1,7 @@ | |||
<div class="ui container" id="navbar"> | |||
<div class="item brand" style="justify-content: space-between;"> | |||
<a href="{{AppSubUrl}}/"> | |||
<img class="ui mini image" src="{{StaticUrlPrefix}}/img/gitea-sm.png"> | |||
<a href="/"> | |||
<img class="ui mini image" src="{{StaticUrlPrefix}}/img/openi-logo-w.svg?v=2020041802"> | |||
</a> | |||
<div class="ui basic icon button mobile-only" id="navbar-expand-toggle"> | |||
<i class="sidebar icon"></i> | |||
@@ -9,8 +9,20 @@ | |||
</div> | |||
{{if .IsSigned}} | |||
<a class="item {{if .PageIsDashboard}}active{{end}}" href="{{AppSubUrl}}/">{{.i18n.Tr "dashboard"}}</a> | |||
<a class="item {{if .PageIsDataSets}}active{{end}}" href="{{AppSubUrl}}/explore/datasets">{{.i18n.Tr "datasets"}}</a> | |||
<a class="item {{if .PageIsDashboard}}active{{end}}" href="/">{{.i18n.Tr "dashboard"}}</a> | |||
<div class="ui dropdown item"> | |||
{{.i18n.Tr "custom.head.community"}} | |||
<i class="dropdown icon"></i> | |||
<div class="menu"> | |||
<a class="item" href="https://www.openi.org.cn/html/Club/2019/0228/17.html">{{.i18n.Tr "custom.head.welcome"}}</a> | |||
<a class="item" href="https://www.openi.org.cn/html/Club/2019/0227/14.html">{{.i18n.Tr "custom.head.about_org"}}</a> | |||
<a class="item" href="https://www.openi.org.cn/html/Club/2019/0227/15.html">{{.i18n.Tr "custom.head.license"}}</a> | |||
<a class="item" href="https://www.openi.org.cn/html/Club/2019/0227/16.html">{{.i18n.Tr "custom.head.community_charter"}}</a> | |||
<a class="item" href="https://www.openi.org.cn/html/news/dongtai/">{{.i18n.Tr "custom.head.community_infos"}}</a> | |||
</div> | |||
</div> | |||
<a class="item" href="{{AppSubUrl}}/explore/datasets">{{.i18n.Tr "datasets"}}</a> | |||
<a class="item" href="{{AppSubUrl}}/explore/repos">{{.i18n.Tr "custom.head.project"}}</a> | |||
{{if not .UnitIssuesGlobalDisabled}} | |||
<a class="item {{if .PageIsIssues}}active{{end}}" href="{{AppSubUrl}}/issues">{{.i18n.Tr "issues"}}</a> | |||
{{end}} | |||
@@ -20,17 +32,44 @@ | |||
{{if not (and .UnitIssuesGlobalDisabled .UnitPullsGlobalDisabled)}} | |||
{{if .ShowMilestonesDashboardPage}}<a class="item {{if .PageIsMilestonesDashboard}}active{{end}}" href="{{AppSubUrl}}/milestones">{{.i18n.Tr "milestones"}}</a>{{end}} | |||
{{end}} | |||
<a class="item {{if .PageIsExplore}}active{{end}}" href="{{AppSubUrl}}/explore/repos">{{.i18n.Tr "explore"}}</a> | |||
<div class="ui dropdown item"> | |||
{{.i18n.Tr "explore"}} | |||
<i class="dropdown icon"></i> | |||
<div class="menu"> | |||
<a class="item" href="{{AppSubUrl}}/explore/repos">{{.i18n.Tr "custom.head.project"}}</a> | |||
<a class="item" href="{{AppSubUrl}}/explore/datasets">{{.i18n.Tr "custom.head.dataset"}}</a> | |||
<a class="item" href="javascript:alert('WIP')">{{.i18n.Tr "custom.head.study"}}</a> | |||
<a class="item" href="javascript:alert('WIP')">{{.i18n.Tr "custom.head.activity"}}</a> | |||
</div> | |||
</div> | |||
{{else if .IsLandingPageHome}} | |||
<a class="item {{if .PageIsHome}}active{{end}}" href="{{AppSubUrl}}/">{{.i18n.Tr "home"}}</a> | |||
<a class="item {{if .PageIsDataSets}}active{{end}}" href="{{AppSubUrl}}/explore/datasets">{{.i18n.Tr "datasets"}}</a> | |||
<a class="item {{if .PageIsExplore}}active{{end}}" href="{{AppSubUrl}}/explore/repos">{{.i18n.Tr "explore"}}</a> | |||
<a class="item {{if .PageIsHome}}active{{end}}" href="/">{{.i18n.Tr "home"}}</a> | |||
<div class="ui dropdown item"> | |||
{{.i18n.Tr "custom.head.community"}} | |||
<i class="dropdown icon"></i> | |||
<div class="menu"> | |||
<a class="item" href="https://www.openi.org.cn/html/Club/2019/0228/17.html">{{.i18n.Tr "custom.head.welcome"}}</a> | |||
<a class="item" href="https://www.openi.org.cn/html/Club/2019/0227/14.html">{{.i18n.Tr "custom.head.about_org"}}</a> | |||
<a class="item" href="https://www.openi.org.cn/html/Club/2019/0227/15.html">{{.i18n.Tr "custom.head.license"}}</a> | |||
<a class="item" href="https://www.openi.org.cn/html/Club/2019/0227/16.html">{{.i18n.Tr "custom.head.community_charter"}}</a> | |||
<a class="item" href="https://www.openi.org.cn/html/news/dongtai/">{{.i18n.Tr "custom.head.community_infos"}}</a> | |||
</div> | |||
</div> | |||
<a class="item" href="{{AppSubUrl}}/explore/repos">{{.i18n.Tr "custom.head.project"}}</a> | |||
<div class="ui dropdown item"> | |||
{{.i18n.Tr "explore"}} | |||
<i class="dropdown icon"></i> | |||
<div class="menu"> | |||
<a class="item {{if .PageIsExplore}}active{{end}}" href="{{AppSubUrl}}/explore/repos">{{.i18n.Tr "custom.head.project"}}</a> | |||
<a class="item" href="{{AppSubUrl}}/explore/datasets">{{.i18n.Tr "datasets"}}</a> | |||
<a class="item" href="javascript:alert('WIP')" target="_blank">{{.i18n.Tr "custom.head.project"}}</a> | |||
<a class="item" href="javascript:alert('WIP')" target="_blank">{{.i18n.Tr "custom.head.activity"}}</a> | |||
</div> | |||
</div> | |||
{{else if .IsLandingPageExplore}} | |||
<a class="item {{if .PageIsExplore}}active{{end}}" href="{{AppSubUrl}}/explore/repos">{{.i18n.Tr "home"}}</a> | |||
<a class="item {{if .PageIsDataSets}}active{{end}}" href="{{AppSubUrl}}/explore/datasets">{{.i18n.Tr "datasets"}}</a> | |||
{{else if .IsLandingPageOrganizations}} | |||
<a class="item {{if .PageIsExplore}}active{{end}}" href="{{AppSubUrl}}/explore/organizations">{{.i18n.Tr "home"}}</a> | |||
<a class="item {{if .PageIsDataSets}}active{{end}}" href="{{AppSubUrl}}/explore/datasets">{{.i18n.Tr "datasets"}}</a> | |||
{{end}} | |||
{{template "custom/extra_links" .}} | |||
@@ -68,9 +107,6 @@ | |||
<a class="item" href="{{AppSubUrl}}/repo/create"> | |||
<span class="fitted">{{svg "octicon-plus" 16}}</span> {{.i18n.Tr "new_repo"}} | |||
</a> | |||
<a class="item" href="{{AppSubUrl}}/datasets/create"> | |||
<span class="fitted">{{svg "octicon-plus" 16}}</span> {{.i18n.Tr "new_dataset"}} | |||
</a> | |||
<a class="item" href="{{AppSubUrl}}/repo/migrate"> | |||
<span class="fitted">{{svg "octicon-repo-clone" 16}}</span> {{.i18n.Tr "new_migrate"}} | |||
</a> | |||
@@ -107,10 +143,10 @@ | |||
{{svg "octicon-settings" 16}} | |||
{{.i18n.Tr "your_settings"}}<!-- Your settings --> | |||
</a> | |||
<a class="item" target="_blank" rel="noopener noreferrer" href="https://docs.gitea.io"> | |||
<!--a class="item" target="_blank" rel="noopener noreferrer" href="https://docs.gitea.io"> | |||
{{svg "octicon-question" 16}} | |||
{{.i18n.Tr "help"}}<!-- Help --> | |||
</a> | |||
</a--> | |||
{{if .IsAdmin}} | |||
<div class="divider"></div> | |||
@@ -131,7 +167,7 @@ | |||
{{else}} | |||
<a class="item" target="_blank" rel="noopener noreferrer" href="https://docs.gitea.io">{{.i18n.Tr "help"}}</a> | |||
<!--a class="item" target="_blank" rel="noopener noreferrer" href="https://docs.gitea.io">{{.i18n.Tr "help"}}</a--> | |||
<div class="right stackable menu"> | |||
{{if .ShowRegistrationButton}} | |||
<a class="item{{if .PageIsSignUp}} active{{end}}" href="{{AppSubUrl}}/user/sign_up"> | |||
@@ -1,26 +1,27 @@ | |||
{{with .Org}} | |||
<div class="organization-header"> | |||
<div class="ui container"> | |||
<div class="ui vertically grid head"> | |||
<div class="column"> | |||
<div class="ui header"> | |||
{{with .Org}} | |||
<img class="ui image" src="{{.SizedRelAvatarLink 100}}"> | |||
<span class="text thin grey"><a href="{{.HomeLink}}">{{.DisplayName}}</a></span> | |||
{{end}} | |||
{{if .IsOrganizationOwner}} | |||
<div class="ui right"> | |||
<div class="ui menu"> | |||
<a class="{{if $.PageIsOrgMembers}}active{{end}} item" href="{{$.OrgLink}}/members"> | |||
{{svg "octicon-organization" 16}} {{$.i18n.Tr "org.people"}} | |||
<div class="floating ui black label">{{.NumMembers}}</div> | |||
</a> | |||
<a class="{{if $.PageIsOrgTeams}}active{{end}} item" href="{{$.OrgLink}}/teams"> | |||
{{svg "octicon-jersey" 16}} {{$.i18n.Tr "org.teams"}} | |||
<div class="floating ui black label">{{.NumTeams}}</div> | |||
</a> | |||
</div> | |||
<a class="ui green button" href="{{.OrgLink}}/teams/new">{{svg "octicon-plus" 16}} {{.i18n.Tr "org.create_new_team"}}</a> | |||
</div> | |||
{{end}} | |||
{{if .CanCreateOrgRepo}} | |||
<div class="ui right"> | |||
<a class="ui green button" href="{{AppSubUrl}}/repo/create?org={{.Org.ID}}">{{svg "octicon-plus" 16}} {{.i18n.Tr "new_repo"}}</a> | |||
</div> | |||
{{end}} | |||
</div> | |||
</div> | |||
</div> | |||
</div> | |||
<div class="ui divider"></div> | |||
{{end}} | |||
</div> | |||
@@ -2,80 +2,85 @@ | |||
<div class="organization profile"> | |||
{{/* overflow: auto is the clearfix - this avoids the image going beyond | |||
the container where it is supposed to stay inside. */}} | |||
<div class="ui container" style="overflow: auto"> | |||
<img class="ui left" id="org-avatar" src="{{.Org.SizedRelAvatarLink 140}}"/> | |||
<div id="org-info"> | |||
<div class="ui header"> | |||
{{.Org.DisplayName}} | |||
{{if .IsOrganizationOwner}}<a class="middle text grey" href="{{.OrgLink}}/settings">{{svg "octicon-gear" 16}}</a>{{end}} | |||
</div> | |||
{{if .Org.Description}}<p class="desc">{{.Org.Description}}</p>{{end}} | |||
<div class="text grey meta"> | |||
{{if .Org.Location}}<div class="item">{{svg "octicon-location" 16}} <span>{{.Org.Location}}</span></div>{{end}} | |||
{{if .Org.Website}}<div class="item">{{svg "octicon-link" 16}} <a target="_blank" rel="noopener noreferrer" href="{{.Org.Website}}">{{.Org.Website}}</a></div>{{end}} | |||
<div class="organization-info"> | |||
<div class="ui center aligned container " style="overflow: auto"> | |||
<img class="ui circular image" id="org-avatar" src="{{.Org.SizedRelAvatarLink 140}}"/> | |||
<div id="org-info"> | |||
<div class="ui header"> | |||
{{.Org.DisplayName}} | |||
{{if .IsOrganizationOwner}}<a class="middle text grey" href="{{.OrgLink}}/settings">{{svg "octicon-gear" 16}}</a>{{end}} | |||
</div> | |||
{{if .Org.Description}}<p class="text grey desc">{{.Org.Description}}</p>{{end}} | |||
<div class="meta"> | |||
{{if .Org.Location}}<div class="item">{{svg "octicon-location" 16}} <span>{{.Org.Location}}</span></div>{{end}} | |||
{{if .Org.Website}}<div class="item">{{svg "octicon-link" 16}} <a target="_blank" rel="noopener noreferrer" href="{{.Org.Website}}">{{.Org.Website}}</a></div>{{end}} | |||
</div> | |||
</div> | |||
</div> | |||
</div> | |||
<div class="ui divider"></div> | |||
<div class="ui container"> | |||
<div class="ui mobile reversed stackable grid"> | |||
<div class="ui eleven wide column"> | |||
{{if .CanCreateOrgRepo}} | |||
<div class="text right"> | |||
<a class="ui green button" href="{{AppSubUrl}}/repo/create?org={{.Org.ID}}">{{.i18n.Tr "new_repo"}}</a> | |||
<div class="ui stackable grid"> | |||
{{template "org/navber" .}} | |||
<div class="ui fourteen wide computer column"> | |||
<div class="ui mobile reversed stackable grid"> | |||
<div class="ui ten wide tablet eleven wide computer column"> | |||
{{if .CanCreateOrgRepo}} | |||
<div class="text right"> | |||
<a class="ui green button" href="{{AppSubUrl}}/repo/create?org={{.Org.ID}}">{{.i18n.Tr "new_repo"}}</a> | |||
</div> | |||
{{end}} | |||
{{template "org/repo_list" .}} | |||
{{template "base/paginate" .}} | |||
</div> | |||
<div class="ui divider"></div> | |||
{{end}} | |||
{{template "explore/repo_search" .}} | |||
{{template "explore/repo_list" .}} | |||
{{template "base/paginate" .}} | |||
</div> | |||
<div class="ui five wide column"> | |||
<h4 class="ui top attached header"> | |||
<strong>{{.i18n.Tr "org.people"}}</strong> | |||
{{if .IsOrganizationMember}} | |||
<div class="ui right"> | |||
<a class="text grey" href="{{.OrgLink}}/members">{{.Org.NumMembers}} {{svg "octicon-chevron-right" 16}}</a> | |||
<div class="ui sixteen wide mobile six wide tablet five wide computer column"> | |||
<h4 class="ui top attached header"> | |||
<strong>{{.i18n.Tr "org.people"}}</strong> | |||
{{if .IsOrganizationMember}} | |||
<div class="ui right"> | |||
<a class="text grey" href="{{.OrgLink}}/members">{{.Org.NumMembers}} {{svg "octicon-chevron-right" 16}}</a> | |||
</div> | |||
{{end}} | |||
</h4> | |||
<div class="ui attached segment members"> | |||
{{$isMember := .IsOrganizationMember}} | |||
{{range .Members}} | |||
{{if or $isMember (.IsPublicMember $.Org.ID)}} | |||
<a href="{{.HomeLink}}" title="{{.Name}}{{if .FullName}} ({{.FullName}}){{end}}"><img class="ui avatar" src="{{.RelAvatarLink}}"></a> | |||
{{end}} | |||
{{end}} | |||
</div> | |||
{{end}} | |||
</h4> | |||
<div class="ui attached segment members"> | |||
{{$isMember := .IsOrganizationMember}} | |||
{{range .Members}} | |||
{{if or $isMember (.IsPublicMember $.Org.ID)}} | |||
<a href="{{.HomeLink}}" title="{{.Name}}{{if .FullName}} ({{.FullName}}){{end}}"><img class="ui avatar" src="{{.RelAvatarLink}}"></a> | |||
{{end}} | |||
{{end}} | |||
</div> | |||
{{if .IsOrganizationMember}} | |||
<div class="ui top attached header"> | |||
<strong>{{.i18n.Tr "org.teams"}}</strong> | |||
<div class="ui right"> | |||
<a class="text grey" href="{{.OrgLink}}/teams"><span>{{.Org.NumTeams}}</span> {{svg "octicon-chevron-right" 16}}</a> | |||
</div> | |||
</div> | |||
<div class="ui attached table segment teams"> | |||
{{range .Teams}} | |||
<div class="item"> | |||
<a href="{{$.OrgLink}}/teams/{{.LowerName}}"><strong class="team-name">{{.Name}}</strong></a> | |||
<p class="text grey"> | |||
<a href="{{$.OrgLink}}/teams/{{.LowerName}}"><strong>{{.NumMembers}}</strong> {{$.i18n.Tr "org.lower_members"}}</a> · | |||
<a href="{{$.OrgLink}}/teams/{{.LowerName}}/repositories"><strong>{{.NumRepos}}</strong> {{$.i18n.Tr "org.lower_repositories"}}</a> | |||
</p> | |||
{{if .IsOrganizationMember}} | |||
<div class="ui top attached header"> | |||
<strong>{{.i18n.Tr "org.teams"}}</strong> | |||
<div class="ui right"> | |||
<a class="text grey" href="{{.OrgLink}}/teams"><span>{{.Org.NumTeams}}</span> {{svg "octicon-chevron-right" 16}}</a> | |||
</div> | |||
</div> | |||
<div class="ui attached table segment teams"> | |||
{{range .Teams}} | |||
<div class="item"> | |||
<a href="{{$.OrgLink}}/teams/{{.LowerName}}"><strong class="team-name">{{.Name}}</strong></a> | |||
<p class="text grey"> | |||
<a href="{{$.OrgLink}}/teams/{{.LowerName}}"><strong>{{.NumMembers}}</strong> {{$.i18n.Tr "org.lower_members"}}</a> · | |||
<a href="{{$.OrgLink}}/teams/{{.LowerName}}/repositories"><strong>{{.NumRepos}}</strong> {{$.i18n.Tr "org.lower_repositories"}}</a> | |||
</p> | |||
</div> | |||
{{end}} | |||
</div> | |||
{{if .IsOrganizationOwner}} | |||
<div class="ui bottom attached segment"> | |||
<a class="ui blue small button" href="{{.OrgLink}}/teams/new">{{.i18n.Tr "org.create_new_team"}}</a> | |||
</div> | |||
{{end}} | |||
{{end}} | |||
</div> | |||
{{if .IsOrganizationOwner}} | |||
<div class="ui bottom attached segment"> | |||
<a class="ui blue small button" href="{{.OrgLink}}/teams/new">{{.i18n.Tr "org.create_new_team"}}</a> | |||
</div> | |||
{{end}} | |||
{{end}} | |||
</div> | |||
</div> | |||
</div> | |||
</div> | |||
</div> | |||
@@ -3,74 +3,73 @@ | |||
{{template "org/header" .}} | |||
<div class="ui container"> | |||
{{template "base/alert" .}} | |||
<div class="list"> | |||
{{ range .Members}} | |||
<div class="item ui grid"> | |||
<div class="ui one wide column"> | |||
<img class="ui avatar" src="{{.SizedRelAvatarLink 48}}"> | |||
</div> | |||
<div class="ui three wide column"> | |||
<div class="meta"><a href="{{.HomeLink}}">{{.Name}}</a></div> | |||
<div class="meta">{{.FullName}}</div> | |||
</div> | |||
<div class="ui four wide column center"> | |||
<div class="meta"> | |||
{{$.i18n.Tr "org.members.membership_visibility"}} | |||
</div> | |||
<div class="meta"> | |||
{{ $isPublic := index $.MembersIsPublicMember .ID}} | |||
{{if $isPublic}} | |||
<strong>{{$.i18n.Tr "org.members.public"}}</strong> | |||
{{if or (eq $.SignedUser.ID .ID) $.IsOrganizationOwner}}(<a class="link-action" href data-url="{{$.OrgLink}}/members/action/private?uid={{.ID}}">{{$.i18n.Tr "org.members.public_helper"}}</a>){{end}} | |||
{{else}} | |||
<strong>{{$.i18n.Tr "org.members.private"}}</strong> | |||
{{if or (eq $.SignedUser.ID .ID) $.IsOrganizationOwner}}(<a class="link-action" href data-url="{{$.OrgLink}}/members/action/public?uid={{.ID}}">{{$.i18n.Tr "org.members.private_helper"}}</a>){{end}} | |||
{{end}} | |||
</div> | |||
</div> | |||
<div class="ui three wide column center"> | |||
<div class="meta"> | |||
{{$.i18n.Tr "org.members.member_role"}} | |||
</div> | |||
<div class="meta"> | |||
<strong>{{if index $.MembersIsUserOrgOwner .ID}}{{svg "octicon-shield-lock" 16}} {{$.i18n.Tr "org.members.owner"}}{{else}}{{$.i18n.Tr "org.members.member"}}{{end}}</strong> | |||
</div> | |||
</div> | |||
<div class="ui one wide column center"> | |||
<div class="meta"> | |||
2FA | |||
</div> | |||
<div class="meta"> | |||
<strong> | |||
{{if index $.MembersTwoFaStatus .ID}} | |||
<span class="text green">{{svg "octicon-check" 16}}</span> | |||
<div class="ui stackable grid"> | |||
{{template "org/navber" .}} | |||
<div class="ui fourteen wide computer column list"> | |||
{{ range .Members}} | |||
<div class="item ui grid"> | |||
<div class="ui two wide column"> | |||
<img class="ui avatar" src="{{.SizedRelAvatarLink 48}}"> | |||
</div><div class="ui three wide column"> | |||
<div class="meta"><a href="{{.HomeLink}}">{{.Name}}</a></div> | |||
<div class="meta">{{.FullName}}</div> | |||
</div><div class="ui four wide column center"> | |||
<div class="meta"> | |||
{{$.i18n.Tr "org.members.membership_visibility"}} | |||
</div> | |||
<div class="meta"> | |||
{{ $isPublic := index $.MembersIsPublicMember .ID}} | |||
{{if $isPublic}} | |||
<strong>{{$.i18n.Tr "org.members.public"}}</strong> | |||
{{if or (eq $.SignedUser.ID .ID) $.IsOrganizationOwner}}(<a class="link-action" href data-url="{{$.OrgLink}}/members/action/private?uid={{.ID}}">{{$.i18n.Tr "org.members.public_helper"}}</a>){{end}} | |||
{{else}} | |||
{{svg "octicon-x" 16}} | |||
<strong>{{$.i18n.Tr "org.members.private"}}</strong> | |||
{{if or (eq $.SignedUser.ID .ID) $.IsOrganizationOwner}}(<a class="link-action" href data-url="{{$.OrgLink}}/members/action/public?uid={{.ID}}">{{$.i18n.Tr "org.members.private_helper"}}</a>){{end}} | |||
{{end}} | |||
</strong> | |||
</div> | |||
</div> | |||
<div class="ui four wide column"> | |||
<div class="text right"> | |||
{{if eq $.SignedUser.ID .ID}} | |||
<form method="post" action="{{$.OrgLink}}/members/action/leave"> | |||
{{$.CsrfTokenHtml}} | |||
<button type="submit" class="ui red small button" name="uid" value="{{.ID}}">{{$.i18n.Tr "org.members.leave"}}</button> | |||
</form> | |||
{{else if $.IsOrganizationOwner}} | |||
<form method="post" action="{{$.OrgLink}}/members/action/remove"> | |||
{{$.CsrfTokenHtml}} | |||
<button type="submit" class="ui red small button" name="uid" value="{{.ID}}">{{$.i18n.Tr "org.members.remove"}}</button> | |||
</form> | |||
{{end}} | |||
</div> | |||
</div><div class="ui three wide column center"> | |||
<div class="meta"> | |||
{{$.i18n.Tr "org.members.member_role"}} | |||
</div> | |||
<div class="meta"> | |||
<strong>{{if index $.MembersIsUserOrgOwner .ID}}{{svg "octicon-shield-lock" 16}} {{$.i18n.Tr "org.members.owner"}}{{else}}{{$.i18n.Tr "org.members.member"}}{{end}}</strong> | |||
</div> | |||
</div><div class="ui one wide column center"> | |||
<div class="meta"> | |||
2FA | |||
</div> | |||
<div class="meta"> | |||
<strong> | |||
{{if index $.MembersTwoFaStatus .ID}} | |||
<span class="text green">{{svg "octicon-check" 16}}</span> | |||
{{else}} | |||
{{svg "octicon-x" 16}} | |||
{{end}} | |||
</strong> | |||
</div> | |||
</div><div class="ui three wide column"> | |||
<div class="text right"> | |||
{{if eq $.SignedUser.ID .ID}} | |||
<form method="post" action="{{$.OrgLink}}/members/action/leave"> | |||
{{$.CsrfTokenHtml}} | |||
<button type="submit" class="ui red small button" name="uid" value="{{.ID}}">{{$.i18n.Tr "org.members.leave"}}</button> | |||
</form> | |||
{{else if $.IsOrganizationOwner}} | |||
<form method="post" action="{{$.OrgLink}}/members/action/remove"> | |||
{{$.CsrfTokenHtml}} | |||
<button type="submit" class="ui red small button" name="uid" value="{{.ID}}">{{$.i18n.Tr "org.members.remove"}}</button> | |||
</form> | |||
{{end}} | |||
</div> | |||
</div> | |||
</div> | |||
</div> | |||
{{end}} | |||
{{end}} | |||
</div> | |||
{{template "base/paginate" .}} | |||
</div> | |||
{{template "base/paginate" .}} | |||
</div> | |||
</div> | |||
{{template "base/footer" .}} |
@@ -3,44 +3,45 @@ | |||
{{template "org/header" .}} | |||
<div class="ui container"> | |||
{{template "base/alert" .}} | |||
{{if .IsOrganizationOwner}} | |||
<div class="text right"> | |||
<a class="ui green button" href="{{.OrgLink}}/teams/new">{{svg "octicon-plus" 16}} {{.i18n.Tr "org.create_new_team"}}</a> | |||
</div> | |||
<div class="ui divider"></div> | |||
{{end}} | |||
<div class="ui two column grid"> | |||
<div class="ui stackable grid"> | |||
{{template "org/navber" .}} | |||
<div class="ui fourteen wide computer column list"> | |||
<div class="ui two column grid"> | |||
{{range .Teams}} | |||
<div class="column"> | |||
<div class="ui top attached header"> | |||
<a class="text black" href="{{$.OrgLink}}/teams/{{.LowerName}}"><strong>{{.Name}}</strong></a> | |||
<div class="ui right"> | |||
{{if .IsMember $.SignedUser.ID}} | |||
<form method="post" action="{{$.OrgLink}}/teams/{{.LowerName}}/action/leave"> | |||
{{$.CsrfTokenHtml}} | |||
<button type="submit" class="ui red small button" name="uid" value="{{$.SignedUser.ID}}">{{$.i18n.Tr "org.teams.leave"}}</button> | |||
</form> | |||
{{else if $.IsOrganizationOwner}} | |||
<form method="post" action="{{$.OrgLink}}/teams/{{.LowerName}}/action/join"> | |||
{{$.CsrfTokenHtml}} | |||
<button type="submit" class="ui blue small button" name="uid" value="{{$.SignedUser.ID}}">{{$.i18n.Tr "org.teams.join"}}</button> | |||
</form> | |||
<div class="column"> | |||
<div class="ui top attached header"> | |||
<a class="text black" href="{{$.OrgLink}}/teams/{{.LowerName}}"><strong>{{.Name}}</strong></a> | |||
<div class="ui right"> | |||
{{if .IsMember $.SignedUser.ID}} | |||
<form method="post" action="{{$.OrgLink}}/teams/{{.LowerName}}/action/leave"> | |||
{{$.CsrfTokenHtml}} | |||
<button type="submit" class="ui red small button" name="uid" value="{{$.SignedUser.ID}}">{{$.i18n.Tr "org.teams.leave"}}</button> | |||
</form> | |||
{{else if $.IsOrganizationOwner}} | |||
<form method="post" action="{{$.OrgLink}}/teams/{{.LowerName}}/action/join"> | |||
{{$.CsrfTokenHtml}} | |||
<button type="submit" class="ui blue small button" name="uid" value="{{$.SignedUser.ID}}">{{$.i18n.Tr "org.teams.join"}}</button> | |||
</form> | |||
{{end}} | |||
</div> | |||
</div> | |||
<div class="ui attached segment members"> | |||
{{range .Members}} | |||
<a href="{{.HomeLink}}" title="{{.Name}}"> | |||
<img class="ui avatar image" src="{{.RelAvatarLink}}"> | |||
</a> | |||
{{end}} | |||
</div> | |||
<div class="ui bottom attached header"> | |||
<p class="team-meta">{{.NumMembers}} {{$.i18n.Tr "org.lower_members"}} · {{.NumRepos}} {{$.i18n.Tr "org.lower_repositories"}}</p> | |||
</div> | |||
</div> | |||
<div class="ui attached segment members"> | |||
{{range .Members}} | |||
<a href="{{.HomeLink}}" title="{{.Name}}"> | |||
<img class="ui avatar image" src="{{.RelAvatarLink}}"> | |||
</a> | |||
{{end}} | |||
</div> | |||
<div class="ui bottom attached header"> | |||
<p class="team-meta">{{.NumMembers}} {{$.i18n.Tr "org.lower_members"}} · {{.NumRepos}} {{$.i18n.Tr "org.lower_repositories"}}</p> | |||
</div> | |||
</div> | |||
{{end}} | |||
</div> | |||
</div> | |||
</div> | |||
</div> | |||
</div> | |||