]> source.dussan.org Git - gitea.git/commitdiff
IP: RC Code Review
authorUnknown <joe2010xtmf@163.com>
Thu, 27 Mar 2014 19:24:11 +0000 (15:24 -0400)
committerUnknown <joe2010xtmf@163.com>
Thu, 27 Mar 2014 19:24:11 +0000 (15:24 -0400)
README.md
README_ZH.md
conf/app.ini
gogs.go
models/issue.go
models/repo.go
templates/issue/list.tmpl
templates/issue/user.tmpl

index 9d1d7ef56995a19c1350798f8fc30133a9170298..7d688506d6d27afadca14b496fdbed350f743132 100644 (file)
--- a/README.md
+++ b/README.md
@@ -5,7 +5,7 @@ Gogs(Go Git Service) is a Self Hosted Git Service in the Go Programming Language
 
 ![Demo](http://gowalker.org/public/gogs_demo.gif)
 
-##### Current version: 0.1.8 Alpha
+##### Current version: 0.1.9 Alpha
 
 #### Other language version
 
index 9698ce4faa2b7dabc9db6b23f82b8d486d86cd6f..8e187c73648b28f22012955dfa6cf429c5881845 100644 (file)
@@ -5,7 +5,7 @@ Gogs(Go Git Service) 是一个由 Go 语言编写的自助 Git 托管服务。
 
 ![Demo](http://gowalker.org/public/gogs_demo.gif)
 
-##### 当前版本:0.1.8 Alpha
+##### 当前版本:0.1.9 Alpha
 
 ## 开发目的
 
index 1a96ebeab6d022339e5c63405b0f5ca016d008c0..d988b4acbc65a7ca7394248d23c5ca9e5d18a910 100644 (file)
@@ -32,6 +32,7 @@ PATH = data/gogs.db
 [admin]
 
 [security]
+INSTALL_LOCK = false
 ; Use HTTPS to clone repository, otherwise use HTTP.
 ENABLE_HTTPS_CLONE = false
 ; !!CHANGE THIS TO KEEP YOUR USER DATA SAFE!!
diff --git a/gogs.go b/gogs.go
index 57d9d62c67090b80fd603e907a6c5f63209d7d02..f2f408cccbb547e4b9d46c1c6c7707ae7f8582de 100644 (file)
--- a/gogs.go
+++ b/gogs.go
@@ -19,7 +19,7 @@ import (
 // Test that go1.2 tag above is included in builds. main.go refers to this definition.
 const go12tag = true
 
-const APP_VER = "0.1.8.0327 Alpha"
+const APP_VER = "0.1.9.0327 Alpha"
 
 func init() {
        base.AppVer = APP_VER
index 6b657b7b90dbc5173271c606bd06c0e3cabf7c14..b05667c3a8f36147d8a79cd5c6c78f542e8354c9 100644 (file)
@@ -37,12 +37,7 @@ type Issue struct {
 }
 
 // CreateIssue creates new issue for repository.
-func CreateIssue(userId, repoId, milestoneId, assigneeId int64, issueCount int, name, labels, content string, isPull bool) (*Issue, error) {
-       count, err := GetIssueCount(repoId)
-       if err != nil {
-               return nil, err
-       }
-
+func CreateIssue(userId, repoId, milestoneId, assigneeId int64, issueCount int, name, labels, content string, isPull bool) (issue *Issue, err error) {
        // TODO: find out mentions
        mentions := ""
 
@@ -50,8 +45,8 @@ func CreateIssue(userId, repoId, milestoneId, assigneeId int64, issueCount int,
        defer sess.Close()
        sess.Begin()
 
-       issue := &Issue{
-               Index:       count + 1,
+       issue = &Issue{
+               Index:       int64(issueCount) + 1,
                Name:        name,
                RepoId:      repoId,
                PosterId:    userId,
@@ -81,11 +76,6 @@ func CreateIssue(userId, repoId, milestoneId, assigneeId int64, issueCount int,
        return issue, nil
 }
 
-// GetIssueCount returns count of issues in the repository.
-func GetIssueCount(repoId int64) (int64, error) {
-       return orm.Count(&Issue{RepoId: repoId})
-}
-
 // GetIssueById returns issue object by given id.
 func GetIssueByIndex(repoId, index int64) (*Issue, error) {
        issue := &Issue{RepoId: repoId, Index: index}
@@ -148,16 +138,10 @@ func GetIssues(userId, repoId, posterId, milestoneId int64, page int, isClosed,
 
 // UpdateIssue updates information of issue.
 func UpdateIssue(issue *Issue) error {
-       _, err := orm.Update(issue, &Issue{RepoId: issue.RepoId, Index: issue.Index})
+       _, err := orm.Id(issue.Id).AllCols().Update(issue)
        return err
 }
 
-func CloseIssue() {
-}
-
-func ReopenIssue() {
-}
-
 // Label represents a list of labels of repository for issues.
 type Label struct {
        Id     int64
@@ -197,8 +181,7 @@ func CreateComment(userId, issueId, commitId, line int64, content string) error
        sess.Begin()
 
        if _, err := orm.Insert(&Comment{PosterId: userId, IssueId: issueId,
-               CommitId: commitId, Line: line, Content: content,
-       }); err != nil {
+               CommitId: commitId, Line: line, Content: content}); err != nil {
                sess.Rollback()
                return err
        }
index c8ffc851f96f0753b357a1819176903a6cc6446d..e6d4639b0247e754d289790aae04c3a9a519e1b2 100644 (file)
@@ -96,12 +96,11 @@ func IsRepositoryExist(user *User, repoName string) (bool, error) {
        has, err := orm.Where("lower_name = ?", strings.ToLower(repoName)).Get(&repo)
        if err != nil {
                return has, err
+       } else if !has {
+               return false, nil
        }
-       s, err := os.Stat(RepoPath(user.Name, repoName))
-       if err != nil {
-               return false, nil // Error simply means does not exist, but we don't want to show up.
-       }
-       return s.IsDir(), nil
+
+       return com.IsDir(RepoPath(user.Name, repoName)), nil
 }
 
 var (
@@ -224,16 +223,24 @@ func initRepoCommit(tmpPath string, sig *git.Signature) (err error) {
        if _, stderr, err = com.ExecCmdDir(tmpPath, "git", "add", "--all"); err != nil {
                return err
        }
-       log.Trace("stderr(1): %s", stderr)
+       if len(stderr) > 0 {
+               log.Trace("stderr(1): %s", stderr)
+       }
+
        if _, stderr, err = com.ExecCmdDir(tmpPath, "git", "commit", fmt.Sprintf("--author='%s <%s>'", sig.Name, sig.Email),
                "-m", "Init commit"); err != nil {
                return err
        }
-       log.Trace("stderr(2): %s", stderr)
+       if len(stderr) > 0 {
+               log.Trace("stderr(2): %s", stderr)
+       }
+
        if _, stderr, err = com.ExecCmdDir(tmpPath, "git", "push", "origin", "master"); err != nil {
                return err
        }
-       log.Trace("stderr(3): %s", stderr)
+       if len(stderr) > 0 {
+               log.Trace("stderr(3): %s", stderr)
+       }
        return nil
 }
 
@@ -243,10 +250,9 @@ func createHookUpdate(hookPath, content string) error {
                return err
        }
        defer pu.Close()
-       if _, err = pu.WriteString(content); err != nil {
-               return err
-       }
-       return nil
+
+       _, err = pu.WriteString(content)
+       return err
 }
 
 // InitRepository initializes README and .gitignore if needed.
@@ -322,10 +328,7 @@ func initRepository(f string, user *User, repo *Repository, initReadme bool, rep
        }
 
        // Apply changes and commit.
-       if err := initRepoCommit(tmpDir, user.NewGitSig()); err != nil {
-               return err
-       }
-       return nil
+       return initRepoCommit(tmpDir, user.NewGitSig())
 }
 
 // UserRepo reporesents a repository with user name.
index 401a53a3ed58fd23cb681007197ae3e7ec55a20b..b8947d9fc5dcc4021985f66c89264a82228d4ec9 100644 (file)
@@ -7,8 +7,9 @@
         <div class="col-md-3 filter-list">
             <ul class="list-unstyled">
                 <li><a href="#" class="active">All Issues <strong class="pull-right">{{.IssueCount}}</strong></a></li>
-                <!-- <li><a href="#">My Issues</a></li>
-                <li><a href="#">Mentioned</a></li> -->
+                <!-- <li><a href="#">Assigned to you</a></li> -->
+                <li><a href="#">Created by you</a></li>
+                <!-- <li><a href="#">Mentioned</a></li> -->
             </ul>
         </div>
         <div class="col-md-9">
index 2cf9571306f253e2be312b02f1e915e2274199ef..cf5e365dcffa88187afc6c0db07f55964134ed1a 100644 (file)
@@ -17,8 +17,9 @@
         <div class="col-md-3 filter-list">
             <ul class="list-unstyled">
                 <li><a href="#" class="active">In your repositories <strong class="pull-right">10</strong></a></li>
+                <!-- <li><a href="#">Assigned to you</a></li> -->
                 <li><a href="#">Created by you</a></li>
-                <li><a href="#">Assigned to you</a></li>
+                <!-- <li><a href="#">Assigned to you</a></li> -->
                 <li><hr/></li>
                 <li><a href="" class="sm">gogits/gogs <strong class="pull-right">12</strong></a></li>
                 <li><a href="" class="sm">gogits/session <strong class="pull-right">8</strong></a></li>
                 </div>
             </div>
             <div class="issues list-group">
-                <div class="list-group-item unread issue-item" id="issue-id">
-                    <span class="number pull-right">#123</span>
-                    <h5 class="title"><a href="#">Bug: When running tests after generating a beego app, templates do not load.</a></h5>
+                {{range .Issues}}
+                <div class="list-group-item issue-item" id="issue-{{.Id}}">
+                    <span class="number pull-right">#{{.Index}}</span>
+                    <h5 class="title"><a href="/{{$.RepositoryLink}}/issues/{{.Index}}">{{.Name}}</a></h5>
                     <p class="info">
-                        <span class="author"><img class="avatar" src="http://tp2.sinaimg.cn/5068084885/50/40050297589/1" alt="" width="20"/>
-                        <a href="#">Obama</a></span>
-                        <span class="time">3 days ago</span>
-                        <span class="comment"><i class="fa fa-comments"></i> 3</span>
-                    </p>
-                </div>
-                <div class="list-group-item issue-item" id="issue-id2">
-                    <span class="number pull-right">#123</span>
-                    <h5 class="title"><a href="#">Bug: When running tests after generating a beego app, templates do not load.</a></h5>
-                    <p class="info">
-                        <span class="author"><img class="avatar" src="http://tp2.sinaimg.cn/5068084885/50/40050297589/1" alt="" width="20"/>
-                        <a href="#">Obama</a></span>
-                        <span class="time">3 days ago</span>
-                        <span class="comment"><i class="fa fa-comments"></i> 3</span>
-                    </p>
-                </div>
-                <div class="list-group-item issue-item" id="issue-id3">
-                    <span class="number pull-right">#123</span>
-                    <h5 class="title"><a href="#">Bug: When running tests after generating a beego app, templates do not load.</a></h5>
-                    <p class="info">
-                        <span class="author"><img class="avatar" src="http://tp2.sinaimg.cn/5068084885/50/40050297589/1" alt="" width="20"/>
-                        <a href="#">Obama</a></span>
-                        <span class="time">3 days ago</span>
-                        <span class="comment"><i class="fa fa-comments"></i> 3</span>
+                        <span class="author"><img class="avatar" src="{{.Poster.AvatarLink}}" alt="" width="20"/>
+                        <a href="/user/{{.Poster.Name}}">{{.Poster.Name}}</a></span>
+                        <span class="time">{{TimeSince .Created}}</span>
+                        <span class="comment"><i class="fa fa-comments"></i> {{.NumComments}}</span>
                     </p>
                 </div>
+                {{end}}
             </div>
         </div>
     </div>