{{template "base/head" .}} <div class="repository file list"> {{template "repo/header" .}} <div class="ui container"> {{template "base/alert" .}} <div class="ui repo-description"> <div id="repo-desc"> {{if .Repository.DescriptionHTML}}<span class="description has-emoji">{{.Repository.DescriptionHTML}}</span>{{else}}<span class="no-description text-italic">{{.i18n.Tr "repo.no_desc"}}</span>{{end}} <a class="link" href="{{.Repository.Website}}">{{.Repository.Website}}</a> </div> {{if .RepoSearchEnabled}} <div class="ui repo-search"> <form class="ui form ignore-dirty" action="{{.RepoLink}}/search" method="get"> <div class="field"> <div class="ui action input"> <input name="q" value="{{.Keyword}}" placeholder="{{.i18n.Tr "repo.search.search_repo"}}"> <button class="ui icon button" type="submit"> <i class="search icon"></i> </button> </div> </div> </form> </div> {{end}} </div> <div class="ui repo-topic" id="repo-topic"> {{range .Topics}}<a class="ui green basic label topic" style="cursor:pointer;" href="{{AppSubUrl}}/explore/repos?q={{.Name}}&topic=1">{{.Name}}</a>{{end}} {{if and .Permission.IsAdmin (not .Repository.IsArchived)}}<a id="manage_topic" style="cursor:pointer;margin-left:10px;">{{.i18n.Tr "repo.topic.manage_topics"}}</a>{{end}} </div> {{if and .Permission.IsAdmin (not .Repository.IsArchived)}} <div class="ui repo-topic-edit grid form segment error" id="topic_edit" style="display:none"> <div class="fourteen wide column"> <div class="field"> <div class="ui fluid multiple search selection dropdown"> <input type="hidden" name="topics" value="{{range $i, $v := .Topics}}{{.Name}}{{if lt (Add $i 1) (len $.Topics)}},{{end}}{{end}}"> {{range .Topics}} <div class="ui green basic label topic transition visible" data-value="{{.Name}}" style="display: inline-block !important; cursor: default;">{{.Name}}<i class="delete icon"></i></div> {{end}} <div class="text"></div> </div> </div> </div> <div class="two wide column"> <a class="ui compact button primary" href="javascript:;" id="save_topic" data-link="{{.RepoLink}}/topics">{{.i18n.Tr "repo.topic.done"}}</a> </div> </div> {{end}} <div class="hide" id="validate_prompt"> <span id="count_prompt">{{.i18n.Tr "repo.topic.count_prompt"}}</span> <span id="format_prompt">{{.i18n.Tr "repo.topic.format_prompt"}}</span> </div> {{if .Repository.IsArchived}} <div class="ui warning message"> {{.i18n.Tr "repo.archive.title"}} </div> {{end}} {{template "repo/sub_menu" .}} <div class="ui stackable secondary menu mobile--margin-between-items mobile--no-negative-margins"> {{if and .PullRequestCtx.Allowed .IsViewBranch}} <div class="fitted item"> <a href="{{.BaseRepo.Link}}/compare/{{.BaseRepo.DefaultBranch | EscapePound}}...{{.Repository.Owner.Name}}:{{.BranchName | EscapePound}}"> <button class="ui green tiny compact button"><i class="octicon octicon-git-compare"></i></button> </a> </div> {{end}} {{template "repo/branch_dropdown" .}} {{ $n := len .TreeNames}} {{ $l := Subtract $n 1}} <div class="fitted item"><span class="ui breadcrumb repo-path"><a class="section" href="{{.RepoLink}}/src/{{EscapePound .BranchNameSubURL}}">{{EllipsisString .Repository.Name 30}}</a>{{range $i, $v := .TreeNames}}<span class="divider">/</span>{{if eq $i $l}}<span class="active section">{{EllipsisString $v 30}}</span>{{else}}{{ $p := index $.Paths $i}}<span class="section"><a href="{{EscapePound $.BranchLink}}/{{EscapePound $p}}">{{EllipsisString $v 30}}</a></span>{{end}}{{end}}</span></div> <div class="right fitted item" id="file-buttons"> <div class="ui tiny blue buttons"> {{if .Repository.CanEnableEditor}} {{if .CanAddFile}} <a href="{{.RepoLink}}/_new/{{EscapePound .BranchName}}/{{EscapePound .TreePath}}" class="ui button"> {{.i18n.Tr "repo.editor.new_file"}} </a> {{end}} {{if .CanUploadFile}} <a href="{{.RepoLink}}/_upload/{{EscapePound .BranchName}}/{{EscapePound .TreePath}}" class="ui button"> {{.i18n.Tr "repo.editor.upload_file"}} </a> {{end}} {{end}} {{if and (ne $n 0) (not .IsViewFile)}} <a href="{{.RepoLink}}/commits/{{EscapePound .BranchNameSubURL}}/{{EscapePound .TreePath}}" class="ui button"> {{.i18n.Tr "repo.file_history"}} </a> {{end}} </div> </div> <div class="fitted item"> <!-- Only show clone panel in repository home page --> {{if eq $n 0}} <div class="ui action tiny input" id="clone-panel"> {{if not $.DisableHTTP}} <button class="ui basic clone button" id="repo-clone-https" data-link="{{.CloneLink.HTTPS}}"> {{if UseHTTPS}}HTTPS{{else}}HTTP{{end}} </button> {{end}} {{if and (not $.DisableSSH) (or $.IsSigned $.ExposeAnonSSH)}} <button class="ui basic clone button" id="repo-clone-ssh" data-link="{{.CloneLink.SSH}}"> SSH </button> {{end}} {{if not $.DisableHTTP}} <input id="repo-clone-url" value="{{$.CloneLink.HTTPS}}" readonly> {{else if and (not $.DisableSSH) (or $.IsSigned $.ExposeAnonSSH)}} <input id="repo-clone-url" value="{{$.CloneLink.SSH}}" readonly> {{end}} {{if or (not $.DisableHTTP) (and (not $.DisableSSH) (or $.IsSigned $.ExposeAnonSSH))}} <button class="ui basic icon button poping up clipboard" id="clipboard-btn" data-original="{{.i18n.Tr "repo.copy_link"}}" data-success="{{.i18n.Tr "repo.copy_link_success"}}" data-error="{{.i18n.Tr "repo.copy_link_error"}}" data-content="{{.i18n.Tr "repo.copy_link"}}" data-variation="inverted tiny" data-clipboard-target="#repo-clone-url"> <i class="octicon octicon-clippy"></i> </button> {{end}} <div class="ui basic jump dropdown icon button poping up" data-content="{{.i18n.Tr "repo.download_archive"}}" data-variation="tiny inverted" data-position="top right"> <i class="download icon"></i> <div class="menu"> <a class="item" href="{{$.RepoLink}}/archive/{{EscapePound $.BranchName}}.zip"><i class="octicon octicon-file-zip"></i> ZIP</a> <a class="item" href="{{$.RepoLink}}/archive/{{EscapePound $.BranchName}}.tar.gz"><i class="octicon octicon-file-zip"></i> TAR.GZ</a> </div> </div> </div> {{end}} </div> </div> {{if .IsViewFile}} {{template "repo/view_file" .}} {{else}} {{template "repo/view_list" .}} {{end}} </div> </div> {{template "base/footer" .}}