2015-11-17 00:11:59 +08:00
|
|
|
{{template "base/head" .}}
|
|
|
|
<div class="user profile">
|
2015-12-08 06:30:52 +08:00
|
|
|
<div class="ui container">
|
2017-12-31 08:47:52 +08:00
|
|
|
<div class="ui stackable grid">
|
2015-12-08 06:30:52 +08:00
|
|
|
<div class="ui five wide column">
|
|
|
|
<div class="ui card">
|
2016-06-27 01:51:09 +08:00
|
|
|
{{if eq .SignedUserName .Owner.Name}}
|
2018-05-15 18:07:32 +08:00
|
|
|
<a class="image poping up" href="{{AppSubUrl}}/user/settings" id="profile-avatar" data-content="{{.i18n.Tr "user.change_avatar"}}" data-variation="inverted tiny" data-position="bottom center">
|
2017-12-03 19:55:13 +08:00
|
|
|
<img src="{{.Owner.SizedRelAvatarLink 290}}" title="{{.Owner.Name}}"/>
|
2015-12-08 06:30:52 +08:00
|
|
|
</a>
|
|
|
|
{{else}}
|
|
|
|
<span class="image">
|
2017-12-03 19:55:13 +08:00
|
|
|
<img src="{{.Owner.SizedRelAvatarLink 290}}" title="{{.Owner.Name}}"/>
|
2015-12-08 06:30:52 +08:00
|
|
|
</span>
|
|
|
|
{{end}}
|
2019-07-01 09:56:26 +08:00
|
|
|
<div class="content wrap">
|
2015-12-08 06:30:52 +08:00
|
|
|
{{if .Owner.FullName}}<span class="header text center">{{.Owner.FullName}}</span>{{end}}
|
|
|
|
<span class="username text center">{{.Owner.Name}}</span>
|
|
|
|
</div>
|
2019-07-01 09:56:26 +08:00
|
|
|
<div class="extra content wrap">
|
2015-12-08 06:30:52 +08:00
|
|
|
<ul class="text black">
|
|
|
|
{{if .Owner.Location}}
|
2016-07-16 12:45:13 +08:00
|
|
|
<li><i class="octicon octicon-location"></i> {{.Owner.Location}}</li>
|
2015-12-08 06:30:52 +08:00
|
|
|
{{end}}
|
2019-02-19 22:11:50 +08:00
|
|
|
{{if .ShowUserEmail }}
|
2015-12-08 06:30:52 +08:00
|
|
|
<li>
|
2016-07-16 12:45:13 +08:00
|
|
|
<i class="octicon octicon-mail"></i>
|
2015-12-08 06:30:52 +08:00
|
|
|
<a href="mailto:{{.Owner.Email}}" rel="nofollow">{{.Owner.Email}}</a>
|
|
|
|
</li>
|
|
|
|
{{end}}
|
|
|
|
{{if .Owner.Website}}
|
|
|
|
<li>
|
2016-07-16 12:45:13 +08:00
|
|
|
<i class="octicon octicon-link"></i>
|
2018-12-07 04:15:48 +08:00
|
|
|
<a target="_blank" rel="noopener noreferrer me" href="{{.Owner.Website}}">{{.Owner.Website}}</a>
|
2015-12-08 06:30:52 +08:00
|
|
|
</li>
|
|
|
|
{{end}}
|
2019-03-19 10:28:10 +08:00
|
|
|
{{if .Owner.Description}}
|
|
|
|
<li>
|
|
|
|
<i class="octicon octicon-info"></i>
|
|
|
|
<span>{{.Owner.Description}}</span>
|
|
|
|
</li>
|
|
|
|
{{end}}
|
2017-03-20 16:31:08 +08:00
|
|
|
{{range .OpenIDs}}
|
|
|
|
{{if .Show}}
|
|
|
|
<li>
|
|
|
|
<i class="fa fa-openid"></i>
|
2018-07-04 07:52:36 +08:00
|
|
|
<a target="_blank" rel="noopener noreferrer" href="{{.URI}}">{{.URI}}</a>
|
2017-03-20 16:31:08 +08:00
|
|
|
</li>
|
|
|
|
{{end}}
|
|
|
|
{{end}}
|
2017-12-11 12:37:04 +08:00
|
|
|
<li><i class="octicon octicon-clock"></i> {{.i18n.Tr "user.join_on"}} {{.Owner.CreatedUnix.FormatShort}}</li>
|
2019-02-19 00:00:27 +08:00
|
|
|
{{if and .Orgs .HasOrgsVisible}}
|
2016-01-12 10:09:59 +08:00
|
|
|
<li>
|
2019-05-14 04:52:59 +08:00
|
|
|
<ul class="user-orgs">
|
2016-01-12 10:09:59 +08:00
|
|
|
{{range .Orgs}}
|
2019-02-19 00:00:27 +08:00
|
|
|
{{if (or .Visibility.IsPublic (and ($.SignedUser) (or .Visibility.IsLimited (and (.IsUserPartOfOrg $.SignedUserID) .Visibility.IsPrivate) ($.IsAdmin))))}}
|
2019-05-14 04:52:59 +08:00
|
|
|
<li>
|
|
|
|
<a href="{{.HomeLink}}"><img class="ui image poping up" src="{{.RelAvatarLink}}" data-content="{{.Name}}" data-position="top center" data-variation="tiny inverted"></a>
|
|
|
|
</li>
|
2019-02-19 00:00:27 +08:00
|
|
|
{{end}}
|
2016-01-12 10:09:59 +08:00
|
|
|
{{end}}
|
2019-05-14 04:52:59 +08:00
|
|
|
</ul>
|
2016-01-12 10:09:59 +08:00
|
|
|
</li>
|
2016-01-14 21:29:25 +08:00
|
|
|
{{end}}
|
2015-12-21 20:24:11 +08:00
|
|
|
{{if and .IsSigned (ne .SignedUserName .Owner.Name)}}
|
|
|
|
<li class="follow">
|
2016-07-24 01:08:22 +08:00
|
|
|
{{if .SignedUser.IsFollowing .Owner.ID}}
|
2015-12-21 20:24:11 +08:00
|
|
|
<a class="ui basic red button" href="{{.Link}}/action/unfollow?redirect_to={{$.Link}}"><i class="octicon octicon-person"></i> {{.i18n.Tr "user.unfollow"}}</a>
|
|
|
|
{{else}}
|
|
|
|
<a class="ui basic green button" href="{{.Link}}/action/follow?redirect_to={{$.Link}}"><i class="octicon octicon-person"></i> {{.i18n.Tr "user.follow"}}</a>
|
|
|
|
{{end}}
|
|
|
|
</li>
|
|
|
|
{{end}}
|
2015-12-08 06:30:52 +08:00
|
|
|
</ul>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div class="ui eleven wide column">
|
2017-12-31 08:47:52 +08:00
|
|
|
<div class="ui secondary stackable pointing menu">
|
2020-02-10 05:00:24 +08:00
|
|
|
<a class='{{if and (ne .TabName "activity") (ne .TabName "following") (ne .TabName "followers") (ne .TabName "stars")}}active{{end}} item' href="{{.Owner.HomeLink}}">
|
2016-07-16 12:45:13 +08:00
|
|
|
<i class="octicon octicon-repo"></i> {{.i18n.Tr "user.repositories"}}
|
2015-12-08 06:30:52 +08:00
|
|
|
</a>
|
2016-12-29 22:58:24 +08:00
|
|
|
<a class='{{if eq .TabName "activity"}}active{{end}} item' href="{{.Owner.HomeLink}}?tab=activity">
|
|
|
|
<i class="octicon octicon-rss"></i> {{.i18n.Tr "user.activity"}}
|
|
|
|
</a>
|
|
|
|
<a class='{{if eq .TabName "stars"}}active{{end}} item' href="{{.Owner.HomeLink}}?tab=stars">
|
|
|
|
<i class="octicon octicon-star"></i> {{.i18n.Tr "user.starred"}}
|
2020-02-10 05:00:24 +08:00
|
|
|
<div class="ui label">{{.Owner.NumStars}}</div>
|
|
|
|
</a>
|
|
|
|
<a class='{{if eq .TabName "following"}}active{{end}} item' href="{{.Owner.HomeLink}}?tab=following">
|
|
|
|
<i class="octicon octicon-person"></i> {{.i18n.Tr "user.following"}}
|
|
|
|
<div class="ui label">{{.Owner.NumFollowing}}</div>
|
|
|
|
</a>
|
|
|
|
<a class='{{if eq .TabName "followers"}}active{{end}} item' href="{{.Owner.HomeLink}}?tab=followers">
|
|
|
|
<i class="octicon octicon-person"></i> {{.i18n.Tr "user.followers"}}
|
|
|
|
<div class="ui label">{{.Owner.NumFollowers}}</div>
|
2015-12-08 06:30:52 +08:00
|
|
|
</a>
|
|
|
|
</div>
|
2016-12-29 22:58:24 +08:00
|
|
|
|
|
|
|
{{if eq .TabName "activity"}}
|
2018-10-23 10:57:42 +08:00
|
|
|
{{if .EnableHeatmap}}
|
2018-11-27 17:36:54 +08:00
|
|
|
<div id="user-heatmap" style="padding-right: 40px">
|
|
|
|
<activity-heatmap :locale="locale" :suburl="suburl" :user="heatmapUser">
|
|
|
|
<div slot="loading">
|
|
|
|
<div class="ui active centered inline indeterminate text loader" id="loading-heatmap">{{.i18n.Tr "user.heatmap.loading"}}</div>
|
|
|
|
</div>
|
|
|
|
</activity-heatmap>
|
|
|
|
</div>
|
2018-10-23 10:57:42 +08:00
|
|
|
<div class="ui divider"></div>
|
|
|
|
{{end}}
|
2015-12-08 06:30:52 +08:00
|
|
|
<div class="feeds">
|
|
|
|
{{template "user/dashboard/feeds" .}}
|
|
|
|
</div>
|
2016-12-29 22:58:24 +08:00
|
|
|
{{else if eq .TabName "stars"}}
|
|
|
|
<div class="stars">
|
2018-05-24 09:03:42 +08:00
|
|
|
{{template "explore/repo_search" .}}
|
2016-12-29 22:58:24 +08:00
|
|
|
{{template "explore/repo_list" .}}
|
2017-02-07 19:54:16 +08:00
|
|
|
{{template "base/paginate" .}}
|
2016-12-29 22:58:24 +08:00
|
|
|
</div>
|
2020-02-10 05:00:24 +08:00
|
|
|
{{else if eq .TabName "following"}}
|
|
|
|
{{template "repo/user_cards" .}}
|
|
|
|
{{else if eq .TabName "followers"}}
|
|
|
|
{{template "repo/user_cards" .}}
|
2016-12-29 22:58:24 +08:00
|
|
|
{{else}}
|
2018-05-24 09:03:42 +08:00
|
|
|
{{template "explore/repo_search" .}}
|
2016-12-29 22:58:24 +08:00
|
|
|
{{template "explore/repo_list" .}}
|
|
|
|
{{template "base/paginate" .}}
|
2015-12-08 06:30:52 +08:00
|
|
|
{{end}}
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
2014-03-02 21:47:55 +08:00
|
|
|
</div>
|
2015-12-08 06:30:52 +08:00
|
|
|
{{template "base/footer" .}}
|