diff --git a/3CX_TAPI.user.js b/3CX_TAPI.user.js index a47fceb..00268c9 100644 --- a/3CX_TAPI.user.js +++ b/3CX_TAPI.user.js @@ -275,6 +275,19 @@ const tapi = { callerIds: {}, + updateCallHistoryEntry: (span, callerId) => { + if (callerId.tD_NAME != '') { + var text = span.textContent; + span.textContent = callerId.tD_NAME; + var br = document.createElement('br'); + var span2 = document.createElement('span'); + span2.style.fontSize = "small"; + span2.textContent = text; + span.parentNode.insertBefore(br, span.nextSibling); + span.parentNode.insertBefore(span2, span.nextSibling); + } + }, + showCallHistory: (element) => { var span = element.querySelector('span'); var number = tapi.extractNumber(span.textContent); @@ -282,7 +295,7 @@ const tapi = { return; } if (tapi.callerIds.hasOwnProperty(number)) { - span.textContent = tapi.callerIds[number].tD_NAME + ' ' + span.textContent; + tapi.updateCallHistoryEntry(span, tapi.callerIds[number]); } else { GM.xmlHttpRequest({ method: 'GET', @@ -294,18 +307,9 @@ const tapi = { if (response.status == 200) { callerId = JSON.parse(response.responseText); } - tapi.callerIds[number] = callerId; console.log('TAPI call histroy callerid response', number, response, callerId); - if (callerId.tD_NAME != '') { - var text = response.context.textContent; - response.context.textContent = callerId.tD_NAME; - var br = document.createElement('br'); - var span2 = document.createElement('span'); - span2.style.fontSize = "small"; - span2.textContent = text; - response.context.parentNode.insertBefore(br, response.context.nextSibling); - response.context.parentNode.insertBefore(span2, response.context.nextSibling); - } + tapi.callerIds[number] = callerId; + tapi.updateCallHistoryEntry(response.context, callerId); } }); }