Removed trailing white spacestags/v1.2.0-rc1
| @@ -42,7 +42,7 @@ import ( | |||||
| var CmdWeb = cli.Command{ | var CmdWeb = cli.Command{ | ||||
| Name: "web", | Name: "web", | ||||
| Usage: "Start Gogs web server", | Usage: "Start Gogs web server", | ||||
| Description: `Gogs web server is the only thing you need to run, | |||||
| Description: `Gogs web server is the only thing you need to run, | |||||
| and it takes care of all the other things for you`, | and it takes care of all the other things for you`, | ||||
| Action: runWeb, | Action: runWeb, | ||||
| Flags: []cli.Flag{}, | Flags: []cli.Flag{}, | ||||
| @@ -7,14 +7,14 @@ RUN_USER = git | |||||
| RUN_MODE = dev | RUN_MODE = dev | ||||
| [repository] | [repository] | ||||
| ROOT = | |||||
| ROOT = | |||||
| SCRIPT_TYPE = bash | SCRIPT_TYPE = bash | ||||
| [server] | [server] | ||||
| PROTOCOL = http | PROTOCOL = http | ||||
| DOMAIN = localhost | DOMAIN = localhost | ||||
| ROOT_URL = %(PROTOCOL)s://%(DOMAIN)s:%(HTTP_PORT)s/ | ROOT_URL = %(PROTOCOL)s://%(DOMAIN)s:%(HTTP_PORT)s/ | ||||
| HTTP_ADDR = | |||||
| HTTP_ADDR = | |||||
| HTTP_PORT = 3000 | HTTP_PORT = 3000 | ||||
| SSH_PORT = 22 | SSH_PORT = 22 | ||||
| ; Disable CDN even in "prod" mode | ; Disable CDN even in "prod" mode | ||||
| @@ -27,7 +27,7 @@ CERT_FILE = custom/https/cert.pem | |||||
| KEY_FILE = custom/https/key.pem | KEY_FILE = custom/https/key.pem | ||||
| ; Upper level of template and static file path | ; Upper level of template and static file path | ||||
| ; default is the path where Gogs is executed | ; default is the path where Gogs is executed | ||||
| STATIC_ROOT_PATH = | |||||
| STATIC_ROOT_PATH = | |||||
| ; Application level GZIP support | ; Application level GZIP support | ||||
| ENABLE_GZIP = false | ENABLE_GZIP = false | ||||
| @@ -87,20 +87,20 @@ SUBJECT = %(APP_NAME)s | |||||
| ; Mail server | ; Mail server | ||||
| ; Gmail: smtp.gmail.com:587 | ; Gmail: smtp.gmail.com:587 | ||||
| ; QQ: smtp.qq.com:25 | ; QQ: smtp.qq.com:25 | ||||
| HOST = | |||||
| HOST = | |||||
| ; Mail from address | ; Mail from address | ||||
| FROM = | |||||
| FROM = | |||||
| ; Mailer user name and password | ; Mailer user name and password | ||||
| USER = | |||||
| PASSWD = | |||||
| USER = | |||||
| PASSWD = | |||||
| [oauth] | [oauth] | ||||
| ENABLED = false | ENABLED = false | ||||
| [oauth.github] | [oauth.github] | ||||
| ENABLED = false | ENABLED = false | ||||
| CLIENT_ID = | |||||
| CLIENT_SECRET = | |||||
| CLIENT_ID = | |||||
| CLIENT_SECRET = | |||||
| SCOPES = https://api.github.com/user | SCOPES = https://api.github.com/user | ||||
| AUTH_URL = https://github.com/login/oauth/authorize | AUTH_URL = https://github.com/login/oauth/authorize | ||||
| TOKEN_URL = https://github.com/login/oauth/access_token | TOKEN_URL = https://github.com/login/oauth/access_token | ||||
| @@ -109,16 +109,16 @@ TOKEN_URL = https://github.com/login/oauth/access_token | |||||
| ; https://console.developers.google.com/project | ; https://console.developers.google.com/project | ||||
| [oauth.google] | [oauth.google] | ||||
| ENABLED = false | ENABLED = false | ||||
| CLIENT_ID = | |||||
| CLIENT_SECRET = | |||||
| CLIENT_ID = | |||||
| CLIENT_SECRET = | |||||
| SCOPES = https://www.googleapis.com/auth/userinfo.email https://www.googleapis.com/auth/userinfo.profile | SCOPES = https://www.googleapis.com/auth/userinfo.email https://www.googleapis.com/auth/userinfo.profile | ||||
| AUTH_URL = https://accounts.google.com/o/oauth2/auth | AUTH_URL = https://accounts.google.com/o/oauth2/auth | ||||
| TOKEN_URL = https://accounts.google.com/o/oauth2/token | TOKEN_URL = https://accounts.google.com/o/oauth2/token | ||||
| [oauth.qq] | [oauth.qq] | ||||
| ENABLED = false | ENABLED = false | ||||
| CLIENT_ID = | |||||
| CLIENT_SECRET = | |||||
| CLIENT_ID = | |||||
| CLIENT_SECRET = | |||||
| SCOPES = all | SCOPES = all | ||||
| ; QQ 互联 | ; QQ 互联 | ||||
| ; AUTH_URL = https://graph.qq.com/oauth2.0/authorize | ; AUTH_URL = https://graph.qq.com/oauth2.0/authorize | ||||
| @@ -129,8 +129,8 @@ TOKEN_URL = https://open.t.qq.com/cgi-bin/oauth2/access_token | |||||
| [oauth.weibo] | [oauth.weibo] | ||||
| ENABLED = false | ENABLED = false | ||||
| CLIENT_ID = | |||||
| CLIENT_SECRET = | |||||
| CLIENT_ID = | |||||
| CLIENT_SECRET = | |||||
| SCOPES = all | SCOPES = all | ||||
| AUTH_URL = https://api.weibo.com/oauth2/authorize | AUTH_URL = https://api.weibo.com/oauth2/authorize | ||||
| TOKEN_URL = https://api.weibo.com/oauth2/access_token | TOKEN_URL = https://api.weibo.com/oauth2/access_token | ||||
| @@ -190,7 +190,7 @@ MAX_FILES = 10 | |||||
| ; Specifies the format for fully outputed dates. Defaults to RFC1123 | ; Specifies the format for fully outputed dates. Defaults to RFC1123 | ||||
| ; Special supported values are ANSIC, UnixDate, RubyDate, RFC822, RFC822Z, RFC850, RFC1123, RFC1123Z, RFC3339, RFC3339Nano, Kitchen, Stamp, StampMilli, StampMicro and StampNano | ; Special supported values are ANSIC, UnixDate, RubyDate, RFC822, RFC822Z, RFC850, RFC1123, RFC1123Z, RFC3339, RFC3339Nano, Kitchen, Stamp, StampMilli, StampMicro and StampNano | ||||
| ; For more information about the format see http://golang.org/pkg/time/#pkg-constants | ; For more information about the format see http://golang.org/pkg/time/#pkg-constants | ||||
| FORMAT = | |||||
| FORMAT = | |||||
| [log] | [log] | ||||
| ROOT_PATH = | ROOT_PATH = | ||||
| @@ -204,11 +204,11 @@ LEVEL = Trace | |||||
| ; For "console" mode only | ; For "console" mode only | ||||
| [log.console] | [log.console] | ||||
| LEVEL = | |||||
| LEVEL = | |||||
| ; For "file" mode only | ; For "file" mode only | ||||
| [log.file] | [log.file] | ||||
| LEVEL = | |||||
| LEVEL = | |||||
| ; This enables automated log rotate(switch of following options), default is true | ; This enables automated log rotate(switch of following options), default is true | ||||
| LOG_ROTATE = true | LOG_ROTATE = true | ||||
| ; Max line number of single file, default is 1000000 | ; Max line number of single file, default is 1000000 | ||||
| @@ -222,7 +222,7 @@ MAX_DAYS = 7 | |||||
| ; For "conn" mode only | ; For "conn" mode only | ||||
| [log.conn] | [log.conn] | ||||
| LEVEL = | |||||
| LEVEL = | |||||
| ; Reconnect host for every single message, default is false | ; Reconnect host for every single message, default is false | ||||
| RECONNECT_ON_MSG = false | RECONNECT_ON_MSG = false | ||||
| ; Try to reconnect when connection is lost, default is false | ; Try to reconnect when connection is lost, default is false | ||||
| @@ -230,28 +230,28 @@ RECONNECT = false | |||||
| ; Either "tcp", "unix" or "udp", default is "tcp" | ; Either "tcp", "unix" or "udp", default is "tcp" | ||||
| PROTOCOL = tcp | PROTOCOL = tcp | ||||
| ; Host address | ; Host address | ||||
| ADDR = | |||||
| ADDR = | |||||
| ; For "smtp" mode only | ; For "smtp" mode only | ||||
| [log.smtp] | [log.smtp] | ||||
| LEVEL = | |||||
| LEVEL = | |||||
| ; Name displayed in mail title, default is "Diagnostic message from serve" | ; Name displayed in mail title, default is "Diagnostic message from serve" | ||||
| SUBJECT = Diagnostic message from serve | SUBJECT = Diagnostic message from serve | ||||
| ; Mail server | ; Mail server | ||||
| HOST = | |||||
| HOST = | |||||
| ; Mailer user name and password | ; Mailer user name and password | ||||
| USER = | |||||
| USER = | |||||
| PASSWD = | PASSWD = | ||||
| ; Receivers, can be one or more, e.g. ["1@example.com","2@example.com"] | ; Receivers, can be one or more, e.g. ["1@example.com","2@example.com"] | ||||
| RECEIVERS = | |||||
| RECEIVERS = | |||||
| ; For "database" mode only | ; For "database" mode only | ||||
| [log.database] | [log.database] | ||||
| LEVEL = | |||||
| LEVEL = | |||||
| ; Either "mysql" or "postgres" | ; Either "mysql" or "postgres" | ||||
| DRIVER = | |||||
| DRIVER = | |||||
| ; Based on xorm, e.g.: root:root@localhost/gogs?charset=utf8 | ; Based on xorm, e.g.: root:root@localhost/gogs?charset=utf8 | ||||
| CONN = | |||||
| CONN = | |||||
| [i18n] | [i18n] | ||||
| LANGS = en-US,zh-CN,de-DE | LANGS = en-US,zh-CN,de-DE | ||||
| @@ -59,7 +59,7 @@ _ReSharper* | |||||
| *.ncrunch* | *.ncrunch* | ||||
| .*crunch*.local.xml | .*crunch*.local.xml | ||||
| # Installshield output folder | |||||
| # Installshield output folder | |||||
| [Ee]xpress | [Ee]xpress | ||||
| # DocProject is a documentation generator add-in | # DocProject is a documentation generator add-in | ||||
| @@ -13,7 +13,7 @@ If there's connection error, the server will be disabled and won't be checked ag | |||||
| ## Usage | ## Usage | ||||
| In the [security] section, set | |||||
| In the [security] section, set | |||||
| > LDAP_AUTH = true | > LDAP_AUTH = true | ||||
| then for each LDAP source, set | then for each LDAP source, set | ||||
| @@ -1266,7 +1266,7 @@ body { | |||||
| #issue .issue-child .issue-content .user .avatar { | #issue .issue-child .issue-content .user .avatar { | ||||
| height: 21px; | height: 21px; | ||||
| width: 21px; | width: 21px; | ||||
| } | |||||
| } | |||||
| #issue .issue-line { | #issue .issue-line { | ||||
| border-color: #CCC; | border-color: #CCC; | ||||
| @@ -1808,7 +1808,7 @@ body { | |||||
| position: absolute; | position: absolute; | ||||
| top: 0px; | top: 0px; | ||||
| bottom: 0px; | bottom: 0px; | ||||
| margin: 5px; | margin: 5px; | ||||
| padding: 8px; | padding: 8px; | ||||
| @@ -501,4 +501,4 @@ | |||||
| <glyph horiz-adv-x="1792" /> | <glyph horiz-adv-x="1792" /> | ||||
| <glyph horiz-adv-x="1792" /> | <glyph horiz-adv-x="1792" /> | ||||
| </font> | </font> | ||||
| </defs></svg> | |||||
| </defs></svg> | |||||
| @@ -546,7 +546,7 @@ function initIssue() { | |||||
| if ($textArea.attr("id") == "issue-reply-content") { | if ($textArea.attr("id") == "issue-reply-content") { | ||||
| var $closeBtn = $('#issue-close-btn'); | var $closeBtn = $('#issue-close-btn'); | ||||
| var $openBtn = $('#issue-open-btn'); | var $openBtn = $('#issue-open-btn'); | ||||
| if ($textArea.val().length) { | if ($textArea.val().length) { | ||||
| $closeBtn.val($closeBtn.data("text")); | $closeBtn.val($closeBtn.data("text")); | ||||
| $openBtn.val($openBtn.data("text")); | $openBtn.val($openBtn.data("text")); | ||||
| @@ -575,7 +575,7 @@ function initIssue() { | |||||
| $hoverImage.addClass("attachment-preview-img"); | $hoverImage.addClass("attachment-preview-img"); | ||||
| $hoverElement.append($hoverImage); | $hoverElement.append($hoverImage); | ||||
| $(document.body).append($hoverElement); | |||||
| $(document.body).append($hoverElement); | |||||
| var over = function() { | var over = function() { | ||||
| var $this = $(this); | var $this = $(this); | ||||
| @@ -605,7 +605,7 @@ function initIssue() { | |||||
| $hoverElement.css({"top": top + "px", "left": left + "px"}); | $hoverElement.css({"top": top + "px", "left": left + "px"}); | ||||
| $hoverElement.css({"height": height + 16, "width": width + 16}); | $hoverElement.css({"height": height + 16, "width": width + 16}); | ||||
| $hoverElement.show(); | $hoverElement.show(); | ||||
| }); | |||||
| }); | |||||
| } else { | } else { | ||||
| $hoverElement.show(); | $hoverElement.show(); | ||||
| } | } | ||||
| @@ -624,7 +624,7 @@ function initIssue() { | |||||
| var $addButton = $("#attachments-button"); | var $addButton = $("#attachments-button"); | ||||
| var files = []; | var files = []; | ||||
| var fileInput = document.getElementById("attachments-input"); | var fileInput = document.getElementById("attachments-input"); | ||||
| if (fileInput === null) { | if (fileInput === null) { | ||||
| return; | return; | ||||
| } | } | ||||
| @@ -635,9 +635,9 @@ function initIssue() { | |||||
| files.splice($parent.data("index"), 1); | files.splice($parent.data("index"), 1); | ||||
| $parent.remove(); | $parent.remove(); | ||||
| }); | }); | ||||
| var clickedButton; | var clickedButton; | ||||
| $('input[type="submit"],input[type="button"],button.btn-success', fileInput.form).on('click', function() { | $('input[type="submit"],input[type="button"],button.btn-success', fileInput.form).on('click', function() { | ||||
| clickedButton = this; | clickedButton = this; | ||||
| @@ -722,7 +722,7 @@ function initIssue() { | |||||
| xhr.open("POST", this.action, true); | xhr.open("POST", this.action, true); | ||||
| xhr.send(data); | xhr.send(data); | ||||
| return false; | return false; | ||||
| }); | }); | ||||
| @@ -826,7 +826,7 @@ function initIssue() { | |||||
| //window.location.reload(); | //window.location.reload(); | ||||
| $a.data("assigned", uid); | $a.data("assigned", uid); | ||||
| if (uid > 0) { | |||||
| if (uid > 0) { | |||||
| $('.clear-assignee').toggleShow(); | $('.clear-assignee').toggleShow(); | ||||
| $(".assignee > p").html('<img src="' + img + '"><strong>' + text + '</strong>'); | $(".assignee > p").html('<img src="' + img + '"><strong>' + text + '</strong>'); | ||||
| } else { | } else { | ||||
| @@ -862,12 +862,12 @@ function initIssue() { | |||||
| $('.clear-milestone').toggleShow(); | $('.clear-milestone').toggleShow(); | ||||
| } | } | ||||
| $('.milestone', '#issue').on('click', 'li.milestone-item', function () { | $('.milestone', '#issue').on('click', 'li.milestone-item', function () { | ||||
| var id = $(this).data("id"); | |||||
| var id = $(this).data("id"); | |||||
| if (is_issue_bar) { | if (is_issue_bar) { | ||||
| var m = $m.data("milestone"); | var m = $m.data("milestone"); | ||||
| if (id != m) { | if (id != m) { | ||||
| var text = $(this).text(); | var text = $(this).text(); | ||||
| $.post($m.data("ajax"), { | $.post($m.data("ajax"), { | ||||
| issue: $('#issue').data("id"), | issue: $('#issue').data("id"), | ||||
| milestone: id | milestone: id | ||||
| @@ -876,7 +876,7 @@ function initIssue() { | |||||
| //window.location.reload(); | //window.location.reload(); | ||||
| $m.data("milestone", id); | $m.data("milestone", id); | ||||
| if (id > 0) { | |||||
| if (id > 0) { | |||||
| $('.clear-milestone').toggleShow(); | $('.clear-milestone').toggleShow(); | ||||
| $(".milestone > .name").html('<a href="' + location.pathname + '?milestone=' + id + '"><strong>' + text + '</strong></a>'); | $(".milestone > .name").html('<a href="' + location.pathname + '?milestone=' + id + '"><strong>' + text + '</strong></a>'); | ||||
| } else { | } else { | ||||
| @@ -982,7 +982,7 @@ function initIssue() { | |||||
| $(item).addClass("no-checked"); | $(item).addClass("no-checked"); | ||||
| $("#label-" + id, $labels).remove(); | $("#label-" + id, $labels).remove(); | ||||
| if ($labels.children(".label-item").length == 0) { | if ($labels.children(".label-item").length == 0) { | ||||
| $labels.append("<p>None yet</p>"); | $labels.append("<p>None yet</p>"); | ||||
| } | } | ||||
| @@ -991,7 +991,7 @@ function initIssue() { | |||||
| $(item).removeClass("no-checked"); | $(item).removeClass("no-checked"); | ||||
| $(item).addClass("checked"); | $(item).addClass("checked"); | ||||
| $("p:not([class])", $labels).remove(); | $("p:not([class])", $labels).remove(); | ||||
| var $l = $("<p></p>"); | var $l = $("<p></p>"); | ||||
| @@ -501,4 +501,4 @@ | |||||
| <glyph horiz-adv-x="1792" /> | <glyph horiz-adv-x="1792" /> | ||||
| <glyph horiz-adv-x="1792" /> | <glyph horiz-adv-x="1792" /> | ||||
| </font> | </font> | ||||
| </defs></svg> | |||||
| </defs></svg> | |||||
| @@ -254,11 +254,11 @@ clear: both; | |||||
| .table { | .table { | ||||
| width: 100%; | width: 100%; | ||||
| max-width: 100%; | max-width: 100%; | ||||
| > thead > tr > th, | |||||
| > tbody > tr > th, | |||||
| > tfoot > tr > th, | |||||
| > thead > tr > td, | |||||
| > tbody > tr > td, | |||||
| > thead > tr > th, | |||||
| > tbody > tr > th, | |||||
| > tfoot > tr > th, | |||||
| > thead > tr > td, | |||||
| > tbody > tr > td, | |||||
| > tfoot > tr > td { | > tfoot > tr > td { | ||||
| border-top: 1px solid #e7eaec; | border-top: 1px solid #e7eaec; | ||||
| line-height: 1.42857; | line-height: 1.42857; | ||||
| @@ -268,7 +268,7 @@ clear: both; | |||||
| th { | th { | ||||
| text-align: left; | text-align: left; | ||||
| } | } | ||||
| } | |||||
| } | |||||
| .table-striped { | .table-striped { | ||||
| >tbody>tr:nth-child(odd)>td, | >tbody>tr:nth-child(odd)>td, | ||||
| >tbody>tr:nth-child(odd)>th { | >tbody>tr:nth-child(odd)>th { | ||||
| @@ -189,8 +189,8 @@ The dashboard page style | |||||
| } | } | ||||
| } | } | ||||
| a { | a { | ||||
| text-overflow: ellipsis; | |||||
| -o-text-overflow: ellipsis; | |||||
| text-overflow: ellipsis; | |||||
| -o-text-overflow: ellipsis; | |||||
| overflow: hidden; | overflow: hidden; | ||||
| } | } | ||||
| } | } | ||||
| @@ -21,13 +21,13 @@ fi | |||||
| # Replace the database root password in database image Dockerfile. | # Replace the database root password in database image Dockerfile. | ||||
| sed -i "s/THE_DB_PASSWORD/$DB_PASSWORD/g" images/$DB_TYPE/Dockerfile | sed -i "s/THE_DB_PASSWORD/$DB_PASSWORD/g" images/$DB_TYPE/Dockerfile | ||||
| # Replace the database root password in gogits image deploy.sh file. | |||||
| # Replace the database root password in gogits image deploy.sh file. | |||||
| sed -i "s/THE_DB_PASSWORD/$DB_PASSWORD/g" images/gogits/deploy.sh | sed -i "s/THE_DB_PASSWORD/$DB_PASSWORD/g" images/gogits/deploy.sh | ||||
| # Replace the apt source in gogits image Dockerfile. | |||||
| # Replace the apt source in gogits image Dockerfile. | |||||
| sed -i "s/#$APT_SOURCE#//" images/gogits/Dockerfile | sed -i "s/#$APT_SOURCE#//" images/gogits/Dockerfile | ||||
| # Uncomment the installation of database lib in gogs Dockerfile | # Uncomment the installation of database lib in gogs Dockerfile | ||||
| sed -i "s/#$DB_TYPE#//" images/gogits/Dockerfile | sed -i "s/#$DB_TYPE#//" images/gogits/Dockerfile | ||||
| # Replace the database type in gogits image deploy.sh file. | |||||
| # Replace the database type in gogits image deploy.sh file. | |||||
| sed -i "s/THE_DB_TYPE/$DB_TYPE/g" images/gogits/deploy.sh | sed -i "s/THE_DB_TYPE/$DB_TYPE/g" images/gogits/deploy.sh | ||||
| if [ $MEM_TYPE != "" ] | if [ $MEM_TYPE != "" ] | ||||
| @@ -3,7 +3,7 @@ MAINTAINER Meaglith Ma <genedna@gmail.com> (@genedna) | |||||
| #aliyun#RUN echo "deb http://mirrors.aliyun.com/ubuntu/ saucy main restricted" > /etc/apt/sources.list && echo "deb http://mirrors.aliyun.com/ubuntu/ saucy-updates main restricted" >> /etc/apt/sources.list && echo "deb http://mirrors.aliyun.com/ubuntu/ saucy universe" >> /etc/apt/sources.list && echo "deb http://mirrors.aliyun.com/ubuntu/ saucy-updates universe" >> /etc/apt/sources.list && echo "deb http://mirrors.aliyun.com/ubuntu/ saucy multiverse" >> /etc/apt/sources.list && echo "deb http://mirrors.aliyun.com/ubuntu/ saucy-updates multiverse" >> /etc/apt/sources.list && echo "deb http://mirrors.aliyun.com/ubuntu/ saucy-backports main restricted universe multiverse" >> /etc/apt/sources.list && echo "deb http://mirrors.aliyun.com/ubuntu/ saucy-security main restricted" >> /etc/apt/sources.list && echo "deb http://mirrors.aliyun.com/ubuntu/ saucy-security universe" >> /etc/apt/sources.list && echo "deb http://mirrors.aliyun.com/ubuntu/ saucy-security multiverse" >> /etc/apt/sources.list | #aliyun#RUN echo "deb http://mirrors.aliyun.com/ubuntu/ saucy main restricted" > /etc/apt/sources.list && echo "deb http://mirrors.aliyun.com/ubuntu/ saucy-updates main restricted" >> /etc/apt/sources.list && echo "deb http://mirrors.aliyun.com/ubuntu/ saucy universe" >> /etc/apt/sources.list && echo "deb http://mirrors.aliyun.com/ubuntu/ saucy-updates universe" >> /etc/apt/sources.list && echo "deb http://mirrors.aliyun.com/ubuntu/ saucy multiverse" >> /etc/apt/sources.list && echo "deb http://mirrors.aliyun.com/ubuntu/ saucy-updates multiverse" >> /etc/apt/sources.list && echo "deb http://mirrors.aliyun.com/ubuntu/ saucy-backports main restricted universe multiverse" >> /etc/apt/sources.list && echo "deb http://mirrors.aliyun.com/ubuntu/ saucy-security main restricted" >> /etc/apt/sources.list && echo "deb http://mirrors.aliyun.com/ubuntu/ saucy-security universe" >> /etc/apt/sources.list && echo "deb http://mirrors.aliyun.com/ubuntu/ saucy-security multiverse" >> /etc/apt/sources.list | ||||
| #nchc#RUN echo "deb http://free.nchc.org.tw/ubuntu/ saucy main restricted" >> /etc/apt/source.list && echo "deb-src http://free.nchc.org.tw/ubuntu/ saucy main restricted" >> /etc/apt/source.list && echo "deb http://free.nchc.org.tw/ubuntu/ saucy-updates main restricted" >> /etc/apt/source.list && echo "deb-src http://free.nchc.org.tw/ubuntu/ saucy-updates main restricted" >> /etc/apt/source.list && echo "deb http://free.nchc.org.tw/ubuntu/ saucy universe" >> /etc/apt/source.list && echo "deb-src http://free.nchc.org.tw/ubuntu/ saucy universe" >> /etc/apt/source.list && echo "deb http://free.nchc.org.tw/ubuntu/ saucy-updates universe" >> /etc/apt/source.list && echo "deb-src http://free.nchc.org.tw/ubuntu/ saucy-updates universe" >> /etc/apt/source.list && echo "deb http://free.nchc.org.tw/ubuntu/ saucy multiverse" >> /etc/apt/source.list && echo "deb-src http://free.nchc.org.tw/ubuntu/ saucy multiverse" >> /etc/apt/source.list && echo "deb http://free.nchc.org.tw/ubuntu/ saucy-updates multiverse" >> /etc/apt/source.list && echo "deb-src http://free.nchc.org.tw/ubuntu/ saucy-updates multiverse" >> /etc/apt/source.list && echo "deb http://free.nchc.org.tw/ubuntu/ saucy-backports main restricted universe multiverse" >> /etc/apt/source.list && echo "deb-src http://free.nchc.org.tw/ubuntu/ saucy-backports main restricted universe multiverse" >> /etc/apt/source.list && echo "deb http://free.nchc.org.tw/ubuntu/ saucy-security main restricted" >> /etc/apt/source.list && echo "deb-src http://free.nchc.org.tw/ubuntu/ saucy-security main restricted" >> /etc/apt/source.list && echo "deb http://free.nchc.org.tw/ubuntu/ saucy-security universe" >> /etc/apt/source.list && echo "deb-src http://free.nchc.org.tw/ubuntu/ saucy-security universe" >> /etc/apt/source.list && echo "deb http://free.nchc.org.tw/ubuntu/ saucy-security multiverse" >> /etc/apt/source.list && echo "deb-src http://free.nchc.org.tw/ubuntu/ saucy-security multiverse" >> /etc/apt/source.list && echo "deb http://extras.ubuntu.com/ubuntu saucy main" >> /etc/apt/source.list && echo "deb-src http://extras.ubuntu.com/ubuntu saucy main" >> /etc/apt/source.list | |||||
| #nchc#RUN echo "deb http://free.nchc.org.tw/ubuntu/ saucy main restricted" >> /etc/apt/source.list && echo "deb-src http://free.nchc.org.tw/ubuntu/ saucy main restricted" >> /etc/apt/source.list && echo "deb http://free.nchc.org.tw/ubuntu/ saucy-updates main restricted" >> /etc/apt/source.list && echo "deb-src http://free.nchc.org.tw/ubuntu/ saucy-updates main restricted" >> /etc/apt/source.list && echo "deb http://free.nchc.org.tw/ubuntu/ saucy universe" >> /etc/apt/source.list && echo "deb-src http://free.nchc.org.tw/ubuntu/ saucy universe" >> /etc/apt/source.list && echo "deb http://free.nchc.org.tw/ubuntu/ saucy-updates universe" >> /etc/apt/source.list && echo "deb-src http://free.nchc.org.tw/ubuntu/ saucy-updates universe" >> /etc/apt/source.list && echo "deb http://free.nchc.org.tw/ubuntu/ saucy multiverse" >> /etc/apt/source.list && echo "deb-src http://free.nchc.org.tw/ubuntu/ saucy multiverse" >> /etc/apt/source.list && echo "deb http://free.nchc.org.tw/ubuntu/ saucy-updates multiverse" >> /etc/apt/source.list && echo "deb-src http://free.nchc.org.tw/ubuntu/ saucy-updates multiverse" >> /etc/apt/source.list && echo "deb http://free.nchc.org.tw/ubuntu/ saucy-backports main restricted universe multiverse" >> /etc/apt/source.list && echo "deb-src http://free.nchc.org.tw/ubuntu/ saucy-backports main restricted universe multiverse" >> /etc/apt/source.list && echo "deb http://free.nchc.org.tw/ubuntu/ saucy-security main restricted" >> /etc/apt/source.list && echo "deb-src http://free.nchc.org.tw/ubuntu/ saucy-security main restricted" >> /etc/apt/source.list && echo "deb http://free.nchc.org.tw/ubuntu/ saucy-security universe" >> /etc/apt/source.list && echo "deb-src http://free.nchc.org.tw/ubuntu/ saucy-security universe" >> /etc/apt/source.list && echo "deb http://free.nchc.org.tw/ubuntu/ saucy-security multiverse" >> /etc/apt/source.list && echo "deb-src http://free.nchc.org.tw/ubuntu/ saucy-security multiverse" >> /etc/apt/source.list && echo "deb http://extras.ubuntu.com/ubuntu saucy main" >> /etc/apt/source.list && echo "deb-src http://extras.ubuntu.com/ubuntu saucy main" >> /etc/apt/source.list | |||||
| RUN mkdir -p /go | RUN mkdir -p /go | ||||
| ENV PATH /usr/local/go/bin:/go/bin:$PATH | ENV PATH /usr/local/go/bin:/go/bin:$PATH | ||||
| @@ -16,7 +16,7 @@ RUN apt-get install -yq vim sudo | |||||
| RUN curl -sL https://golang.org/dl/go1.3.linux-amd64.tar.gz | tar -v -C /usr/local -xz | RUN curl -sL https://golang.org/dl/go1.3.linux-amd64.tar.gz | tar -v -C /usr/local -xz | ||||
| RUN cd /usr/local/go/src && ./make.bash --no-clean 2>&1 | RUN cd /usr/local/go/src && ./make.bash --no-clean 2>&1 | ||||
| RUN go get -u -d github.com/gogits/gogs | |||||
| RUN go get -u -d github.com/gogits/gogs | |||||
| RUN cd $GOPATH/src/github.com/gogits/gogs && git checkout dev && git pull origin dev && go install && go build -tags redis | RUN cd $GOPATH/src/github.com/gogits/gogs && git checkout dev && git pull origin dev && go install && go build -tags redis | ||||
| # Clean all the unused packages | # Clean all the unused packages | ||||
| @@ -9,15 +9,15 @@ MEM_TYPE=THE_MEM_TYPE | |||||
| DB_TYPE_LINE=`awk '$0 ~ str{print NR}' str="DB_TYPE = mysql" $GOPATH/src/github.com/gogits/gogs/conf/app.ini` | DB_TYPE_LINE=`awk '$0 ~ str{print NR}' str="DB_TYPE = mysql" $GOPATH/src/github.com/gogits/gogs/conf/app.ini` | ||||
| DB_PASSWORD_LINE=`awk '$0 ~ str{print NR+1}' str="USER = root" $GOPATH/src/github.com/gogits/gogs/conf/app.ini` | DB_PASSWORD_LINE=`awk '$0 ~ str{print NR+1}' str="USER = root" $GOPATH/src/github.com/gogits/gogs/conf/app.ini` | ||||
| sed -i "${DB_TYPE_LINE}s/.*$/DB_TYPE = $DB_TYPE/g" $GOPATH/src/github.com/gogits/gogs/conf/app.ini | |||||
| sed -i "${DB_PASSWORD_LINE}s/.*$/PASSWD = $DB_PASSWORD/g" $GOPATH/src/github.com/gogits/gogs/conf/app.ini | |||||
| sed -i "${DB_TYPE_LINE}s/.*$/DB_TYPE = $DB_TYPE/g" $GOPATH/src/github.com/gogits/gogs/conf/app.ini | |||||
| sed -i "${DB_PASSWORD_LINE}s/.*$/PASSWD = $DB_PASSWORD/g" $GOPATH/src/github.com/gogits/gogs/conf/app.ini | |||||
| if [ $MEM_TYPE != "" ] | if [ $MEM_TYPE != "" ] | ||||
| then | then | ||||
| MEM_HOST_LINE=`awk '$0 ~ str{print NR+6}' str="ADAPTER = memory" $GOPATH/src/github.com/gogits/gogs/conf/app.ini` | MEM_HOST_LINE=`awk '$0 ~ str{print NR+6}' str="ADAPTER = memory" $GOPATH/src/github.com/gogits/gogs/conf/app.ini` | ||||
| _MEM_ADDR=`echo $MEM_PORT | cut -d '/' -f 3 | cut -d ':' -f 1` | _MEM_ADDR=`echo $MEM_PORT | cut -d '/' -f 3 | cut -d ':' -f 1` | ||||
| _MEM_PORT=`echo $MEM_PORT | cut -d '/' -f 3 | cut -d ':' -f 2` | _MEM_PORT=`echo $MEM_PORT | cut -d '/' -f 3 | cut -d ':' -f 2` | ||||
| @@ -54,7 +54,7 @@ fi | |||||
| #sed -i "/HOST = 127.0.0.1:3306/c\HOST = $DB_PORT_3306_TCP_ADDR:$DB_PORT_3306_TCP_PORT" $GOPATH/src/github.com/gogits/gogs/conf/app.ini | #sed -i "/HOST = 127.0.0.1:3306/c\HOST = $DB_PORT_3306_TCP_ADDR:$DB_PORT_3306_TCP_PORT" $GOPATH/src/github.com/gogits/gogs/conf/app.ini | ||||
| sed -i "/HOST = 127.0.0.1:3306/c\HOST = `echo $DB_PORT | cut -d '/' -f 3`" $GOPATH/src/github.com/gogits/gogs/conf/app.ini | sed -i "/HOST = 127.0.0.1:3306/c\HOST = `echo $DB_PORT | cut -d '/' -f 3`" $GOPATH/src/github.com/gogits/gogs/conf/app.ini | ||||
| cd $GOPATH/src/github.com/gogits/gogs/ | |||||
| cd $GOPATH/src/github.com/gogits/gogs/ | |||||
| # The sudo is a must here, or the go within docker container won't get the current user by os.Getenv("USERNAME") | # The sudo is a must here, or the go within docker container won't get the current user by os.Getenv("USERNAME") | ||||
| sudo ./gogs web | sudo ./gogs web | ||||
| @@ -13,7 +13,7 @@ RUN apt-get install -y memcached | |||||
| EXPOSE 11211 | EXPOSE 11211 | ||||
| # Default Memcached run command arguments | # Default Memcached run command arguments | ||||
| # Change to limit memory when creating container in Tutum | |||||
| # Change to limit memory when creating container in Tutum | |||||
| CMD ["-m", "64"] | CMD ["-m", "64"] | ||||
| # Set the user to run Memcached daemon | # Set the user to run Memcached daemon | ||||
| @@ -6,20 +6,20 @@ MAINTAINER Meaglith Ma <genedna@gmail.com> (@genedna) | |||||
| RUN apt-get install -y --force-yes software-properties-common | RUN apt-get install -y --force-yes software-properties-common | ||||
| RUN add-apt-repository -y "deb http://archive.ubuntu.com/ubuntu $(lsb_release -sc) universe" | RUN add-apt-repository -y "deb http://archive.ubuntu.com/ubuntu $(lsb_release -sc) universe" | ||||
| RUN apt-get --yes --force-yes update | RUN apt-get --yes --force-yes update | ||||
| RUN apt-get --yes --force-yes upgrade | |||||
| RUN apt-get --yes --force-yes upgrade | |||||
| ENV MYSQL_PASSWORD THE_DB_PASSWORD | ENV MYSQL_PASSWORD THE_DB_PASSWORD | ||||
| RUN echo "mysql-server mysql-server/root_password password $MYSQL_PASSWORD" | debconf-set-selections | |||||
| RUN echo "mysql-server mysql-server/root_password password $MYSQL_PASSWORD" | debconf-set-selections | |||||
| RUN echo "mysql-server mysql-server/root_password_again password $MYSQL_PASSWORD" | debconf-set-selections | RUN echo "mysql-server mysql-server/root_password_again password $MYSQL_PASSWORD" | debconf-set-selections | ||||
| RUN apt-get update && apt-get install -y --force-yes mysql-server | |||||
| RUN apt-get update && apt-get install -y --force-yes mysql-server | |||||
| RUN sed -i -e"s/^bind-address\s*=\s*127.0.0.1/bind-address = 0.0.0.0/" /etc/mysql/my.cnf | RUN sed -i -e"s/^bind-address\s*=\s*127.0.0.1/bind-address = 0.0.0.0/" /etc/mysql/my.cnf | ||||
| RUN service mysql restart | RUN service mysql restart | ||||
| RUN echo "mysql -uroot -p$MYSQL_PASSWORD -e 'drop database if exists gogs;'" >> import.sh | |||||
| RUN echo "mysql -uroot -p$MYSQL_PASSWORD -e 'create database gogs;'" >> import.sh | |||||
| RUN echo "mysql -uroot -p$MYSQL_PASSWORD -e 'drop database if exists gogs;'" >> import.sh | |||||
| RUN echo "mysql -uroot -p$MYSQL_PASSWORD -e 'create database gogs;'" >> import.sh | |||||
| RUN chmod +x import.sh | RUN chmod +x import.sh | ||||
| RUN apt-get autoremove -y | RUN apt-get autoremove -y | ||||
| @@ -32,4 +32,4 @@ RUN /usr/sbin/mysqld & \ | |||||
| EXPOSE 3306 | EXPOSE 3306 | ||||
| CMD ["/usr/bin/mysqld_safe", "--skip-syslog", "--log-error=/dev/null"] | |||||
| CMD ["/usr/bin/mysqld_safe", "--skip-syslog", "--log-error=/dev/null"] | |||||
| @@ -2,7 +2,7 @@ FROM ubuntu | |||||
| MAINTAINER SvenDowideit@docker.com | MAINTAINER SvenDowideit@docker.com | ||||
| # Add the PostgreSQL PGP key to verify their Debian packages. | # Add the PostgreSQL PGP key to verify their Debian packages. | ||||
| # It should be the same key as https://www.postgresql.org/media/keys/ACCC4CF8.asc | |||||
| # It should be the same key as https://www.postgresql.org/media/keys/ACCC4CF8.asc | |||||
| RUN apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys B97B0AFCAA1A47F044F244A07FCC7D46ACCC4CF8 | RUN apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys B97B0AFCAA1A47F044F244A07FCC7D46ACCC4CF8 | ||||
| # Add PostgreSQL's repository. It contains the most recent stable release | # Add PostgreSQL's repository. It contains the most recent stable release | ||||
| @@ -20,7 +20,7 @@ RUN apt-get -y -q install python-software-properties software-properties-common | |||||
| RUN apt-get -y -q install postgresql-9.3 postgresql-client-9.3 postgresql-contrib-9.3 | RUN apt-get -y -q install postgresql-9.3 postgresql-client-9.3 postgresql-contrib-9.3 | ||||
| # Note: The official Debian and Ubuntu images automatically ``apt-get clean`` | # Note: The official Debian and Ubuntu images automatically ``apt-get clean`` | ||||
| # after each ``apt-get`` | |||||
| # after each ``apt-get`` | |||||
| # Run the rest of the commands as the ``postgres`` user created by the ``postgres-9.3`` package when it was ``apt-get installed`` | # Run the rest of the commands as the ``postgres`` user created by the ``postgres-9.3`` package when it was ``apt-get installed`` | ||||
| USER postgres | USER postgres | ||||
| @@ -34,7 +34,7 @@ RUN /etc/init.d/postgresql start &&\ | |||||
| createdb -O root gogs | createdb -O root gogs | ||||
| # Adjust PostgreSQL configuration so that remote connections to the | # Adjust PostgreSQL configuration so that remote connections to the | ||||
| # database are possible. | |||||
| # database are possible. | |||||
| RUN echo "host all all 0.0.0.0/0 md5" >> /etc/postgresql/9.3/main/pg_hba.conf | RUN echo "host all all 0.0.0.0/0 md5" >> /etc/postgresql/9.3/main/pg_hba.conf | ||||
| # And add ``listen_addresses`` to ``/etc/postgresql/9.3/main/postgresql.conf`` | # And add ``listen_addresses`` to ``/etc/postgresql/9.3/main/postgresql.conf`` | ||||
| @@ -5,8 +5,8 @@ echo 'plase remember to modify the command path in etc/supervisord.conf(line 23) | |||||
| PID="/tmp/supervisord.pid" | PID="/tmp/supervisord.pid" | ||||
| CONF="etc/supervisord.conf" | CONF="etc/supervisord.conf" | ||||
| LOGDIR="log" | |||||
| if [ ! -d $LOGDIR ]; then | |||||
| LOGDIR="log" | |||||
| if [ ! -d $LOGDIR ]; then | |||||
| mkdir $LOGDIR | mkdir $LOGDIR | ||||
| fi | fi | ||||
| @@ -5,7 +5,7 @@ | |||||
| # | # | ||||
| # start gogs web | # start gogs web | ||||
| # | # | ||||
| IFS=' | |||||
| IFS=' | |||||
| ' | ' | ||||
| PATH=/bin:/usr/bin:/usr/local/bin | PATH=/bin:/usr/bin:/usr/local/bin | ||||
| USER=$(whoami) | USER=$(whoami) | ||||
| @@ -26,7 +26,7 @@ | |||||
| <label class="req" for="name">{{.i18n.Tr "admin.auths.auth_name"}}</label> | <label class="req" for="name">{{.i18n.Tr "admin.auths.auth_name"}}</label> | ||||
| <input class="ipt ipt-large ipt-radius {{if .Err_AuthName}}ipt-error{{end}}" id="name" name="name" value="{{.name}}" required /> | <input class="ipt ipt-large ipt-radius {{if .Err_AuthName}}ipt-error{{end}}" id="name" name="name" value="{{.name}}" required /> | ||||
| </div> | </div> | ||||
| <div class="ldap"> | |||||
| <div class="ldap"> | |||||
| <div class="field"> | <div class="field"> | ||||
| <label class="req" for="domain">{{.i18n.Tr "admin.auths.domain"}}</label> | <label class="req" for="domain">{{.i18n.Tr "admin.auths.domain"}}</label> | ||||
| <input class="ipt ipt-large ipt-radius {{if .Err_Domain}}ipt-error{{end}}" id="domain" name="domain" value="{{.domain}}" /> | <input class="ipt ipt-large ipt-radius {{if .Err_Domain}}ipt-error{{end}}" id="domain" name="domain" value="{{.domain}}" /> | ||||
| @@ -1,4 +1,4 @@ | |||||
| {{template "ng/base/head" .}} | |||||
| {{template "ng/base/head" .}} | |||||
| {{template "ng/base/header" .}} | {{template "ng/base/header" .}} | ||||
| <div id="promo-wrapper"> | <div id="promo-wrapper"> | ||||
| <div class="container clear"> | <div class="container clear"> | ||||
| @@ -87,7 +87,7 @@ | |||||
| <p class="help-block">The user has access to visit and run Gogs.</p> | <p class="help-block">The user has access to visit and run Gogs.</p> | ||||
| </div> | </div> | ||||
| </div> | </div> | ||||
| <div class="form-group"> | <div class="form-group"> | ||||
| <label class="col-md-3 control-label">Domain: </label> | <label class="col-md-3 control-label">Domain: </label> | ||||
| <div class="col-md-8"> | <div class="col-md-8"> | ||||
| @@ -95,7 +95,7 @@ | |||||
| <p class="help-block">This affects SSH clone URL.</p> | <p class="help-block">This affects SSH clone URL.</p> | ||||
| </div> | </div> | ||||
| </div> | </div> | ||||
| <div class="form-group"> | <div class="form-group"> | ||||
| <label class="col-md-3 control-label">App URL: </label> | <label class="col-md-3 control-label">App URL: </label> | ||||
| <div class="col-md-8"> | <div class="col-md-8"> | ||||
| @@ -10,7 +10,7 @@ | |||||
| <p> | <p> | ||||
| --- | --- | ||||
| <br> | <br> | ||||
| View it on Gogs: | |||||
| View it on Gogs: | |||||
| <br> | <br> | ||||
| <a href="{{.AppUrl}}{{.RepoLink}}">{{.AppUrl}}{{.RepoLink}}</a> | <a href="{{.AppUrl}}{{.RepoLink}}">{{.AppUrl}}{{.RepoLink}}</a> | ||||
| </p> | </p> | ||||
| @@ -30,15 +30,15 @@ | |||||
| <div class="field"> | <div class="field"> | ||||
| <h4 class="text-center">{{.i18n.Tr "org.team_permission_desc"}}</h4> | <h4 class="text-center">{{.i18n.Tr "org.team_permission_desc"}}</h4> | ||||
| <label></label> | <label></label> | ||||
| <input name="permission" type="radio" value="read" {{if or .PageIsOrgTeamsNew (eq .Team.Authorize 1)}}checked{{end}}> {{.i18n.Tr "org.teams.read_access"}} | |||||
| <input name="permission" type="radio" value="read" {{if or .PageIsOrgTeamsNew (eq .Team.Authorize 1)}}checked{{end}}> {{.i18n.Tr "org.teams.read_access"}} | |||||
| <label></label> | <label></label> | ||||
| <p class="text-grey note">{{.i18n.Tr "org.teams.read_access_helper"}}</p> | <p class="text-grey note">{{.i18n.Tr "org.teams.read_access_helper"}}</p> | ||||
| <label></label> | <label></label> | ||||
| <input name="permission" type="radio" value="write" {{if eq .Team.Authorize 2}}checked{{end}}> {{.i18n.Tr "org.teams.write_access"}} | |||||
| <input name="permission" type="radio" value="write" {{if eq .Team.Authorize 2}}checked{{end}}> {{.i18n.Tr "org.teams.write_access"}} | |||||
| <label></label> | <label></label> | ||||
| <p class="text-grey note">{{.i18n.Tr "org.teams.write_access_helper"}}</p> | <p class="text-grey note">{{.i18n.Tr "org.teams.write_access_helper"}}</p> | ||||
| <label></label> | <label></label> | ||||
| <input name="permission" type="radio" value="admin" {{if eq .Team.Authorize 3}}checked{{end}}> {{.i18n.Tr "org.teams.admin_access"}} | |||||
| <input name="permission" type="radio" value="admin" {{if eq .Team.Authorize 3}}checked{{end}}> {{.i18n.Tr "org.teams.admin_access"}} | |||||
| <label></label> | <label></label> | ||||
| <p class="text-grey note">{{.i18n.Tr "org.teams.admin_access_helper"}}</p> | <p class="text-grey note">{{.i18n.Tr "org.teams.admin_access_helper"}}</p> | ||||
| </div> | </div> | ||||
| @@ -14,7 +14,7 @@ | |||||
| <div id="repo-content" class="clear container"> | <div id="repo-content" class="clear container"> | ||||
| <div id="repo-bare"> | <div id="repo-bare"> | ||||
| <div id="repo-bare-start" class="panel panel-radius"> | <div id="repo-bare-start" class="panel panel-radius"> | ||||
| <div class="panel-header"> | |||||
| <div class="panel-header"> | |||||
| <a class="btn btn-small btn-black btn-header btn-radius right" href="{{.RepoLink}}/settings">{{.i18n.Tr "repo.settings"}}</a> | <a class="btn btn-small btn-black btn-header btn-radius right" href="{{.RepoLink}}/settings">{{.i18n.Tr "repo.settings"}}</a> | ||||
| <strong>Quick Start</strong> | <strong>Quick Start</strong> | ||||
| </div> | </div> | ||||
| @@ -104,8 +104,8 @@ | |||||
| </div> | </div> | ||||
| {{if .AttachmentsEnabled}} | {{if .AttachmentsEnabled}} | ||||
| <div id="attached"> | <div id="attached"> | ||||
| <div id="attached-list"> | |||||
| <b>Attachments:</b> | |||||
| <div id="attached-list"> | |||||
| <b>Attachments:</b> | |||||
| </div> | </div> | ||||
| </div> | </div> | ||||
| {{end}} | {{end}} | ||||
| @@ -45,19 +45,19 @@ | |||||
| <div class="tab-pane issue-preview-content" id="issue-edit-preview">Loading...</div> | <div class="tab-pane issue-preview-content" id="issue-edit-preview">Loading...</div> | ||||
| </div> | </div> | ||||
| </div> | </div> | ||||
| </div> | |||||
| </div> | |||||
| </div> | </div> | ||||
| {{with $attachments := .Issue.Attachments}} | {{with $attachments := .Issue.Attachments}} | ||||
| {{if $attachments}} | {{if $attachments}} | ||||
| <div class="attachments"> | <div class="attachments"> | ||||
| <span class="attachment-label label label-info">Attachments:</span> | <span class="attachment-label label label-info">Attachments:</span> | ||||
| {{range $attachments}} | {{range $attachments}} | ||||
| <a class="attachment label label-default" href="{{.IssueId}}/attachment/{{.Id}}">{{.Name}}</a> | <a class="attachment label label-default" href="{{.IssueId}}/attachment/{{.Id}}">{{.Name}}</a> | ||||
| {{end}} | {{end}} | ||||
| </div> | </div> | ||||
| {{end}} | {{end}} | ||||
| {{end}} | |||||
| {{end}} | |||||
| </div> | </div> | ||||
| {{range .Comments}} | {{range .Comments}} | ||||
| {{/* 0 = COMMENT, 1 = REOPEN, 2 = CLOSE, 3 = ISSUE, 4 = COMMIT, 5 = PULL */}} | {{/* 0 = COMMENT, 1 = REOPEN, 2 = CLOSE, 3 = ISSUE, 4 = COMMIT, 5 = PULL */}} | ||||
| @@ -145,7 +145,7 @@ | |||||
| {{if .AttachmentsEnabled}} | {{if .AttachmentsEnabled}} | ||||
| <div id="attached"> | <div id="attached"> | ||||
| <div id="attached-list"> | <div id="attached-list"> | ||||
| <b>Attachments:</b> | |||||
| <b>Attachments:</b> | |||||
| </div> | </div> | ||||
| </div> | </div> | ||||
| {{end}} | {{end}} | ||||
| @@ -44,4 +44,4 @@ | |||||
| </div> | </div> | ||||
| </div> | </div> | ||||
| </div> | </div> | ||||
| {{template "ng/base/footer" .}} | |||||
| {{template "ng/base/footer" .}} | |||||
| @@ -21,7 +21,7 @@ | |||||
| </div> | </div> | ||||
| {{end}} | {{end}} | ||||
| </div> | </div> | ||||
| {{if not .FileIsText}} | {{if not .FileIsText}} | ||||
| <div class="panel-body file-body file-code code-view"> | <div class="panel-body file-body file-code code-view"> | ||||
| {{if .IsImageFile}} | {{if .IsImageFile}} | ||||
| @@ -1,4 +1,4 @@ | |||||
| {{template "ng/base/head" .}} | |||||
| {{template "ng/base/head" .}} | |||||
| {{template "ng/base/header" .}} | {{template "ng/base/header" .}} | ||||
| <div id="sign-wrapper"> | <div id="sign-wrapper"> | ||||
| <form class="form-align form panel sign-panel sign-form container panel-radius" id="sign-up-form" action="/user/activate" method="post"> | <form class="form-align form panel sign-panel sign-form container panel-radius" id="sign-up-form" action="/user/activate" method="post"> | ||||
| @@ -1,4 +1,4 @@ | |||||
| {{template "ng/base/head" .}} | |||||
| {{template "ng/base/head" .}} | |||||
| {{template "ng/base/header" .}} | {{template "ng/base/header" .}} | ||||
| <div id="sign-wrapper"> | <div id="sign-wrapper"> | ||||
| <form class="form-align form panel sign-panel sign-form container panel-radius" id="sign-up-form" action="/user/forget_password" method="post"> | <form class="form-align form panel sign-panel sign-form container panel-radius" id="sign-up-form" action="/user/forget_password" method="post"> | ||||
| @@ -1,4 +1,4 @@ | |||||
| {{template "ng/base/head" .}} | |||||
| {{template "ng/base/head" .}} | |||||
| {{template "ng/base/header" .}} | {{template "ng/base/header" .}} | ||||
| <div id="sign-wrapper"> | <div id="sign-wrapper"> | ||||
| <form class="form-align form panel sign-panel sign-form container panel-radius" id="sign-up-form" action="/user/reset_password?code={{.Code}}" method="post"> | <form class="form-align form panel sign-panel sign-form container panel-radius" id="sign-up-form" action="/user/reset_password?code={{.Code}}" method="post"> | ||||
| @@ -11,7 +11,7 @@ | |||||
| </div> | </div> | ||||
| <div class="content left {{if eq .GetOpType 5}}push-news{{end}}"> | <div class="content left {{if eq .GetOpType 5}}push-news{{end}}"> | ||||
| <p class="text-bold"> | <p class="text-bold"> | ||||
| <a href="/{{.GetActUserName}}">{{.GetActUserName}}</a> | |||||
| <a href="/{{.GetActUserName}}">{{.GetActUserName}}</a> | |||||
| {{if eq .GetOpType 1}} | {{if eq .GetOpType 1}} | ||||
| {{$.i18n.Tr "action.create_repo" .GetRepoLink .GetRepoLink | Str2html}} | {{$.i18n.Tr "action.create_repo" .GetRepoLink .GetRepoLink | Str2html}} | ||||
| {{else if eq .GetOpType 5}} | {{else if eq .GetOpType 5}} | ||||
| @@ -9,7 +9,7 @@ | |||||
| {{if .Owner.FullName}}<span id="user-full-name" class="center-block">{{.Owner.FullName}}</span>{{end}} | {{if .Owner.FullName}}<span id="user-full-name" class="center-block">{{.Owner.FullName}}</span>{{end}} | ||||
| <span id="user-name" class="center-block">{{.Owner.Name}}</span> | <span id="user-name" class="center-block">{{.Owner.Name}}</span> | ||||
| </div> | </div> | ||||
| <div class="profile-info"> | <div class="profile-info"> | ||||
| <ul class="list-group"> | <ul class="list-group"> | ||||
| {{if .Owner.Location}} | {{if .Owner.Location}} | ||||