@@ -3,7 +3,7 @@ Gogs - Go Git Service [ |  | ||||
##### Current tip version: 0.9.91 (see [Releases](https://github.com/gogits/gogs/releases) for binary versions) | |||||
##### Current tip version: 0.9.92 (see [Releases](https://github.com/gogits/gogs/releases) for binary versions) | |||||
| Web | UI | Preview | | | Web | UI | Preview | | ||||
|:-------------:|:-------:|:-------:| | |:-------------:|:-------:|:-------:| | ||||
@@ -511,7 +511,7 @@ func runWeb(ctx *cli.Context) error { | |||||
// m.Post("/upload-file", repo.UploadFileToServer) | // m.Post("/upload-file", repo.UploadFileToServer) | ||||
// m.Post("/upload-remove", bindIgnErr(auth.RemoveUploadFileForm{}), repo.RemoveUploadFileFromServer) | // m.Post("/upload-remove", bindIgnErr(auth.RemoveUploadFileForm{}), repo.RemoveUploadFileFromServer) | ||||
}, reqRepoWriter, context.RepoRef(), func(ctx *context.Context) { | }, reqRepoWriter, context.RepoRef(), func(ctx *context.Context) { | ||||
if ctx.Repo.IsViewCommit { | |||||
if !ctx.Repo.Repository.CanEnableEditor() || ctx.Repo.IsViewCommit { | |||||
ctx.Handle(404, "", nil) | ctx.Handle(404, "", nil) | ||||
return | return | ||||
} | } | ||||
@@ -17,7 +17,7 @@ import ( | |||||
"github.com/gogits/gogs/modules/setting" | "github.com/gogits/gogs/modules/setting" | ||||
) | ) | ||||
const APP_VER = "0.9.91.0828" | |||||
const APP_VER = "0.9.92.0828" | |||||
func init() { | func init() { | ||||
runtime.GOMAXPROCS(runtime.NumCPU()) | runtime.GOMAXPROCS(runtime.NumCPU()) | ||||
@@ -444,6 +444,11 @@ func (repo *Repository) AllowsPulls() bool { | |||||
return repo.CanEnablePulls() && repo.EnablePulls | return repo.CanEnablePulls() && repo.EnablePulls | ||||
} | } | ||||
// CanEnableEditor returns true if repository meets the requirements of web editor. | |||||
func (repo *Repository) CanEnableEditor() bool { | |||||
return !repo.IsMirror | |||||
} | |||||
// FIXME: should have a mutex to prevent producing same index for two issues that are created | // FIXME: should have a mutex to prevent producing same index for two issues that are created | ||||
// closely enough. | // closely enough. | ||||
func (repo *Repository) NextIssueIndex() int64 { | func (repo *Repository) NextIssueIndex() int64 { | ||||
@@ -1 +1 @@ | |||||
0.9.91.0828 | |||||
0.9.92.0828 |
@@ -33,18 +33,22 @@ | |||||
</div> | </div> | ||||
</div> | </div> | ||||
<div class="right fitted item"> | <div class="right fitted item"> | ||||
<div id="file-buttons" class="ui tiny buttons"> | |||||
{{if .CanAddFile}} | |||||
<a href="{{.RepoLink}}/_new/{{EscapePound .BranchName}}/{{EscapePound .TreePath}}" class="ui button"> | |||||
{{.i18n.Tr "repo.editor.new_file"}} | |||||
</a> | |||||
{{end}} | |||||
{{if .UploadFileLink}} | |||||
<!-- <a href="{{EscapePound .UploadFileLink}}" class="ui button nowrap"> | |||||
<i class="upload icon"></i> {{.i18n.Tr "repo.upload_file"}} | |||||
</a> --> | |||||
{{end}} | |||||
</div> | |||||
{{if .Repository.CanEnableEditor}} | |||||
<div id="file-buttons" class="ui tiny buttons"> | |||||
{{if .CanAddFile}} | |||||
<a href="{{.RepoLink}}/_new/{{EscapePound .BranchName}}/{{EscapePound .TreePath}}" class="ui button"> | |||||
{{.i18n.Tr "repo.editor.new_file"}} | |||||
</a> | |||||
{{end}} | |||||
{{if .UploadFileLink}} | |||||
<!-- <a href="{{EscapePound .UploadFileLink}}" class="ui button nowrap"> | |||||
<i class="upload icon"></i> {{.i18n.Tr "repo.upload_file"}} | |||||
</a> --> | |||||
{{end}} | |||||
</div> | |||||
{{end}} | |||||
<!-- Only show colne panel in repository home page --> | |||||
{{if eq $n 0}} | {{if eq $n 0}} | ||||
<div class="ui action small input" id="clone-panel"> | <div class="ui action small input" id="clone-panel"> | ||||
<button class="ui basic clone button" id="repo-clone-https" data-link="{{.CloneLink.HTTPS}}"> | <button class="ui basic clone button" id="repo-clone-https" data-link="{{.CloneLink.HTTPS}}"> | ||||
@@ -20,15 +20,17 @@ | |||||
<a class="ui button" href="{{.RepoLink}}/commits/{{EscapePound .BranchName}}/{{EscapePound .TreePath}}">{{.i18n.Tr "repo.file_history"}}</a> | <a class="ui button" href="{{.RepoLink}}/commits/{{EscapePound .BranchName}}/{{EscapePound .TreePath}}">{{.i18n.Tr "repo.file_history"}}</a> | ||||
<a class="ui button" href="{{EscapePound .FileLink}}">{{.i18n.Tr "repo.file_raw"}}</a> | <a class="ui button" href="{{EscapePound .FileLink}}">{{.i18n.Tr "repo.file_raw"}}</a> | ||||
</div> | </div> | ||||
{{if .CanEditFile}} | |||||
<a href="{{.RepoLink}}/_edit/{{EscapePound .BranchName}}/{{EscapePound .TreePath}}"><i class="octicon octicon-pencil btn-octicon poping up" data-content="{{.EditFileTooltip}}" data-position="bottom center" data-variation="tiny inverted"></i></a> | |||||
{{else}} | |||||
<i class="octicon octicon-pencil btn-octicon poping up disabled" data-content="{{.EditFileTooltip}}" data-position="bottom center" data-variation="tiny inverted"></i> | |||||
{{end}} | |||||
{{if .CanDeleteFile}} | |||||
<a href="{{.RepoLink}}/_delete/{{EscapePound .BranchName}}/{{EscapePound .TreePath}}"><i class="octicon octicon-trashcan btn-octicon btn-octicon-danger poping up" data-content="{{.DeleteFileTooltip}}" data-position="bottom center" data-variation="tiny inverted"></i></a> | |||||
{{else}} | |||||
<i class="octicon octicon-trashcan btn-octicon poping up disabled" data-content="{{.DeleteFileTooltip}}" data-position="bottom center" data-variation="tiny inverted"></i> | |||||
{{if .Repository.CanEnableEditor}} | |||||
{{if .CanEditFile}} | |||||
<a href="{{.RepoLink}}/_edit/{{EscapePound .BranchName}}/{{EscapePound .TreePath}}"><i class="octicon octicon-pencil btn-octicon poping up" data-content="{{.EditFileTooltip}}" data-position="bottom center" data-variation="tiny inverted"></i></a> | |||||
{{else}} | |||||
<i class="octicon octicon-pencil btn-octicon poping up disabled" data-content="{{.EditFileTooltip}}" data-position="bottom center" data-variation="tiny inverted"></i> | |||||
{{end}} | |||||
{{if .CanDeleteFile}} | |||||
<a href="{{.RepoLink}}/_delete/{{EscapePound .BranchName}}/{{EscapePound .TreePath}}"><i class="octicon octicon-trashcan btn-octicon btn-octicon-danger poping up" data-content="{{.DeleteFileTooltip}}" data-position="bottom center" data-variation="tiny inverted"></i></a> | |||||
{{else}} | |||||
<i class="octicon octicon-trashcan btn-octicon poping up disabled" data-content="{{.DeleteFileTooltip}}" data-position="bottom center" data-variation="tiny inverted"></i> | |||||
{{end}} | |||||
{{end}} | {{end}} | ||||
</div> | </div> | ||||
{{end}} | {{end}} | ||||