浏览代码

Merge branch 'master' of github.com:gogits/gogs

Unknown 11 年之前
父节点
当前提交
18ba149137

+ 1 - 1
public/css/gogs.css

@@ -269,7 +269,7 @@ body {
 
 /* gogits user setting */
 
-#gogs-user-setting-nav > h4, #gogs-user-setting-container > h4, #gogs-ssh-keys > h4, #gogs-user-delete > h4 {
+#gogs-user-setting-nav > h4, #gogs-user-setting-container > h4, #gogs-ssh-keys > h4, #gogs-user-delete > h4 ,#gogs-repo-setting-container .tab-pane > h4{
     padding-bottom: 18px;
     margin-bottom: 18px;
     border-bottom: 1px solid #CCC;

+ 3 - 3
public/js/app.js

@@ -41,9 +41,8 @@ var Gogits = {
         });
     };
     Gogits.initTabs = function () {
-        var $tabs = $('[data-toggle=tab]');
-        $tabs.tab("show");
-        $tabs.find("li:eq(" + index + ") a").tab("show");
+        var $tabs = $('[data-init=tabs]');
+        $tabs.find("li:eq(0) a").tab("show");
     }
 })(jQuery);
 
@@ -69,6 +68,7 @@ var Gogits = {
 
 function initCore() {
     Gogits.initTooltips();
+    Gogits.initTabs();
     Gogits.initModals();
 }
 

+ 11 - 0
routers/repo/single.go

@@ -28,3 +28,14 @@ func Single(params martini.Params, r render.Render, data base.TmplData) {
 
 	r.HTML(200, "repo/single", data)
 }
+
+func Setting(r render.Render, data base.TmplData) {
+	if !data["IsRepositoryValid"].(bool) {
+		return
+	}
+
+	data["Title"] = data["Title"].(string) + " - settings"
+	data["IsRepoToolbarSetting"] = true
+
+	r.HTML(200, "repo/setting", data)
+}

+ 31 - 0
templates/repo/nav.tmpl

@@ -0,0 +1,31 @@
+<div id="gogs-body-nav" class="gogs-repo-nav">
+    <div class="container">
+        <div class="gogs-repo-btns pull-right">
+            <div class="btn-group" id="gogs-repo-watching">
+                <button type="button" class="btn btn-default"><i class="fa fa-eye"></i>Watch {x}</button>
+                <button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown">
+                    <span class="caret"></span>
+                    <span class="sr-only">Toggle Dropdown</span>
+                </button>
+                <div class="dropdown-menu" role="menu">
+                    <div class="dropdown-item" data-val="not-watching">
+                        <h4 role="presentation" class="dropdown-header">Not Watching</h4>
+                        <p class="description">You only receive notifications for conversations in which you participate or are @mentioned.</p>
+                        <p class="divider"></p>
+                    </div>
+                    <div class="dropdown-item" data-val="watching">
+                        <h4 role="presentation" class="dropdown-header">Watching</h4>
+                        <p class="description">You receive notifications for all conversations in this repository.</p>
+                    </div>
+                </div>
+            </div>
+            <div class="btn-group">
+                <button type="button" class="btn btn-default"><i class="fa fa-star"></i>Star&nbsp;&nbsp;{{.Repository.NumStars}}</button>
+            </div>
+            <div class="btn-group">
+                <button type="button" class="btn btn-default"><i class="fa fa-code-fork"></i>Fork&nbsp;&nbsp;{{.Repository.NumForks}}</button>
+            </div>
+        </div>
+        <h3><i class="fa fa-book fa-lg"></i><a href="/{{.Owner.Name}}/">{{.Owner.Name}}</a> / {{.Repository.Name}}</h3>
+    </div>
+</div>

+ 33 - 0
templates/repo/setting.tmpl

@@ -0,0 +1,33 @@
+{{template "base/head" .}}
+{{template "base/navbar" .}}
+{{template "repo/nav" .}}
+{{template "repo/toolbar" .}}
+<div id="gogs-body" class="container">
+    <div id="gogs-user-setting-nav" class="col-md-3">
+        <h4>Repository Settings</h4>
+        <ul class="list-group" data-init="tabs">
+            <li class="list-group-item"><a href="#options" data-toggle="tab">Options</a></li>
+            <!--<li class="list-group-item" data-toggle="tab"><a href="#">Collaborators</a></li>
+            <li class="list-group-item" data-toggle="tab"><a href="#">Notifications</a></li>-->
+            <li class="list-group-item"><a href="#delete" data-toggle="tab">Delete</a></li>
+        </ul>
+    </div>
+    <div id="gogs-repo-setting-container" class="col-md-9 tab-content">
+        <div id="options" class="tab-pane">
+            repo-options
+        </div>
+        <div id="delete" class="tab-pane">
+            <h4>Delete Repository</h4>
+            <p class="alert alert-warning">Unexpected bad things will happen if you don't read this!</p>
+            <p>This action <strong>CANNOT</strong> be undone. This will delete the repository, wiki, issues, and comments permanently. </p>
+
+            <form action="/repo/delete" method="post">
+                <input type="hidden" name="reponame" value="{{.Repository.Name}}"/>
+                <input type="hidden" name="username" value="{{.Owner.Name}}"/>
+                <hr/>
+                <button class="btn btn-danger btn-lg">I understand the consequences, delete this repository</button>
+            </form>
+        </div>
+    </div>
+</div>
+{{template "base/footer" .}}

+ 1 - 31
templates/repo/single.tmpl

@@ -1,36 +1,6 @@
 {{template "base/head" .}}
 {{template "base/navbar" .}}
-<div id="gogs-body-nav" class="gogs-repo-nav">
-    <div class="container">
-        <div class="gogs-repo-btns pull-right">
-            <div class="btn-group" id="gogs-repo-watching">
-                <button type="button" class="btn btn-default"><i class="fa fa-eye"></i>Watch {x}</button>
-                <button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown">
-                    <span class="caret"></span>
-                    <span class="sr-only">Toggle Dropdown</span>
-                </button>
-                <div class="dropdown-menu" role="menu">
-                    <div class="dropdown-item" data-val="not-watching">
-                        <h4 role="presentation" class="dropdown-header">Not Watching</h4>
-                        <p class="description">You only receive notifications for conversations in which you participate or are @mentioned.</p>
-                        <p class="divider"></p>
-                    </div>
-                    <div class="dropdown-item" data-val="watching">
-                        <h4 role="presentation" class="dropdown-header">Watching</h4>
-                        <p class="description">You receive notifications for all conversations in this repository.</p>
-                    </div>
-                </div>
-            </div>
-            <div class="btn-group">
-                <button type="button" class="btn btn-default"><i class="fa fa-star"></i>Star&nbsp;&nbsp;{{.Repository.NumStars}}</button>
-            </div>
-            <div class="btn-group">
-                <button type="button" class="btn btn-default"><i class="fa fa-code-fork"></i>Fork&nbsp;&nbsp;{{.Repository.NumForks}}</button>
-            </div>
-        </div>
-        <h3><i class="fa fa-book fa-lg"></i><a href="/{{.Owner.Name}}/">{{.Owner.Name}}</a> / {{.Repository.Name}}</h3>
-    </div>
-</div>
+{{template "repo/nav" .}}
 {{template "repo/toolbar" .}}
 <div id="gogs-body" class="container">
     <h4>Source Files:</h4>

+ 2 - 2
templates/repo/toolbar.tmpl

@@ -11,7 +11,7 @@
                                 <li><a href="#">develop</a></li>
                             </ul>
                         </li>
-                        <li class="{{if .IsRepoToolbarSource}}active{{end}}"><a href="#">Source</a></li>
+                        <li class="{{if .IsRepoToolbarSource}}active{{end}}"><a href="/{{.RepositoryLink}}">Source</a></li>
                         <li><a href="#">Commits</a></li>
                         <li><a href="#">Issues <span class="badge">42</span></a></li>
                         <li><a href="#">Pull Requests</a></li>
@@ -32,7 +32,7 @@
                                 <li><a href="#">Network</a></li>
                             </ul>
                         </li>{{if .IsRepositoryOwner}}
-                        <li class="{{if .IsRepoToolbarSetting}}active{{end}}"><a href="/{{.RepositoryLink}}/settings/">Settings</a></li>{{end}}
+                        <li class="{{if .IsRepoToolbarSetting}}active{{end}}"><a href="/{{.RepositoryLink}}/settings">Settings</a></li>{{end}}
                     </ul>
                 </div>
             </div>

+ 1 - 1
templates/user/dashboard.tmpl

@@ -22,7 +22,7 @@
             </div>
             <div class="panel-body">
                 <ul class="list-group">{{range .MyRepos}}
-                    <li class="list-group-item"><i class="fa fa-book"></i><a href="/{{$.SignedUserName}}/{{.Name}}/">{{.Name}}</a>
+                    <li class="list-group-item"><i class="fa fa-book"></i><a href="/{{$.SignedUserName}}/{{.Name}}">{{.Name}}</a>
                         <span class="stars pull-right"><i class="fa fa-star"></i>{{.NumStars}}</span>
                     </li>{{end}}
                 </ul>

+ 1 - 6
templates/user/profile.tmpl

@@ -18,7 +18,7 @@
         </div>
     </div>
     <div id="gogs-user-activity" class="col-md-9">
-        <ul class="nav nav-tabs" id="gogs-user-act-tabs">
+        <ul class="nav nav-tabs" id="gogs-user-act-tabs" data-init="tabs">
             <li class="active"><a href="#repo" data-toggle="tab"><i class="fa fa-gittip"></i>Repositories</a></li>
             <li><a href="#activity" data-toggle="tab"><i class="fa fa-rss"></i>Activity</a></li>
         </ul>
@@ -28,9 +28,4 @@
         </div>
     </div>
 </div>
-<script>
-    $(function () {
-        Gogits.showTab("#gogs-user-act-tabs");
-    });
-</script>
 {{template "base/footer" .}}

+ 2 - 0
web.go

@@ -71,6 +71,8 @@ func runWeb(*cli.Context) {
 	m.Any("/repo/create", auth.SignInRequire(true), binding.BindIgnErr(auth.CreateRepoForm{}), repo.Create)
 	m.Any("/repo/delete", auth.SignInRequire(true), repo.Delete)
 	m.Any("/repo/list", auth.SignInRequire(false), repo.List)
+
+	m.Get("/:username/:reponame/settings", auth.SignInRequire(false), auth.RepoAssignment(true), repo.Setting)
 	m.Get("/:username/:reponame", auth.SignInRequire(false), auth.RepoAssignment(true), repo.Single)
 
 	//m.Get("/:username/:reponame", repo.Repo)