@@ -9,77 +9,101 @@ import (
99
1010type UserController struct {
1111 BaseController
12+ UcenterMember models.Member
1213}
1314
1415func (this * UserController ) Prepare () {
1516 this .BaseController .Prepare ()
17+ username := this .GetString (":username" )
18+ this .UcenterMember , _ = new (models.Member ).GetByUsername (username )
19+ if this .UcenterMember .MemberId == 0 {
20+ this .Abort ("404" )
21+ return
22+ }
23+
24+ this .Data ["IsSelf" ] = this .UcenterMember .MemberId == this .Member .MemberId
25+ this .Data ["User" ] = this .UcenterMember
1626 this .Data ["Tab" ] = "share"
1727}
1828
1929//首页
2030func (this * UserController ) Index () {
21- username := this .GetString (":username" )
22- member , _ := new (models.Member ).GetByUsername (username )
31+
2332 page , _ := this .GetInt ("page" )
2433 pageSize := 10
2534 if page < 1 {
2635 page = 1
2736 }
28-
29- if member .MemberId == 0 {
30- this .Abort ("404" )
31- return
32- }
33- books , totalCount , _ := models .NewBook ().FindToPager (page , pageSize , member .MemberId , 0 )
37+ books , totalCount , _ := models .NewBook ().FindToPager (page , pageSize , this .UcenterMember .MemberId , 0 )
3438 this .Data ["Books" ] = books
3539
3640 if totalCount > 0 {
37- html := utils .NewPaginations (conf .RollPage , totalCount , pageSize , page , beego .URLFor ("UserController.Index" , ":username" , member .Account ), "" )
41+ html := utils .NewPaginations (conf .RollPage , totalCount , pageSize , page , beego .URLFor ("UserController.Index" , ":username" , this . UcenterMember .Account ), "" )
3842 this .Data ["PageHtml" ] = html
3943 } else {
4044 this .Data ["PageHtml" ] = ""
4145 }
4246 this .Data ["Total" ] = totalCount
43- this . Data [ "User" ] = member
47+
4448 this .TplName = "user/index.html"
4549}
4650
4751//收藏
4852func (this * UserController ) Collection () {
49- username := this .GetString (":username" )
50- member , _ := new (models.Member ).GetByUsername (username )
5153 page , _ := this .GetInt ("page" )
5254 pageSize := 10
5355 if page < 1 {
5456 page = 1
5557 }
5658
57- if member .MemberId == 0 {
58- this .Abort ("404" )
59- return
60- }
61-
62- totalCount , books , _ := new (models.Star ).List (member .MemberId , page , pageSize )
59+ totalCount , books , _ := new (models.Star ).List (this .UcenterMember .MemberId , page , pageSize )
6360 this .Data ["Books" ] = books
6461
6562 if totalCount > 0 {
66- html := utils .NewPaginations (conf .RollPage , int (totalCount ), pageSize , page , beego .URLFor ("UserController.Collection" , ":username" , member .Account ), "" )
63+ html := utils .NewPaginations (conf .RollPage , int (totalCount ), pageSize , page , beego .URLFor ("UserController.Collection" , ":username" , this . UcenterMember .Account ), "" )
6764 this .Data ["PageHtml" ] = html
6865 } else {
6966 this .Data ["PageHtml" ] = ""
7067 }
7168 this .Data ["Total" ] = totalCount
72- this .Data ["User" ] = member
7369 this .Data ["Tab" ] = "collection"
7470 this .TplName = "user/collection.html"
7571}
7672
77- //粉丝和关注
73+ //关注
7874func (this * UserController ) Follow () {
79-
75+ page , _ := this .GetInt ("page" )
76+ pageSize := 18
77+ if page < 1 {
78+ page = 1
79+ }
80+ fans , totalCount , _ := new (models.Fans ).GetFollowList (this .UcenterMember .MemberId , page , pageSize )
81+ if totalCount > 0 {
82+ html := utils .NewPaginations (conf .RollPage , int (totalCount ), pageSize , page , beego .URLFor ("UserController.Follow" , ":username" , this .UcenterMember .Account ), "" )
83+ this .Data ["PageHtml" ] = html
84+ } else {
85+ this .Data ["PageHtml" ] = ""
86+ }
87+ this .Data ["Fans" ] = fans
88+ this .Data ["Tab" ] = "follow"
89+ this .TplName = "user/fans.html"
8090}
8191
8292//粉丝和关注
8393func (this * UserController ) Fans () {
84-
94+ page , _ := this .GetInt ("page" )
95+ pageSize := 18
96+ if page < 1 {
97+ page = 1
98+ }
99+ fans , totalCount , _ := new (models.Fans ).GetFansList (this .UcenterMember .MemberId , page , pageSize )
100+ if totalCount > 0 {
101+ html := utils .NewPaginations (conf .RollPage , int (totalCount ), pageSize , page , beego .URLFor ("UserController.Fans" , ":username" , this .UcenterMember .Account ), "" )
102+ this .Data ["PageHtml" ] = html
103+ } else {
104+ this .Data ["PageHtml" ] = ""
105+ }
106+ this .Data ["Fans" ] = fans
107+ this .Data ["Tab" ] = "fans"
108+ this .TplName = "user/fans.html"
85109}
0 commit comments