Browse Source

Fix #185

for-closed-social
Unknown 10 years ago
parent
commit
9100786beb
3 changed files with 22 additions and 10 deletions
  1. +8
    -0
      models/repo.go
  2. +4
    -4
      routers/repo/issue.go
  3. +10
    -6
      routers/user/home.go

+ 8
- 0
models/repo.go View File

@ -676,6 +676,14 @@ func DeleteRepository(userId, repoId int64, userName string) (err error) {
sess.Rollback()
return err
}
if _, err = sess.Delete(&Issue{RepoId: repoId}); err != nil {
sess.Rollback()
return err
}
if _, err = sess.Delete(&IssueUser{RepoId: repoId}); err != nil {
sess.Rollback()
return err
}
rawSql := "UPDATE `user` SET num_repos = num_repos - 1 WHERE id = ?"
if _, err = sess.Exec(rawSql, userId); err != nil {

+ 4
- 4
routers/repo/issue.go View File

@ -337,18 +337,18 @@ func UpdateAssignee(ctx *middleware.Context) {
return
}
idx, err := base.StrTo(ctx.Query("issue")).Int64()
issueId, err := base.StrTo(ctx.Query("issue")).Int64()
if err != nil {
ctx.Error(404)
return
}
issue, err := models.GetIssueByIndex(ctx.Repo.Repository.Id, idx)
issue, err := models.GetIssueById(issueId)
if err != nil {
if err == models.ErrIssueNotExist {
ctx.Handle(404, "issue.UpdateAssignee", err)
ctx.Handle(404, "issue.UpdateAssignee(GetIssueById)", err)
} else {
ctx.Handle(500, "issue.UpdateAssignee(GetIssueByIndex)", err)
ctx.Handle(500, "issue.UpdateAssignee(GetIssueById)", err)
}
return
}

+ 10
- 6
routers/user/home.go View File

@ -221,18 +221,23 @@ func Issues(ctx *middleware.Context) {
issues[i], err = models.GetIssueById(ius[i].IssueId)
if err != nil {
if err == models.ErrIssueNotExist {
log.Error("user.Issues(#%d): issue not exist", ius[i].IssueId)
log.Warn("user.Issues(GetIssueById #%d): issue not exist", ius[i].IssueId)
continue
} else {
ctx.Handle(500, "user.Issues(GetIssue)", err)
ctx.Handle(500, fmt.Sprintf("user.Issues(GetIssueById #%d)", ius[i].IssueId), err)
return
}
}
issues[i].Repo, err = models.GetRepositoryById(issues[i].RepoId)
if err != nil {
ctx.Handle(500, "user.Issues(GetRepositoryById)", err)
return
if err == models.ErrRepoNotExist {
log.Warn("user.Issues(GetRepositoryById #%d): repository not exist", issues[i].RepoId)
continue
} else {
ctx.Handle(500, fmt.Sprintf("user.Issues(GetRepositoryById #%d)", issues[i].RepoId), err)
return
}
}
if err = issues[i].Repo.GetOwner(); err != nil {
@ -240,8 +245,7 @@ func Issues(ctx *middleware.Context) {
return
}
issues[i].Poster, err = models.GetUserById(issues[i].PosterId)
if err != nil {
if err = issues[i].GetPoster(); err != nil {
ctx.Handle(500, "user.Issues(GetUserById)", err)
return
}

Loading…
Cancel
Save