Fix multiple calls on message edit

This commit is contained in:
2021-04-11 11:17:01 +02:00
parent d3d3f8946e
commit 3fa38565b9

View File

@@ -999,17 +999,20 @@ function toggleEditButton()
function editMessage() function editMessage()
{ {
let $Editable = $(this); let $Editable = $(this);
if($Editable.prop('contenteditable') != 'true') $Editable.prop('contenteditable', 'true').focus();
if($Editable.data('backup') == null)
{ {
$Editable $Editable
.data('backup', $Editable.text()) .data('backup', $Editable.text())
.prop('contenteditable', 'true') .on('focusout keydown', function(e) {
.focus();
$Editable.on('focusout keydown', function(e) {
if(e.type == 'focusout' || e.which == 13) { if(e.type == 'focusout' || e.which == 13) {
e.preventDefault(); e.preventDefault();
$(this).prop('contenteditable', 'false'); var sOldMsg = $Editable.data('backup');
var sNewMsg = $Editable.text();
if(sOldMsg != sNewMsg) {
$Editable.data('backup', sNewMsg);
$Editable.prop('contenteditable', 'false');
databap.getInfo databap.getInfo
( (
'edit_message', 'edit_message',
@@ -1018,14 +1021,16 @@ function editMessage()
refresh_chat(); refresh_chat();
$MsgInput.focus(); $MsgInput.focus();
}, },
{message_id: $Editable.parents('p.U').data('id'), message: $Editable.text()}, {message_id: $Editable.parents('p.U').data('id'), message: sNewMsg},
'json', 'json',
function(textStatus) function(textStatus)
{ {
$Editable.data('backup', sOldMsg);
databap.showError(textStatus); databap.showError(textStatus);
} }
); );
} }
}
}); });
} }
} }