Browse Source

Fixing bug

Unknown 11 years ago
parent
commit
932f717adb
5 changed files with 20 additions and 7 deletions
  1. 10 0
      models/action.go
  2. 7 2
      models/repo.go
  3. 1 3
      models/user.go
  4. 1 1
      modules/middleware/repo.go
  5. 1 1
      serve.go

+ 10 - 0
models/action.go

@@ -79,6 +79,16 @@ func CommitRepoAction(userId int64, userName string,
 		})
 		return err
 	}
+
+	// Update repository last update time.
+	repo, err := GetRepositoryByName(userId, repoName)
+	if err != nil {
+		return err
+	}
+	repo.Updated = time.Now()
+	if err = UpdateRepository(repo); err != nil {
+		return err
+	}
 	return nil
 }
 

+ 7 - 2
models/repo.go

@@ -358,6 +358,11 @@ func RepoPath(userName, repoName string) string {
 	return filepath.Join(UserPath(userName), repoName+".git")
 }
 
+func UpdateRepository(repo *Repository) error {
+	_, err := orm.Id(repo.Id).UseBool().Update(repo)
+	return err
+}
+
 // DeleteRepository deletes a repository for a user or orgnaztion.
 func DeleteRepository(userId, repoId int64, userName string) (err error) {
 	repo := &Repository{Id: repoId, OwnerId: userId}
@@ -402,9 +407,9 @@ func DeleteRepository(userId, repoId int64, userName string) (err error) {
 }
 
 // GetRepositoryByName returns the repository by given name under user if exists.
-func GetRepositoryByName(user *User, repoName string) (*Repository, error) {
+func GetRepositoryByName(userId int64, repoName string) (*Repository, error) {
 	repo := &Repository{
-		OwnerId:   user.Id,
+		OwnerId:   userId,
 		LowerName: strings.ToLower(repoName),
 	}
 	has, err := orm.Get(repo)

+ 1 - 3
models/user.go

@@ -279,9 +279,7 @@ func GetUserByName(name string) (*User, error) {
 	if len(name) == 0 {
 		return nil, ErrUserNotExist
 	}
-	user := &User{
-		LowerName: strings.ToLower(name),
-	}
+	user := &User{LowerName: strings.ToLower(name)}
 	has, err := orm.Get(user)
 	if err != nil {
 		return nil, err

+ 1 - 1
modules/middleware/repo.go

@@ -54,7 +54,7 @@ func RepoAssignment(redirect bool) martini.Handler {
 		ctx.Repo.Owner = user
 
 		// get repository
-		repo, err := models.GetRepositoryByName(user, params["reponame"])
+		repo, err := models.GetRepositoryByName(user.Id, params["reponame"])
 		if err != nil {
 			if redirect {
 				ctx.Redirect("/")

+ 1 - 1
serve.go

@@ -86,7 +86,7 @@ func runServ(*cli.Context) {
 
 	os.Setenv("userName", user.Name)
 	os.Setenv("userId", strconv.Itoa(int(user.Id)))
-	repo, err := models.GetRepositoryByName(user, repoName)
+	repo, err := models.GetRepositoryByName(user.Id, repoName)
 	if err != nil {
 		println("Unavilable repository", err)
 		return