diff --git a/modules/auth/repo_form.go b/modules/auth/repo_form.go index 8d10fc157..5a8ac5934 100644 --- a/modules/auth/repo_form.go +++ b/modules/auth/repo_form.go @@ -557,7 +557,7 @@ func (f *NewWikiForm) Validate(ctx *macaron.Context, errs binding.Errors) bindin // EditRepoFileForm form for changing repository file type EditRepoFileForm struct { TreePath string `binding:"Required;MaxSize(500)"` - Content string `binding:"Required"` + Content string CommitSummary string `binding:"MaxSize(100)"` CommitMessage string CommitChoice string `binding:"Required;MaxSize(50)"` diff --git a/options/locale/locale_en-US.ini b/options/locale/locale_en-US.ini index 4d73d91aa..4923f2f88 100644 --- a/options/locale/locale_en-US.ini +++ b/options/locale/locale_en-US.ini @@ -726,6 +726,8 @@ editor.file_editing_no_longer_exists = The file being edited, '%s', no longer ex editor.file_deleting_no_longer_exists = The file being deleted, '%s', no longer exists in this repository. editor.file_changed_while_editing = The file contents have changed since you started editing. Click here to see them or Commit Changes again to overwrite them. editor.file_already_exists = A file named '%s' already exists in this repository. +editor.commit_empty_file_header = Commit an empty file +editor.commit_empty_file_text = The file you're about commit is empty. Proceed? editor.no_changes_to_show = There are no changes to show. editor.fail_to_update_file = Failed to update/create file '%s' with error: %v editor.add_subdir = Add a directory… diff --git a/public/js/index.js b/public/js/index.js index 11b2e75f2..a903b219e 100644 --- a/public/js/index.js +++ b/public/js/index.js @@ -262,7 +262,7 @@ function initRepoStatusChecker() { location.reload(); return } - + setTimeout(function () { initRepoStatusChecker() }, 2000); @@ -1571,6 +1571,18 @@ function initEditor() { codeMirrorEditor.setOption("tabSize", editorconfig.tab_width || 4); }); }).trigger('keyup'); + + $('#commit-button').click(function (event) { + // A modal which asks if an empty file should be committed + if ($editArea.val().length === 0) { + $('#edit-empty-content-modal').modal({ + onApprove: function () { + $('.edit.form').submit(); + } + }).modal('show'); + event.preventDefault(); + } + }); } function initOrganization() { diff --git a/templates/repo/editor/edit.tmpl b/templates/repo/editor/edit.tmpl index 134dc818d..d0ba1becc 100644 --- a/templates/repo/editor/edit.tmpl +++ b/templates/repo/editor/edit.tmpl @@ -39,8 +39,7 @@ data-url="{{.Repository.APIURL}}/markdown" data-context="{{.RepoLink}}" data-markdown-file-exts="{{.MarkdownFileExts}}" - data-line-wrap-extensions="{{.LineWrapExtensions}}" - required> + data-line-wrap-extensions="{{.LineWrapExtensions}}"> {{.FileContent}}
{{.i18n.Tr "repo.editor.commit_empty_file_text"}}
+