Compare commits
2 Commits
beb2f19d27
...
c0c89fe50a
| Author | SHA1 | Date | |
|---|---|---|---|
| c0c89fe50a | |||
| 5c629e9bf6 |
@@ -216,7 +216,6 @@ class Databap extends PhpObject
|
||||
header('Content-Type: text/html; charset='.Settings::TEXT_ENC);
|
||||
mb_internal_encoding(Settings::TEXT_ENC);
|
||||
mb_http_output(Settings::TEXT_ENC);
|
||||
mb_http_input(Settings::TEXT_ENC);
|
||||
mb_language('uni');
|
||||
mb_regex_encoding(Settings::TEXT_ENC);
|
||||
|
||||
@@ -2272,12 +2271,15 @@ class Databap extends PhpObject
|
||||
else //Normal message
|
||||
{
|
||||
//Internal links
|
||||
$asMessages['messages'][$iMessageId]['message'] = Toolbox::findReplaceLinks($asMessages['messages'][$iMessageId]['message']);
|
||||
$sFormatedMsg = Toolbox::findReplaceLinks($asMessages['messages'][$iMessageId]['message']);
|
||||
|
||||
//Dynamic chan link
|
||||
$asPatterns = '/(^|\s)#(\w*[^\s]+\w*)/u';
|
||||
$asLinks = '\1<span class="chan_link clickable">#<span class="chan_text">\2</span></span>';
|
||||
$asMessages['messages'][$iMessageId]['message'] = preg_replace($asPatterns, $asLinks, $asMessages['messages'][$iMessageId]['message']);
|
||||
$sFormatedMsg = preg_replace($asPatterns, $asLinks, $sFormatedMsg);
|
||||
|
||||
if($asMessages['messages'][$iMessageId]['message'] != $sFormatedMsg) $asMessages['messages'][$iMessageId]['message_original'] = $asMessages['messages'][$iMessageId]['message'];
|
||||
$asMessages['messages'][$iMessageId]['message'] = $sFormatedMsg;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -945,19 +945,16 @@ function getMessage(message_info, bReset)
|
||||
$Msg.find('a').addClass('img_box').append($Banner);
|
||||
}
|
||||
|
||||
if(message_info.edited) {
|
||||
|
||||
}
|
||||
|
||||
//Adding message to channel panel
|
||||
$Message = $('<p>', {'class':message_info.msg_class+' class_'+sChanKeyName+' hide round_right', 'data-id':message_info.id, 'data-id-user':message_info.id_user})
|
||||
.data('orig_msg', message_info.message)
|
||||
.data('orig_msg', message_info.message_original || message_info.message)
|
||||
.data('disp_msg', message_info.message)
|
||||
.append($('<span>', {'class':'time'}).text(((message_info.date==databap.consts.cur_date)?'':message_info.date+' - ')+message_info.time))
|
||||
.append($Msg)
|
||||
.append($('<span>', {'class':'status'}).text('modifié'));
|
||||
$Message.find('.chan_link').click(function(){joinChan($(this).find('.chan_text').text());});
|
||||
$Message.find('.user').click(setPm);
|
||||
$Message.find('.editable').hover(toggleEditButton).click(onMessageEditClick);
|
||||
$Message.find('.editable').on('mouseenter', toggleEditButton).on('mouseleave', toggleEditButton).click(onMessageEditClick);
|
||||
|
||||
if(message_info.edited) $Message.find('.status').show();
|
||||
}
|
||||
@@ -998,6 +995,7 @@ function addMessage(message_info, bReset) {
|
||||
let oOrigMsg = databap.tmp(['messages', message_info.id_message_ref]);
|
||||
if(oOrigMsg) {
|
||||
oOrigMsg.message = message_info.message;
|
||||
oOrigMsg.message_original = message_info.message_original || message_info.message;
|
||||
oOrigMsg.msg_class = message_info.msg_class;
|
||||
oOrigMsg.edited = true;
|
||||
|
||||
@@ -1039,32 +1037,34 @@ function addMessage(message_info, bReset) {
|
||||
}
|
||||
}
|
||||
|
||||
function toggleEditButton()
|
||||
function toggleEditButton(eEvent)
|
||||
{
|
||||
let $Editable = $(this); //.editable
|
||||
let $EditBtn = $Editable.next('.edit-btn');
|
||||
if($EditBtn.length > 0) $EditBtn.remove();
|
||||
else $Editable.after($('<span>', {'class':'text edit-btn'}).append($('<i>', {'class': 'fa fa-fw fa-c-edit'})));
|
||||
let $EditBtn = $Editable.next('.edit-btn')
|
||||
if(eEvent.type == 'mouseleave' && $EditBtn.length > 0) $EditBtn.remove();
|
||||
if(eEvent.type == 'mouseenter' && $EditBtn.length == 0) $Editable.after($('<span>', {'class':'text edit-btn'}).append($('<i>', {'class': 'fa fa-fw fa-c-edit'})));
|
||||
}
|
||||
|
||||
function onMessageEditClick()
|
||||
function onMessageEditClick(eClick)
|
||||
{
|
||||
let $Editable = $(this);
|
||||
let $Message = $Editable.parents('p');
|
||||
let bPrivate = $Message.hasClass('P');
|
||||
let sDisplayedMsg = $Editable.text();
|
||||
let sDisplayedMsg = $Message.data('disp_msg');
|
||||
let sOriginalMsg = $Message.data('orig_msg');
|
||||
let bEditing = ($Editable.prop('contenteditable') == 'true');
|
||||
|
||||
if(!bEditing && !eClick.ctrlKey) {
|
||||
$Editable
|
||||
.prop('contenteditable', 'true')
|
||||
.data('disp_msg', sDisplayedMsg)
|
||||
.focus();
|
||||
|
||||
if(sDisplayedMsg != sOriginalMsg) {
|
||||
let iCaretPos = getCaretPosition($Editable[0]);
|
||||
//let iCaretPos = getCaretPosition($Editable[0]);
|
||||
$Editable.text(sOriginalMsg);
|
||||
setCaretPosition($Editable[0], iCaretPos + sOriginalMsg.indexOf(sDisplayedMsg));
|
||||
//setCaretPosition($Editable[0], iCaretPos + sOriginalMsg.indexOf(sDisplayedMsg));
|
||||
}
|
||||
|
||||
if(bPrivate) $Message.find('.console').hide();
|
||||
|
||||
$Editable
|
||||
@@ -1083,17 +1083,18 @@ function onMessageEditClick()
|
||||
let sOldMsg = $Message.data('orig_msg');
|
||||
let sNewMsg = $This.text();
|
||||
|
||||
if(sOldMsg != sNewMsg) {
|
||||
$This.prop('contenteditable', 'false');
|
||||
if(sOldMsg != sNewMsg) {
|
||||
editMessage($This.parents('p').data('id'), sNewMsg);
|
||||
}
|
||||
else {
|
||||
$This.text($This.data('disp_msg'));
|
||||
$This.html($Message.data('disp_msg'));
|
||||
$Message.find('.console').show();
|
||||
}
|
||||
}
|
||||
else if(e.keyCode == 9) e.preventDefault();
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
function editMessage(iMsgId, sNewMsg)
|
||||
|
||||
@@ -8,6 +8,7 @@
|
||||
<script type="text/javascript">
|
||||
databap.pageInit = function()
|
||||
{
|
||||
/*
|
||||
databap.tmp('note', 'integer');
|
||||
var $Frame = $('#note_frame');
|
||||
|
||||
@@ -34,6 +35,21 @@ databap.pageInit = function()
|
||||
|
||||
databap.tmp('note', iNote);
|
||||
}
|
||||
*/
|
||||
|
||||
$('#note_id')
|
||||
.addDefaultValue('N° note')
|
||||
.on('keyup', function() {
|
||||
$('#submit').attr('href', 'https://me.sap.com/notes/'+$('#note_id').val());
|
||||
});
|
||||
$('#note_form').addButton('ok', 'Ok', '', 'submit', 'heavy');
|
||||
|
||||
var iNote = databap.vars.id;
|
||||
if(isNumeric(iNote) && iNote > 0) {
|
||||
self.addBufferIcon();
|
||||
$('#note_id').val(iNote).focus();
|
||||
self.goToExternalLink('https://me.sap.com/notes/'+iNote);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
|
||||
Reference in New Issue
Block a user