More changes

This commit is contained in:
evolvedlight 2014-10-13 20:23:30 +01:00
parent 211dc74816
commit 29ac3980ff
2 changed files with 15 additions and 1 deletions

View file

@ -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 {

View file

@ -45,12 +45,13 @@
</a> </a>
</li> </li>
<li id="repo-header-fork"> <li id="repo-header-fork">
<a id="repo-header-fork-btn" href="{{.RepoLink}}/action/fork"> <a id="repo-header-fork-btn" {{if not .IsRepositoryOwner}} href="{{.RepoLink}}/action/fork"{{end}}>
<button class="btn btn-gray text-bold btn-radius"> <button class="btn btn-gray text-bold btn-radius">
<i class="octicon octicon-repo-forked"></i>{{.i18n.Tr "repo.fork"}} <i class="octicon octicon-repo-forked"></i>{{.i18n.Tr "repo.fork"}}
<span class="num">{{.Repository.NumForks}}</span> <span class="num">{{.Repository.NumForks}}</span>
</button> </button>
</a> </a>
</li> </li>
</ul> </ul>
</div> </div>