diff --git a/templates/repo/header.tmpl b/templates/repo/header.tmpl
index 2faaafa44..76102529d 100644
--- a/templates/repo/header.tmpl
+++ b/templates/repo/header.tmpl
@@ -5,50 +5,14 @@
{{if .RelAvatarLink}}
- {{else if .IsTemplate}}
- {{if .IsPrivate}}
- {{svg "octicon-repo-template-private" 32}}
- {{else}}
- {{svg "octicon-repo-template" 32}}
- {{end}}
{{else}}
- {{if .IsPrivate}}
- {{svg "octicon-lock" 32}}
- {{else if and (not .IsMirror) (not .IsFork) (.Owner)}}
- {{if .Owner.Visibility.IsPrivate}}
- {{svg "octicon-internal-repo" 32}}
- {{else}}
- {{svg "octicon-repo" 32}}
- {{end}}
- {{else if .IsMirror}}
- {{svg "octicon-repo-clone" 32}}
- {{else if .IsFork}}
- {{svg "octicon-repo-forked" 32}}
- {{else}}
- {{svg "octicon-repo" 32}}
- {{end}}
+ {{template "repo/header_icon" .}}
{{end}}
{{.Owner.Name}}
/
{{.Name}}
{{if .RelAvatarLink}}
- {{if .IsTemplate}}
- {{if .IsPrivate}}
- {{svg "octicon-repo-template-private" 32}}
- {{else}}
- {{svg "octicon-repo-template" 32}}
- {{end}}
- {{else}}
- {{if .IsPrivate}}
- {{svg "octicon-lock" 32}}
- {{else if .IsMirror}}
- {{svg "octicon-repo-clone" 32}}
- {{else if .IsFork}}
- {{svg "octicon-repo-forked" 32}}
- {{else}}
- {{svg "octicon-repo" 32}}
- {{end}}
- {{end}}
+ {{template "repo/header_icon" .}}
{{end}}
{{if .IsArchived}}
{{end}}
{{if .IsMirror}}
{{end}}
diff --git a/templates/repo/header_icon.tmpl b/templates/repo/header_icon.tmpl
new file mode 100644
index 000000000..7184734bb
--- /dev/null
+++ b/templates/repo/header_icon.tmpl
@@ -0,0 +1,23 @@
+{{if $.IsTemplate}}
+ {{if $.IsPrivate}}
+ {{svg "octicon-repo-template-private" 32}}
+ {{else}}
+ {{svg "octicon-repo-template" 32}}
+ {{end}}
+{{else}}
+ {{if $.IsPrivate}}
+ {{svg "octicon-lock" 32}}
+ {{else if and (not $.IsMirror) (not $.IsFork) ($.Owner)}}
+ {{if $.Owner.Visibility.IsPrivate}}
+ {{svg "octicon-internal-repo" 32}}
+ {{else}}
+ {{svg "octicon-repo" 32}}
+ {{end}}
+ {{else if $.IsMirror}}
+ {{svg "octicon-repo-clone" 32}}
+ {{else if $.IsFork}}
+ {{svg "octicon-repo-forked" 32}}
+ {{else}}
+ {{svg "octicon-repo" 32}}
+ {{end}}
+{{end}}