b1cf7f4df1
* Add class to page content to unify top margin Previously pages would individually set this margin but some didn't so content would stick to the header without any space. Resolve this by adding a new class that is added on all pages. The only place where we remove this margin again is on the pages with menu or wrapper in the header. * fix admin notices * fix team pages * fix loading segment on gitgraph for arc-green * fix last missing case Co-authored-by: techknowlogick <techknowlogick@gitea.io>
113 lines
5.1 KiB
Handlebars
113 lines
5.1 KiB
Handlebars
{{template "base/head" .}}
|
|
<div class="page-content user settings profile">
|
|
{{template "user/settings/navbar" .}}
|
|
<div class="ui container">
|
|
{{template "base/alert" .}}
|
|
<h4 class="ui top attached header">
|
|
{{.i18n.Tr "settings.public_profile"}}
|
|
</h4>
|
|
<div class="ui attached segment">
|
|
<p>{{.i18n.Tr "settings.profile_desc"}}</p>
|
|
<form class="ui form" action="{{.Link}}" method="post">
|
|
{{.CsrfTokenHtml}}
|
|
<div class="required field {{if .Err_Name}}error{{end}}">
|
|
<label for="username">{{.i18n.Tr "username"}}<span class="text red hide" id="name-change-prompt"> {{.i18n.Tr "settings.change_username_prompt"}}</span></label>
|
|
<input id="username" name="name" value="{{.SignedUser.Name}}" data-name="{{.SignedUser.Name}}" autofocus required {{if not .SignedUser.IsLocal}}disabled{{end}}>
|
|
{{if not .SignedUser.IsLocal}}
|
|
<p class="help text blue">{{$.i18n.Tr "settings.password_username_disabled"}}</p>
|
|
{{end}}
|
|
</div>
|
|
<div class="field {{if .Err_FullName}}error{{end}}">
|
|
<label for="full_name">{{.i18n.Tr "settings.full_name"}}</label>
|
|
<input id="full_name" name="full_name" value="{{.SignedUser.FullName}}">
|
|
</div>
|
|
<div class="field {{if .Err_Email}}error{{end}}">
|
|
<label for="email">{{.i18n.Tr "email"}}</label>
|
|
<p>{{.SignedUser.Email}}</p>
|
|
</div>
|
|
<div class="inline field">
|
|
<div class="ui checkbox" id="keep-email-private">
|
|
<label class="poping up" data-content="{{.i18n.Tr "settings.keep_email_private_popup"}}"><strong>{{.i18n.Tr "settings.keep_email_private"}}</strong></label>
|
|
<input name="keep_email_private" type="checkbox" {{if .SignedUser.KeepEmailPrivate}}checked{{end}}>
|
|
</div>
|
|
</div>
|
|
<div class="field {{if .Err_Description}}error{{end}}">
|
|
<label for="description">{{$.i18n.Tr "user.user_bio"}}</label>
|
|
<textarea id="description" name="description" rows="2" placeholder="{{.i18n.Tr "settings.biography_placeholder"}}">{{.SignedUser.Description}}</textarea>
|
|
</div>
|
|
<div class="field {{if .Err_Website}}error{{end}}">
|
|
<label for="website">{{.i18n.Tr "settings.website"}}</label>
|
|
<input id="website" name="website" type="url" value="{{.SignedUser.Website}}">
|
|
</div>
|
|
<div class="field">
|
|
<label for="location">{{.i18n.Tr "settings.location"}}</label>
|
|
<input id="location" name="location" value="{{.SignedUser.Location}}">
|
|
</div>
|
|
|
|
<div class="field">
|
|
<label for="language">{{.i18n.Tr "settings.language"}}</label>
|
|
<div class="ui language selection dropdown" id="language">
|
|
<input name="language" type="hidden" value="{{.SignedUser.Language}}">
|
|
{{svg "octicon-triangle-down" 14 "dropdown icon"}}
|
|
<div class="text">{{range .AllLangs}}{{if eq $.SignedUser.Language .Lang}}{{.Name}}{{end}}{{end}}</div>
|
|
<div class="menu">
|
|
{{range .AllLangs}}
|
|
<div class="item{{if eq $.SignedUser.Language .Lang}} active selected{{end}}" data-value="{{.Lang}}">{{.Name}}</div>
|
|
{{end}}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="field">
|
|
<label for="keep-activity-private">{{.i18n.Tr "settings.privacy"}}</label>
|
|
<div class="ui checkbox" id="keep-activity-private">
|
|
<label class="poping up" data-content="{{.i18n.Tr "settings.keep_activity_private_popup"}}"><strong>{{.i18n.Tr "settings.keep_activity_private"}}</strong></label>
|
|
<input name="keep_activity_private" type="checkbox" {{if .SignedUser.KeepActivityPrivate}}checked{{end}}>
|
|
</div>
|
|
</div>
|
|
<div class="field">
|
|
<button class="ui green button">{{$.i18n.Tr "settings.update_profile"}}</button>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
|
|
<h4 class="ui top attached header">
|
|
{{.i18n.Tr "settings.avatar"}}
|
|
</h4>
|
|
<div class="ui attached segment">
|
|
<form class="ui form" action="{{.Link}}/avatar" method="post" enctype="multipart/form-data">
|
|
{{.CsrfTokenHtml}}
|
|
{{if not DisableGravatar}}
|
|
<div class="inline field">
|
|
<div class="ui radio checkbox">
|
|
<input name="source" value="lookup" type="radio" {{if not .SignedUser.UseCustomAvatar}}checked{{end}}>
|
|
<label>{{.i18n.Tr "settings.lookup_avatar_by_mail"}}</label>
|
|
</div>
|
|
</div>
|
|
<div class="field {{if .Err_Gravatar}}error{{end}}">
|
|
<label for="gravatar">Avatar {{.i18n.Tr "email"}}</label>
|
|
<input id="gravatar" name="gravatar" value="{{.SignedUser.AvatarEmail}}" />
|
|
</div>
|
|
{{end}}
|
|
|
|
<div class="inline field">
|
|
<div class="ui radio checkbox">
|
|
<input name="source" value="local" type="radio" {{if .SignedUser.UseCustomAvatar}}checked{{end}}>
|
|
<label>{{.i18n.Tr "settings.enable_custom_avatar"}}</label>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="inline field">
|
|
<label for="avatar">{{.i18n.Tr "settings.choose_new_avatar"}}</label>
|
|
<input name="avatar" type="file" >
|
|
</div>
|
|
|
|
<div class="field">
|
|
<button class="ui green button">{{$.i18n.Tr "settings.update_avatar"}}</button>
|
|
<a class="ui red button delete-post" data-request-url="{{.Link}}/avatar/delete" data-done-url="{{.Link}}">{{$.i18n.Tr "settings.delete_current_avatar"}}</a>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
{{template "base/footer" .}}
|