| Line 227... |
Line 227... |
| 227 |
<td class="agent-status-cell" data-authid="$model.getAuthId()">
|
227 |
<td class="agent-status-cell" data-authid="$model.getAuthId()">
|
| 228 |
#if($agentStatus && $agentStatus.getAgentStatus())
|
228 |
#if($agentStatus && $agentStatus.getAgentStatus())
|
| 229 |
#if($agentStatus.getAgentStatus() == "On Call")
|
229 |
#if($agentStatus.getAgentStatus() == "On Call")
|
| 230 |
<span class="badge" style="background-color: #28a745; color: white;">$agentStatus.getAgentStatus()</span>
|
230 |
<span class="badge" style="background-color: #28a745; color: white;">$agentStatus.getAgentStatus()</span>
|
| 231 |
#elseif($agentStatus.getAgentStatus() == "Available")
|
231 |
#elseif($agentStatus.getAgentStatus() == "Available")
|
| - |
|
232 |
<span class="badge"
|
| 232 |
<span class="badge" style="background-color: #17a2b8; color: white;">$agentStatus.getAgentStatus()</span>
|
233 |
style="background-color: #dc3545; color: white;">$agentStatus.getAgentStatus()</span>
|
| 233 |
#elseif($agentStatus.getAgentStatus() == "On Break")
|
234 |
#elseif($agentStatus.getAgentStatus().toLowerCase().contains("break"))
|
| - |
|
235 |
<span class="badge"
|
| 234 |
<span class="badge" style="background-color: #ffc107; color: black;">$agentStatus.getAgentStatus()</span>
|
236 |
style="background-color: #dc3545; color: white;">$agentStatus.getAgentStatus()</span>
|
| 235 |
#elseif($agentStatus.getAgentStatus() == "Logged Out")
|
237 |
#elseif($agentStatus.getAgentStatus() == "Logged Out")
|
| 236 |
<span class="badge" style="background-color: #dc3545; color: white;">$agentStatus.getAgentStatus()</span>
|
238 |
<span class="badge" style="background-color: #dc3545; color: white;">$agentStatus.getAgentStatus()</span>
|
| 237 |
#elseif($agentStatus.getAgentStatus() == "Trying")
|
239 |
#elseif($agentStatus.getAgentStatus() == "Trying")
|
| 238 |
<span class="badge" style="background-color: #fd7e14; color: white;">$agentStatus.getAgentStatus()</span>
|
240 |
<span class="badge" style="background-color: #fd7e14; color: white;">$agentStatus.getAgentStatus()</span>
|
| 239 |
#else
|
241 |
#else
|
| Line 433... |
Line 435... |
| 433 |
var recordingHtml = '-';
|
435 |
var recordingHtml = '-';
|
| 434 |
|
436 |
|
| 435 |
// Check if this is a break log entry
|
437 |
// Check if this is a break log entry
|
| 436 |
if (data[i].breakLog) {
|
438 |
if (data[i].breakLog) {
|
| 437 |
rowStyle = 'style="background-color: #f8d7da; color: #721c24; font-weight: bold;"';
|
439 |
rowStyle = 'style="background-color: #f8d7da; color: #721c24; font-weight: bold;"';
|
| 438 |
html += '<tr ' + rowStyle + '><td>' + (i + 1) + '</td><td colspan="5"><i class="fa fa-coffee"></i> ' + (data[i].breakStatus || 'On Break') + '</td><td>' + (data[i].callDateTime || '-') + '</td><td>-</td></tr>';
|
440 |
html += '<tr ' + rowStyle + '><td>' + (i + 1) + '</td><td colspan="4"><i class="fa fa-coffee"></i> ' + (data[i].breakStatus || 'On Break') + '</td><td>' + (data[i].callDuration || '-') + '</td><td>' + (data[i].callDateTime || '-') + '</td><td>-</td></tr>';
|
| 439 |
} else {
|
441 |
} else {
|
| 440 |
if (data[i].recordingUrl) {
|
442 |
if (data[i].recordingUrl) {
|
| 441 |
recordingHtml = '<audio controls style="width: 150px; height: 30px;"><source src="' + data[i].recordingUrl + '" type="audio/mpeg">Your browser does not support audio.</audio>';
|
443 |
recordingHtml = '<audio controls style="width: 150px; height: 30px;"><source src="' + data[i].recordingUrl + '" type="audio/mpeg">Your browser does not support audio.</audio>';
|
| 442 |
}
|
444 |
}
|
| 443 |
html += '<tr><td>' + (i + 1) + '</td><td>' + data[i].partyName + '</td><td>' + data[i].code + '</td><td>' + data[i].remark + '- ' + (data[i].message || '-') + '</td><td>' + (data[i].callStatus || '-') + '</td><td>' + (data[i].callDuration || '-') + '</td><td>' + (data[i].callDateTime || '-') + '</td><td>' + recordingHtml + '</td></tr>';
|
445 |
html += '<tr><td>' + (i + 1) + '</td><td>' + data[i].partyName + '</td><td>' + data[i].code + '</td><td>' + data[i].remark + '- ' + (data[i].message || '-') + '</td><td>' + (data[i].callStatus || '-') + '</td><td>' + (data[i].callDuration || '-') + '</td><td>' + (data[i].callDateTime || '-') + '</td><td>' + recordingHtml + '</td></tr>';
|
| Line 575... |
Line 577... |
| 575 |
var recordingHtml = '-';
|
577 |
var recordingHtml = '-';
|
| 576 |
|
578 |
|
| 577 |
// Check if this is a break log entry
|
579 |
// Check if this is a break log entry
|
| 578 |
if (data[i].breakLog) {
|
580 |
if (data[i].breakLog) {
|
| 579 |
rowStyle = 'style="background-color: #f8d7da; color: #721c24; font-weight: bold;"';
|
581 |
rowStyle = 'style="background-color: #f8d7da; color: #721c24; font-weight: bold;"';
|
| 580 |
html += '<tr ' + rowStyle + '><td>' + (i + 1) + '</td><td colspan="5"><i class="fa fa-coffee"></i> ' + (data[i].breakStatus || 'On Break') + '</td><td>' + (data[i].callDateTime || '-') + '</td><td>-</td></tr>';
|
582 |
html += '<tr ' + rowStyle + '><td>' + (i + 1) + '</td><td colspan="4"><i class="fa fa-coffee"></i> ' + (data[i].breakStatus || 'On Break') + '</td><td>' + (data[i].callDuration || '-') + '</td><td>' + (data[i].callDateTime || '-') + '</td><td>-</td></tr>';
|
| 581 |
} else {
|
583 |
} else {
|
| 582 |
if (data[i].recordingUrl) {
|
584 |
if (data[i].recordingUrl) {
|
| 583 |
recordingHtml = '<audio controls style="width: 150px; height: 30px;"><source src="' + data[i].recordingUrl + '" type="audio/mpeg">Your browser does not support audio.</audio>';
|
585 |
recordingHtml = '<audio controls style="width: 150px; height: 30px;"><source src="' + data[i].recordingUrl + '" type="audio/mpeg">Your browser does not support audio.</audio>';
|
| 584 |
}
|
586 |
}
|
| 585 |
html += '<tr><td>' + (i + 1) + '</td><td>' + data[i].partyName + '</td><td>' + data[i].code + '</td><td>' + data[i].remark + '- ' + (data[i].message || '-') + '</td><td>' + (data[i].callStatus || '-') + '</td><td>' + (data[i].callDuration || '-') + '</td><td>' + (data[i].callDateTime || '-') + '</td><td>' + recordingHtml + '</td></tr>';
|
587 |
html += '<tr><td>' + (i + 1) + '</td><td>' + data[i].partyName + '</td><td>' + data[i].code + '</td><td>' + data[i].remark + '- ' + (data[i].message || '-') + '</td><td>' + (data[i].callStatus || '-') + '</td><td>' + (data[i].callDuration || '-') + '</td><td>' + (data[i].callDateTime || '-') + '</td><td>' + recordingHtml + '</td></tr>';
|
| Line 627... |
Line 629... |
| 627 |
function getStatusBadge(status) {
|
629 |
function getStatusBadge(status) {
|
| 628 |
if (!status) return '<span class="badge" style="background-color: #6c757d; color: white;">-</span>';
|
630 |
if (!status) return '<span class="badge" style="background-color: #6c757d; color: white;">-</span>';
|
| 629 |
|
631 |
|
| 630 |
var bgColor = '#6c757d';
|
632 |
var bgColor = '#6c757d';
|
| 631 |
var textColor = 'white';
|
633 |
var textColor = 'white';
|
| - |
|
634 |
var lowerStatus = status.toLowerCase();
|
| 632 |
|
635 |
|
| 633 |
if (status === 'On Call') {
|
636 |
if (status === 'On Call') {
|
| 634 |
bgColor = '#28a745';
|
637 |
bgColor = '#28a745';
|
| 635 |
} else if (status === 'Available') {
|
638 |
} else if (status === 'Available') {
|
| 636 |
bgColor = '#17a2b8';
|
639 |
bgColor = '#dc3545';
|
| 637 |
} else if (status === 'On Break') {
|
640 |
} else if (lowerStatus.indexOf('break') !== -1) {
|
| 638 |
bgColor = '#ffc107';
|
641 |
bgColor = '#dc3545';
|
| 639 |
textColor = 'black';
|
- |
|
| 640 |
} else if (status === 'Logged Out') {
|
642 |
} else if (status === 'Logged Out') {
|
| 641 |
bgColor = '#dc3545';
|
643 |
bgColor = '#dc3545';
|
| 642 |
} else if (status === 'Trying') {
|
644 |
} else if (status === 'Trying') {
|
| 643 |
bgColor = '#fd7e14';
|
645 |
bgColor = '#fd7e14';
|
| 644 |
}
|
646 |
}
|