First iteration of playbook status icons based on playbook.status

This is a modest attempt at displaying the right icon based on
playbook.status.

Depends-On: https://review.openstack.org/#/c/610760/
Change-Id: I4d6b08223943c97ecf0924d24b8d1da018c4f3f0
This commit is contained in:
David Moreau Simard 2018-10-16 07:47:43 -04:00
parent 1179bb8901
commit fdd0b0eb31
No known key found for this signature in database
GPG Key ID: CBEB466764A9E621
1 changed files with 41 additions and 12 deletions

View File

@ -22,24 +22,53 @@ export default class Playbook extends Component {
}); });
}; };
_getStatusMetadata(status) {
switch(status) {
case "running":
return {
"name": "running",
"title": "Playbook is in progress.",
"className": "pficon pficon-info list-view-pf-icon-md list-view-pf-icon-info"
}
case "completed":
return {
"name": "completed",
"title": "Playbook has completed successfully.",
"className": "pficon pficon-ok list-view-pf-icon-md list-view-pf-icon-success"
}
case "failed":
return {
"name": "failed",
"title": "Playbook has failed with one or more errors.",
"className": "pficon pficon-error-circle-o list-view-pf-icon-md list-view-pf-icon-danger"
}
case "unknown":
return {
"name": "unknown",
"title": "Playbook's status is unknown.",
"className": "pficon pficon-warning-triangle-o list-view-pf-icon-md list-view-pf-icon-warning"
}
default:
return {
"name": "unknown",
"title": "Playbook's status is unknown.",
"className": "pficon pficon-warning-triangle-o list-view-pf-icon-md list-view-pf-icon-warning"
}
}
}
render() { render() {
const { playbook } = this.props; const { playbook } = this.props;
const { expanded, selection } = this.state; const { expanded, selection } = this.state;
const LeftIcon = playbook.completed ? ( const status_metadata = this._getStatusMetadata(playbook.status);
const LeftIcon =
<ListView.Icon <ListView.Icon
name="check" name={status_metadata["name"]}
size="md" size="md"
title="Playbook completed successfully" title={status_metadata["title"]}
className="list-view-pf-icon-success" className={status_metadata["className"]}
/> />
) : (
<ListView.Icon
name="info"
title="Playbook execution is either in progress or was interrupted: data will be inconsistent"
size="md"
className="list-view-pf-icon-info"
/>
);
return ( return (
<ListView.Item <ListView.Item
checkboxInput={ checkboxInput={