diff options
Diffstat (limited to 'routers/user/user.go')
-rw-r--r-- | routers/user/user.go | 183 |
1 files changed, 0 insertions, 183 deletions
diff --git a/routers/user/user.go b/routers/user/user.go index e5328173..bcb2e978 100644 --- a/routers/user/user.go +++ b/routers/user/user.go @@ -5,12 +5,9 @@ package user import ( - "fmt" "net/url" "strings" - "github.com/go-martini/martini" - "github.com/gogits/gogs/models" "github.com/gogits/gogs/modules/auth" "github.com/gogits/gogs/modules/base" @@ -19,75 +16,6 @@ import ( "github.com/gogits/gogs/modules/middleware" ) -func Dashboard(ctx *middleware.Context) { - ctx.Data["Title"] = "Dashboard" - ctx.Data["PageIsUserDashboard"] = true - repos, err := models.GetRepositories(&models.User{Id: ctx.User.Id}) - if err != nil { - ctx.Handle(500, "user.Dashboard", err) - return - } - ctx.Data["MyRepos"] = repos - - feeds, err := models.GetFeeds(ctx.User.Id, 0, false) - if err != nil { - ctx.Handle(500, "user.Dashboard", err) - return - } - ctx.Data["Feeds"] = feeds - ctx.HTML(200, "user/dashboard") -} - -func Profile(ctx *middleware.Context, params martini.Params) { - ctx.Data["Title"] = "Profile" - - // TODO: Need to check view self or others. - user, err := models.GetUserByName(params["username"]) - if err != nil { - ctx.Handle(500, "user.Profile", err) - return - } - - ctx.Data["Owner"] = user - - tab := ctx.Query("tab") - ctx.Data["TabName"] = tab - - switch tab { - case "activity": - feeds, err := models.GetFeeds(user.Id, 0, true) - if err != nil { - ctx.Handle(500, "user.Profile", err) - return - } - ctx.Data["Feeds"] = feeds - default: - repos, err := models.GetRepositories(user) - if err != nil { - ctx.Handle(500, "user.Profile", err) - return - } - ctx.Data["Repos"] = repos - } - - ctx.Data["PageIsUserProfile"] = true - ctx.HTML(200, "user/profile") -} - -func Email2User(ctx *middleware.Context) { - u, err := models.GetUserByEmail(ctx.Query("email")) - if err != nil { - if err == models.ErrUserNotExist { - ctx.Handle(404, "user.Email2User", err) - } else { - ctx.Handle(500, "user.Email2User(GetUserByEmail)", err) - } - return - } - - ctx.Redirect("/user/" + u.Name) -} - func SignIn(ctx *middleware.Context) { ctx.Data["Title"] = "Log In" @@ -329,117 +257,6 @@ func DeletePost(ctx *middleware.Context) { ctx.Redirect("/user/delete") } -const ( - TPL_FEED = `<i class="icon fa fa-%s"></i> - <div class="info"><span class="meta">%s</span><br>%s</div>` -) - -func Feeds(ctx *middleware.Context, form auth.FeedsForm) { - actions, err := models.GetFeeds(form.UserId, form.Page*20, false) - if err != nil { - ctx.JSON(500, err) - } - - feeds := make([]string, len(actions)) - for i := range actions { - feeds[i] = fmt.Sprintf(TPL_FEED, base.ActionIcon(actions[i].OpType), - base.TimeSince(actions[i].Created), base.ActionDesc(actions[i])) - } - ctx.JSON(200, &feeds) -} - -func Issues(ctx *middleware.Context) { - ctx.Data["Title"] = "Your Issues" - ctx.Data["ViewType"] = "all" - - page, _ := base.StrTo(ctx.Query("page")).Int() - repoId, _ := base.StrTo(ctx.Query("repoid")).Int64() - - ctx.Data["RepoId"] = repoId - - var posterId int64 = 0 - if ctx.Query("type") == "created_by" { - posterId = ctx.User.Id - ctx.Data["ViewType"] = "created_by" - } - - // Get all repositories. - repos, err := models.GetRepositories(ctx.User) - if err != nil { - ctx.Handle(200, "user.Issues(get repositories)", err) - return - } - - showRepos := make([]models.Repository, 0, len(repos)) - - isShowClosed := ctx.Query("state") == "closed" - var closedIssueCount, createdByCount, allIssueCount int - - // Get all issues. - allIssues := make([]models.Issue, 0, 5*len(repos)) - for i, repo := range repos { - issues, err := models.GetIssues(0, repo.Id, posterId, 0, page, isShowClosed, false, "", "") - if err != nil { - ctx.Handle(200, "user.Issues(get issues)", err) - return - } - - allIssueCount += repo.NumIssues - closedIssueCount += repo.NumClosedIssues - - // Set repository information to issues. - for j := range issues { - issues[j].Repo = &repos[i] - } - allIssues = append(allIssues, issues...) - - repos[i].NumOpenIssues = repo.NumIssues - repo.NumClosedIssues - if repos[i].NumOpenIssues > 0 { - showRepos = append(showRepos, repos[i]) - } - } - - showIssues := make([]models.Issue, 0, len(allIssues)) - ctx.Data["IsShowClosed"] = isShowClosed - - // Get posters and filter issues. - for i := range allIssues { - u, err := models.GetUserById(allIssues[i].PosterId) - if err != nil { - ctx.Handle(200, "user.Issues(get poster): %v", err) - return - } - allIssues[i].Poster = u - if u.Id == ctx.User.Id { - createdByCount++ - } - - if repoId > 0 && repoId != allIssues[i].Repo.Id { - continue - } - - if isShowClosed == allIssues[i].IsClosed { - showIssues = append(showIssues, allIssues[i]) - } - } - - ctx.Data["Repos"] = showRepos - ctx.Data["Issues"] = showIssues - ctx.Data["AllIssueCount"] = allIssueCount - ctx.Data["ClosedIssueCount"] = closedIssueCount - ctx.Data["OpenIssueCount"] = allIssueCount - closedIssueCount - ctx.Data["CreatedByCount"] = createdByCount - ctx.HTML(200, "issue/user") -} - -func Pulls(ctx *middleware.Context) { - ctx.HTML(200, "user/pulls") -} - -func Stars(ctx *middleware.Context) { - ctx.HTML(200, "user/stars") -} - func Activate(ctx *middleware.Context) { code := ctx.Query("code") if len(code) == 0 { |