Browse Source

Fix #150

pull/160/head
Unknown 11 years ago
parent
commit
480a4ae8c5
  1. 27
      models/action.go
  2. 10
      models/repo.go
  3. 1
      models/user.go

27
models/action.go

@ -40,6 +40,7 @@ type Action struct {
RepoId int64 RepoId int64
RepoName string RepoName string
RefName string RefName string
IsPrivate bool `xorm:"not null"`
Content string `xorm:"TEXT"` Content string `xorm:"TEXT"`
Created time.Time `xorm:"created"` Created time.Time `xorm:"created"`
} }
@ -100,12 +101,11 @@ func CommitRepoAction(userId int64, userName, actEmail string,
return err return err
} }
if !repo.IsPrivate { if err = NotifyWatchers(&Action{ActUserId: userId, ActUserName: userName, ActEmail: actEmail,
if err = NotifyWatchers(&Action{ActUserId: userId, ActUserName: userName, ActEmail: actEmail, OpType: opType, Content: string(bs), RepoId: repoId, RepoName: repoName, RefName: refName,
OpType: opType, Content: string(bs), RepoId: repoId, RepoName: repoName, RefName: refName}); err != nil { IsPrivate: repo.IsPrivate}); err != nil {
log.Error("action.CommitRepoAction(notify watchers): %d/%s", userId, repoName) log.Error("action.CommitRepoAction(notify watchers): %d/%s", userId, repoName)
return err return err
}
} }
log.Trace("action.CommitRepoAction(end): %d/%s", userId, repoName) 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. // NewRepoAction adds new action for creating repository.
func NewRepoAction(user *User, repo *Repository) (err error) { 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, 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) log.Error("action.NewRepoAction(notify watchers): %d/%s", user.Id, repo.Name)
return err return err
} }
@ -130,12 +126,9 @@ func NewRepoAction(user *User, repo *Repository) (err error) {
// TransferRepoAction adds new action for transfering repository. // TransferRepoAction adds new action for transfering repository.
func TransferRepoAction(user, newUser *User, repo *Repository) (err error) { 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, 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) log.Error("action.TransferRepoAction(notify watchers): %d/%s", user.Id, repo.Name)
return err return err
} }
@ -149,7 +142,7 @@ func GetFeeds(userid, offset int64, isProfile bool) ([]Action, error) {
actions := make([]Action, 0, 20) actions := make([]Action, 0, 20)
sess := orm.Limit(20, int(offset)).Desc("id").Where("user_id=?", userid) sess := orm.Limit(20, int(offset)).Desc("id").Where("user_id=?", userid)
if isProfile { if isProfile {
sess.And("act_user_id=?", userid) sess.Where("is_private=?", false).And("act_user_id=?", userid)
} else { } else {
sess.And("act_user_id!=?", userid) sess.And("act_user_id!=?", userid)
} }

10
models/repo.go

@ -310,16 +310,14 @@ func CreateRepository(user *User, name, desc, lang, license string, private, mir
return nil, err 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 { if err = WatchRepo(user.Id, repo.Id, true); err != nil {
log.Error("repo.CreateRepository(WatchRepo): %v", err) 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. // No need for init for mirror.
if mirror { if mirror {
return repo, nil return repo, nil

1
models/user.go

@ -248,6 +248,7 @@ func ChangeUserName(user *User, newUserName string) (err error) {
} }
for j := range accesses { for j := range accesses {
accesses[j].UserName = newUserName
accesses[j].RepoName = newUserName + "/" + repos[i].LowerName accesses[j].RepoName = newUserName + "/" + repos[i].LowerName
if err = UpdateAccessWithSession(sess, &accesses[j]); err != nil { if err = UpdateAccessWithSession(sess, &accesses[j]); err != nil {
return err return err

Loading…
Cancel
Save