| 
						
						
							
								
							
						
						
					 | 
					 | 
					@ -178,6 +178,10 @@ func (repo *Repository) GetPath() string { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        return RepoPath(repo.Owner.Name, repo.Name) | 
					 | 
					 | 
					 | 
					        return RepoPath(repo.Owner.Name, repo.Name) | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					} | 
					 | 
					 | 
					 | 
					} | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					func (repo *Repository) IsOwnedBy(u *User) bool { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					        return repo.OwnerId == u.Id | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					} | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// DescriptionHtml does special handles to description and return HTML string.
 | 
					 | 
					 | 
					 | 
					// DescriptionHtml does special handles to description and return HTML string.
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					func (repo *Repository) DescriptionHtml() template.HTML { | 
					 | 
					 | 
					 | 
					func (repo *Repository) DescriptionHtml() template.HTML { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						sanitize := func(s string) string { | 
					 | 
					 | 
					 | 
						sanitize := func(s string) string { | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
					 | 
					@ -933,6 +937,13 @@ func DeleteRepository(uid, repoId int64, userName string) error { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
							return err | 
					 | 
					 | 
					 | 
							return err | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						} | 
					 | 
					 | 
					 | 
						} | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						
 | 
					 | 
					 | 
					 | 
						
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
						if repo.IsFork { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					                if _, err = sess.Exec("UPDATE `repository` SET num_forks = num_forks - 1 WHERE id = ?", repo.ForkId); err != nil { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					                    sess.Rollback() | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					                    return err | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					                } | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
						} | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						if _, err = sess.Exec("UPDATE `user` SET num_repos = num_repos - 1 WHERE id = ?", uid); err != nil { | 
					 | 
					 | 
					 | 
						if _, err = sess.Exec("UPDATE `user` SET num_repos = num_repos - 1 WHERE id = ?", uid); err != nil { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
							sess.Rollback() | 
					 | 
					 | 
					 | 
							sess.Rollback() | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
							return err | 
					 | 
					 | 
					 | 
							return err | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
					 | 
					@ -1249,6 +1260,8 @@ func ForkRepository(u *User, oldRepo *Repository) (*Repository, error) { | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            LowerName:   oldRepo.LowerName, | 
					 | 
					 | 
					 | 
					            LowerName:   oldRepo.LowerName, | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            Description: oldRepo.Description, | 
					 | 
					 | 
					 | 
					            Description: oldRepo.Description, | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            IsPrivate:   oldRepo.IsPrivate, | 
					 | 
					 | 
					 | 
					            IsPrivate:   oldRepo.IsPrivate, | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					            IsFork:      true, | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					            ForkId:      oldRepo.Id, | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        } | 
					 | 
					 | 
					 | 
					        } | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    
 | 
					 | 
					 | 
					 | 
					    
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        if _, err = sess.Insert(repo); err != nil { | 
					 | 
					 | 
					 | 
					        if _, err = sess.Insert(repo); err != nil { | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
					 | 
					
  |