Enabling and disabling the commit button to prevent empty commits (web editor) (#8590)
* Enabling and disabling the commit button to prevent empty commits Signed-off-by: LukBukkit <luk.bukkit@gmail.com> * The button won't get enabled if you change the commit message Signed-off-by: LukBukkit <luk.bukkit@gmail.com> * Fixes a spelling mistake for 'silent' Signed-off-by: LukBukkit <luk.bukkit@gmail.com>
This commit is contained in:
parent
fe41f71ba1
commit
3fe9646564
1 changed files with 21 additions and 1 deletions
|
@ -1572,7 +1572,27 @@ function initEditor() {
|
|||
});
|
||||
}).trigger('keyup');
|
||||
|
||||
$('#commit-button').click(function (event) {
|
||||
// Using events from https://github.com/codedance/jquery.AreYouSure#advanced-usage
|
||||
// to enable or disable the commit button
|
||||
const $commitButton = $('#commit-button');
|
||||
const $editForm = $('.ui.edit.form');
|
||||
const dirtyFileClass = 'dirty-file';
|
||||
|
||||
// Disabling the button at the start
|
||||
$commitButton.prop('disabled', true);
|
||||
|
||||
// Registering a custom listener for the file path and the file content
|
||||
$editForm.areYouSure({
|
||||
silent: true,
|
||||
dirtyClass: dirtyFileClass,
|
||||
fieldSelector: ':input:not(.commit-form-wrapper :input)',
|
||||
change: function () {
|
||||
const dirty = $(this).hasClass(dirtyFileClass);
|
||||
$commitButton.prop('disabled', !dirty);
|
||||
}
|
||||
});
|
||||
|
||||
$commitButton.click(function (event) {
|
||||
// A modal which asks if an empty file should be committed
|
||||
if ($editArea.val().length === 0) {
|
||||
$('#edit-empty-content-modal').modal({
|
||||
|
|
Loading…
Reference in a new issue