Skip to content

Commit f5046af

Browse files
committed
use map for data
1 parent 385e1d8 commit f5046af

File tree

5 files changed

+27
-26
lines changed

5 files changed

+27
-26
lines changed

models/user_test.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ import (
1515

1616
"github.com/stretchr/testify/assert"
1717
)
18+
1819
func TestUserIsPublicMember(t *testing.T) {
1920
assert.NoError(t, PrepareTestDatabase())
2021

models/userlist.go

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -17,21 +17,21 @@ func (users UserList) getUserIDs() []int64 {
1717
}
1818

1919
// IsUserOrgOwner returns true if user is in the owner team of given organization.
20-
func (users UserList) IsUserOrgOwner(orgID int64) []bool {
21-
results := make([]bool, len(users))
20+
func (users UserList) IsUserOrgOwner(orgID int64) map[int64]bool {
21+
results := make(map[int64]bool, len(users))
2222
//TODO use directly xorm
23-
for i, u := range users {
24-
results[i] = u.IsUserOrgOwner(orgID)
23+
for _, u := range users {
24+
results[u.ID] = u.IsUserOrgOwner(orgID)
2525
}
2626
return results
2727
}
2828

29-
// IsTwoFaEnrolled return state of 2FA enrollement
30-
func (users UserList) IsTwoFaEnrolled() []bool {
31-
results := make([]bool, len(users))
29+
// GetTwoFaStatus return state of 2FA enrollement
30+
func (users UserList) GetTwoFaStatus() map[int64]bool {
31+
results := make(map[int64]bool, len(users))
3232
//TODO use directly xorm
33-
for i, u := range users {
34-
results[i] = u.IsTwoFaEnrolled()
33+
for _, u := range users {
34+
results[u.ID] = u.IsTwoFaEnrolled()
3535
}
3636
return results
3737
}

models/userlist_test.go

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -39,20 +39,20 @@ func TestUserListIsUserOrgOwner(t *testing.T) {
3939
assert.NoError(t, PrepareTestDatabase())
4040
tt := []struct {
4141
orgid int64
42-
expected []bool
42+
expected map[int64]bool
4343
}{
44-
{3, []bool{true, false}},
45-
{6, []bool{true}},
46-
{7, []bool{true}},
47-
{25, []bool{true}},
44+
{3, map[int64]bool{2: true, 4: false}},
45+
{6, map[int64]bool{5: true}},
46+
{7, map[int64]bool{5: true}},
47+
{25, map[int64]bool{24: true}},
4848
}
4949
for _, v := range tt {
5050
t.Run(fmt.Sprintf("IsUserOrgOwnerOfOrdIg%d", v.orgid), func(t *testing.T) {
5151
testUserListIsUserOrgOwner(t, v.orgid, v.expected)
5252
})
5353
}
5454
}
55-
func testUserListIsUserOrgOwner(t *testing.T, orgID int64, expected []bool) {
55+
func testUserListIsUserOrgOwner(t *testing.T, orgID int64, expected map[int64]bool) {
5656
org, err := GetUserByID(orgID)
5757
assert.NoError(t, err)
5858
assert.NoError(t, org.GetMembers())
@@ -63,23 +63,23 @@ func TestUserListIsTwoFaEnrolled(t *testing.T) {
6363
assert.NoError(t, PrepareTestDatabase())
6464
tt := []struct {
6565
orgid int64
66-
expected []bool
66+
expected map[int64]bool
6767
}{
68-
{3, []bool{false, false}},
69-
{6, []bool{false}},
70-
{7, []bool{false}},
71-
{25, []bool{true}},
68+
{3, map[int64]bool{2: false, 4: false}},
69+
{6, map[int64]bool{5: false}},
70+
{7, map[int64]bool{5: false}},
71+
{25, map[int64]bool{24: true}},
7272
}
7373
for _, v := range tt {
7474
t.Run(fmt.Sprintf("IsTwoFaEnrolledOfOrdIg%d", v.orgid), func(t *testing.T) {
7575
testUserListIsTwoFaEnrolled(t, v.orgid, v.expected)
7676
})
7777
}
7878
}
79-
func testUserListIsTwoFaEnrolled(t *testing.T, orgID int64, expected []bool) {
79+
func testUserListIsTwoFaEnrolled(t *testing.T, orgID int64, expected map[int64]bool) {
8080
org, err := GetUserByID(orgID)
8181
assert.NoError(t, err)
8282
assert.NoError(t, org.GetMembers())
83-
assert.Equal(t, expected, org.Members.IsTwoFaEnrolled())
83+
assert.Equal(t, expected, org.Members.GetTwoFaStatus())
8484

8585
}

routers/org/members.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ func Members(ctx *context.Context) {
3232
ctx.Data["Members"] = org.Members
3333
ctx.Data["MembersIsPublicMember"] = org.MembersIsPublic
3434
ctx.Data["MembersIsUserOrgOwner"] = org.Members.IsUserOrgOwner(org.ID)
35-
ctx.Data["MembersIsTwoFaEnrolled"] = org.Members.IsTwoFaEnrolled()
35+
ctx.Data["MembersTwoFaStatus"] = org.Members.GetTwoFaStatus()
3636

3737
ctx.HTML(200, tplMembers)
3838
}

templates/org/member/members.tmpl

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
{{template "base/alert" .}}
66

77
<div class="list">
8-
{{ range $id, $member := .Members}}
8+
{{ range .Members}}
99
<div class="item ui grid">
1010
<div class="ui one wide column">
1111
<img class="ui avatar" src="{{.SizedRelAvatarLink 48}}">
@@ -34,15 +34,15 @@
3434
{{$.i18n.Tr "org.members.member_role"}}
3535
</div>
3636
<div class="meta">
37-
<strong>{{if index $.MembersIsUserOrgOwner $id}}<span class="octicon octicon-shield"></span> {{$.i18n.Tr "org.members.owner"}}{{else}}{{$.i18n.Tr "org.members.member"}}{{end}}</strong>
37+
<strong>{{if index $.MembersIsUserOrgOwner .ID}}<span class="octicon octicon-shield"></span> {{$.i18n.Tr "org.members.owner"}}{{else}}{{$.i18n.Tr "org.members.member"}}{{end}}</strong>
3838
</div>
3939
</div>
4040
<div class="ui one wide column center">
4141
<div class="meta">
4242
2FA
4343
</div>
4444
<div class="meta">
45-
<strong><span class="octicon {{if index $.MembersIsTwoFaEnrolled $id}}octicon-check text green{{else}}octicon-x{{end}}"></span></strong>
45+
<strong><span class="octicon {{if index $.MembersTwoFaStatus .ID}}octicon-check text green{{else}}octicon-x{{end}}"></span></strong>
4646
</div>
4747
</div>
4848
<div class="ui four wide column">

0 commit comments

Comments
 (0)