summaryrefslogtreecommitdiffstats
path: root/templates/repo/home.tmpl
diff options
context:
space:
mode:
Diffstat (limited to 'templates/repo/home.tmpl')
-rw-r--r--templates/repo/home.tmpl164
1 files changed, 164 insertions, 0 deletions
diff --git a/templates/repo/home.tmpl b/templates/repo/home.tmpl
new file mode 100644
index 00000000..1f531219
--- /dev/null
+++ b/templates/repo/home.tmpl
@@ -0,0 +1,164 @@
+{{template "base/head" .}}
+<div role="main" aria-label="{{.Title}}" class="page-content repository file list {{if .IsBlame}}blame{{end}}">
+ {{template "repo/header" .}}
+ <div class="ui container {{if .IsBlame}}fluid padded{{end}}">
+ {{template "base/alert" .}}
+ {{template "repo/code/recently_pushed_new_branches" .}}
+ {{if and (not .HideRepoInfo) (not .IsBlame)}}
+ <div class="repo-description">
+ <div id="repo-desc" class="tw-break-anywhere tw-text-16">
+ {{$description := .Repository.DescriptionHTML $.Context}}
+ {{if $description}}<span class="description">{{$description | RenderCodeBlock}}</span>{{else}}<span class="no-description text-italic">{{ctx.Locale.Tr "repo.no_desc"}}</span>{{end}}
+ {{if .Repository.Website}}<a class="link" href="{{.Repository.Website}}">{{.Repository.Website}}</a>{{end}}
+ </div>
+ <form class="ignore-dirty" action="{{.RepoLink}}/search/{{if .CodeIndexerDisabled}}{{.BranchNameSubURL}}{{end}}" method="get" data-test-tag="codesearch">
+ <div class="ui small action input">
+ <input name="q" value="{{.Keyword}}" placeholder="{{ctx.Locale.Tr "search.code_kind"}}">
+ {{template "shared/search/button"}}
+ </div>
+ </form>
+ </div>
+ <div class="tw-flex tw-items-center tw-flex-wrap tw-gap-2 tw-my-2" id="repo-topics">
+ {{/* it should match the code in issue-home.js */}}
+ {{range .Topics}}<a class="repo-topic ui large label" href="{{AppSubUrl}}/explore/repos?q={{.Name}}&topic=1">{{.Name}}</a>{{end}}
+ {{if and .Permission.IsAdmin (not .Repository.IsArchived)}}<button id="manage_topic" class="btn interact-fg tw-text-12">{{ctx.Locale.Tr "repo.topic.manage_topics"}}</button>{{end}}
+ </div>
+ {{end}}
+ {{if and .Permission.IsAdmin (not .Repository.IsArchived)}}
+ <div class="ui form tw-hidden tw-flex tw-gap-2 tw-my-2" id="topic_edit">
+ <div class="ui fluid multiple search selection dropdown tw-flex-wrap tw-flex-1">
+ <input type="hidden" name="topics" value="{{range $i, $v := .Topics}}{{.Name}}{{if Eval $i "+" 1 "<" (len $.Topics)}},{{end}}{{end}}">
+ {{range .Topics}}
+ {{/* keep the same layout as Fomantic UI generated labels */}}
+ <a class="ui label transition visible tw-cursor-default tw-inline-block" data-value="{{.Name}}">{{.Name}}{{svg "octicon-x" 16 "delete icon"}}</a>
+ {{end}}
+ <div class="text"></div>
+ </div>
+ <div>
+ <button class="ui basic button" id="cancel_topic_edit">{{ctx.Locale.Tr "cancel"}}</button>
+ <button class="ui primary button" id="save_topic" data-link="{{.RepoLink}}/topics">{{ctx.Locale.Tr "save"}}</button>
+ </div>
+ </div>
+ {{end}}
+
+ {{if RepoFlagsEnabled}}
+ {{template "custom/repo_flag_banners" .}}
+ {{if .SignedUser.IsAdmin}}
+ {{template "repo/admin_flags" .}}
+ {{end}}
+ {{end}}
+
+ {{if .Repository.IsArchived}}
+ <div class="ui warning message tw-text-center">
+ {{if .Repository.ArchivedUnix.IsZero}}
+ {{ctx.Locale.Tr "repo.archive.title"}}
+ {{else}}
+ {{ctx.Locale.Tr "repo.archive.title_date" (DateTime "long" .Repository.ArchivedUnix)}}
+ {{end}}
+ </div>
+ {{end}}
+ {{template "repo/sub_menu" .}}
+ {{$n := len .TreeNames}}
+ {{$l := Eval $n "-" 1}}
+ {{$isHomepage := (eq $n 0)}}
+ <div class="repo-button-row">
+ <div class="tw-flex tw-items-center tw-gap-y-2">
+ {{template "repo/branch_dropdown" dict "root" . "ContainerClasses" "tw-mr-1"}}
+ {{if and .CanCompareOrPull .IsViewBranch (not .Repository.IsArchived)}}
+ {{$cmpBranch := ""}}
+ {{if ne .Repository.ID .BaseRepo.ID}}
+ {{$cmpBranch = printf "%s/%s:" (.Repository.OwnerName|PathEscape) (.Repository.Name|PathEscape)}}
+ {{end}}
+ {{$cmpBranch = print $cmpBranch (.BranchName|PathEscapeSegments)}}
+ {{$compareLink := printf "%s/compare/%s...%s" .BaseRepo.Link (.BaseRepo.DefaultBranch|PathEscapeSegments) $cmpBranch}}
+ <a id="new-pull-request" role="button" class="ui compact basic button" href="{{$compareLink}}"
+ data-tooltip-content="{{if .PullRequestCtx.Allowed}}{{ctx.Locale.Tr "repo.pulls.compare_changes"}}{{else}}{{ctx.Locale.Tr "action.compare_branch"}}{{end}}">
+ {{svg "octicon-git-pull-request"}}
+ </a>
+ {{end}}
+ <!-- Show go to file and breadcrumbs if not on home page -->
+ {{if $isHomepage}}
+ <a href="{{.Repository.Link}}/find/{{.BranchNameSubURL}}" class="ui compact basic button">{{ctx.Locale.Tr "repo.find_file.go_to_file"}}</a>
+ {{end}}
+
+ {{if and .CanWriteCode .IsViewBranch (not .Repository.IsMirror) (not .Repository.IsArchived) (not .IsViewFile)}}
+ <button class="ui dropdown basic compact jump button tw-mr-1"{{if not .Repository.CanEnableEditor}} disabled{{end}}>
+ {{ctx.Locale.Tr "repo.editor.add_file"}}
+ {{svg "octicon-triangle-down" 14 "dropdown icon"}}
+ <div class="menu">
+ <a class="item" href="{{.RepoLink}}/_new/{{.BranchName | PathEscapeSegments}}/{{.TreePath | PathEscapeSegments}}">
+ {{ctx.Locale.Tr "repo.editor.new_file"}}
+ </a>
+ {{if .RepositoryUploadEnabled}}
+ <a class="item" href="{{.RepoLink}}/_upload/{{.BranchName | PathEscapeSegments}}/{{.TreePath | PathEscapeSegments}}">
+ {{ctx.Locale.Tr "repo.editor.upload_file"}}
+ </a>
+ {{end}}
+ <a class="item" href="{{.RepoLink}}/_diffpatch/{{.BranchName | PathEscapeSegments}}/{{.TreePath | PathEscapeSegments}}">
+ {{ctx.Locale.Tr "repo.editor.patch"}}
+ </a>
+ </div>
+ </button>
+ {{end}}
+
+ {{if and $isHomepage (.Repository.IsTemplate)}}
+ <a role="button" class="ui primary compact button" href="{{AppSubUrl}}/repo/create?template_id={{.Repository.ID}}">
+ {{ctx.Locale.Tr "repo.use_template"}}
+ </a>
+ {{end}}
+ {{if (not $isHomepage)}}
+ <span class="breadcrumb repo-path tw-ml-1">
+ <a class="section" href="{{.RepoLink}}/src/{{.BranchNameSubURL}}" title="{{.Repository.Name}}">{{StringUtils.EllipsisString .Repository.Name 30}}</a>
+ {{- range $i, $v := .TreeNames -}}
+ <span class="breadcrumb-divider">/</span>
+ {{- if eq $i $l -}}
+ <span class="active section" title="{{$v}}">{{$v}}</span>
+ {{- else -}}
+ {{$p := index $.Paths $i}}<span class="section"><a href="{{$.BranchLink}}/{{PathEscapeSegments $p}}" title="{{$v}}">{{$v}}</a></span>
+ {{- end -}}
+ {{- end -}}
+ </span>
+ {{end}}
+ </div>
+ <div class="tw-flex tw-items-center">
+ <!-- Only show clone panel in repository home page -->
+ {{if $isHomepage}}
+ <div class="clone-panel ui action tiny input">
+ {{template "repo/clone_buttons" .}}
+ <button class="ui small jump dropdown icon button" data-tooltip-content="{{ctx.Locale.Tr "repo.more_operations"}}">
+ {{svg "octicon-kebab-horizontal"}}
+ <div class="menu">
+ {{if not $.DisableDownloadSourceArchives}}
+ <a class="item archive-link" href="{{$.RepoLink}}/archive/{{PathEscapeSegments $.RefName}}.zip" rel="nofollow">{{svg "octicon-file-zip" 16 "tw-mr-2"}}{{ctx.Locale.Tr "repo.download_zip"}}</a>
+ <a class="item archive-link" href="{{$.RepoLink}}/archive/{{PathEscapeSegments $.RefName}}.tar.gz" rel="nofollow">{{svg "octicon-file-zip" 16 "tw-mr-2"}}{{ctx.Locale.Tr "repo.download_tar"}}</a>
+ <a class="item archive-link" href="{{$.RepoLink}}/archive/{{PathEscapeSegments $.RefName}}.bundle" rel="nofollow">{{svg "octicon-package" 16 "tw-mr-2"}}{{ctx.Locale.Tr "repo.download_bundle"}}</a>
+ {{end}}
+ {{if .CitiationExist}}
+ <a class="item" id="cite-repo-button">{{svg "octicon-cross-reference" 16 "tw-mr-2"}}{{ctx.Locale.Tr "repo.cite_this_repo"}}</a>
+ {{end}}
+ {{range .OpenWithEditorApps}}
+ <a class="item js-clone-url-editor" data-href-template="{{.OpenURL}}">{{.IconHTML}}{{ctx.Locale.Tr "repo.open_with_editor" .DisplayName}}</a>
+ {{end}}
+ </div>
+ </button>
+ {{template "repo/clone_script" .}}{{/* the script will update `.js-clone-url` and related elements */}}
+ </div>
+ {{template "repo/cite/cite_modal" .}}
+ {{end}}
+ {{if and (not $isHomepage) (not .IsViewFile) (not .IsBlame)}}{{/* IsViewDirectory (not home), TODO: split the templates, avoid using "if" tricks */}}
+ <a class="ui button" href="{{.RepoLink}}/commits/{{.BranchNameSubURL}}/{{.TreePath | PathEscapeSegments}}">
+ {{svg "octicon-history" 16 "tw-mr-2"}}{{ctx.Locale.Tr "repo.file_history"}}
+ </a>
+ {{end}}
+ </div>
+ </div>
+ {{if .IsViewFile}}
+ {{template "repo/view_file" .}}
+ {{else if .IsBlame}}
+ {{template "repo/blame" .}}
+ {{else}}{{/* IsViewDirectory */}}
+ {{template "repo/view_list" .}}
+ {{end}}
+ </div>
+</div>
+{{template "base/footer" .}}