diff --git a/models/action.go b/models/action.go index 77576a99..2fc81734 100644 --- a/models/action.go +++ b/models/action.go @@ -40,6 +40,7 @@ type Action struct { RepoId int64 RepoName string RefName string + IsPrivate bool `xorm:"not null"` Content string `xorm:"TEXT"` Created time.Time `xorm:"created"` } @@ -100,12 +101,11 @@ func CommitRepoAction(userId int64, userName, actEmail string, return err } - if !repo.IsPrivate { - if err = NotifyWatchers(&Action{ActUserId: userId, ActUserName: userName, ActEmail: actEmail, - OpType: opType, Content: string(bs), RepoId: repoId, RepoName: repoName, RefName: refName}); err != nil { - log.Error("action.CommitRepoAction(notify watchers): %d/%s", userId, repoName) - return err - } + if err = NotifyWatchers(&Action{ActUserId: userId, ActUserName: userName, ActEmail: actEmail, + OpType: opType, Content: string(bs), RepoId: repoId, RepoName: repoName, RefName: refName, + IsPrivate: repo.IsPrivate}); err != nil { + log.Error("action.CommitRepoAction(notify watchers): %d/%s", userId, repoName) + return err } log.Trace("action.CommitRepoAction(end): %d/%s", userId, repoName) @@ -114,12 +114,8 @@ func CommitRepoAction(userId int64, userName, actEmail string, // NewRepoAction adds new action for creating repository. func NewRepoAction(user *User, repo *Repository) (err error) { - if repo.IsPrivate { - return nil - } - if err = NotifyWatchers(&Action{ActUserId: user.Id, ActUserName: user.Name, ActEmail: user.Email, - OpType: OP_CREATE_REPO, RepoId: repo.Id, RepoName: repo.Name}); err != nil { + OpType: OP_CREATE_REPO, RepoId: repo.Id, RepoName: repo.Name, IsPrivate: repo.IsPrivate}); err != nil { log.Error("action.NewRepoAction(notify watchers): %d/%s", user.Id, repo.Name) return err } @@ -130,12 +126,9 @@ func NewRepoAction(user *User, repo *Repository) (err error) { // TransferRepoAction adds new action for transfering repository. func TransferRepoAction(user, newUser *User, repo *Repository) (err error) { - if repo.IsPrivate { - return nil - } - if err = NotifyWatchers(&Action{ActUserId: user.Id, ActUserName: user.Name, ActEmail: user.Email, - OpType: OP_TRANSFER_REPO, RepoId: repo.Id, RepoName: repo.Name, Content: newUser.Name}); err != nil { + OpType: OP_TRANSFER_REPO, RepoId: repo.Id, RepoName: repo.Name, Content: newUser.Name, + IsPrivate: repo.IsPrivate}); err != nil { log.Error("action.TransferRepoAction(notify watchers): %d/%s", user.Id, repo.Name) return err } @@ -149,7 +142,7 @@ func GetFeeds(userid, offset int64, isProfile bool) ([]Action, error) { actions := make([]Action, 0, 20) sess := orm.Limit(20, int(offset)).Desc("id").Where("user_id=?", userid) if isProfile { - sess.And("act_user_id=?", userid) + sess.Where("is_private=?", false).And("act_user_id=?", userid) } else { sess.And("act_user_id!=?", userid) } diff --git a/models/repo.go b/models/repo.go index 5f66bca8..5e193787 100644 --- a/models/repo.go +++ b/models/repo.go @@ -310,16 +310,14 @@ func CreateRepository(user *User, name, desc, lang, license string, private, mir return nil, err } - if !repo.IsPrivate { - if err = NewRepoAction(user, repo); err != nil { - log.Error("repo.CreateRepository(NewRepoAction): %v", err) - } - } - if err = WatchRepo(user.Id, repo.Id, true); err != nil { log.Error("repo.CreateRepository(WatchRepo): %v", err) } + if err = NewRepoAction(user, repo); err != nil { + log.Error("repo.CreateRepository(NewRepoAction): %v", err) + } + // No need for init for mirror. if mirror { return repo, nil diff --git a/models/user.go b/models/user.go index 42b3ebe6..22334c84 100644 --- a/models/user.go +++ b/models/user.go @@ -248,6 +248,7 @@ func ChangeUserName(user *User, newUserName string) (err error) { } for j := range accesses { + accesses[j].UserName = newUserName accesses[j].RepoName = newUserName + "/" + repos[i].LowerName if err = UpdateAccessWithSession(sess, &accesses[j]); err != nil { return err