mirror of
https://github.com/ansible/awx.git
synced 2026-03-24 20:35:02 -02:30
Add tool tip to Host Event lines.
This commit is contained in:
@@ -17,12 +17,15 @@ function OutputStrings (BaseString) {
|
|||||||
ARTIFACTS: t.s('Read-only view of artifacts added to the job template'),
|
ARTIFACTS: t.s('Read-only view of artifacts added to the job template'),
|
||||||
CANCEL: t.s('Cancel'),
|
CANCEL: t.s('Cancel'),
|
||||||
COLLAPSE_OUTPUT: t.s('Collapse Output'),
|
COLLAPSE_OUTPUT: t.s('Collapse Output'),
|
||||||
|
CREDENTIAL: t.s('View the Credential'),
|
||||||
|
DETAILS: t.s('Click for details'),
|
||||||
DELETE: t.s('Delete'),
|
DELETE: t.s('Delete'),
|
||||||
DOWNLOAD_OUTPUT: t.s('Download Output'),
|
DOWNLOAD_OUTPUT: t.s('Download Output'),
|
||||||
CREDENTIAL: t.s('View the Credential'),
|
EVENT_ID: t.s('Event ID:'),
|
||||||
EXPAND_OUTPUT: t.s('Expand Output'),
|
EXPAND_OUTPUT: t.s('Expand Output'),
|
||||||
EXTRA_VARS: t.s('Read-only view of extra variables added to the job template'),
|
EXTRA_VARS: t.s('Read-only view of extra variables added to the job template'),
|
||||||
HOST_LIMIT: t.s('When this field is true, the job\'s inventory belongs to an organization that has exceeded it\'s limit of hosts as defined by the system administrator.'),
|
HOST_LIMIT: t.s('When this field is true, the job\'s inventory belongs to an organization that has exceeded it\'s limit of hosts as defined by the system administrator.'),
|
||||||
|
HOST_STATUS: t.s('Status:'),
|
||||||
INVENTORY: t.s('View the Inventory'),
|
INVENTORY: t.s('View the Inventory'),
|
||||||
INVENTORY_SCM: t.s('View the Project'),
|
INVENTORY_SCM: t.s('View the Project'),
|
||||||
INVENTORY_SCM_JOB: t.s('View Project checkout results'),
|
INVENTORY_SCM_JOB: t.s('View Project checkout results'),
|
||||||
|
|||||||
@@ -35,7 +35,7 @@ const hasAnsi = input => re.test(input);
|
|||||||
|
|
||||||
let $scope;
|
let $scope;
|
||||||
|
|
||||||
function JobRenderService ($q, $compile, $sce, $window) {
|
function JobRenderService ($q, $compile, $sce, $window, strings) {
|
||||||
this.init = (_$scope_, { toggles }) => {
|
this.init = (_$scope_, { toggles }) => {
|
||||||
$scope = _$scope_;
|
$scope = _$scope_;
|
||||||
this.setScope();
|
this.setScope();
|
||||||
@@ -132,7 +132,7 @@ function JobRenderService ($q, $compile, $sce, $window) {
|
|||||||
return { html: '', count: 0 };
|
return { html: '', count: 0 };
|
||||||
}
|
}
|
||||||
|
|
||||||
const html = this.buildRowHTML(this.records[uuid]);
|
const html = this.buildRowHTML(this.records[uuid], null, null, event);
|
||||||
const count = 1;
|
const count = 1;
|
||||||
|
|
||||||
return { html, count };
|
return { html, count };
|
||||||
@@ -193,7 +193,7 @@ function JobRenderService ($q, $compile, $sce, $window) {
|
|||||||
return { html: '', count: 0 };
|
return { html: '', count: 0 };
|
||||||
}
|
}
|
||||||
|
|
||||||
const html = this.buildRowHTML(this.records[uuid]);
|
const html = this.buildRowHTML(this.records[uuid], null, null, event);
|
||||||
const count = 1;
|
const count = 1;
|
||||||
|
|
||||||
return { html, count };
|
return { html, count };
|
||||||
@@ -226,10 +226,10 @@ function JobRenderService ($q, $compile, $sce, $window) {
|
|||||||
const line = lines[i];
|
const line = lines[i];
|
||||||
const isLastLine = i === lines.length - 1;
|
const isLastLine = i === lines.length - 1;
|
||||||
|
|
||||||
let row = this.buildRowHTML(record, ln, line);
|
let row = this.buildRowHTML(record, ln, line, event);
|
||||||
|
|
||||||
if (record && record.isTruncated && isLastLine) {
|
if (record && record.isTruncated && isLastLine) {
|
||||||
row += this.buildRowHTML(record);
|
row += this.buildRowHTML(record, null, null, event);
|
||||||
count++;
|
count++;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -340,7 +340,7 @@ function JobRenderService ($q, $compile, $sce, $window) {
|
|||||||
return list;
|
return list;
|
||||||
};
|
};
|
||||||
|
|
||||||
this.buildRowHTML = (record, ln, content) => {
|
this.buildRowHTML = (record, ln, content, event) => {
|
||||||
let id = '';
|
let id = '';
|
||||||
let icon = '';
|
let icon = '';
|
||||||
let timestamp = '';
|
let timestamp = '';
|
||||||
@@ -407,14 +407,28 @@ function JobRenderService ($q, $compile, $sce, $window) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
return `
|
return `
|
||||||
<div id="${id}" class="at-Stdout-row ${classList}" ${directives}>
|
<div id="${id}" class="at-Stdout-row ${classList}" ${directives} aw-tool-tip= '${this.createToolTip(event, record)}' aw-tip-placement="top">
|
||||||
${tdToggle}
|
${tdToggle}
|
||||||
<div class="at-Stdout-line">${ln}</div>
|
<div class="at-Stdout-line">${ln}</div>
|
||||||
<div class="at-Stdout-event"><span ng-non-bindable>${content}</span></div>
|
<div class="at-Stdout-event">
|
||||||
|
<div>Host Status </div>
|
||||||
|
<div>Next line </div>
|
||||||
|
<div ng-non-bindable>${content}</div>
|
||||||
|
</div>
|
||||||
<div class="at-Stdout-time">${timestamp}</div>
|
<div class="at-Stdout-time">${timestamp}</div>
|
||||||
</div>`;
|
</div>`;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
this.createToolTip = (event, record) => {
|
||||||
|
const status = strings.get('tooltips.HOST_STATUS');
|
||||||
|
const eventID = strings.get('tooltips.EVENT_ID');
|
||||||
|
const clickForDetails = strings.get('tooltips.DETAILS');
|
||||||
|
|
||||||
|
return record.isClickable
|
||||||
|
? `${status} ${event.event_display}<br />${eventID} ${event.id}<br />${clickForDetails}`
|
||||||
|
: `${status} ${event.event_display}<br />${eventID} ${event.id}`;
|
||||||
|
};
|
||||||
|
|
||||||
this.getTimestamp = created => {
|
this.getTimestamp = created => {
|
||||||
const date = new Date(created);
|
const date = new Date(created);
|
||||||
const hour = date.getHours() < 10 ? `0${date.getHours()}` : date.getHours();
|
const hour = date.getHours() < 10 ? `0${date.getHours()}` : date.getHours();
|
||||||
@@ -608,6 +622,6 @@ function JobRenderService ($q, $compile, $sce, $window) {
|
|||||||
this.getCapacity = () => OUTPUT_EVENT_LIMIT - (this.getTailCounter() - this.getHeadCounter());
|
this.getCapacity = () => OUTPUT_EVENT_LIMIT - (this.getTailCounter() - this.getHeadCounter());
|
||||||
}
|
}
|
||||||
|
|
||||||
JobRenderService.$inject = ['$q', '$compile', '$sce', '$window'];
|
JobRenderService.$inject = ['$q', '$compile', '$sce', '$window', 'OutputStrings'];
|
||||||
|
|
||||||
export default JobRenderService;
|
export default JobRenderService;
|
||||||
|
|||||||
Reference in New Issue
Block a user