2023-04-23 12:21:21 +02:00
{{ template "user/settings/layout_head" ( dict "ctxData" . "pageClass" "user settings account" ) }}
< div class = "user-setting-content" >
2018-05-15 12:07:32 +02:00
< h4 class = "ui top attached header" >
2024-02-22 18:33:22 +01:00
{{ ctx .Locale.Tr "settings.change_password" }}
2018-05-15 12:07:32 +02:00
< / h4 >
< div class = "ui attached segment" >
{{ if or ( .SignedUser.IsLocal ) ( .SignedUser.IsOAuth2 ) }}
2021-09-02 14:14:37 +02:00
< form class = "ui form ignore-dirty" action = " {{ AppSubUrl }} /user/settings/account" method = "post" >
2021-10-19 00:08:41 +02:00
{{ template "base/disable_form_autofill" }}
2018-05-15 12:07:32 +02:00
{{ .CsrfTokenHtml }}
{{ if .SignedUser.IsPasswordSet }}
< div class = "required field {{ if .Err_OldPassword }} error {{ end }} " >
2023-09-25 10:56:50 +02:00
< label for = "old_password" > {{ ctx .Locale.Tr "settings.old_password" }} </ label >
2020-10-09 09:32:30 +02:00
< input id = "old_password" name = "old_password" type = "password" autocomplete = "current-password" autofocus required >
2018-05-15 12:07:32 +02:00
< / div >
{{ end }}
< div class = "required field {{ if .Err_Password }} error {{ end }} " >
2023-09-25 10:56:50 +02:00
< label for = "password" > {{ ctx .Locale.Tr "settings.new_password" }} </ label >
2020-10-09 09:32:30 +02:00
< input id = "password" name = "password" type = "password" autocomplete = "new-password" required >
2018-05-15 12:07:32 +02:00
< / div >
< div class = "required field {{ if .Err_Password }} error {{ end }} " >
2023-09-25 10:56:50 +02:00
< label for = "retype" > {{ ctx .Locale.Tr "settings.retype_new_password" }} </ label >
2020-10-09 09:32:30 +02:00
< input id = "retype" name = "retype" type = "password" autocomplete = "new-password" required >
2018-05-15 12:07:32 +02:00
< / div >
< div class = "field" >
2024-02-22 18:33:22 +01:00
< button class = "ui primary button" > {{ ctx .Locale.Tr "settings.update_password" }} </ button >
2023-09-25 10:56:50 +02:00
< a href = " {{ AppSubUrl }} /user/forgot_password?email= {{ .Email }} " > {{ ctx .Locale.Tr "auth.forgot_password" }} </ a >
2018-05-15 12:07:32 +02:00
< / div >
< / form >
{{ else }}
< div class = "ui info message" >
2023-09-25 10:56:50 +02:00
< p class = "text left" > {{ ctx .Locale.Tr "settings.password_change_disabled" }} </ p >
2018-05-15 12:07:32 +02:00
< / div >
{{ end }}
< / div >
< h4 class = "ui top attached header" >
2023-09-25 10:56:50 +02:00
{{ ctx .Locale.Tr "settings.manage_emails" }}
2018-05-15 12:07:32 +02:00
< / h4 >
< div class = "ui attached segment" >
2023-07-03 22:38:06 +02:00
< div class = "ui list" >
2022-06-27 18:59:47 +02:00
{{ if $.EnableNotifyMail }}
2018-05-15 12:07:32 +02:00
< div class = "item" >
2023-09-25 10:56:50 +02:00
< div class = "gt-mb-3" > {{ ctx .Locale.Tr "settings.email_desc" }} </ div >
2019-08-29 16:05:42 +02:00
< form action = " {{ AppSubUrl }} /user/settings/account/email" class = "ui form" method = "post" >
2023-07-03 22:38:06 +02:00
{{ $.CsrfTokenHtml }}
< input name = "_method" type = "hidden" value = "NOTIFICATION" >
2024-03-22 14:45:10 +01:00
< div class = "tw-flex tw-flex-wrap gt-gap-3" >
2023-07-03 22:38:06 +02:00
< div class = "ui selection dropdown" >
< input name = "preference" type = "hidden" value = " {{ .EmailNotificationsPreference }} " >
{{ svg "octicon-triangle-down" 14 "dropdown icon" }}
< div class = "text" > < / div >
< div class = "menu" >
2023-09-25 10:56:50 +02:00
< div data-value = "enabled" class = " {{ if eq .EmailNotificationsPreference "enabled" }} active selected {{ end }} item" > {{ ctx .Locale.Tr "settings.email_notifications.enable" }} </ div >
< div data-value = "andyourown" class = " {{ if eq .EmailNotificationsPreference "andyourown" }} active selected {{ end }} item" > {{ ctx .Locale.Tr "settings.email_notifications.andyourown" }} </ div >
< div data-value = "onmention" class = " {{ if eq .EmailNotificationsPreference "onmention" }} active selected {{ end }} item" > {{ ctx .Locale.Tr "settings.email_notifications.onmention" }} </ div >
< div data-value = "disabled" class = " {{ if eq .EmailNotificationsPreference "disabled" }} active selected {{ end }} item" > {{ ctx .Locale.Tr "settings.email_notifications.disable" }} </ div >
2019-08-29 16:05:42 +02:00
< / div >
< / div >
2023-09-25 10:56:50 +02:00
< button class = "ui primary button" > {{ ctx .Locale.Tr "settings.email_notifications.submit" }} </ button >
2019-08-29 16:05:42 +02:00
< / div >
< / form >
2018-05-15 12:07:32 +02:00
< / div >
2022-06-27 18:59:47 +02:00
{{ end }}
2018-05-15 12:07:32 +02:00
{{ range .Emails }}
< div class = "item" >
{{ if not .IsPrimary }}
< div class = "right floated content" >
2021-08-27 04:57:40 +02:00
< button class = "ui red tiny button delete-button" data-modal-id = "delete-email" data-url = " {{ AppSubUrl }} /user/settings/account/email/delete" data-id = " {{ .ID }} " >
2023-09-25 10:56:50 +02:00
{{ ctx .Locale.Tr "settings.delete_email" }}
2018-05-15 12:07:32 +02:00
< / button >
< / div >
2020-03-02 19:25:36 +01:00
{{ if .CanBePrimary }}
2018-05-15 12:07:32 +02:00
< div class = "right floated content" >
2018-05-19 03:02:04 +02:00
< form action = " {{ AppSubUrl }} /user/settings/account/email" method = "post" >
2018-05-15 12:07:32 +02:00
{{ $.CsrfTokenHtml }}
< input name = "_method" type = "hidden" value = "PRIMARY" >
< input name = "id" type = "hidden" value = " {{ .ID }} " >
2023-09-25 10:56:50 +02:00
< button class = "ui primary tiny button" > {{ ctx .Locale.Tr "settings.primary_email" }} </ button >
2018-05-15 12:07:32 +02:00
< / form >
< / div >
{{ end }}
{{ end }}
2020-03-02 19:25:36 +01:00
{{ if not .IsActivated }}
< div class = "right floated content" >
< form action = " {{ AppSubUrl }} /user/settings/account/email" method = "post" >
{{ $.CsrfTokenHtml }}
< input name = "_method" type = "hidden" value = "SENDACTIVATION" >
2021-07-13 22:59:27 +02:00
< input name = "id" type = "hidden" value = " {{ .ID }} " >
2020-03-02 19:25:36 +01:00
{{ if $.ActivationsPending }}
2023-09-25 10:56:50 +02:00
< button disabled class = "ui primary tiny button" > {{ ctx .Locale.Tr "settings.activations_pending" }} </ button >
2020-03-02 19:25:36 +01:00
{{ else }}
2023-09-25 10:56:50 +02:00
< button class = "ui primary tiny button" > {{ ctx .Locale.Tr "settings.activate_email" }} </ button >
2020-03-02 19:25:36 +01:00
{{ end }}
< / form >
< / div >
{{ end }}
2023-07-03 22:38:06 +02:00
< div class = "content gt-py-3" >
2018-05-15 12:07:32 +02:00
< strong > {{ .Email }} </ strong >
2020-03-02 19:25:36 +01:00
{{ if .IsPrimary }}
2023-09-25 10:56:50 +02:00
< div class = "ui primary label" > {{ ctx .Locale.Tr "settings.primary" }} </ div >
2020-03-02 19:25:36 +01:00
{{ end }}
{{ if .IsActivated }}
2023-09-25 10:56:50 +02:00
< div class = "ui green label" > {{ ctx .Locale.Tr "settings.activated" }} </ div >
2020-03-02 19:25:36 +01:00
{{ else }}
2023-09-25 10:56:50 +02:00
< div class = "ui label" > {{ ctx .Locale.Tr "settings.requires_activation" }} </ div >
2020-03-02 19:25:36 +01:00
{{ end }}
2018-05-15 12:07:32 +02:00
< / div >
< / div >
{{ end }}
< / div >
< / div >
< div class = "ui attached bottom segment" >
2018-05-19 03:02:04 +02:00
< form class = "ui form" action = " {{ AppSubUrl }} /user/settings/account/email" method = "post" >
2018-05-15 12:07:32 +02:00
{{ .CsrfTokenHtml }}
< div class = "required field {{ if .Err_Email }} error {{ end }} " >
2023-09-25 10:56:50 +02:00
< label for = "email" > {{ ctx .Locale.Tr "settings.add_new_email" }} </ label >
2020-03-02 19:25:36 +01:00
< input id = "email" name = "email" type = "email" required {{ if not .CanAddEmails }} disabled {{ end }} >
2018-05-15 12:07:32 +02:00
< / div >
2023-09-19 00:05:31 +02:00
< button class = "ui primary button" {{ if not .CanAddEmails }} disabled {{ end }} >
2023-09-25 10:56:50 +02:00
{{ ctx .Locale.Tr "settings.add_email" }}
2018-05-15 12:07:32 +02:00
< / button >
< / form >
2023-06-26 06:52:49 +02:00
{{/* if ActivationsPending is false, then CanAddEmails must be true, so if CanAddEmails is false, ActivationsPending must be true */}}
{{ if not .CanAddEmails }}
2023-09-25 10:56:50 +02:00
< div class = "ui warning message" > {{ ctx .Locale.Tr "settings.can_not_add_email_activations_pending" }} </ div >
2023-06-26 06:52:49 +02:00
{{ end }}
2018-05-15 12:07:32 +02:00
< / div >
2024-02-23 08:24:04 +01:00
{{ if not ( $.UserDisabledFeatures.Contains "deletion" ) }}
2020-10-04 22:54:22 +02:00
< h4 class = "ui top attached error header" >
2023-09-25 10:56:50 +02:00
{{ ctx .Locale.Tr "settings.delete_account" }}
2018-05-15 12:07:32 +02:00
< / h4 >
2020-10-04 22:54:22 +02:00
< div class = "ui attached error segment" >
2018-05-15 12:07:32 +02:00
< div class = "ui red message" >
2024-03-10 09:51:19 +01:00
< p class = "text left" > {{ svg "octicon-alert" }} {{ ctx .Locale.Tr "settings.delete_prompt" }} </ p >
2022-08-31 17:58:54 +02:00
{{ if .UserDeleteWithComments }}
2024-03-23 19:45:11 +01:00
< p class = "text left tw-font-semibold" > {{ ctx .Locale.Tr "settings.delete_with_all_comments" .UserDeleteWithCommentsMaxTime }} </ p >
2022-08-31 17:58:54 +02:00
{{ end }}
2018-05-15 12:07:32 +02:00
< / div >
2018-05-19 03:02:04 +02:00
< form class = "ui form ignore-dirty" id = "delete-form" action = " {{ AppSubUrl }} /user/settings/account/delete" method = "post" >
2021-10-19 00:08:41 +02:00
{{ template "base/disable_form_autofill" }}
2018-05-15 12:07:32 +02:00
{{ .CsrfTokenHtml }}
< div class = "required field {{ if .Err_Password }} error {{ end }} " >
2023-09-25 10:56:50 +02:00
< label for = "password-confirmation" > {{ ctx .Locale.Tr "password" }} </ label >
2020-10-09 09:32:30 +02:00
< input id = "password-confirmation" name = "password" type = "password" autocomplete = "off" required >
2018-05-15 12:07:32 +02:00
< / div >
< div class = "field" >
2023-03-14 04:34:09 +01:00
< button class = "ui red button delete-button" data-modal-id = "delete-account" data-type = "form" data-form = "#delete-form" >
2023-09-25 10:56:50 +02:00
{{ ctx .Locale.Tr "settings.confirm_delete_account" }}
2023-03-14 04:34:09 +01:00
< / button >
2018-05-15 12:07:32 +02:00
< / div >
< / form >
2024-02-23 08:24:04 +01:00
< div class = "ui g-modal-confirm delete modal" id = "delete-account" >
< div class = "header" >
{{ svg "octicon-trash" }}
{{ ctx .Locale.Tr "settings.delete_account_title" }}
< / div >
< div class = "content" >
< p > {{ ctx .Locale.Tr "settings.delete_account_desc" }} </ p >
< / div >
{{ template "base/modal_actions_confirm" . }}
< / div >
2018-05-15 12:07:32 +02:00
< / div >
2024-02-23 08:24:04 +01:00
{{ end }}
2018-05-15 12:07:32 +02:00
< / div >
2023-04-24 13:08:59 +02:00
< div class = "ui g-modal-confirm delete modal" id = "delete-email" >
2023-04-23 11:24:19 +02:00
< div class = "header" >
2021-03-22 05:04:19 +01:00
{{ svg "octicon-trash" }}
2023-09-25 10:56:50 +02:00
{{ ctx .Locale.Tr "settings.email_deletion" }}
2018-05-15 12:07:32 +02:00
< / div >
< div class = "content" >
2023-09-25 10:56:50 +02:00
< p > {{ ctx .Locale.Tr "settings.email_deletion_desc" }} </ p >
2018-05-15 12:07:32 +02:00
< / div >
2023-04-23 11:24:19 +02:00
{{ template "base/modal_actions_confirm" . }}
2018-05-15 12:07:32 +02:00
< / div >
2023-04-23 12:21:21 +02:00
{{ template "user/settings/layout_footer" . }}