Show full name if DefaultShowFullName setting activated (#6710)
Adds a new key DEFAULT_SHOW_FULL_NAME (default false) to the [ui] section. If enabled the full name will be shown (unless it's empty, then the default username will be used)
This commit is contained in:
		
					parent
					
						
							
								a84f10ad1a
							
						
					
				
			
			
				commit
				
					
						4508380cf7
					
				
			
		
					 16 changed files with 84 additions and 49 deletions
				
			
		| 
						 | 
				
			
			@ -97,6 +97,8 @@ SHOW_USER_EMAIL = true
 | 
			
		|||
DEFAULT_THEME = gitea
 | 
			
		||||
; All available themes. Allow users select personalized themes regardless of the value of `DEFAULT_THEME`.
 | 
			
		||||
THEMES = gitea,arc-green
 | 
			
		||||
; Whether the full name of the users should be shown where possible. If the full name isn't set, the username will be used.
 | 
			
		||||
DEFAULT_SHOW_FULL_NAME = false
 | 
			
		||||
 | 
			
		||||
[ui.admin]
 | 
			
		||||
; Number of users that are displayed on one page
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -85,6 +85,7 @@ Values containing `#` or `;` must be quoted using `` ` `` or `"""`.
 | 
			
		|||
- `DEFAULT_THEME`: **gitea**: \[gitea, arc-green\]: Set the default theme for the Gitea install.
 | 
			
		||||
- `THEMES`:  **gitea,arc-green**: All available themes. Allow users select personalized themes
 | 
			
		||||
  regardless of the value of `DEFAULT_THEME`.
 | 
			
		||||
- `DEFAULT_SHOW_FULL_NAME`: false: Whether the full name of the users should be shown where possible. If the full name isn't set, the username will be used.
 | 
			
		||||
 | 
			
		||||
### UI - Admin (`ui.admin`)
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -144,6 +144,22 @@ func (a *Action) ShortActUserName() string {
 | 
			
		|||
	return base.EllipsisString(a.GetActUserName(), 20)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// GetDisplayName gets the action's display name based on DEFAULT_SHOW_FULL_NAME
 | 
			
		||||
func (a *Action) GetDisplayName() string {
 | 
			
		||||
	if setting.UI.DefaultShowFullName {
 | 
			
		||||
		return a.GetActFullName()
 | 
			
		||||
	}
 | 
			
		||||
	return a.ShortActUserName()
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// GetDisplayNameTitle gets the action's display name used for the title (tooltip) based on DEFAULT_SHOW_FULL_NAME
 | 
			
		||||
func (a *Action) GetDisplayNameTitle() string {
 | 
			
		||||
	if setting.UI.DefaultShowFullName {
 | 
			
		||||
		return a.ShortActUserName()
 | 
			
		||||
	}
 | 
			
		||||
	return a.GetActFullName()
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// GetActAvatar the action's user's avatar link
 | 
			
		||||
func (a *Action) GetActAvatar() string {
 | 
			
		||||
	a.loadActUser()
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -661,6 +661,16 @@ func (u *User) DisplayName() string {
 | 
			
		|||
	return u.Name
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// GetDisplayName returns full name if it's not empty and DEFAULT_SHOW_FULL_NAME is set,
 | 
			
		||||
// returns username otherwise.
 | 
			
		||||
func (u *User) GetDisplayName() string {
 | 
			
		||||
	trimmed := strings.TrimSpace(u.FullName)
 | 
			
		||||
	if len(trimmed) > 0 && setting.UI.DefaultShowFullName {
 | 
			
		||||
		return trimmed
 | 
			
		||||
	}
 | 
			
		||||
	return u.Name
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func gitSafeName(name string) string {
 | 
			
		||||
	return strings.TrimSpace(strings.NewReplacer("\n", "", "<", "", ">", "").Replace(name))
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -176,6 +176,7 @@ var (
 | 
			
		|||
		ThemeColorMetaTag   string
 | 
			
		||||
		MaxDisplayFileSize  int64
 | 
			
		||||
		ShowUserEmail       bool
 | 
			
		||||
		DefaultShowFullName bool
 | 
			
		||||
		DefaultTheme        string
 | 
			
		||||
		Themes              []string
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -918,6 +919,7 @@ func NewContext() {
 | 
			
		|||
	ShowFooterTemplateLoadTime = Cfg.Section("other").Key("SHOW_FOOTER_TEMPLATE_LOAD_TIME").MustBool(true)
 | 
			
		||||
 | 
			
		||||
	UI.ShowUserEmail = Cfg.Section("ui").Key("SHOW_USER_EMAIL").MustBool(true)
 | 
			
		||||
	UI.DefaultShowFullName = Cfg.Section("ui").Key("DEFAULT_SHOW_FULL_NAME").MustBool(false)
 | 
			
		||||
 | 
			
		||||
	HasRobotsTxt = com.IsFile(path.Join(CustomPath, "robots.txt"))
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -63,6 +63,9 @@ func NewFuncMap() []template.FuncMap {
 | 
			
		|||
		"DisableGravatar": func() bool {
 | 
			
		||||
			return setting.DisableGravatar
 | 
			
		||||
		},
 | 
			
		||||
		"DefaultShowFullName": func() bool {
 | 
			
		||||
			return setting.UI.DefaultShowFullName
 | 
			
		||||
		},
 | 
			
		||||
		"ShowFooterTemplateLoadTime": func() bool {
 | 
			
		||||
			return setting.ShowFooterTemplateLoadTime
 | 
			
		||||
		},
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -7,7 +7,7 @@
 | 
			
		|||
	</a>
 | 
			
		||||
	<div class="content">
 | 
			
		||||
		<div class="ui top attached header">
 | 
			
		||||
			<span class="text grey"><a {{if gt .Poster.ID 0}}href="{{.Poster.HomeLink}}"{{end}}>{{.Poster.Name}}</a> {{$.root.i18n.Tr "repo.issues.commented_at" .HashTag $createdStr | Safe}}</span>
 | 
			
		||||
			<span class="text grey"><a {{if gt .Poster.ID 0}}href="{{.Poster.HomeLink}}"{{end}}>{{.Poster.GetDisplayName}}</a> {{$.root.i18n.Tr "repo.issues.commented_at" .HashTag $createdStr | Safe}}</span>
 | 
			
		||||
			<div class="ui right actions">
 | 
			
		||||
			{{if and .Review}}
 | 
			
		||||
				{{if eq .Review.Type 0}}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -72,7 +72,7 @@
 | 
			
		|||
						<div class="menu">
 | 
			
		||||
							<a class="item" href="{{$.Link}}?q={{$.Keyword}}&type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{.SelectLabels}}&milestone={{$.MilestoneID}}">{{.i18n.Tr "repo.issues.filter_assginee_no_select"}}</a>
 | 
			
		||||
							{{range .Assignees}}
 | 
			
		||||
								<a class="{{if eq $.AssigneeID .ID}}active selected{{end}} item" href="{{$.Link}}?type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{$.SelectLabels}}&milestone={{$.MilestoneID}}&assignee={{.ID}}"><img src="{{.RelAvatarLink}}"> {{.Name}}</a>
 | 
			
		||||
								<a class="{{if eq $.AssigneeID .ID}}active selected{{end}} item" href="{{$.Link}}?type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{$.SelectLabels}}&milestone={{$.MilestoneID}}&assignee={{.ID}}"><img src="{{.RelAvatarLink}}"> {{.GetDisplayName}}</a>
 | 
			
		||||
							{{end}}
 | 
			
		||||
						</div>
 | 
			
		||||
					</div>
 | 
			
		||||
| 
						 | 
				
			
			@ -183,7 +183,7 @@
 | 
			
		|||
							</div>
 | 
			
		||||
							{{range .Assignees}}
 | 
			
		||||
								<div class="item issue-action" data-element-id="{{.ID}}" data-url="{{$.RepoLink}}/issues/assignee">
 | 
			
		||||
									<img src="{{.RelAvatarLink}}"> {{.Name}}
 | 
			
		||||
									<img src="{{.RelAvatarLink}}"> {{.GetDisplayName}}
 | 
			
		||||
								</div>
 | 
			
		||||
							{{end}}
 | 
			
		||||
						</div>
 | 
			
		||||
| 
						 | 
				
			
			@ -228,9 +228,9 @@
 | 
			
		|||
						{{ $timeStr := TimeSinceUnix .GetLastEventTimestamp $.Lang }}
 | 
			
		||||
 | 
			
		||||
						{{if gt .Poster.ID 0}}
 | 
			
		||||
							{{$.i18n.Tr .GetLastEventLabel $timeStr .Poster.HomeLink .Poster.Name | Safe}}
 | 
			
		||||
							{{$.i18n.Tr .GetLastEventLabel $timeStr .Poster.HomeLink (.Poster.GetDisplayName | Escape) | Safe}}
 | 
			
		||||
						{{else}}
 | 
			
		||||
							{{$.i18n.Tr .GetLastEventLabelFake $timeStr .Poster.Name | Safe}}
 | 
			
		||||
							{{$.i18n.Tr .GetLastEventLabelFake $timeStr (.Poster.GetDisplayName | Escape) | Safe}}
 | 
			
		||||
						{{end}}
 | 
			
		||||
 | 
			
		||||
						{{$tasks := .GetTasks}}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -74,7 +74,7 @@
 | 
			
		|||
						<div class="menu">
 | 
			
		||||
							<a class="item" href="{{$.Link}}?q={{$.Keyword}}&type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{.SelectLabels}}">{{.i18n.Tr "repo.issues.filter_assginee_no_select"}}</a>
 | 
			
		||||
							{{range .Assignees}}
 | 
			
		||||
								<a class="{{if eq $.AssigneeID .ID}}active selected{{end}} item" href="{{$.Link}}?type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{$.SelectLabels}}&assignee={{.ID}}"><img src="{{.RelAvatarLink}}"> {{.Name}}</a>
 | 
			
		||||
								<a class="{{if eq $.AssigneeID .ID}}active selected{{end}} item" href="{{$.Link}}?type={{$.ViewType}}&sort={{$.SortType}}&state={{$.State}}&labels={{$.SelectLabels}}&assignee={{.ID}}"><img src="{{.RelAvatarLink}}"> {{.GetDisplayName}}</a>
 | 
			
		||||
							{{end}}
 | 
			
		||||
						</div>
 | 
			
		||||
					</div>
 | 
			
		||||
| 
						 | 
				
			
			@ -166,7 +166,7 @@
 | 
			
		|||
							</div>
 | 
			
		||||
							{{range .Assignees}}
 | 
			
		||||
								<div class="item issue-action" data-element-id="{{.ID}}" data-url="{{$.RepoLink}}/issues/assignee">
 | 
			
		||||
									<img src="{{.RelAvatarLink}}"> {{.Name}}
 | 
			
		||||
									<img src="{{.RelAvatarLink}}"> {{.GetDisplayName}}
 | 
			
		||||
								</div>
 | 
			
		||||
							{{end}}
 | 
			
		||||
						</div>
 | 
			
		||||
| 
						 | 
				
			
			@ -204,9 +204,9 @@
 | 
			
		|||
 | 
			
		||||
					<p class="desc">
 | 
			
		||||
						{{if gt .Poster.ID 0}}
 | 
			
		||||
							{{$.i18n.Tr .GetLastEventLabel $timeStr .Poster.HomeLink .Poster.Name | Safe}}
 | 
			
		||||
							{{$.i18n.Tr .GetLastEventLabel $timeStr .Poster.HomeLink (.Poster.GetDisplayName|Escape) | Safe}}
 | 
			
		||||
						{{else}}
 | 
			
		||||
							{{$.i18n.Tr .GetLastEventLabelFake $timeStr .Poster.Name | Safe}}
 | 
			
		||||
							{{$.i18n.Tr .GetLastEventLabelFake $timeStr (.Poster.GetDisplayName|Escape) | Safe}}
 | 
			
		||||
						{{end}}
 | 
			
		||||
						{{$tasks := .GetTasks}}
 | 
			
		||||
						{{if gt $tasks 0}}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -112,7 +112,7 @@
 | 
			
		|||
							<a class="item" href="#" data-id="{{.ID}}" data-id-selector="#assignee_{{.ID}}">
 | 
			
		||||
								<span class="octicon"></span>
 | 
			
		||||
								<span class="text">
 | 
			
		||||
									<img class="ui avatar image" src="{{.RelAvatarLink}}"> {{.Name}}
 | 
			
		||||
									<img class="ui avatar image" src="{{.RelAvatarLink}}"> {{.GetDisplayName}}
 | 
			
		||||
								</span>
 | 
			
		||||
							</a>
 | 
			
		||||
						{{end}}
 | 
			
		||||
| 
						 | 
				
			
			@ -124,7 +124,7 @@
 | 
			
		|||
					</span>
 | 
			
		||||
					{{range .Assignees}}
 | 
			
		||||
						<a style="padding: 5px;color:rgba(0, 0, 0, 0.87);" class="hide item" id="assignee_{{.ID}}" href="{{$.RepoLink}}/issues?assignee={{.ID}}">
 | 
			
		||||
							<img class="ui avatar image" src="{{.RelAvatarLink}}" style="vertical-align: middle;"> {{.Name}}
 | 
			
		||||
							<img class="ui avatar image" src="{{.RelAvatarLink}}" style="vertical-align: middle;"> {{.GetDisplayName}}
 | 
			
		||||
						</a>
 | 
			
		||||
					{{end}}
 | 
			
		||||
				</div>
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -17,7 +17,7 @@
 | 
			
		|||
				</a>
 | 
			
		||||
				<div class="content">
 | 
			
		||||
					<div class="ui top attached header">
 | 
			
		||||
						<span class="text grey"><a {{if gt .Issue.Poster.ID 0}}href="{{.Issue.Poster.HomeLink}}"{{end}}>{{.Issue.Poster.Name}}</a> {{.i18n.Tr "repo.issues.commented_at" .Issue.HashTag $createdStr | Safe}}</span>
 | 
			
		||||
						<span class="text grey"><a {{if gt .Issue.Poster.ID 0}}href="{{.Issue.Poster.HomeLink}}"{{end}}>{{.Issue.Poster.GetDisplayName}}</a> {{.i18n.Tr "repo.issues.commented_at" .Issue.HashTag $createdStr | Safe}}</span>
 | 
			
		||||
						{{if not $.Repository.IsArchived}}
 | 
			
		||||
							<div class="ui right actions">
 | 
			
		||||
								{{template "repo/issue/view_content/add_reaction" Dict "ctx" $ "ActionURL" (Printf "%s/issues/%d/reactions" $.RepoLink .Issue.Index) }}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -14,7 +14,7 @@
 | 
			
		|||
			</a>
 | 
			
		||||
			<div class="content">
 | 
			
		||||
				<div class="ui top attached header">
 | 
			
		||||
					<span class="text grey"><a {{if gt .Poster.ID 0}}href="{{.Poster.HomeLink}}"{{end}}>{{.Poster.Name}}</a> {{$.i18n.Tr "repo.issues.commented_at" .HashTag $createdStr | Safe}}</span>
 | 
			
		||||
					<span class="text grey"><a {{if gt .Poster.ID 0}}href="{{.Poster.HomeLink}}"{{end}}>{{.Poster.GetDisplayName}}</a> {{$.i18n.Tr "repo.issues.commented_at" .HashTag $createdStr | Safe}}</span>
 | 
			
		||||
                    {{if not $.Repository.IsArchived}}
 | 
			
		||||
                        <div class="ui right actions">
 | 
			
		||||
                            {{if gt .ShowTag 0}}
 | 
			
		||||
| 
						 | 
				
			
			@ -78,7 +78,7 @@
 | 
			
		|||
			<a class="ui avatar image" href="{{.Poster.HomeLink}}">
 | 
			
		||||
				<img src="{{.Poster.RelAvatarLink}}">
 | 
			
		||||
			</a>
 | 
			
		||||
			<span class="text grey"><a href="{{.Poster.HomeLink}}">{{.Poster.Name}}</a> {{$.i18n.Tr "repo.issues.reopened_at" .EventTag $createdStr | Safe}}</span>
 | 
			
		||||
			<span class="text grey"><a href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a> {{$.i18n.Tr "repo.issues.reopened_at" .EventTag $createdStr | Safe}}</span>
 | 
			
		||||
		</div>
 | 
			
		||||
	{{else if eq .Type 2}}
 | 
			
		||||
		<div class="event">
 | 
			
		||||
| 
						 | 
				
			
			@ -86,7 +86,7 @@
 | 
			
		|||
			<a class="ui avatar image" href="{{.Poster.HomeLink}}">
 | 
			
		||||
				<img src="{{.Poster.RelAvatarLink}}">
 | 
			
		||||
			</a>
 | 
			
		||||
			<span class="text grey"><a href="{{.Poster.HomeLink}}">{{.Poster.Name}}</a> {{$.i18n.Tr "repo.issues.closed_at" .EventTag $createdStr | Safe}}</span>
 | 
			
		||||
			<span class="text grey"><a href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a> {{$.i18n.Tr "repo.issues.closed_at" .EventTag $createdStr | Safe}}</span>
 | 
			
		||||
		</div>
 | 
			
		||||
	{{else if eq .Type 4}}
 | 
			
		||||
		<div class="event">
 | 
			
		||||
| 
						 | 
				
			
			@ -94,7 +94,7 @@
 | 
			
		|||
			<a class="ui avatar image" href="{{.Poster.HomeLink}}">
 | 
			
		||||
				<img src="{{.Poster.RelAvatarLink}}">
 | 
			
		||||
			</a>
 | 
			
		||||
			<span class="text grey"><a href="{{.Poster.HomeLink}}">{{.Poster.Name}}</a> {{$.i18n.Tr "repo.issues.commit_ref_at" .EventTag $createdStr | Safe}}</span>
 | 
			
		||||
			<span class="text grey"><a href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a> {{$.i18n.Tr "repo.issues.commit_ref_at" .EventTag $createdStr | Safe}}</span>
 | 
			
		||||
 | 
			
		||||
			<div class="detail">
 | 
			
		||||
				<span class="octicon octicon-git-commit"></span>
 | 
			
		||||
| 
						 | 
				
			
			@ -108,7 +108,7 @@
 | 
			
		|||
				<a class="ui avatar image" href="{{.Poster.HomeLink}}">
 | 
			
		||||
					<img src="{{.Poster.RelAvatarLink}}">
 | 
			
		||||
				</a>
 | 
			
		||||
				<span class="text grey"><a href="{{.Poster.HomeLink}}">{{.Poster.Name}}</a>
 | 
			
		||||
				<span class="text grey"><a href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a>
 | 
			
		||||
				{{if .Content}}{{$.i18n.Tr "repo.issues.add_label_at" .Label.ForegroundColor .Label.Color (.Label.Name|Escape) $createdStr | Safe}}{{else}}{{$.i18n.Tr "repo.issues.remove_label_at" .Label.ForegroundColor .Label.Color (.Label.Name|Escape) $createdStr | Safe}}{{end}}</span>
 | 
			
		||||
			</div>
 | 
			
		||||
		{{end}}
 | 
			
		||||
| 
						 | 
				
			
			@ -118,7 +118,7 @@
 | 
			
		|||
			<a class="ui avatar image" href="{{.Poster.HomeLink}}">
 | 
			
		||||
				<img src="{{.Poster.RelAvatarLink}}">
 | 
			
		||||
			</a>
 | 
			
		||||
			<span class="text grey"><a href="{{.Poster.HomeLink}}">{{.Poster.Name}}</a>
 | 
			
		||||
			<span class="text grey"><a href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a>
 | 
			
		||||
			{{if gt .OldMilestoneID 0}}{{if gt .MilestoneID 0}}{{$.i18n.Tr "repo.issues.change_milestone_at" (.OldMilestone.Name|Escape) (.Milestone.Name|Escape) $createdStr | Safe}}{{else}}{{$.i18n.Tr "repo.issues.remove_milestone_at" (.OldMilestone.Name|Escape) $createdStr | Safe}}{{end}}{{else if gt .MilestoneID 0}}{{$.i18n.Tr "repo.issues.add_milestone_at" (.Milestone.Name|Escape) $createdStr | Safe}}{{end}}</span>
 | 
			
		||||
		</div>
 | 
			
		||||
	{{else if eq .Type 9}}
 | 
			
		||||
| 
						 | 
				
			
			@ -130,11 +130,11 @@
 | 
			
		|||
						<img src="{{.Assignee.RelAvatarLink}}">
 | 
			
		||||
					</a>
 | 
			
		||||
					<span class="text grey">
 | 
			
		||||
						<a href="{{.Assignee.HomeLink}}">{{.Assignee.Name}}</a>
 | 
			
		||||
						<a href="{{.Assignee.HomeLink}}">{{.Assignee.GetDisplayName}}</a>
 | 
			
		||||
						{{ if eq .Poster.ID .Assignee.ID }}
 | 
			
		||||
							{{$.i18n.Tr "repo.issues.remove_self_assignment" $createdStr | Safe}}
 | 
			
		||||
						{{ else }}
 | 
			
		||||
							{{$.i18n.Tr "repo.issues.remove_assignee_at" .Poster.Name $createdStr | Safe}}
 | 
			
		||||
							{{$.i18n.Tr "repo.issues.remove_assignee_at" (.Poster.GetDisplayName|Escape) $createdStr | Safe}}
 | 
			
		||||
						{{ end }}
 | 
			
		||||
					</span>
 | 
			
		||||
				{{else}}
 | 
			
		||||
| 
						 | 
				
			
			@ -142,11 +142,11 @@
 | 
			
		|||
						<img src="{{.Assignee.RelAvatarLink}}">
 | 
			
		||||
					</a>
 | 
			
		||||
					<span class="text grey">
 | 
			
		||||
						<a href="{{.Assignee.HomeLink}}">{{.Assignee.Name}}</a>
 | 
			
		||||
						<a href="{{.Assignee.HomeLink}}">{{.Assignee.GetDisplayName}}</a>
 | 
			
		||||
						{{if eq .Poster.ID .AssigneeID}}
 | 
			
		||||
							{{$.i18n.Tr "repo.issues.self_assign_at" $createdStr | Safe}}
 | 
			
		||||
						{{else}}
 | 
			
		||||
							{{$.i18n.Tr "repo.issues.add_assignee_at" .Poster.Name $createdStr | Safe}}
 | 
			
		||||
							{{$.i18n.Tr "repo.issues.add_assignee_at" (.Poster.GetDisplayName|Escape) $createdStr | Safe}}
 | 
			
		||||
						{{end}}
 | 
			
		||||
					</span>
 | 
			
		||||
				{{end}}
 | 
			
		||||
| 
						 | 
				
			
			@ -158,7 +158,7 @@
 | 
			
		|||
			<a class="ui avatar image" href="{{.Poster.HomeLink}}">
 | 
			
		||||
				<img src="{{.Poster.RelAvatarLink}}">
 | 
			
		||||
			</a>
 | 
			
		||||
			<span class="text grey"><a href="{{.Poster.HomeLink}}">{{.Poster.Name}}</a>
 | 
			
		||||
			<span class="text grey"><a href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a>
 | 
			
		||||
			{{$.i18n.Tr "repo.issues.change_title_at" (.OldTitle|Escape) (.NewTitle|Escape) $createdStr | Safe}}
 | 
			
		||||
			</span>
 | 
			
		||||
		</div>
 | 
			
		||||
| 
						 | 
				
			
			@ -168,7 +168,7 @@
 | 
			
		|||
			<a class="ui avatar image" href="{{.Poster.HomeLink}}">
 | 
			
		||||
				<img src="{{.Poster.RelAvatarLink}}">
 | 
			
		||||
			</a>
 | 
			
		||||
			<span class="text grey"><a href="{{.Poster.HomeLink}}">{{.Poster.Name}}</a>
 | 
			
		||||
			<span class="text grey"><a href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a>
 | 
			
		||||
			{{$.i18n.Tr "repo.issues.delete_branch_at" (.CommitSHA|Escape) $createdStr | Safe}}
 | 
			
		||||
			</span>
 | 
			
		||||
		</div>
 | 
			
		||||
| 
						 | 
				
			
			@ -178,7 +178,7 @@
 | 
			
		|||
			<a class="ui avatar image" href="{{.Poster.HomeLink}}">
 | 
			
		||||
				<img src="{{.Poster.RelAvatarLink}}">
 | 
			
		||||
			</a>
 | 
			
		||||
			<span class="text grey"><a href="{{.Poster.HomeLink}}">{{.Poster.Name}}</a> {{$.i18n.Tr "repo.issues.start_tracking_history"  $createdStr | Safe}}</span>
 | 
			
		||||
			<span class="text grey"><a href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a> {{$.i18n.Tr "repo.issues.start_tracking_history"  $createdStr | Safe}}</span>
 | 
			
		||||
		</div>
 | 
			
		||||
	{{else if eq .Type 13}}
 | 
			
		||||
		<div class="event">
 | 
			
		||||
| 
						 | 
				
			
			@ -186,7 +186,7 @@
 | 
			
		|||
			<a class="ui avatar image" href="{{.Poster.HomeLink}}">
 | 
			
		||||
				<img src="{{.Poster.RelAvatarLink}}">
 | 
			
		||||
			</a>
 | 
			
		||||
			<span class="text grey"><a href="{{.Poster.HomeLink}}">{{.Poster.Name}}</a> {{$.i18n.Tr "repo.issues.stop_tracking_history"  $createdStr | Safe}}</span>
 | 
			
		||||
			<span class="text grey"><a href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a> {{$.i18n.Tr "repo.issues.stop_tracking_history"  $createdStr | Safe}}</span>
 | 
			
		||||
 | 
			
		||||
			<div class="detail">
 | 
			
		||||
				<span class="octicon octicon-clock"></span>
 | 
			
		||||
| 
						 | 
				
			
			@ -199,7 +199,7 @@
 | 
			
		|||
			<a class="ui avatar image" href="{{.Poster.HomeLink}}">
 | 
			
		||||
				<img src="{{.Poster.RelAvatarLink}}">
 | 
			
		||||
			</a>
 | 
			
		||||
			<span class="text grey"><a href="{{.Poster.HomeLink}}">{{.Poster.Name}}</a> {{$.i18n.Tr "repo.issues.add_time_history"  $createdStr | Safe}}</span>
 | 
			
		||||
			<span class="text grey"><a href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a> {{$.i18n.Tr "repo.issues.add_time_history"  $createdStr | Safe}}</span>
 | 
			
		||||
			<div class="detail">
 | 
			
		||||
				<span class="octicon octicon-clock"></span>
 | 
			
		||||
				<span class="text grey">{{.Content}}</span>
 | 
			
		||||
| 
						 | 
				
			
			@ -211,7 +211,7 @@
 | 
			
		|||
			<a class="ui avatar image" href="{{.Poster.HomeLink}}">
 | 
			
		||||
				<img src="{{.Poster.RelAvatarLink}}">
 | 
			
		||||
			</a>
 | 
			
		||||
			<span class="text grey"><a href="{{.Poster.HomeLink}}">{{.Poster.Name}}</a> {{$.i18n.Tr "repo.issues.cancel_tracking_history"  $createdStr | Safe}}</span>
 | 
			
		||||
			<span class="text grey"><a href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a> {{$.i18n.Tr "repo.issues.cancel_tracking_history"  $createdStr | Safe}}</span>
 | 
			
		||||
		</div>
 | 
			
		||||
	{{else if eq .Type 16}}
 | 
			
		||||
		<div class="event">
 | 
			
		||||
| 
						 | 
				
			
			@ -219,7 +219,7 @@
 | 
			
		|||
			<a class="ui avatar image" href="{{.Poster.HomeLink}}">
 | 
			
		||||
				<img src="{{.Poster.RelAvatarLink}}">
 | 
			
		||||
			</a>
 | 
			
		||||
			<span class="text grey"><a href="{{.Poster.HomeLink}}">{{.Poster.Name}}</a>
 | 
			
		||||
			<span class="text grey"><a href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a>
 | 
			
		||||
			{{$.i18n.Tr "repo.issues.due_date_added" .Content $createdStr | Safe}}
 | 
			
		||||
			</span>
 | 
			
		||||
		</div>
 | 
			
		||||
| 
						 | 
				
			
			@ -229,7 +229,7 @@
 | 
			
		|||
			<a class="ui avatar image" href="{{.Poster.HomeLink}}">
 | 
			
		||||
				<img src="{{.Poster.RelAvatarLink}}">
 | 
			
		||||
			</a>
 | 
			
		||||
			<span class="text grey"><a href="{{.Poster.HomeLink}}">{{.Poster.Name}}</a>
 | 
			
		||||
			<span class="text grey"><a href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a>
 | 
			
		||||
			{{$.i18n.Tr "repo.issues.due_date_modified" (.Content | ParseDeadline) $createdStr | Safe}}
 | 
			
		||||
			</span>
 | 
			
		||||
		</div>
 | 
			
		||||
| 
						 | 
				
			
			@ -239,7 +239,7 @@
 | 
			
		|||
			<a class="ui avatar image" href="{{.Poster.HomeLink}}">
 | 
			
		||||
				<img src="{{.Poster.RelAvatarLink}}">
 | 
			
		||||
			</a>
 | 
			
		||||
			<span class="text grey"><a href="{{.Poster.HomeLink}}">{{.Poster.Name}}</a>
 | 
			
		||||
			<span class="text grey"><a href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a>
 | 
			
		||||
			{{$.i18n.Tr "repo.issues.due_date_remove" .Content $createdStr | Safe}}
 | 
			
		||||
			</span>
 | 
			
		||||
		</div>
 | 
			
		||||
| 
						 | 
				
			
			@ -250,7 +250,7 @@
 | 
			
		|||
				<img src="{{.Poster.RelAvatarLink}}">
 | 
			
		||||
	     	</a>
 | 
			
		||||
	     	<span class="text grey">
 | 
			
		||||
		     	{{$.i18n.Tr "repo.issues.dependency.added_dependency" .Poster.HomeLink .Poster.Name $createdStr | Safe}}
 | 
			
		||||
		     	{{$.i18n.Tr "repo.issues.dependency.added_dependency" .Poster.HomeLink (.Poster.GetDisplayName|Escape) $createdStr | Safe}}
 | 
			
		||||
	     	</span>
 | 
			
		||||
	     	<div class="detail">
 | 
			
		||||
		    	<span class="octicon octicon-plus"></span>
 | 
			
		||||
| 
						 | 
				
			
			@ -264,7 +264,7 @@
 | 
			
		|||
		     	<img src="{{.Poster.RelAvatarLink}}">
 | 
			
		||||
	     	</a>
 | 
			
		||||
	     	<span class="text grey">
 | 
			
		||||
		     	{{$.i18n.Tr "repo.issues.dependency.removed_dependency" .Poster.HomeLink .Poster.Name $createdStr | Safe}}
 | 
			
		||||
		     	{{$.i18n.Tr "repo.issues.dependency.removed_dependency" .Poster.HomeLink (.Poster.GetDisplayName|Escape) $createdStr | Safe}}
 | 
			
		||||
	     	</span>
 | 
			
		||||
	     	<div class="detail">
 | 
			
		||||
		     	<span class="text grey octicon octicon-trashcan"></span>
 | 
			
		||||
| 
						 | 
				
			
			@ -277,7 +277,7 @@
 | 
			
		|||
	    	<a class="ui avatar image" href="{{.Poster.HomeLink}}">
 | 
			
		||||
	    		<img src="{{.Poster.RelAvatarLink}}">
 | 
			
		||||
	    	</a>
 | 
			
		||||
	    	<span class="text grey"><a href="{{.Poster.HomeLink}}">{{.Poster.Name}}</a>
 | 
			
		||||
	    	<span class="text grey"><a href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a>
 | 
			
		||||
	    		{{if eq .Review.Type 1}}
 | 
			
		||||
	    			{{$.i18n.Tr "repo.issues.review.approve" $createdStr | Safe}}
 | 
			
		||||
	    		{{else if eq .Review.Type 2}}
 | 
			
		||||
| 
						 | 
				
			
			@ -335,7 +335,7 @@
 | 
			
		|||
												<img src="{{.Poster.RelAvatarLink}}">
 | 
			
		||||
											</a>
 | 
			
		||||
											<div class="content">
 | 
			
		||||
												<a class="author" {{if gt .Poster.ID 0}}href="{{.Poster.HomeLink}}"{{end}}>{{.Poster.Name}}</a>
 | 
			
		||||
												<a class="author" {{if gt .Poster.ID 0}}href="{{.Poster.HomeLink}}"{{end}}>{{.Poster.GetDisplayName}}</a>
 | 
			
		||||
												<div class="metadata">
 | 
			
		||||
													<span class="date">{{$.i18n.Tr "repo.issues.commented_at" .HashTag $createdSubStr | Safe}}</span>
 | 
			
		||||
												</div>
 | 
			
		||||
| 
						 | 
				
			
			@ -368,11 +368,11 @@
 | 
			
		|||
			</a>
 | 
			
		||||
 | 
			
		||||
			{{ if .Content }}
 | 
			
		||||
	    		<span class="text grey"><a href="{{.Poster.HomeLink}}">{{.Poster.Name}}</a>
 | 
			
		||||
	    		<span class="text grey"><a href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a>
 | 
			
		||||
				{{$.i18n.Tr "repo.issues.lock_with_reason" .Content $createdStr | Safe}}
 | 
			
		||||
	    		</span>
 | 
			
		||||
			{{ else }}
 | 
			
		||||
	    		<span class="text grey"><a href="{{.Poster.HomeLink}}">{{.Poster.Name}}</a>
 | 
			
		||||
	    		<span class="text grey"><a href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a>
 | 
			
		||||
				{{$.i18n.Tr "repo.issues.lock_no_reason" $createdStr | Safe}}
 | 
			
		||||
	    		</span>
 | 
			
		||||
			{{ end }}
 | 
			
		||||
| 
						 | 
				
			
			@ -385,7 +385,7 @@
 | 
			
		|||
				<img src="{{.Poster.RelAvatarLink}}">
 | 
			
		||||
			</a>
 | 
			
		||||
 | 
			
		||||
	    		<span class="text grey"><a href="{{.Poster.HomeLink}}">{{.Poster.Name}}</a>
 | 
			
		||||
	    		<span class="text grey"><a href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a>
 | 
			
		||||
	    			{{$.i18n.Tr "repo.issues.unlock_comment" $createdStr | Safe}}
 | 
			
		||||
	    		</span>
 | 
			
		||||
		</div>
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -89,7 +89,7 @@
 | 
			
		|||
						{{end}}
 | 
			
		||||
					{{end}}"></span>
 | 
			
		||||
						<span class="text">
 | 
			
		||||
							<img class="ui avatar image" src="{{.RelAvatarLink}}"> {{.Name}}
 | 
			
		||||
							<img class="ui avatar image" src="{{.RelAvatarLink}}"> {{.GetDisplayName}}
 | 
			
		||||
						</span>
 | 
			
		||||
					</a>
 | 
			
		||||
				{{end}}
 | 
			
		||||
| 
						 | 
				
			
			@ -100,7 +100,7 @@
 | 
			
		|||
			<div class="selected">
 | 
			
		||||
				{{range .Issue.Assignees}}
 | 
			
		||||
					<div class="item" style="margin-bottom: 10px;">
 | 
			
		||||
						<a href="{{$.RepoLink}}/issues?assignee={{.ID}}"><img class="ui avatar image" src="{{.RelAvatarLink}}"> {{.Name}}</a>
 | 
			
		||||
						<a href="{{$.RepoLink}}/issues?assignee={{.ID}}"><img class="ui avatar image" src="{{.RelAvatarLink}}"> {{.GetDisplayName}}</a>
 | 
			
		||||
					</div>
 | 
			
		||||
				{{end}}
 | 
			
		||||
			</div>
 | 
			
		||||
| 
						 | 
				
			
			@ -113,7 +113,7 @@
 | 
			
		|||
			<div>
 | 
			
		||||
				{{range .Participants}}
 | 
			
		||||
					<a {{if gt .ID 0}}href="{{.HomeLink}}"{{end}}>
 | 
			
		||||
						<img class="ui avatar image poping up" src="{{.RelAvatarLink}}" data-content="{{.DisplayName}}" data-position="top center" data-variation="small inverted">
 | 
			
		||||
						<img class="ui avatar image poping up" src="{{.RelAvatarLink}}" data-content="{{.GetDisplayName}}" data-position="top center" data-variation="small inverted">
 | 
			
		||||
					</a>
 | 
			
		||||
				{{end}}
 | 
			
		||||
			</div>
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -27,19 +27,19 @@
 | 
			
		|||
	{{if .Issue.IsPull}}
 | 
			
		||||
		{{if .Issue.PullRequest.HasMerged}}
 | 
			
		||||
			{{ $mergedStr:= TimeSinceUnix .Issue.PullRequest.MergedUnix $.Lang }}
 | 
			
		||||
			<a {{if gt .Issue.PullRequest.Merger.ID 0}}href="{{.Issue.PullRequest.Merger.HomeLink}}"{{end}}>{{.Issue.PullRequest.Merger.Name}}</a>
 | 
			
		||||
			<a {{if gt .Issue.PullRequest.Merger.ID 0}}href="{{.Issue.PullRequest.Merger.HomeLink}}"{{end}}>{{.Issue.PullRequest.Merger.GetDisplayName}}</a>
 | 
			
		||||
			<span class="pull-desc">{{$.i18n.Tr "repo.pulls.merged_title_desc" .NumCommits .HeadTarget .BaseTarget $mergedStr | Str2html}}</span>
 | 
			
		||||
		{{else}}
 | 
			
		||||
			<a {{if gt .Issue.Poster.ID 0}}href="{{.Issue.Poster.HomeLink}}"{{end}}>{{.Issue.Poster.Name}}</a>
 | 
			
		||||
			<a {{if gt .Issue.Poster.ID 0}}href="{{.Issue.Poster.HomeLink}}"{{end}}>{{.Issue.Poster.GetDisplayName}}</a>
 | 
			
		||||
			<span class="pull-desc">{{$.i18n.Tr "repo.pulls.title_desc" .NumCommits .HeadTarget .BaseTarget | Str2html}}</span>
 | 
			
		||||
		{{end}}
 | 
			
		||||
	{{else}}
 | 
			
		||||
		{{ $createdStr:= TimeSinceUnix .Issue.CreatedUnix $.Lang }}
 | 
			
		||||
		<span class="time-desc">
 | 
			
		||||
			{{if gt .Issue.Poster.ID 0}}
 | 
			
		||||
				{{$.i18n.Tr "repo.issues.opened_by" $createdStr .Issue.Poster.HomeLink .Issue.Poster.Name | Safe}}
 | 
			
		||||
				{{$.i18n.Tr "repo.issues.opened_by" $createdStr .Issue.Poster.HomeLink (.Issue.Poster.GetDisplayName|Escape) | Safe}}
 | 
			
		||||
			{{else}}
 | 
			
		||||
				{{$.i18n.Tr "repo.issues.opened_by_fake" $createdStr .Issue.Poster.Name | Safe}}
 | 
			
		||||
				{{$.i18n.Tr "repo.issues.opened_by_fake" $createdStr (.Issue.Poster.GetDisplayName|Escape) | Safe}}
 | 
			
		||||
			{{end}}
 | 
			
		||||
			·
 | 
			
		||||
			{{$.i18n.Tr "repo.issues.num_comments" .Issue.NumComments}}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -8,7 +8,7 @@
 | 
			
		|||
				<div class="{{if or (eq .GetOpType 5) (eq .GetOpType 18)}}push news{{end}}">
 | 
			
		||||
					<p>
 | 
			
		||||
						{{if gt .ActUser.ID 0}}
 | 
			
		||||
							<a href="{{AppSubUrl}}/{{.GetActUserName}}" title="{{.GetActFullName}}">{{.ShortActUserName}}</a>
 | 
			
		||||
							<a href="{{AppSubUrl}}/{{.GetActUserName}}" title="{{.GetDisplayNameTitle}}">{{.GetDisplayName}}</a>
 | 
			
		||||
						{{else}}
 | 
			
		||||
							{{.ShortActUserName}}
 | 
			
		||||
						{{end}}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -61,6 +61,7 @@
 | 
			
		|||
 | 
			
		||||
				<div class="issue list">
 | 
			
		||||
					{{range .Issues}}
 | 
			
		||||
 | 
			
		||||
						{{ $timeStr:= TimeSinceUnix .CreatedUnix $.Lang }}
 | 
			
		||||
						<li class="item">
 | 
			
		||||
							<div class="ui label">{{if not $.RepoID}}{{.Repo.FullName}}{{end}}#{{.Index}}</div>
 | 
			
		||||
| 
						 | 
				
			
			@ -93,12 +94,12 @@
 | 
			
		|||
 | 
			
		||||
							<p class="desc">
 | 
			
		||||
								{{if gt .Poster.ID 0}}
 | 
			
		||||
									{{$.i18n.Tr .GetLastEventLabel $timeStr .Poster.HomeLink .Poster.Name | Safe}}
 | 
			
		||||
									{{$.i18n.Tr .GetLastEventLabel $timeStr .Poster.HomeLink (.Poster.GetDisplayName|Escape) | Safe}}
 | 
			
		||||
								{{else}}
 | 
			
		||||
									{{$.i18n.Tr .GetLastEventLabelFake $timeStr .Poster.Name | Safe}}
 | 
			
		||||
									{{$.i18n.Tr .GetLastEventLabelFake $timeStr (.Poster.GetDisplayName|Escape) | Safe}}
 | 
			
		||||
								{{end}}
 | 
			
		||||
								{{if .Assignee}}
 | 
			
		||||
									<a class="ui right assignee poping up" href="{{.Assignee.HomeLink}}" data-content="{{.Assignee.Name}}" data-variation="inverted" data-position="left center">
 | 
			
		||||
									<a class="ui right assignee poping up" href="{{.Assignee.HomeLink}}" data-content="{{.Assignee.GetDisplayName}}" data-variation="inverted" data-position="left center">
 | 
			
		||||
										<img class="ui avatar image" src="{{.Assignee.RelAvatarLink}}">
 | 
			
		||||
									</a>
 | 
			
		||||
								{{end}}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue