aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUnknown <joe2010xtmf@163.com>2014-03-25 06:54:22 -0400
committerUnknown <joe2010xtmf@163.com>2014-03-25 06:54:22 -0400
commite95be2cb3e1e320ecd86f0743acaeeb76f50e3e5 (patch)
tree746b1ab1ab5626fb20ddd04121c29a951a6f84b3
parenteeb793524f2da4afdca017b585d9cfb6e9628e85 (diff)
parent94ac5ebb9f100c77da02b56961119a25cd9e6d20 (diff)
Merge branch 'master' of github.com:gogits/gogs
Conflicts: conf/app.ini
-rw-r--r--.gitignore27
-rw-r--r--LICENSE40
-rw-r--r--conf/app.ini4
-rw-r--r--modules/avatar/avatar.go4
-rw-r--r--modules/base/conf.go2
-rwxr-xr-xpublic/css/gogs.css209
-rw-r--r--public/js/app.js10
-rw-r--r--routers/install.go13
-rw-r--r--routers/repo/issue.go1
-rw-r--r--serve.go87
-rw-r--r--templates/admin/config.tmpl4
-rw-r--r--templates/admin/dashboard.tmpl4
-rw-r--r--templates/admin/nav.tmpl2
-rw-r--r--templates/admin/repos.tmpl4
-rw-r--r--templates/admin/users.tmpl4
-rw-r--r--templates/admin/users/edit.tmpl4
-rw-r--r--templates/admin/users/new.tmpl4
-rw-r--r--templates/base/navbar.tmpl26
-rw-r--r--templates/help.tmpl4
-rw-r--r--templates/home.tmpl2
-rw-r--r--templates/install.tmpl70
-rw-r--r--templates/issue/create.tmpl10
-rw-r--r--templates/repo/branches.tmpl4
-rw-r--r--templates/repo/commits.tmpl4
-rw-r--r--templates/repo/create.tmpl4
-rw-r--r--templates/repo/diff.tmpl4
-rw-r--r--templates/repo/issues.tmpl5
-rw-r--r--templates/repo/list.tmpl2
-rw-r--r--templates/repo/nav.tmpl8
-rw-r--r--templates/repo/pulls.tmpl4
-rw-r--r--templates/repo/setting.tmpl6
-rw-r--r--templates/repo/single.tmpl4
-rw-r--r--templates/repo/toolbar.tmpl2
-rw-r--r--templates/status/200.tmpl2
-rw-r--r--templates/status/404.tmpl2
-rw-r--r--templates/status/500.tmpl2
-rw-r--r--templates/user/active.tmpl4
-rw-r--r--templates/user/dashboard.tmpl8
-rw-r--r--templates/user/delete.tmpl10
-rw-r--r--templates/user/issues.tmpl4
-rw-r--r--templates/user/notification.tmpl4
-rw-r--r--templates/user/password.tmpl8
-rw-r--r--templates/user/profile.tmpl12
-rw-r--r--templates/user/publickey.tmpl12
-rw-r--r--templates/user/pulls.tmpl4
-rw-r--r--templates/user/security.tmpl4
-rw-r--r--templates/user/setting.tmpl8
-rw-r--r--templates/user/setting_nav.tmpl2
-rw-r--r--templates/user/signin.tmpl6
-rw-r--r--templates/user/signup.tmpl4
-rw-r--r--templates/user/stars.tmpl4
-rw-r--r--web.go1
52 files changed, 422 insertions, 261 deletions
diff --git a/.gitignore b/.gitignore
index 425f227c..eab518bb 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,5 @@
+
+
gogs
*.exe
*.exe~
@@ -9,4 +11,27 @@ data/
.vendor/
.idea/
*.iml
-public/img/avatar/ \ No newline at end of file
+public/img/avatar/
+
+# Compiled Object files, Static and Dynamic libs (Shared Objects)
+*.o
+*.a
+*.so
+
+# Folders
+_obj
+_test
+
+# Architecture specific extensions/prefixes
+*.[568vq]
+[568vq].out
+
+*.cgo1.go
+*.cgo2.c
+_cgo_defun.c
+_cgo_gotypes.go
+_cgo_export.*
+
+_testmain.go
+
+*.exe \ No newline at end of file
diff --git a/LICENSE b/LICENSE
index 7cecc248..3af16b07 100644
--- a/LICENSE
+++ b/LICENSE
@@ -1,19 +1,27 @@
-Copyright (c) 2011 Dmitriy Zaporozhets
+Copyright (c) 2014
+All rights reserved.
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
+* Redistributions of source code must retain the above copyright notice, this
+ list of conditions and the following disclaimer.
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
+* Redistributions in binary form must reproduce the above copyright notice,
+ this list of conditions and the following disclaimer in the documentation
+ and/or other materials provided with the distribution.
+
+* Neither the name of the {organization} nor the names of its
+ contributors may be used to endorse or promote products derived from
+ this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. \ No newline at end of file
diff --git a/conf/app.ini b/conf/app.ini
index 4c2398dd..1a96ebea 100644
--- a/conf/app.ini
+++ b/conf/app.ini
@@ -1,7 +1,7 @@
; App name that shows on every page title
APP_NAME = Gogs: Go Git Service
APP_LOGO = img/favicon.png
-; Check it if you run locally
+; Change it if you run locally
RUN_USER = git
; Either "dev", "prod" or "test", default is "dev"
RUN_MODE = dev
@@ -164,4 +164,4 @@ RECEIVERS =
[log.database]
LEVEL =
Driver =
-CONN = \ No newline at end of file
+CONN =
diff --git a/modules/avatar/avatar.go b/modules/avatar/avatar.go
index 0ba20294..3b423a6d 100644
--- a/modules/avatar/avatar.go
+++ b/modules/avatar/avatar.go
@@ -251,8 +251,8 @@ var client = &http.Client{}
func (this *thunderTask) fetch() error {
req, _ := http.NewRequest("GET", this.Url, nil)
- req.Header.Set("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8")
- req.Header.Set("Accept-Encoding", "gzip,deflate,sdch")
+ req.Header.Set("Accept", "text/html,application/xhtml+xml,application/xml;q=0.9,image/jpeg,image/png,*/*;q=0.8")
+ req.Header.Set("Accept-Encoding", "deflate,sdch")
req.Header.Set("Accept-Language", "zh-CN,zh;q=0.8")
req.Header.Set("Cache-Control", "no-cache")
req.Header.Set("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.154 Safari/537.36")
diff --git a/modules/base/conf.go b/modules/base/conf.go
index c692ddc2..d0f8ae2c 100644
--- a/modules/base/conf.go
+++ b/modules/base/conf.go
@@ -243,7 +243,7 @@ func newNotifyMailService() {
}
func NewConfigContext() {
- var err error
+ //var err error
workDir, err := exeDir()
if err != nil {
fmt.Printf("Fail to get work directory: %s\n", err)
diff --git a/public/css/gogs.css b/public/css/gogs.css
index 8b031d6e..c8c5d87b 100755
--- a/public/css/gogs.css
+++ b/public/css/gogs.css
@@ -52,14 +52,14 @@ html, body {
}
/* gogits nav header */
-.gogs-masthead {
+.masthead {
background-color: #428bca;
box-shadow: inset 0 -2px 5px rgba(0, 0, 0, .1);
margin: 0;
}
/* gogits nav item link */
-.gogs-nav-item {
+.nav-item {
position: relative;
display: inline-block;
padding: 10px;
@@ -69,39 +69,39 @@ html, body {
height: 46px;
}
-#gogs-nav-logo {
+#nav-logo {
padding-left: 0;
padding-right: 0;
margin-right: 10px;
}
-.gogs-nav-item:hover,
-.gogs-nav-item:focus {
+.nav-item:hover,
+.nav-item:focus {
color: #fff;
text-decoration: none;
}
-.gogs-nav-item.navbar-right {
+.nav-item.navbar-right {
margin-top: 3px;
}
-.gogs-nav-item.navbar-btn {
+.nav-item.navbar-btn {
cursor: pointer;
margin-top: 8px;
padding: 5px 15px;
height: 30px;
}
-.gogs-nav-item.navbar-right .fa {
+.nav-item.navbar-right .fa {
margin: 0;
}
/* gogits nav item active status */
-.gogs-nav .active {
+.nav .active {
color: #fff;
}
-.gogs-nav .active:after {
+.nav .active:after {
position: absolute;
bottom: -1px;
left: 50%;
@@ -115,29 +115,29 @@ html, body {
border-left: 5px solid transparent;
}
-#gogs-nav-logo:after {
+#nav-logo:after {
bottom: -4px !important;
}
-#gogs-nav-avatar:after {
+#nav-avatar:after {
bottom: -4px !important;
}
-.gogs-nav .tooltip {
+.nav .tooltip {
border: none;
}
/* gogits logo */
-#gogs-nav-avatar {
+#nav-avatar {
margin-top: 0;
}
-#gogs-logo, #gogs-nav-avatar img {
+#logo, #nav-avatar img {
width: 28px;
height: 28px;
}
-#gogs-nav-out {
+#nav-out {
margin-top: 10px;
padding: 5px 0;
margin-left: 10px;
@@ -145,56 +145,56 @@ html, body {
float: right;
}
-#gogs-nav-signin, #gogs-nav-signup {
+#nav-signin, #nav-signup {
float: right;
margin-left: 1em;
}
-#gogs-nav-out .fa {
+#nav-out .fa {
vertical-align: -10%;
margin: 0 .5em;
}
/* gogits body */
-#gogs-body {
+#body {
padding-bottom: 60px;
margin-top: 30px;
}
-#gogs-body .btn-default {
+#body .btn-default {
background-color: #FFF;
background-image: linear-gradient(to bottom, #FFF 0, #FAFAFA 100%);
}
-#gogs-body-nav {
+#body-nav {
background-color: #FFF;
border-bottom: 1px solid #DDD;
height: 66px
}
-#gogs-body-nav .nav {
+#body-nav .nav {
font-size: 14px;
margin-top: 12px;
}
-#gogs-body-nav .nav-pills li a {
+#body-nav .nav-pills li a {
color: #444;
}
-#gogs-body-nav .nav-pills li.active a {
+#body-nav .nav-pills li.active a {
font-weight: bold;
border-bottom: 2px solid #d26911;
background-color: transparent;
color: #444;
}
-#gogs-body-nav .nav-pills li:hover a {
+#body-nav .nav-pills li:hover a {
background-color: transparent;
text-decoration: underline;
}
/* gogits login card */
-.gogs-card {
+.card {
margin: auto;
padding: 30px;
background: #fff;
@@ -203,78 +203,87 @@ html, body {
box-sizing: border-box;
}
-.gogs-card h3 {
+.card h3 {
margin-top: 0;
margin-bottom: 30px;
padding-bottom: 20px;
border-bottom: 1px solid #ccc;
}
-#gogs-login-card {
+#login-card {
width: 600px;
}
-#gogs-login-card .form-control {
+#login-card .form-control {
padding: 6px 12px;
box-sizing: content-box;
}
-#gogs-login-card .control-label {
+#login-card .control-label {
height: 44px;
line-height: 30px;
}
-.gogs-card .btn {
+#install-card {
+ width: 800px;
+}
+
+#install-card .form-group {
+ margin-left: 0;
+ margin-right: 0;
+}
+
+.card .btn {
cursor: pointer;
margin-right: 1.2em;
}
-#gogs-social-login {
+#social-login {
margin-top: 30px;
padding-top: 20px;
border-top: 1px solid #ccc;
}
-#gogs-social-login .btn {
+#social-login .btn {
float: none;
margin: auto;
}
/* gogs-user-profile */
-#gogs-user-avatar {
+#user-avatar {
width: 200px;
height: 200px;
border-radius: 6px;
}
-#gogs-user-avatar-commit {
+#user-avatar-commit {
width: 16px;
height: 16px;
border-radius: 2px;
}
-#gogs-user-name {
+#user-name {
margin-top: 20px;
font-size: 1.6em;
font-weight: bold;
margin-bottom: 20px;
}
-#gogs-user-profile .profile-info .list-group-item {
+#user-profile .profile-info .list-group-item {
background-color: transparent;
padding-top: 18px;
color: #666;
}
-#gogs-user-profile .profile-info .list-group-item a {
+#user-profile .profile-info .list-group-item a {
margin: 0;
padding: 0;
display: inline;
color: #0093c4;
}
-#gogs-user-profile .profile-info .list-group {
+#user-profile .profile-info .list-group {
border-top: 1px solid #ccc;
padding-bottom: 18px;
border-bottom: 1px solid #ccc;
@@ -282,50 +291,50 @@ html, body {
padding-right: 18px;
}
-#gogs-user-activity .tab-pane {
+#user-activity .tab-pane {
padding: 20px;
}
-#gogs-user-act-tabs li.active a {
+#user-act-tabs li.active a {
border-bottom-color: #ddd;
}
/* gogits repo create */
-#gogs-repo-create {
+#repo-create {
width: 800px;
}
-#gogs-repo-create textarea[name=desc] {
+#repo-create textarea[name=desc] {
height: 8em;
}
/* gogits user setting */
-#gogs-user-setting-nav > h4, #gogs-user-setting-container > h4, #gogs-user-setting-container > div > h4,
-#gogs-ssh-keys > h4, #gogs-user-delete > h4, #gogs-repo-setting-container .tab-pane > h4 {
+#user-setting-nav > h4, #user-setting-container > h4, #user-setting-container > div > h4,
+#ssh-keys > h4, #user-delete > h4, #repo-setting-container .tab-pane > h4 {
padding-bottom: 18px;
margin-bottom: 18px;
border-bottom: 1px solid #CCC;
}
-#gogs-user-setting-nav .list-group .list-group-item a {
+#user-setting-nav .list-group .list-group-item a {
margin-left: 0;
padding: .6em;
font-size: 14px;
color: #3B73AF;
}
-#gogs-user-setting-nav .list-group .list-group-item {
+#user-setting-nav .list-group .list-group-item {
background-color: transparent;
}
-#gogs-user-setting-nav .list-group .list-group-item-success a {
+#user-setting-nav .list-group .list-group-item-success a {
font-weight: bold;
color: #444;
}
-.gogs-admin-nav {
+.admin-nav {
background-color: #FFF;
padding-top: 10px;
padding-left: 0;
@@ -333,49 +342,49 @@ html, body {
border: 1px solid #D8D8D8;
}
-.gogs-admin-nav li {
+.admin-nav li {
margin-bottom: 8px;
border-left: 4px solid transparent;
}
-.gogs-admin-nav li:hover {
+.admin-nav li:hover {
border-left-color: #EEE;
}
-.gogs-admin-nav li.active:hover {
+.admin-nav li.active:hover {
border-left: 4px solid #DD4B39;
}
-#gogs-repo-setting-container .form-horizontal label {
+#repo-setting-container .form-horizontal label {
line-height: 30px;
}
/* gogits user ssh keys */
-#gogs-ssh-keys .list-group-item {
+#ssh-keys .list-group-item {
padding: 15px 0;
border-bottom: 1px solid #DDD;
}
-#gogs-ssh-keys .list-group-item .delete {
+#ssh-keys .list-group-item .delete {
margin: -5px 50px 0;
}
-#gogs-ssh-keys .list-group-item:after {
+#ssh-keys .list-group-item:after {
clear: both;
}
-#gogs-ssh-keys .name {
+#ssh-keys .name {
font-size: 14px;
font-weight: bold;
}
-#gogs-ssh-keys .print {
+#ssh-keys .print {
padding-left: 1em;
color: #888;
}
-#gogs-ssh-add {
+#ssh-add {
display: inline-block;
color: white;
cursor: pointer;
@@ -383,25 +392,25 @@ html, body {
border-radius: 3px;
}
-#gogs-ssh-form textarea {
+#ssh-form textarea {
height: 16em;
}
-/* #gogs-feed */
+/* #feed */
-#gogs-feed-right .repo-panel .panel-heading .btn {
+#feed-right .repo-panel .panel-heading .btn {
margin-top: -4px;
}
-#gogs-feed-right .repo-panel .panel-body {
+#feed-right .repo-panel .panel-body {
padding: 0;
}
-#gogs-feed-right .repo-panel .list-group {
+#feed-right .repo-panel .list-group {
margin-bottom: 0;
}
-#gogs-feed-right .repo-panel .list-group-item a {
+#feed-right .repo-panel .list-group-item a {
display: block;
margin-left: 0;
background-color: transparent;
@@ -409,11 +418,11 @@ html, body {
font-weight: bold;
}
-#gogs-feed-right .repo-panel .list-group-item .fa {
+#feed-right .repo-panel .list-group-item .fa {
color: #666;
}
-#gogs-feed-right .repo-panel .list-group-item {
+#feed-right .repo-panel .list-group-item {
font-size: 14px;
line-height: 32px;
border-bottom: 1px solid #DDD;
@@ -421,97 +430,101 @@ html, body {
clear: both;
}
-#gogs-feed-right .repo-panel .list-group-item:last-child {
+#feed-right .repo-panel .list-group-item:last-child {
border-bottom: none;
}
-#gogs-feed-right .repo-panel .list-group-item:hover {
+#feed-right .repo-panel .list-group-item:hover {
background-color: #eafffd;
background-color: rgba(65, 131, 196, 0.1);
}
-#gogs-feed-right .repo-panel span.stars {
+#feed-right .repo-panel span.stars {
color: #666;
margin-right: 1em;
}
/* gogits repo single page */
-#gogs-body-nav.gogs-repo-nav {
+#body-nav.repo-nav {
padding-top: 16px;
padding-bottom: 30px;
height: auto;
}
-.gogs-repo-nav .name {
+.repo-nav .name {
margin-top: 15px;
}
-.gogs-repo-nav .desc {
+.repo-nav .desc {
color: #888;
margin-bottom: 0;
}
-.gogs-repo-nav h3 .fa {
+.repo-nav h3 .fa {
color: #BBB;
margin-left: 0;
}
-.gogs-repo-nav .actions {
+.repo-nav .actions {
padding-top: 20px;
}
-.gogs-repo-nav .btn-default {
+.repo-nav .btn-default {
font-family: Tahoma, Arial, sans-serif;
}
-#gogs-repo-watching .dropdown-menu {
+#repo-watching .dropdown-menu {
width: 280px;
padding: 0;
}
-#gogs-repo-watching .dropdown-menu .dropdown-item:hover .dropdown-header, #gogs-repo-watching .dropdown-item .dropdown-header.text-primary {
+#repo-watching .dropdown-menu .dropdown-item:hover .dropdown-header, #repo-watching .dropdown-item .dropdown-header.text-primary {
color: rgb(65, 131, 196);
cursor: pointer;
}
-#gogs-repo-watching .dropdown-menu .description {
+#repo-watching .dropdown-menu .description {
padding: 0 20px;
color: #888;
}
-#gogs-repo-watching .dropdown-menu .dropdown-header {
+#repo-watching .dropdown-menu .dropdown-header {
color: #444;
font-weight: bold;
font-size: 14px;
margin-bottom: 4px;
}
-#gogs-repo-toolbar {
+#repo-toolbar {
border-bottom: 1px solid #DDD;
background-color: #FFF;
height: 40px;
font-size: 14px;
}
-#gogs-repo-toolbar .navbar-default {
+#repo-toolbar .navbar-default {
border: none;
height: 39px;
}
-#gogs-repo-toolbar .nav > li > a {
+#repo-toolbar .nav > li > a {
height: 39px;
}
-#gogs-repo-toolbar .navbar-toolbar.navbar-default .navbar-nav > .active > a:after {
+#repo-toolbar .nav .active {
+ color: #F6F6F6;
+}
+
+#repo-toolbar .nav > .active > a:after {
border-bottom-color: #999;
}
-#gogs-repo-toolbar .navbar.nav-toolbar {
+#repo-toolbar .navbar.nav-toolbar {
margin-bottom: 0;
}
-#gogs-repo-toolbar .navbar-collapse {
+#repo-toolbar .navbar-collapse {
padding: 0;
}
@@ -579,29 +592,29 @@ html, body {
min-width: 200px;
}
-#gogs-repo-clone .dropdown-menu {
+#repo-clone .dropdown-menu {
width: 400px;
padding: 20px;
}
-#gogs-repo-clone .input-group {
+#repo-clone .input-group {
margin-bottom: 15px;
}
-/* #gogs-source */
-#gogs-source {
+/* #source */
+#source {
margin-top: -20px;
}
-#gogs-source .source-toolbar:after {
+#source .source-toolbar:after {
clear: both;
}
-#gogs-source .source-toolbar .branch-switch {
+#source .source-toolbar .branch-switch {
display: inline-block;
}
-#gogs-source .source-toolbar .breadcrumb {
+#source .source-toolbar .breadcrumb {
margin: 0 .5em;
padding: 6px 15px;
font-size: 16px;
@@ -610,9 +623,9 @@ html, body {
background-color: transparent;
}
-#gogs-source .source-toolbar,
-#gogs-source .info-box,
-#gogs-source .file-content {
+#source .source-toolbar,
+#source .info-box,
+#source .file-content {
margin: 0 0 10px;
}
@@ -676,7 +689,7 @@ html, body {
margin: 0 .5em 0 0;
}
-.file-content .file-head .file-size{
+.file-content .file-head .file-size {
font-size: 13px;
color: #888;
margin-left: 1em;
@@ -932,7 +945,7 @@ html, body {
color: #888;
}
-#gogs-source .file-content.diff-file-box {
+#source .file-content.diff-file-box {
margin-bottom: 20px;
}
diff --git a/public/js/app.js b/public/js/app.js
index f98fd03f..0973398a 100644
--- a/public/js/app.js
+++ b/public/js/app.js
@@ -243,7 +243,7 @@ function initCore() {
function initRegister() {
$.getScript("/js/jquery.validate.min.js", function () {
- Gogits.validateForm("#gogs-login-card", {
+ Gogits.validateForm("#login-card", {
rules: {
"username": {
required: true,
@@ -268,7 +268,7 @@ function initRegister() {
}
function initUserSetting() {
- $('#gogs-ssh-keys .delete').confirmation({
+ $('#ssh-keys .delete').confirmation({
singleton: true,
onConfirm: function (e, $this) {
Gogits.ajaxDelete("", {"id": $this.data("del")}, function (json) {
@@ -303,7 +303,7 @@ function initRepository() {
// watching script
(function () {
- var $watch = $('#gogs-repo-watching'),
+ var $watch = $('#repo-watching'),
watchLink = $watch.data("watch"),
unwatchLink = $watch.data("unwatch");
$watch.on('click', '.to-watch',function () {
@@ -354,14 +354,14 @@ function initRepository() {
(function ($) {
$(function () {
initCore();
- var body = $("#gogs-body");
+ var body = $("#body");
if (body.data("page") == "user-signup") {
initRegister();
}
if (body.data("page") == "user") {
initUserSetting();
}
- if ($('.gogs-repo-nav').length) {
+ if ($('.repo-nav').length) {
initRepository();
}
});
diff --git a/routers/install.go b/routers/install.go
new file mode 100644
index 00000000..d7d5159e
--- /dev/null
+++ b/routers/install.go
@@ -0,0 +1,13 @@
+// Copyright 2014 The Gogs Authors. All rights reserved.
+// Use of this source code is governed by a MIT-style
+// license that can be found in the LICENSE file.
+
+package routers
+
+import "github.com/gogits/gogs/modules/middleware"
+
+func Install(ctx *middleware.Context){
+ ctx.Data["PageIsInstall"] = true
+ ctx.Data["Title"] = "Install"
+ ctx.HTML(200,"install")
+}
diff --git a/routers/repo/issue.go b/routers/repo/issue.go
index e03f115e..d54582a2 100644
--- a/routers/repo/issue.go
+++ b/routers/repo/issue.go
@@ -45,6 +45,7 @@ func CreateIssue(ctx *middleware.Context, params martini.Params, form auth.Creat
}
ctx.Data["Title"] = "Create issue"
+ ctx.Data["IsRepoToolbarIssues"] = true
if ctx.Req.Method == "GET" {
ctx.HTML(200, "issue/create")
diff --git a/serve.go b/serve.go
index c3eb233c..acdcb877 100644
--- a/serve.go
+++ b/serve.go
@@ -13,6 +13,7 @@ import (
"os/exec"
"strconv"
"strings"
+ "time"
"github.com/codegangsta/cli"
"github.com/gogits/gogs/modules/log"
@@ -45,8 +46,10 @@ gogs serv provide access auth for repositories`,
}
func init() {
+ level := "0"
os.MkdirAll("log", os.ModePerm)
- log.NewLogger(10000, "file", fmt.Sprintf(`{"filename":"%s"}`, "log/serv.log"))
+ log.NewLogger(10000, "file", fmt.Sprintf(`{"level":%s,"filename":"%s"}`, level, "log/serv.log"))
+ log.Info("start logging...")
}
func parseCmd(cmd string) (string, string) {
@@ -109,25 +112,32 @@ func runServ(k *cli.Context) {
repoName = repoName[:len(repoName)-4]
}
+ isWrite := In(verb, COMMANDS_WRITE)
+ isRead := In(verb, COMMANDS_READONLY)
+
repo, err := models.GetRepositoryByName(user.Id, repoName)
var isExist bool = true
if err != nil {
if err == models.ErrRepoNotExist {
isExist = false
+ if isRead {
+ println("Repository", user.Name+"/"+repoName, "is not exist")
+ return
+ }
} else {
- println("Unavilable repository", err)
+ println("Get repository error:", err)
+ log.Error(err.Error())
return
}
}
- isWrite := In(verb, COMMANDS_WRITE)
- isRead := In(verb, COMMANDS_READONLY)
-
+ // access check
switch {
case isWrite:
has, err := models.HasAccess(user.Name, repoName, models.AU_WRITABLE)
if err != nil {
println("Inernel error:", err)
+ log.Error(err.Error())
return
}
if !has {
@@ -138,12 +148,14 @@ func runServ(k *cli.Context) {
has, err := models.HasAccess(user.Name, repoName, models.AU_READABLE)
if err != nil {
println("Inernel error")
+ log.Error(err.Error())
return
}
if !has {
has, err = models.HasAccess(user.Name, repoName, models.AU_WRITABLE)
if err != nil {
println("Inernel error")
+ log.Error(err.Error())
return
}
}
@@ -156,28 +168,30 @@ func runServ(k *cli.Context) {
return
}
+ var rep *git.Repository
+ repoPath := models.RepoPath(user.Name, repoName)
if !isExist {
- if isRead {
- println("Repository", user.Name+"/"+repoName, "is not exist")
- return
- } else if isWrite {
- _, err := models.CreateRepository(user, repoName, "", "", "", false, true)
+ if isWrite {
+ _, err = models.CreateRepository(user, repoName, "", "", "", false, true)
if err != nil {
println("Create repository failed")
+ log.Error(err.Error())
return
}
}
}
- rep, err := git.OpenRepository(models.RepoPath(user.Name, repoName))
- if err != nil {
- println(err.Error())
- return
- }
+ rep, err = git.OpenRepository(repoPath)
+ if err != nil {
+ println("OpenRepository failed:", err.Error())
+ log.Error(err.Error())
+ return
+ }
refs, err := rep.AllReferencesMap()
if err != nil {
- println(err.Error())
+ println("Get All References failed:", err.Error())
+ log.Error(err.Error())
return
}
@@ -194,17 +208,17 @@ func runServ(k *cli.Context) {
if err = gitcmd.Run(); err != nil {
println("execute command error:", err.Error())
+ log.Error(err.Error())
+ return
}
- if !strings.HasPrefix(cmd, "git-receive-pack") {
+ if isRead {
return
}
- // update
- //w, _ := os.Create("serve.log")
- //defer w.Close()
- //log.SetOutput(w)
+ time.Sleep(time.Second)
+ // find push reference name
var t = "ok refs/heads/"
var i int
var refname string
@@ -220,24 +234,31 @@ func runServ(k *cli.Context) {
refname = l[idx+len(t):]
}
}
+ if refname == "" {
+ println("No find any reference name:", b.String())
+ return
+ }
+
var ref *git.Reference
var ok bool
-
var l *list.List
//log.Info("----", refname, "-----")
if ref, ok = refs[refname]; !ok {
+ // for new branch
refs, err = rep.AllReferencesMap()
if err != nil {
- println(err.Error())
+ println("Get All References failed:", err.Error())
+ log.Error(err.Error())
return
}
if ref, ok = refs[refname]; !ok {
- log.Trace("unknow reference name -", refname, "-", b.String())
+ log.Error("unknow reference name -", refname, "-", b.String())
return
}
l, err = ref.AllCommits()
if err != nil {
- println(err.Error())
+ println("Get All Commits failed:", err.Error())
+ log.Error(err.Error())
return
}
} else {
@@ -246,20 +267,23 @@ func runServ(k *cli.Context) {
//log.Info("00000", ref.Oid.String())
last, err = ref.LastCommit()
if err != nil {
- println(err.Error())
+ println("Get last commit failed:", err.Error())
+ log.Error(err.Error())
return
}
ref2, err := rep.LookupReference(ref.Name)
if err != nil {
- println(err.Error())
+ println("look up reference failed:", err.Error())
+ log.Error(err.Error())
return
}
//log.Info("11111", ref2.Oid.String())
before, err := ref2.LastCommit()
if err != nil {
- println(err.Error())
+ println("Get last commit failed:", err.Error())
+ log.Error(err.Error())
return
}
//log.Info("----", before.Id(), "-----", last.Id())
@@ -280,13 +304,8 @@ func runServ(k *cli.Context) {
repo.Id, repoName, refname, &base.PushCommits{l.Len(), commits}); err != nil {
log.Error("runUpdate.models.CommitRepoAction: %v", err, commits)
} else {
- //log.Info("refname", refname)
- //log.Info("Listen: %v", cmd)
- //fmt.Println("...", cmd)
-
- //runUpdate(k)
c := exec.Command("git", "update-server-info")
- c.Dir = models.RepoPath(user.Name, repoName)
+ c.Dir = repoPath
err := c.Run()
if err != nil {
log.Error("update-server-info: %v", err)
diff --git a/templates/admin/config.tmpl b/templates/admin/config.tmpl
index 1e263046..39895aa3 100644
--- a/templates/admin/config.tmpl
+++ b/templates/admin/config.tmpl
@@ -1,8 +1,8 @@
{{template "base/head" .}}
{{template "base/navbar" .}}
-<div id="gogs-body" class="container" data-page="admin">
+<div id="body" class="container" data-page="admin">
{{template "admin/nav" .}}
- <div id="gogs-admin-container" class="col-md-9">
+ <div id="admin-container" class="col-md-9">
<div class="panel panel-default">
<div class="panel-heading">
Server Configuration
diff --git a/templates/admin/dashboard.tmpl b/templates/admin/dashboard.tmpl
index 2a5a161e..e0b31817 100644
--- a/templates/admin/dashboard.tmpl
+++ b/templates/admin/dashboard.tmpl
@@ -1,8 +1,8 @@
{{template "base/head" .}}
{{template "base/navbar" .}}
-<div id="gogs-body" class="container" data-page="admin">
+<div id="body" class="container" data-page="admin">
{{template "admin/nav" .}}
- <div id="gogs-admin-container" class="col-md-9">
+ <div id="admin-container" class="col-md-9">
<div class="panel panel-default">
<div class="panel-heading">
Statistic
diff --git a/templates/admin/nav.tmpl b/templates/admin/nav.tmpl
index 72f008ac..8c2e3388 100644
--- a/templates/admin/nav.tmpl
+++ b/templates/admin/nav.tmpl
@@ -1,4 +1,4 @@
-<div id="gogs-user-setting-nav" class="col-md-3 gogs-admin-nav">
+<div id="user-setting-nav" class="col-md-3 admin-nav">
<ul class="list-group" data-init="tabs">
<li class="list-group-item{{if .PageIsDashboard}} active{{end}}"><a href="/admin"><i class="fa fa-tachometer fa-lg"></i> Dashboard</a></li>
<li class="list-group-item{{if .PageIsUsers}} active{{end}}"><a href="/admin/users"><i class="fa fa-users fa-lg"></i> Users</a></li>
diff --git a/templates/admin/repos.tmpl b/templates/admin/repos.tmpl
index 2c91ccc0..8cc424db 100644
--- a/templates/admin/repos.tmpl
+++ b/templates/admin/repos.tmpl
@@ -1,8 +1,8 @@
{{template "base/head" .}}
{{template "base/navbar" .}}
-<div id="gogs-body" class="container" data-page="admin">
+<div id="body" class="container" data-page="admin">
{{template "admin/nav" .}}
- <div id="gogs-admin-container" class="col-md-9">
+ <div id="admin-container" class="col-md-9">
<div class="panel panel-default">
<div class="panel-heading">
Repository Management
diff --git a/templates/admin/users.tmpl b/templates/admin/users.tmpl
index dec5c189..63da4517 100644
--- a/templates/admin/users.tmpl
+++ b/templates/admin/users.tmpl
@@ -1,8 +1,8 @@
{{template "base/head" .}}
{{template "base/navbar" .}}
-<div id="gogs-body" class="container" data-page="admin">
+<div id="body" class="container" data-page="admin">
{{template "admin/nav" .}}
- <div id="gogs-admin-container" class="col-md-9">
+ <div id="admin-container" class="col-md-9">
<div class="panel panel-default">
<div class="panel-heading">
User Management
diff --git a/templates/admin/users/edit.tmpl b/templates/admin/users/edit.tmpl
index 08f11fcb..5db2c7a9 100644
--- a/templates/admin/users/edit.tmpl
+++ b/templates/admin/users/edit.tmpl
@@ -1,8 +1,8 @@
{{template "base/head" .}}
{{template "base/navbar" .}}
-<div id="gogs-body" class="container" data-page="admin">
+<div id="body" class="container" data-page="admin">
{{template "admin/nav" .}}
- <div id="gogs-admin-container" class="col-md-9">
+ <div id="admin-container" class="col-md-9">
<div class="panel panel-default">
<div class="panel-heading">
Edit Account
diff --git a/templates/admin/users/new.tmpl b/templates/admin/users/new.tmpl
index 7b41ae43..7f441f32 100644
--- a/templates/admin/users/new.tmpl
+++ b/templates/admin/users/new.tmpl
@@ -1,8 +1,8 @@
{{template "base/head" .}}
{{template "base/navbar" .}}
-<div id="gogs-body" class="container" data-page="admin">
+<div id="body" class="container" data-page="admin">
{{template "admin/nav" .}}
- <div id="gogs-admin-container" class="col-md-9">
+ <div id="admin-container" class="col-md-9">
<div class="panel panel-default">
<div class="panel-heading">
New Account
diff --git a/templates/base/navbar.tmpl b/templates/base/navbar.tmpl
index 90e90f29..829ecba6 100644
--- a/templates/base/navbar.tmpl
+++ b/templates/base/navbar.tmpl
@@ -1,25 +1,25 @@
-<div class="gogs-masthead navbar" id="masthead">
+<div class="masthead navbar" id="masthead">
<div class="container">
- <nav class="gogs-nav">
- <a id="gogs-nav-logo" class="gogs-nav-item{{if .PageIsHome}} active{{end}}" href="/"><img src="/img/favicon.png" alt="Gogs Logo" id="gogs-logo"></a>
- <a class="gogs-nav-item{{if .PageIsUserDashboard}} active{{end}}" href="/">Dashboard</a>
- <a class="gogs-nav-item{{if .PageIsHelp}} active{{end}}" href="/help">Help</a>{{if .IsSigned}}
- <a id="gogs-nav-out" class="gogs-nav-item navbar-right navbar-btn btn btn-danger" href="/user/logout/"><i class="fa fa-power-off fa-lg"></i></a>
- <a id="gogs-nav-avatar" class="gogs-nav-item navbar-right{{if .PageIsUserProfile}} active{{end}}" href="{{.SignedUser.HomeLink}}" data-toggle="tooltip" data-placement="bottom" title="{{.SignedUserName}}">
+ <nav class="nav">
+ <a id="nav-logo" class="nav-item{{if .PageIsHome}} active{{end}}" href="/"><img src="/img/favicon.png" alt="Gogs Logo" id="logo"></a>
+ <a class="nav-item{{if .PageIsUserDashboard}} active{{end}}" href="/">Dashboard</a>
+ <a class="nav-item{{if .PageIsHelp}} active{{end}}" href="/help">Help</a>{{if .IsSigned}}
+ <a id="nav-out" class="nav-item navbar-right navbar-btn btn btn-danger" href="/user/logout/"><i class="fa fa-power-off fa-lg"></i></a>
+ <a id="nav-avatar" class="nav-item navbar-right{{if .PageIsUserProfile}} active{{end}}" href="{{.SignedUser.HomeLink}}" data-toggle="tooltip" data-placement="bottom" title="{{.SignedUserName}}">
<img src="{{.SignedUser.AvatarLink}}?s=28" alt="user-avatar" title="username"/>
</a>
- <a class="navbar-right gogs-nav-item{{if .PageIsNewRepo}} active{{end}}" href="/repo/create" data-toggle="tooltip" data-placement="bottom" title="New Repository"><i class="fa fa-plus fa-lg"></i></a>
- <a class="navbar-right gogs-nav-item{{if .PageIsUserSetting}} active{{end}}" href="/user/setting" data-toggle="tooltip" data-placement="bottom" title="Setting"><i class="fa fa-cogs fa-lg"></i></a>
- {{if .IsAdmin}}<a class="navbar-right gogs-nav-item{{if .PageIsAdmin}} active{{end}}" href="/admin" data-toggle="tooltip" data-placement="bottom" title="Admin"><i class="fa fa-gear fa-lg"></i></a>{{end}}
- {{else}}<a id="gogs-nav-signin" class="gogs-nav-item navbar-right navbar-btn btn btn-danger" href="/user/login/">Sign In</a>
- <a id="gogs-nav-signup" class="gogs-nav-item navbar-right" href="/user/sign_up/">Sign Up</a>{{end}}
+ <a class="navbar-right nav-item{{if .PageIsNewRepo}} active{{end}}" href="/repo/create" data-toggle="tooltip" data-placement="bottom" title="New Repository"><i class="fa fa-plus fa-lg"></i></a>
+ <a class="navbar-right nav-item{{if .PageIsUserSetting}} active{{end}}" href="/user/setting" data-toggle="tooltip" data-placement="bottom" title="Setting"><i class="fa fa-cogs fa-lg"></i></a>
+ {{if .IsAdmin}}<a class="navbar-right nav-item{{if .PageIsAdmin}} active{{end}}" href="/admin" data-toggle="tooltip" data-placement="bottom" title="Admin"><i class="fa fa-gear fa-lg"></i></a>{{end}}
+ {{else}}<a id="nav-signin" class="nav-item navbar-right navbar-btn btn btn-danger" href="/user/login/">Sign In</a>
+ <a id="nav-signup" class="nav-item navbar-right" href="/user/sign_up/">Sign Up</a>{{end}}
</nav>
</div>
</div>
<!--<nav class="navbar navbar-inverse navbar-fixed-top">
<div class="container">
<div class="navbar-header">
- <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#gogs-navbar-collapse">
+ <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar-collapse">
<i class="fa fa-bars"></i>
</button>
<a class="navbar-brand" href="/"><img src="/img/favicon.png" alt="Gogs Logo"></a>
diff --git a/templates/help.tmpl b/templates/help.tmpl
index b4d5d2a9..e835c298 100644
--- a/templates/help.tmpl
+++ b/templates/help.tmpl
@@ -1,11 +1,11 @@
{{template "base/head" .}}
{{template "base/navbar" .}}
-<div id="gogs-body-nav">
+<div id="body-nav">
<div class="container">
<h3>Help</h3>
</div>
</div>
-<div id="gogs-body" class="container" data-page="user">
+<div id="body" class="container" data-page="user">
{{if .HasInfo}}<div class="alert alert-info">{{.InfoMsg}}</div>{{end}}
</div>
{{template "base/footer" .}} \ No newline at end of file
diff --git a/templates/home.tmpl b/templates/home.tmpl
index e0776243..381b6f1e 100644
--- a/templates/home.tmpl
+++ b/templates/home.tmpl
@@ -1,6 +1,6 @@
{{template "base/head" .}}
{{template "base/navbar" .}}
-<div id="gogs-body" class="container">
+<div id="body" class="container">
Welcome to the land of Gogs! There will be some indroduction!
</div>
{{template "base/footer" .}} \ No newline at end of file
diff --git a/templates/install.tmpl b/templates/install.tmpl
new file mode 100644
index 00000000..849491f8
--- /dev/null
+++ b/templates/install.tmpl
@@ -0,0 +1,70 @@
+{{template "base/head" .}}
+<div id="body" class="container">
+ <form action="/install" method="post" class="form-horizontal card" id="install-card">
+ {{.CsrfTokenHtml}}
+ <h3>Install Steps</h3>
+ <div class="alert alert-danger form-error{{if .HasError}}{{else}} hidden{{end}}">{{.ErrorMsg}}</div>
+ <p class="help-block text-center">GoGits need MySQL or PostgreSQL server</p>
+ <div class="form-group {{if .Err_User}}has-error has-feedback{{end}}">
+ <label class="col-md-3 control-label"><strong>MySQL </strong>Host: </label>
+ <div class="col-md-8">
+ <input name="host" class="form-control" placeholder="Type mysql server ip or domain" value="localhost" required="required">
+ </div>
+ </div>
+ <div class="form-group {{if .Err_User}}has-error has-feedback{{end}}">
+ <label class="col-md-3 control-label">Port: </label>
+ <div class="col-md-8">
+ <input name="port" class="form-control" placeholder="Type mysql server port" value="3306" required="required">
+ </div>
+ </div>
+ <div class="form-group {{if .Err_User}}has-error has-feedback{{end}}">
+ <label class="col-md-3 control-label">User: </label>
+ <div class="col-md-8">
+ <input name="user" class="form-control" placeholder="Type mysql username" required="required">
+ </div>
+ </div>
+ <div class="form-group {{if .Err_Password}}has-error has-feedback{{end}}">
+ <label class="col-md-3 control-label">Password: </label>
+ <div class="col-md-8">
+ <input name="passwd" type="password" class="form-control" placeholder="Type mysql password" required="required">
+ </div>
+ </div>
+ <div class="form-group {{if .Err_Password}}has-error has-feedback{{end}}">
+ <label class="col-md-3 control-label">Database: </label>
+ <div class="col-md-8">
+ <input name="database" type="text" class="form-control" placeholder="Type mysql database name" value="gogs" required="required">
+ <p class="help-block">Recommend use INNODB engine with utf8_general_ci charset.</p>
+ </div>
+ </div>
+
+ <div class="form-group">
+ <div class="col-md-8 col-md-offset-3">
+ <button class="btn btn-sm btn-info">Test Connection</button>
+ </div>
+ </div>
+
+ <hr/>
+
+ <p class="help-block text-center">General settings for GoGits</p>
+
+ <div class="form-group {{if .Err_Password}}has-error has-feedback{{end}}">
+ <label class="col-md-3 control-label">Repository Path: </label>
+ <div class="col-md-8">
+ <input name="repo-path" type="text" class="form-control" placeholder="Type your repository directory" value="/var/gogs/repostiory" required="required">
+ <p class="help-block">The git copy of each repository is saved in this directory.</p>
+ </div>
+ </div>
+ <div class="form-group {{if .Err_Password}}has-error has-feedback{{end}}">
+ <label class="col-md-3 control-label">System User: </label>
+ <div class="col-md-8">
+ <input name="system-user" type="text" class="form-control" placeholder="Type mysql password" value="root" required="required">
+ <p class="help-block">The user has access to visit and run GoGits.</p>
+ </div>
+ </div>
+ <hr/>
+ <div class="form-group text-center">
+ <a class="btn btn-danger btn-lg">Install GoGits</a>
+ </div>
+ </form>
+</div>
+{{template "base/footer" .}} \ No newline at end of file
diff --git a/templates/issue/create.tmpl b/templates/issue/create.tmpl
new file mode 100644
index 00000000..2fb29d1b
--- /dev/null
+++ b/templates/issue/create.tmpl
@@ -0,0 +1,10 @@
+{{template "base/head" .}}
+{{template "base/navbar" .}}
+{{template "repo/nav" .}}
+{{template "repo/toolbar" .}}
+<div id="body" class="container">
+ <div id="source">
+ new-issues
+ </div>
+</div>
+{{template "base/footer" .}} \ No newline at end of file
diff --git a/templates/repo/branches.tmpl b/templates/repo/branches.tmpl
index 63e77ab9..8d2d59d7 100644
--- a/templates/repo/branches.tmpl
+++ b/templates/repo/branches.tmpl
@@ -2,8 +2,8 @@
{{template "base/navbar" .}}
{{template "repo/nav" .}}
{{template "repo/toolbar" .}}
-<div id="gogs-body" class="container">
- <div id="gogs-source">
+<div id="body" class="container">
+ <div id="source">
<div class="panel panel-default branch-box info-box">
<div class="panel-heading info-head">
<h4>Branches</h4>
diff --git a/templates/repo/commits.tmpl b/templates/repo/commits.tmpl
index 2e67a120..2f308a10 100644
--- a/templates/repo/commits.tmpl
+++ b/templates/repo/commits.tmpl
@@ -2,8 +2,8 @@
{{template "base/navbar" .}}
{{template "repo/nav" .}}
{{template "repo/toolbar" .}}
-<div id="gogs-body" class="container">
- <div id="gogs-commits">
+<div id="body" class="container">
+ <div id="commits">
<div class="panel panel-default commit-box info-box">
<div class="panel-heading info-head">
<div class="search pull-right form">
diff --git a/templates/repo/create.tmpl b/templates/repo/create.tmpl
index a43f5104..dc509fc1 100644
--- a/templates/repo/create.tmpl
+++ b/templates/repo/create.tmpl
@@ -1,7 +1,7 @@
{{template "base/head" .}}
{{template "base/navbar" .}}
-<div class="container" id="gogs-body">
- <form action="/repo/create" method="post" class="form-horizontal gogs-card" id="gogs-repo-create">
+<div class="container" id="body">
+ <form action="/repo/create" method="post" class="form-horizontal card" id="repo-create">
{{.CsrfTokenHtml}}
<h3>Create New Repository</h3>
<div class="alert alert-danger form-error{{if .HasError}}{{else}} hidden{{end}}">{{.ErrorMsg}}</div>
diff --git a/templates/repo/diff.tmpl b/templates/repo/diff.tmpl
index b0836127..6a3c5fb3 100644
--- a/templates/repo/diff.tmpl
+++ b/templates/repo/diff.tmpl
@@ -2,8 +2,8 @@
{{template "base/navbar" .}}
{{template "repo/nav" .}}
{{template "repo/toolbar" .}}
-<div id="gogs-body" class="container" data-page="repo">
- <div id="gogs-source">
+<div id="body" class="container" data-page="repo">
+ <div id="source">
<div class="panel panel-info diff-box diff-head-box">
<div class="panel-heading">
<a class="pull-right btn btn-primary btn-sm" href="#commit-source">Browse Source</a>
diff --git a/templates/repo/issues.tmpl b/templates/repo/issues.tmpl
index daacc089..df53197c 100644
--- a/templates/repo/issues.tmpl
+++ b/templates/repo/issues.tmpl
@@ -2,8 +2,9 @@
{{template "base/navbar" .}}
{{template "repo/nav" .}}
{{template "repo/toolbar" .}}
-<div id="gogs-body" class="container">
- <div id="gogs-source">
+<div id="body" class="container">
+ <div id="source">
+ issues
</div>
</div>
{{template "base/footer" .}} \ No newline at end of file
diff --git a/templates/repo/list.tmpl b/templates/repo/list.tmpl
index 2c5432a1..403c62d6 100644
--- a/templates/repo/list.tmpl
+++ b/templates/repo/list.tmpl
@@ -1,6 +1,6 @@
{{template "base/head" .}}
{{template "base/navbar" .}}
-<div class="container" id="gogs-body">
+<div class="container" id="body">
<ul>
{{range .Repos}}
<li>{{.Name}} stars: {{.NumStars}} forks: {{.NumForks}} watches:{{.NumWatchs}}</li>
diff --git a/templates/repo/nav.tmpl b/templates/repo/nav.tmpl
index 2770328c..e1b22b1c 100644
--- a/templates/repo/nav.tmpl
+++ b/templates/repo/nav.tmpl
@@ -1,4 +1,4 @@
-<div id="gogs-body-nav" class="gogs-repo-nav">
+<div id="body-nav" class="repo-nav">
<div class="container">
<div class="row">
<div class="col-md-7">
@@ -7,13 +7,13 @@
</div>
<div class="col-md-5 actions text-right clone-group-btn">
{{if not .IsBareRepo}}
- <!--<div class="btn-group" id="gogs-repo-clone">
+ <!--<div class="btn-group" id="repo-clone">
<button type="button" class="btn btn-default"><i class="fa fa-download fa-lg fa-m"></i></button>
<button type="button" class="btn btn-default dropdown-toggle" data-container="body" data-toggle="popover" data-placement="bottom" data-content="<label>SSH:</label><div class='input-group'><input type='text' class='form-control' value='{{.CloneLink.SSH}}'></div>" data-html="1">
<span class="caret"></span>
</button>
</div>-->
- <div class="btn-group" id="gogs-repo-clone">
+ <div class="btn-group" id="repo-clone">
<button type="button" class="btn btn-default"><i class="fa fa-download fa-lg fa-m"></i></button>
<button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown">
<span class="caret"></span>
@@ -36,7 +36,7 @@
</div>
</div>
</div>
- <div class="btn-group {{if .IsRepositoryWatching}}watching{{else}}no-watching{{end}}" id="gogs-repo-watching" data-watch="/{{.Owner.Name}}/{{.Repository.Name}}/action/watch" data-unwatch="/{{.Owner.Name}}/{{.Repository.Name}}/action/unwatch">
+ <div class="btn-group {{if .IsRepositoryWatching}}watching{{else}}no-watching{{end}}" id="repo-watching" data-watch="/{{.Owner.Name}}/{{.Repository.Name}}/action/watch" data-unwatch="/{{.Owner.Name}}/{{.Repository.Name}}/action/unwatch">
{{if .IsRepositoryWatching}}
<button type="button" class="btn btn-default"><i class="fa fa-eye fa-lg fa-m"></i></button>
{{else}}
diff --git a/templates/repo/pulls.tmpl b/templates/repo/pulls.tmpl
index daacc089..8c5d9376 100644
--- a/templates/repo/pulls.tmpl
+++ b/templates/repo/pulls.tmpl
@@ -2,8 +2,8 @@
{{template "base/navbar" .}}
{{template "repo/nav" .}}
{{template "repo/toolbar" .}}
-<div id="gogs-body" class="container">
- <div id="gogs-source">
+<div id="body" class="container">
+ <div id="source">
</div>
</div>
{{template "base/footer" .}} \ No newline at end of file
diff --git a/templates/repo/setting.tmpl b/templates/repo/setting.tmpl
index c826e55a..d527dac3 100644
--- a/templates/repo/setting.tmpl
+++ b/templates/repo/setting.tmpl
@@ -2,8 +2,8 @@
{{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">
+<div id="body" class="container">
+ <div id="user-setting-nav" class="col-md-3">
<ul class="list-group" data-init="tabs">
<li class="list-group-item active"><a href="/{{.Owner.Name}}/{{.Repository.Name}}/settings">Options</a></li>
<!--<li class="list-group-item"><a href="#">Collaborators</a></li>
@@ -11,7 +11,7 @@
</ul>
</div>
- <div id="gogs-repo-setting-container" class="col-md-9">
+ <div id="repo-setting-container" class="col-md-9">
{{if .IsSuccess}}<p class="alert alert-success">Repository option has been successfully updated.</p>{{else if .HasError}}<p class="alert alert-danger form-error">{{.ErrorMsg}}</p>{{end}}
<div class="panel panel-default">
<div class="panel-heading">
diff --git a/templates/repo/single.tmpl b/templates/repo/single.tmpl
index 56e6746c..ed04be07 100644
--- a/templates/repo/single.tmpl
+++ b/templates/repo/single.tmpl
@@ -2,8 +2,8 @@
{{template "base/navbar" .}}
{{template "repo/nav" .}}
{{template "repo/toolbar" .}}
-<div id="gogs-body" class="container">
- <div id="gogs-source">
+<div id="body" class="container">
+ <div id="source">
{{if .IsBareRepo}}
{{template "repo/single_bare" .}}
{{else}}
diff --git a/templates/repo/toolbar.tmpl b/templates/repo/toolbar.tmpl
index 415023d1..1f8a7098 100644
--- a/templates/repo/toolbar.tmpl
+++ b/templates/repo/toolbar.tmpl
@@ -1,4 +1,4 @@
-<div id="gogs-repo-toolbar">
+<div id="repo-toolbar">
<div class="container">
<nav class="navbar navbar-toolbar navbar-default" role="navigation">
<div class="collapse navbar-collapse">
diff --git a/templates/status/200.tmpl b/templates/status/200.tmpl
index 8f644942..0846ad79 100644
--- a/templates/status/200.tmpl
+++ b/templates/status/200.tmpl
@@ -1,6 +1,6 @@
{{template "base/head" .}}
{{template "base/navbar" .}}
-<div id="gogs-body" class="container">
+<div id="body" class="container">
<p>An error is occurred : {{.ErrorMsg}}</p>
<p>Application Version: {{AppVer}}</p>
</div>
diff --git a/templates/status/404.tmpl b/templates/status/404.tmpl
index b971f279..f68676fe 100644
--- a/templates/status/404.tmpl
+++ b/templates/status/404.tmpl
@@ -1,6 +1,6 @@
{{template "base/head" .}}
{{template "base/navbar" .}}
-<div id="gogs-body" class="container text-center">
+<div id="body" class="container text-center">
<p style="margin-top: 80px"><img src="/img/404.png" alt="404"/></p>
<hr/>
<p>Application Version: {{AppVer}}</p>
diff --git a/templates/status/500.tmpl b/templates/status/500.tmpl
index f3cd24d6..dd735811 100644
--- a/templates/status/500.tmpl
+++ b/templates/status/500.tmpl
@@ -1,6 +1,6 @@
{{template "base/head" .}}
{{template "base/navbar" .}}
-<div id="gogs-body" class="container text-center">
+<div id="body" class="container text-center">
<p style="margin-top: 80px"><img src="/img/500.png" alt="404"/></p>
<hr/>
<p>An error is occurred : {{.ErrorMsg}}</p>
diff --git a/templates/user/active.tmpl b/templates/user/active.tmpl
index 0df116cb..9cac069d 100644
--- a/templates/user/active.tmpl
+++ b/templates/user/active.tmpl
@@ -1,7 +1,7 @@
{{template "base/head" .}}
{{template "base/navbar" .}}
-<div id="gogs-body" class="container">
- <form action="/user/activate" method="post" class="form-horizontal gogs-card" id="gogs-login-card">
+<div id="body" class="container">
+ <form action="/user/activate" method="post" class="form-horizontal card" id="login-card">
{{.CsrfTokenHtml}}
<h3>Activate Your Account</h3>
{{if .IsActivatePage}}
diff --git a/templates/user/dashboard.tmpl b/templates/user/dashboard.tmpl
index ca5fecf2..bc0853fb 100644
--- a/templates/user/dashboard.tmpl
+++ b/templates/user/dashboard.tmpl
@@ -1,6 +1,6 @@
{{template "base/head" .}}
{{template "base/navbar" .}}
-<div id="gogs-body-nav">
+<div id="body-nav">
<div class="container">
<ul class="nav nav-pills pull-right">
<li class="active"><a href="/">Feed</a></li>
@@ -11,9 +11,9 @@
<h3>News Feed</h3>
</div>
</div>
-<div id="gogs-body" class="container" data-page="user">
+<div id="body" class="container" data-page="user">
{{if .HasInfo}}<div class="alert alert-info">{{.InfoMsg}}</div>{{end}}
- <div id="gogs-feed-left" class="col-md-8">
+ <div id="feed-left" class="col-md-8">
<ul class="list-unstyled activity-list">
{{range .Feeds}}
<li>
@@ -26,7 +26,7 @@
{{end}}
</ul>
</div>
- <div id="gogs-feed-right" class="col-md-4">
+ <div id="feed-right" class="col-md-4">
<div class="panel panel-default repo-panel">
<div class="panel-heading">Your Repositories
<a class="btn btn-success pull-right btn-sm" href="/repo/create"><i class="fa fa-plus-square"></i>New Repo</a>
diff --git a/templates/user/delete.tmpl b/templates/user/delete.tmpl
index 04c713eb..17c9ea89 100644
--- a/templates/user/delete.tmpl
+++ b/templates/user/delete.tmpl
@@ -1,7 +1,7 @@
{{template "base/head" .}}
{{template "base/navbar" .}}
-<div id="gogs-body" class="container" data-page="user">
- <div id="gogs-user-setting-nav" class="col-md-3">
+<div id="body" class="container" data-page="user">
+ <div id="user-setting-nav" class="col-md-3">
<h4>Account Setting</h4>
<ul class="list-group">
<li class="list-group-item"><a href="/user/setting">Account Profile</a></li>
@@ -12,16 +12,16 @@
<li class="list-group-item list-group-item-success"><a href="/user/delete">Delete Account</a></li>
</ul>
</div>
- <div id="gogs-user-setting-container" class="col-md-9">
+ <div id="user-setting-container" class="col-md-9">
<h4>Delete Account</h4>
<p class="alert alert-danger">{{if not .HasError}}The operation will delete your account permanently. Sorry to see you go, but we know you'll back soon.{{else}}{{.ErrorMsg}}{{end}}</p>
<div class="form-group">
- <button type="submit" class="btn btn-danger btn-lg" href="#delete-account-modal" id="gogs-delete-account" data-toggle="modal">Delete Account</button>
+ <button type="submit" class="btn btn-danger btn-lg" href="#delete-account-modal" id="delete-account" data-toggle="modal">Delete Account</button>
</div>
</div>
<div class="modal fade" id="delete-account-modal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-dialog">
- <form action="/user/delete" method="post" class="modal-content" id="gogs-user-delete">
+ <form action="/user/delete" method="post" class="modal-content" id="user-delete">
{{.CsrfTokenHtml}}
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
diff --git a/templates/user/issues.tmpl b/templates/user/issues.tmpl
index e28af5be..dd17b667 100644
--- a/templates/user/issues.tmpl
+++ b/templates/user/issues.tmpl
@@ -1,6 +1,6 @@
{{template "base/head" .}}
{{template "base/navbar" .}}
-<div id="gogs-body-nav">
+<div id="body-nav">
<div class="container">
<ul class="nav nav-pills pull-right">
<li><a href="/">Feed</a></li>
@@ -11,7 +11,7 @@
<h3>Issues</h3>
</div>
</div>
-<div id="gogs-body" class="container" data-page="user">
+<div id="body" class="container" data-page="user">
{{if .HasInfo}}<div class="alert alert-info">{{.InfoMsg}}</div>{{end}}
</div>
{{template "base/footer" .}} \ No newline at end of file
diff --git a/templates/user/notification.tmpl b/templates/user/notification.tmpl
index 7911c0fd..7c2e8425 100644
--- a/templates/user/notification.tmpl
+++ b/templates/user/notification.tmpl
@@ -1,8 +1,8 @@
{{template "base/head" .}}
{{template "base/navbar" .}}
-<div id="gogs-body" class="container" data-page="user">
+<div id="body" class="container" data-page="user">
{{template "user/setting_nav" .}}
- <div id="gogs-user-setting-container" class="col-md-9">
+ <div id="user-setting-container" class="col-md-9">
<h4>Notification</h4>
</div>
</div>
diff --git a/templates/user/password.tmpl b/templates/user/password.tmpl
index 936ec4b1..b2cdc72d 100644
--- a/templates/user/password.tmpl
+++ b/templates/user/password.tmpl
@@ -1,11 +1,11 @@
{{template "base/head" .}}
{{template "base/navbar" .}}
-<div id="gogs-body" class="container" data-page="user">
+<div id="body" class="container" data-page="user">
{{template "user/setting_nav" .}}
- <div id="gogs-user-setting-container" class="col-md-9">
- <div id="gogs-setting-pwd">
+ <div id="user-setting-container" class="col-md-9">
+ <div id="setting-pwd">
<h4>Password</h4>
- <form class="form-horizontal" id="gogs-password-form" method="post" action="/user/setting/password">
+ <form class="form-horizontal" id="password-form" method="post" action="/user/setting/password">
{{.CsrfTokenHtml}}
{{if .IsSuccess}}
<p class="alert alert-success">Password is changed successfully. You can now sign in via new password.</p>{{else if .HasError}}<p class="alert alert-danger form-error">{{.ErrorMsg}}</p>{{end}}
diff --git a/templates/user/profile.tmpl b/templates/user/profile.tmpl
index 34223614..7762ad2c 100644
--- a/templates/user/profile.tmpl
+++ b/templates/user/profile.tmpl
@@ -1,12 +1,12 @@
{{template "base/head" .}}
{{template "base/navbar" .}}
-<div id="gogs-body" class="container" data-page="user">
- <div id="gogs-user-profile" class="col-md-3">
+<div id="body" class="container" data-page="user">
+ <div id="user-profile" class="col-md-3">
<div class="profile-avatar text-center">
<a href="http://gravatar.com/emails/" class="center-block" data-toggle="tooltip" data-placement="bottom" title="Change your avatar at gravatar.com">
- <img id="gogs-user-avatar" src="{{.Owner.AvatarLink}}?s=200" alt="user-avatar" title="{{.Owner.Name}}"/>
+ <img id="user-avatar" src="{{.Owner.AvatarLink}}?s=200" alt="user-avatar" title="{{.Owner.Name}}"/>
</a>
- <span id="gogs-user-name" class="center-block">{{.Owner.Name}}</span>
+ <span id="user-name" class="center-block">{{.Owner.Name}}</span>
</div>
<div class="profile-info">
<ul class="list-group">
@@ -23,8 +23,8 @@
</ul>
</div>
</div>
- <div id="gogs-user-activity" class="col-md-9">
- <ul class="nav nav-tabs" id="gogs-user-act-tabs" data-init="tabs">
+ <div id="user-activity" class="col-md-9">
+ <ul class="nav nav-tabs" id="user-act-tabs" data-init="tabs">
<li{{if not .TabName}} class="active"{{end}}><a href="{{.Owner.HomeLink}}"><i class="fa fa-gittip"></i>Repositories</a></li>
<li{{if eq .TabName "activity"}} class="active"{{end}}><a href="{{.Owner.HomeLink}}?tab=activity"><i class="fa fa-rss"></i>Public Activity</a></li>
</ul>
diff --git a/templates/user/publickey.tmpl b/templates/user/publickey.tmpl
index e645e1a8..ecdeb035 100644
--- a/templates/user/publickey.tmpl
+++ b/templates/user/publickey.tmpl
@@ -1,12 +1,12 @@
{{template "base/head" .}}
{{template "base/navbar" .}}
-<div id="gogs-body" class="container" data-page="user">
+<div id="body" class="container" data-page="user">
{{template "user/setting_nav" .}}
- <div id="gogs-user-setting-container" class="col-md-9">
- <div id="gogs-ssh-keys">
+ <div id="user-setting-container" class="col-md-9">
+ <div id="ssh-keys">
<h4>SSH Keys</h4>{{if .AddSSHKeySuccess}}
<p class="alert alert-success">New SSH Key has been added !</p>{{else if .HasError}}<p class="alert alert-danger">{{.ErrorMsg}}</p>{{end}}
- <ul id="gogs-ssh-keys-list" class="list-group">
+ <ul id="ssh-keys-list" class="list-group">
<li class="list-group-item"><span class="name">SSH Key's name</span></li>
{{range .Keys}}
<li class="list-group-item">
@@ -16,12 +16,12 @@
</li>
{{end}}
<li class="list-group-item">
- <a class="btn btn-link btn-primary" href="#ssh-add-modal" id="gogs-ssh-add" data-toggle="modal">Add SSH Key</a>
+ <a class="btn btn-link btn-primary" href="#ssh-add-modal" id="ssh-add" data-toggle="modal">Add SSH Key</a>
</li>
</ul>
<div class="modal fade" id="ssh-add-modal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-dialog">
- <form class="modal-content form-horizontal" id="gogs-ssh-form" method="post" action="/user/setting/ssh/">
+ <form class="modal-content form-horizontal" id="ssh-form" method="post" action="/user/setting/ssh/">
{{.CsrfTokenHtml}}
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
diff --git a/templates/user/pulls.tmpl b/templates/user/pulls.tmpl
index 0891f5e8..47462a9b 100644
--- a/templates/user/pulls.tmpl
+++ b/templates/user/pulls.tmpl
@@ -1,6 +1,6 @@
{{template "base/head" .}}
{{template "base/navbar" .}}
-<div id="gogs-body-nav">
+<div id="body-nav">
<div class="container">
<ul class="nav nav-pills pull-right">
<li><a href="/">Feed</a></li>
@@ -11,7 +11,7 @@
<h3>Pull Requests</h3>
</div>
</div>
-<div id="gogs-body" class="container" data-page="user">
+<div id="body" class="container" data-page="user">
{{if .HasInfo}}<div class="alert alert-info">{{.InfoMsg}}</div>{{end}}
</div>
{{template "base/footer" .}} \ No newline at end of file
diff --git a/templates/user/security.tmpl b/templates/user/security.tmpl
index a7506b50..7de41ebd 100644
--- a/templates/user/security.tmpl
+++ b/templates/user/security.tmpl
@@ -1,8 +1,8 @@
{{template "base/head" .}}
{{template "base/navbar" .}}
-<div id="gogs-body" class="container" data-page="user">
+<div id="body" class="container" data-page="user">
{{template "user/setting_nav" .}}
- <div id="gogs-user-setting-container" class="col-md-9">
+ <div id="user-setting-container" class="col-md-9">
<h4>Security</h4>
</div>
</div>
diff --git a/templates/user/setting.tmpl b/templates/user/setting.tmpl
index 30c9529b..283a8df8 100644
--- a/templates/user/setting.tmpl
+++ b/templates/user/setting.tmpl
@@ -1,11 +1,11 @@
{{template "base/head" .}}
{{template "base/navbar" .}}
-<div id="gogs-body" class="container" data-page="user">
+<div id="body" class="container" data-page="user">
{{template "user/setting_nav" .}}
- <div id="gogs-user-setting-container" class="col-md-9">
- <div id="gogs-setting-pwd">
+ <div id="user-setting-container" class="col-md-9">
+ <div id="setting-pwd">
<h4>Account Profile</h4>
- <form class="form-horizontal" id="gogs-password-form" method="post" action="/user/setting">
+ <form class="form-horizontal" id="password-form" method="post" action="/user/setting">
{{.CsrfTokenHtml}}
{{if .IsSuccess}}<p class="alert alert-success">Your profile has been successfully updated.</p>{{else if .HasError}}<p class="alert alert-danger form-error">{{.ErrorMsg}}</p>{{end}}
<p>Your Email will be public and used for Account related notifications and any web based operations made via the web.</p>
diff --git a/templates/user/setting_nav.tmpl b/templates/user/setting_nav.tmpl
index 2905f282..c0f2ae03 100644
--- a/templates/user/setting_nav.tmpl
+++ b/templates/user/setting_nav.tmpl
@@ -1,4 +1,4 @@
-<div id="gogs-user-setting-nav" class="col-md-3">
+<div id="user-setting-nav" class="col-md-3">
<h4>Account Setting</h4>
<ul class="list-group">
<li class="list-group-item{{if .IsUserPageSetting}} list-group-item-success{{end}}"><a href="/user/setting">Account Profile</a></li>
diff --git a/templates/user/signin.tmpl b/templates/user/signin.tmpl
index 1cd3275c..49a22626 100644
--- a/templates/user/signin.tmpl
+++ b/templates/user/signin.tmpl
@@ -1,7 +1,7 @@
{{template "base/head" .}}
{{template "base/navbar" .}}
-<div class="container" id="gogs-body" data-page="user-signin">
- <form action="/user/login" method="post" class="form-horizontal gogs-card" id="gogs-login-card">
+<div class="container" id="body" data-page="user-signin">
+ <form action="/user/login" method="post" class="form-horizontal card" id="login-card">
{{.CsrfTokenHtml}}
<h3>Log in</h3>
<div class="alert alert-danger form-error{{if .HasError}}{{else}} hidden{{end}}">{{.ErrorMsg}}</div>
@@ -43,7 +43,7 @@
</div>
</div>
- <div class="form-group text-center" id="gogs-social-login">
+ <div class="form-group text-center" id="social-login">
<a class="btn btn-danger btn-lg">Register new account</a>
</div>
</form>
diff --git a/templates/user/signup.tmpl b/templates/user/signup.tmpl
index fbfc4cad..6ed595a3 100644
--- a/templates/user/signup.tmpl
+++ b/templates/user/signup.tmpl
@@ -1,7 +1,7 @@
{{template "base/head" .}}
{{template "base/navbar" .}}
-<div class="container" id="gogs-body" data-page="user-signup">
- <form action="/user/sign_up" method="post" class="form-horizontal gogs-card" id="gogs-login-card">
+<div class="container" id="body" data-page="user-signup">
+ <form action="/user/sign_up" method="post" class="form-horizontal card" id="login-card">
{{.CsrfTokenHtml}}
{{if .DisenableRegisteration}}
Sorry, registeration has been disenabled, you can only get account from administrator.
diff --git a/templates/user/stars.tmpl b/templates/user/stars.tmpl
index 4e6f0c92..253efd6e 100644
--- a/templates/user/stars.tmpl
+++ b/templates/user/stars.tmpl
@@ -1,6 +1,6 @@
{{template "base/head" .}}
{{template "base/navbar" .}}
-<div id="gogs-body-nav">
+<div id="body-nav">
<div class="container">
<ul class="nav nav-pills pull-right">
<li><a href="/">Feed</a></li>
@@ -11,7 +11,7 @@
<h3>Stars</h3>
</div>
</div>
-<div id="gogs-body" class="container" data-page="user">
+<div id="body" class="container" data-page="user">
{{if .HasInfo}}<div class="alert alert-info">{{.InfoMsg}}</div>{{end}}
</div>
{{template "base/footer" .}} \ No newline at end of file
diff --git a/web.go b/web.go
index 0747f224..6538c61f 100644
--- a/web.go
+++ b/web.go
@@ -90,6 +90,7 @@ func runWeb(*cli.Context) {
// Routers.
m.Get("/", ignSignIn, routers.Home)
+ m.Get("/install",routers.Install)
m.Get("/issues", reqSignIn, user.Issues)
m.Get("/pulls", reqSignIn, user.Pulls)
m.Get("/stars", reqSignIn, user.Stars)