aboutsummaryrefslogtreecommitdiff
path: root/templates
diff options
context:
space:
mode:
authorThedro Neely <thedroneely@gmail.com>2020-01-23 02:12:05 -0500
committerThedro Neely <thedroneely@gmail.com>2020-01-23 02:12:05 -0500
commit29e18042620fcddccf3e68fa2f772697773fd87d (patch)
tree30cbbb05841c1856bc60f5193db5e0f3162a9c0e /templates
parentace114e82833b55e204a3fdf8eca528cc9712d4d (diff)
downloadgitea-templates-29e18042620fcddccf3e68fa2f772697773fd87d.tar.gz
gitea-templates-29e18042620fcddccf3e68fa2f772697773fd87d.tar.bz2
gitea-templates-29e18042620fcddccf3e68fa2f772697773fd87d.zip
templates: Add repo header and home
Diffstat (limited to 'templates')
-rw-r--r--templates/repo/header.tmpl112
-rw-r--r--templates/repo/home.tmpl153
2 files changed, 265 insertions, 0 deletions
diff --git a/templates/repo/header.tmpl b/templates/repo/header.tmpl
new file mode 100644
index 0000000..b1b3118
--- /dev/null
+++ b/templates/repo/header.tmpl
@@ -0,0 +1,112 @@
+<div class="header-wrapper">
+{{with .Repository}}
+ <div class="ui container">
+ <div class="repo-header">
+ <div class="ui huge breadcrumb repo-title">
+ {{if .RelAvatarLink}}
+ <img class="ui avatar image" src="{{.RelAvatarLink}}">
+ {{else}}
+ <i class="mega-octicon octicon-{{if .IsPrivate}}lock{{else if .IsMirror}}repo-clone{{else if .IsFork}}repo-forked{{else}}repo{{end}}"></i>
+ {{end}}
+ <a href="{{AppSubUrl}}/{{.Owner.Name}}">{{.Owner.Name}}</a>
+ <div class="divider"> / </div>
+ <a href="{{$.RepoLink}}">{{.Name}}</a>
+ {{if and .RelAvatarLink .IsPrivate}}<i class="mega-octicon octicon-lock"></i>{{end}}
+ {{if .IsTemplate}}<i class="icon fa-copy"></i>{{end}}
+ {{if .IsArchived}}<i class="archive icon archived-icon"></i>{{end}}
+ {{if .IsMirror}}<div class="fork-flag">{{$.i18n.Tr "repo.mirror_from"}} <a target="_blank" rel="noopener noreferrer" href="{{MirrorAddress $.Mirror}}">{{MirrorAddress $.Mirror}}</a></div>{{end}}
+ {{if .IsFork}}<div class="fork-flag">{{$.i18n.Tr "repo.forked_from"}} <a href="{{.BaseRepo.Link}}">{{SubStr .BaseRepo.RelLink 1 -1}}</a></div>{{end}}
+ {{if .IsGenerated}}<div class="fork-flag">{{$.i18n.Tr "repo.generated_from"}} <a href="{{.TemplateRepo.Link}}">{{SubStr .TemplateRepo.RelLink 1 -1}}</a></div>{{end}}
+ </div>
+ {{if not .IsBeingCreated}}
+ <div class="repo-buttons">
+ <div class="ui labeled button" tabindex="0">
+ <a class="ui compact basic button" href="{{$.RepoLink}}/action/{{if $.IsWatchingRepo}}un{{end}}watch?redirect_to={{$.Link}}">
+ <i class="icon fa-eye{{if not $.IsWatchingRepo}}-slash{{end}}"></i>{{if $.IsWatchingRepo}}{{$.i18n.Tr "repo.unwatch"}}{{else}}{{$.i18n.Tr "repo.watch"}}{{end}}
+ </a>
+ <a class="ui basic label" href="{{.Link}}/watchers">
+ {{.NumWatches}}
+ </a>
+ </div>
+ <div class="ui labeled button" tabindex="0">
+ <a class="ui compact basic button" href="{{$.RepoLink}}/action/{{if $.IsStaringRepo}}un{{end}}star?redirect_to={{$.Link}}">
+ <i class="icon star{{if not $.IsStaringRepo}} outline{{end}}"></i>{{if $.IsStaringRepo}}{{$.i18n.Tr "repo.unstar"}}{{else}}{{$.i18n.Tr "repo.star"}}{{end}}
+ </a>
+ <a class="ui basic label" href="{{.Link}}/stars">
+ {{.NumStars}}
+ </a>
+ </div>
+ {{if and (not .IsEmpty) ($.Permission.CanRead $.UnitTypeCode)}}
+ <div class="ui labeled button {{if and ($.IsSigned) (not $.CanSignedUserFork)}}disabled-repo-button{{end}}" tabindex="0">
+ <a class="ui compact basic button {{if or (not $.IsSigned) (not $.CanSignedUserFork)}}poping up{{end}}" {{if $.CanSignedUserFork}}href="{{AppSubUrl}}/repo/fork/{{.ID}}"{{else if $.IsSigned}} data-content="{{$.i18n.Tr "repo.fork_from_self"}}" {{ else }} data-content="{{$.i18n.Tr "repo.fork_guest_user" }}" rel="nofollow" href="{{AppSubUrl}}/user/login?redirect_to={{AppSubUrl}}/repo/fork/{{.ID}}" {{end}} data-position="top center" data-variation="tiny">
+ <i class="octicon octicon-repo-forked"></i>{{$.i18n.Tr "repo.fork"}}
+ </a>
+ <a class="ui basic label" href="{{.Link}}/forks">
+ {{.NumForks}}
+ </a>
+ </div>
+ {{end}}
+ </div>
+ {{end}}
+ </div><!-- end grid -->
+ </div><!-- end container -->
+{{end}}
+ <div class="ui tabs container">
+ {{if not .Repository.IsBeingCreated}}
+ <div class="ui tabular stackable menu navbar">
+ {{if .Permission.CanRead $.UnitTypeCode}}
+ <a class="{{if .PageIsViewCode}}active{{end}} item" href="{{.RepoLink}}{{if (ne .BranchName .Repository.DefaultBranch)}}/src/{{.BranchNameSubURL | EscapePound}}{{end}}">
+ <i class="octicon octicon-code"></i> {{.i18n.Tr "repo.code"}}
+ </a>
+ {{end}}
+
+ {{if .Permission.CanRead $.UnitTypeIssues}}
+ <a class="{{if .PageIsIssueList}}active{{end}} item" href="{{.RepoLink}}/issues">
+ <i class="octicon octicon-issue-opened"></i> {{.i18n.Tr "repo.issues"}} <span class="ui {{if not .Repository.NumOpenIssues}}gray{{else}}blue{{end}} small label">{{.Repository.NumOpenIssues}}</span>
+ </a>
+ {{end}}
+
+ {{if .Permission.CanRead $.UnitTypeExternalTracker}}
+ <a class="{{if .PageIsIssueList}}active{{end}} item" href="{{.RepoExternalIssuesLink}}" target="_blank" rel="noopener noreferrer">
+ <i class="octicon octicon-link-external"></i> {{.i18n.Tr "repo.issues"}} </span>
+ </a>
+ {{end}}
+
+ {{if and .Repository.CanEnablePulls (.Permission.CanRead $.UnitTypePullRequests)}}
+ <a class="{{if .PageIsPullList}}active{{end}} item" href="{{.RepoLink}}/pulls">
+ <i class="octicon octicon-git-pull-request"></i> {{.i18n.Tr "repo.pulls"}} <span class="ui {{if not .Repository.NumOpenPulls}}gray{{else}}blue{{end}} small label">{{.Repository.NumOpenPulls}}</span>
+ </a>
+ {{end}}
+
+ {{if and (.Permission.CanRead $.UnitTypeReleases) (not .IsEmptyRepo) }}
+ <a class="{{if .PageIsReleaseList}}active{{end}} item" href="{{.RepoLink}}/releases">
+ <i class="octicon octicon-tag"></i> {{.i18n.Tr "repo.releases"}} <span class="ui {{if not .Repository.NumReleases}}gray{{else}}blue{{end}} small label">{{.Repository.NumReleases}}</span>
+ </a>
+ {{end}}
+
+ {{if or (.Permission.CanRead $.UnitTypeWiki) (.Permission.CanRead $.UnitTypeExternalWiki)}}
+ <a class="{{if .PageIsWiki}}active{{end}} item" href="{{.RepoLink}}/wiki" {{if (.Permission.CanRead $.UnitTypeExternalWiki)}} target="_blank" rel="noopener noreferrer" {{end}}>
+ <i class="octicon octicon-book"></i> {{.i18n.Tr "repo.wiki"}}
+ </a>
+ {{end}}
+
+ {{if and (.Permission.CanReadAny $.UnitTypePullRequests $.UnitTypeIssues $.UnitTypeReleases) (not .IsEmptyRepo)}}
+ <a class="{{if .PageIsActivity}}active{{end}} item" href="{{.RepoLink}}/activity">
+ <i class="octicon octicon-pulse"></i> {{.i18n.Tr "repo.activity"}}
+ </a>
+ {{end}}
+
+ {{template "custom/extra_tabs" .}}
+
+ {{if .Permission.IsAdmin}}
+ <div class="right menu">
+ <a class="{{if .PageIsSettings}}active{{end}} item" href="{{.RepoLink}}/settings">
+ <i class="octicon octicon-tools"></i> {{.i18n.Tr "repo.settings"}}
+ </a>
+ </div>
+ {{end}}
+ </div>
+ {{end}}
+ </div>
+ <div class="ui tabs divider"></div>
+</div>
diff --git a/templates/repo/home.tmpl b/templates/repo/home.tmpl
new file mode 100644
index 0000000..19989bb
--- /dev/null
+++ b/templates/repo/home.tmpl
@@ -0,0 +1,153 @@
+{{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 if .IsRepositoryAdmin}}<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" id="repo-topics">
+ {{range .Topics}}<a class="ui repo-topic small label topic" href="{{AppSubUrl}}/explore/repos?q={{.Name}}&topic=1">{{.Name}}</a>{{end}}
+ {{if and .Permission.IsAdmin (not .Repository.IsArchived)}}<a id="manage_topic">{{.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 small 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 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">
+ {{template "repo/branch_dropdown" .}}
+ {{ $n := len .TreeNames}}
+ {{ $l := Subtract $n 1}}
+ <!-- If home page, show new PR. If not, show breadcrumb -->
+ {{if eq $n 0}}
+ {{if and .PullRequestCtx.Allowed .IsViewBranch (not .Repository.IsArchived)}}
+ <div class="fitted item">
+ <a href="{{.BaseRepo.Link}}/compare/{{.BaseRepo.DefaultBranch | EscapePound}}...{{if ne .Repository.Owner.Name .BaseRepo.Owner.Name}}{{.Repository.Owner.Name}}:{{end}}{{.BranchName | EscapePound}}">
+ <button id="new-pull-request" class="ui compact basic button">{{.i18n.Tr "repo.pulls.compare_changes"}}</button>
+ </a>
+ </div>
+ {{end}}
+ {{else}}
+ <div class="fitted item"><span class="ui breadcrumb repo-path"><a class="section" href="{{.RepoLink}}/src/{{EscapePound .BranchNameSubURL}}" title="{{.Repository.Name}}">{{EllipsisString .Repository.Name 30}}</a>{{range $i, $v := .TreeNames}}<span class="divider">/</span>{{if eq $i $l}}<span class="active section" title="{{$v}}">{{EllipsisString $v 30}}</span>{{else}}{{ $p := index $.Paths $i}}<span class="section"><a href="{{EscapePound $.BranchLink}}/{{EscapePound $p}}" title="{{$v}}">{{EllipsisString $v 30}}</a></span>{{end}}{{end}}</span></div>
+ {{end}}
+ <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) (not .IsBlame) }}
+ <a href="{{.RepoLink}}/commits/{{EscapePound .BranchNameSubURL}}/{{EscapePound .TreePath}}" class="ui button">
+ {{.i18n.Tr "repo.file_history"}}
+ </a>
+ {{end}}
+ </div>
+
+ </div>
+ <div class="fitted item">
+ {{if eq $n 0}}
+ {{if .Repository.IsTemplate}}
+ <div class="ui tiny blue buttons">
+ <a href="{{AppSubUrl}}/repo/create?template_id={{.Repository.ID}}" class="ui button">
+ {{.i18n.Tr "repo.use_template"}}
+ </a>
+ </div>
+ {{end}}
+ {{end}}
+ </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 if .IsBlame}}
+ {{template "repo/blame" .}}
+ {{else}}
+ {{template "repo/view_list" .}}
+ {{end}}
+ </div>
+</div>
+{{template "base/footer" .}}