Skip to content

Commit b4de9f6

Browse files
committed
增加激活用户功能
1 parent d4c0ea4 commit b4de9f6

File tree

3 files changed

+84
-32
lines changed

3 files changed

+84
-32
lines changed

actions/account.go

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -150,6 +150,39 @@ func (a *AccountCollections) Get() error {
150150
})
151151
}
152152

153+
// AccountActivate 激活用户
154+
type AccountActivate struct {
155+
RenderBase
156+
}
157+
158+
// Get /member/:username/activate
159+
func (a *AccountActivate) Get() error {
160+
if !a.User.IsSuperuser {
161+
return errors.New("没有该权限")
162+
}
163+
164+
username := a.Param("username")
165+
c := a.DB.C(models.USERS)
166+
user := models.User{}
167+
err := c.Find(bson.M{"username": username}).One(&user)
168+
169+
if err != nil {
170+
return errors.New("会员未找到")
171+
}
172+
173+
c.Update(bson.M{"username": username}, bson.M{"$set": bson.M{"isactive": true}})
174+
175+
var nexts = a.FormStrings("next")
176+
var next = fmt.Sprintf("/member/%s", username)
177+
if len(nexts) > 0 {
178+
next = nexts[0]
179+
}
180+
181+
a.Redirect(next)
182+
183+
return nil
184+
}
185+
153186
// AccountBlock 用户禁言
154187
type AccountBlock struct {
155188
RenderBase

routes.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ func SetRoutes(t *tango.Tango) {
2626
t.Get("/member/:username", new(actions.AccountIndex))
2727
t.Get("/member/:username/comments", new(actions.AccountComments))
2828
t.Get("/member/:username/collections", new(actions.AccountCollections))
29+
t.Get("/member/:username/activate", new(actions.AccountActivate))
2930
t.Get("/member/:username/block", new(actions.AccountBlock))
3031
t.Get("/members", new(actions.LatestUsers))
3132
t.Get("/members/all", new(actions.AllUsers))

templates/partials/member_info.html

Lines changed: 50 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
<div class="card member-info">
33
<div class="card-image">
44
<figure class="image">
5-
<img src="{{ $member.AvatarImgSrc 512 }}" style="height: auto;">
5+
<img src="{{ $member.AvatarImgSrc 512 }}" style="height: auto;" />
66
</figure>
77
</div>
88
<div class="card-content">
@@ -14,51 +14,69 @@
1414
</div>
1515

1616
<div class="content">
17-
第 {{ .member.Index }} 号会员 / <time datetime="{{ .member.JoinedAt }}">{{ .member.JoinedAt.Format "2006-01-02" }}</time>
17+
第 {{ .member.Index }} 号会员 /
18+
<time datetime="{{ .member.JoinedAt }}"
19+
>{{ .member.JoinedAt.Format "2006-01-02" }}</time
20+
>
1821
<ul>
1922
{{ if .member.Location }}
20-
<li>
21-
<span class="icon"><i class="fas fa-map-marker"></i></span>
22-
<a href="/members/city/{{ .member.Location }}">{{ .member.Location }}</a>
23-
</li>
24-
{{ end}}
25-
{{ if .member.Website }}
23+
<li>
24+
<span class="icon"><i class="fas fa-map-marker"></i></span>
25+
<a href="/members/city/{{ .member.Location }}"
26+
>{{ .member.Location }}</a
27+
>
28+
</li>
29+
{{ end}} {{ if .member.Website }}
2630
<li>
2731
<span class="icon"><i class="fas fa-globe"></i></span>
28-
<a href="{{url .member.Website }}" target="_blank">{{ .member.Website }}</a>
32+
<a href="{{url .member.Website }}" target="_blank"
33+
>{{ .member.Website }}</a
34+
>
2935
</li>
30-
{{ end}}
31-
{{ if .member.Weibo }}
36+
{{ end}} {{ if .member.Weibo }}
3237
<li>
3338
<span class="icon"><i class="fab fa-weibo"></i></span>
34-
<a href="http://weibo.com/{{ .member.Weibo }}" target="_blank">http://weibo.com/{{ .member.Weibo }}</a>
39+
<a href="http://weibo.com/{{ .member.Weibo }}" target="_blank"
40+
>http://weibo.com/{{ .member.Weibo }}</a
41+
>
3542
</li>
36-
{{ end}}
37-
{{ if .member.GitHubUsername }}
43+
{{ end}} {{ if .member.GitHubUsername }}
3844
<li>
3945
<span class="icon"><i class="fab fa-github"></i></span>
40-
<a href="https://github.com/{{ .member.GitHubUsername }}" target="_blank">https://github.com/{{ .member.GitHubUsername }}</a>
46+
<a
47+
href="https://github.com/{{ .member.GitHubUsername }}"
48+
target="_blank"
49+
>https://github.com/{{ .member.GitHubUsername }}</a
50+
>
4151
</li>
4252
{{ end }}
4353
</ul>
4454
</div>
4555
</div>
4656

47-
{{ if .user }}
48-
{{ if eq .member.Username .user.Username }}
49-
<footer class="card-footer">
50-
<a href="/user_center" class="card-footer-item">编辑</a>
51-
</footer>
52-
{{ end }}
53-
54-
{{ if .user.IsSuperuser }}
55-
<footer class="card-footer">
56-
{{ if .member.IsBlocked }}
57-
<span class="card-footer-item">已禁言</span>
58-
{{ else }}
59-
<a href="/member/{{ .member.Username }}/block?next={{ .url }}" class="card-footer-item">禁言</a>
60-
{{ end }}
61-
</footer>
57+
{{ if .user }} {{ if eq .member.Username .user.Username }}
58+
<footer class="card-footer">
59+
<a href="/user_center" class="card-footer-item">编辑</a>
60+
</footer>
61+
{{ end }} {{ if .user.IsSuperuser }}
62+
<footer class="card-footer">
63+
{{ if .member.IsActive }}
64+
<span class="card-footer-item">已激活</span>
65+
{{ else }}
66+
<a
67+
href="/member/{{ .member.Username }}/activate?next={{ .url }}"
68+
class="card-footer-item"
69+
>激活</a
70+
>
71+
{{ end }} {{ if .member.IsBlocked }}
72+
<span class="card-footer-item">已禁言</span>
73+
{{ else }}
74+
<a
75+
href="/member/{{ .member.Username }}/block?next={{ .url }}"
76+
class="card-footer-item"
77+
>禁言</a
78+
>
6279
{{ end }}
63-
{{ end }}
64-
</div>
80+
</footer>
81+
{{ end }} {{ end }}
82+
</div>

0 commit comments

Comments
 (0)