loading up the forgejo repo on tangled to test page performance
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge pull request 'Don't display email in profile settings when hidden' (#6018) from 0ko/forgejo:ui-settings-email-vis into forgejo

Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/6018
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
Reviewed-by: Otto <otto@codeberg.org>

+27 -4
+6 -4
templates/user/settings/profile.tmpl
··· 51 51 </div> 52 52 <input id="pronouns-custom" name="pronouns" value="{{.SignedUser.Pronouns}}" maxlength="50"> 53 53 </div> 54 - <div class="field {{if .Err_Email}}error{{end}}"> 55 - <label>{{ctx.Locale.Tr "email"}}</label> 56 - <p id="signed-user-email">{{.SignedUser.Email}}</p> 57 - </div> 54 + {{if not .SignedUser.KeepEmailPrivate}} 55 + <div class="field"> 56 + <label>{{ctx.Locale.Tr "email"}}</label> 57 + <p id="signed-user-email">{{.SignedUser.Email}}</p> 58 + </div> 59 + {{end}} 58 60 <div class="field {{if .Err_Biography}}error{{end}}"> 59 61 <label for="biography">{{ctx.Locale.Tr "user.user_bio"}}</label> 60 62 <textarea id="biography" name="biography" rows="2" placeholder="{{ctx.Locale.Tr "settings.biography_placeholder"}}" maxlength="255">{{.SignedUser.Description}}</textarea>
+21
tests/integration/setting_test.go
··· 1 1 // Copyright 2017 The Gitea Authors. All rights reserved. 2 + // Copyright 2024 The Forgejo Authors. All rights reserved. 2 3 // SPDX-License-Identifier: MIT 3 4 4 5 package integration ··· 156 157 assert.Contains(t, resp.Body.String(), `gitlab-active`) 157 158 assert.Contains(t, resp.Body.String(), `gitlab-inactive`) 158 159 } 160 + 161 + func TestSettingShowUserEmailSettings(t *testing.T) { 162 + defer tests.PrepareTestEnv(t)() 163 + 164 + // user1: keep_email_private = false, user2: keep_email_private = true 165 + 166 + // user1 can see own visible email 167 + session := loginUser(t, "user1") 168 + req := NewRequest(t, "GET", "/user/settings") 169 + resp := session.MakeRequest(t, req, http.StatusOK) 170 + htmlDoc := NewHTMLParser(t, resp.Body) 171 + assert.Contains(t, htmlDoc.doc.Find("#signed-user-email").Text(), "user1@example.com") 172 + 173 + // user2 cannot see own hidden email 174 + session = loginUser(t, "user2") 175 + req = NewRequest(t, "GET", "/user/settings") 176 + resp = session.MakeRequest(t, req, http.StatusOK) 177 + htmlDoc = NewHTMLParser(t, resp.Body) 178 + assert.NotContains(t, htmlDoc.doc.Find("#signed-user-email").Text(), "user2@example.com") 179 + }