Merge pull request #736 from mabashian/status-icon-with-name

Shifted status column to the left side of all tables
This commit is contained in:
Michael Abashian
2016-01-28 13:46:19 -05:00
12 changed files with 119 additions and 102 deletions

View File

@@ -1406,7 +1406,7 @@ input[type="checkbox"].checkbox-no-label {
#inventories_table i[class*="icon-job-"], #inventories_table i[class*="icon-job-"],
#home_groups_table i[class*="icon-job-"] { #home_groups_table i[class*="icon-job-"] {
margin-left: 10px; margin-left: 5px;
} }
.selected { .selected {
@@ -1990,6 +1990,10 @@ button.dropdown-toggle,
border-left-color: #848992; border-left-color: #848992;
} }
.tooltip.right .tooltip-arrow {
border-right-color: #848992;
}
.tooltip.Tooltip.fade.bottom.in { .tooltip.Tooltip.fade.bottom.in {
opacity: 1; opacity: 1;
padding-top: 4px; padding-top: 4px;

View File

@@ -17,10 +17,6 @@
} }
.job-list { .job-list {
thead >tr >th, .page-row {
font-size: 12px;
color: #666;
}
.pagination li { .pagination li {
} }

View File

@@ -271,3 +271,17 @@ table, tbody {
.List-searchRow { .List-searchRow {
margin-bottom: 20px; margin-bottom: 20px;
} }
.List-staticColumn--smallStatus {
width: 25px;
padding-right: 0px!important;
}
.List-staticColumn--mediumStatus {
width: 51px;
padding-right: 0px!important;
}
.List-staticColumnAdjacent {
padding-left: 10px!important;
}

View File

@@ -98,7 +98,7 @@ export default
fields: { fields: {
smart_status: { smart_status: {
label: 'Status', label: 'Status',
// columnClass: 'col-md-2 col-sm-2 col-xs-2', columnClass: 'List-tableCell',
searchable: false, searchable: false,
nosort: true, nosort: true,
ngInclude: "'/static/partials/scan-job-template-smart-status.html'", ngInclude: "'/static/partials/scan-job-template-smart-status.html'",

View File

@@ -17,30 +17,13 @@ export default
well: false, well: false,
fields: { fields: {
id: {
label: 'ID',
ngClick:"viewJobLog(all_job.id)",
searchType: 'int',
columnClass: 'col-lg-1 col-md-1 col-sm-2 col-xs-2',
awToolTip: "{{ all_job.status_tip }}",
dataPlacement: 'top'
},
name: {
label: 'Name',
columnClass: 'col-lg-3 col-md-3 col-sm-3 col-xs-3',
ngClick: "viewJobLog(all_job.id, all_job.nameHref)",
defaultSearchField: true,
awToolTip: "{{ all_job.name | sanitize }}",
dataPlacement: 'top'
},
status: { status: {
label: 'Status', label: '',
columnClass: 'col-lg-2 col-md-2 col-sm-2 col-xs-3', columnClass: 'List-staticColumn--smallStatus',
awToolTip: "{{ all_job.status_tip }}", awToolTip: "{{ all_job.status_tip }}",
awTipPlacement: "top", awTipPlacement: "right",
dataTitle: "{{ all_job.status_popover_title }}", dataTitle: "{{ all_job.status_popover_title }}",
icon: 'icon-job-{{ all_job.status }}', icon: 'icon-job-{{ all_job.status }}',
alt_text: "{{all_job.status_label}}",
iconOnly: true, iconOnly: true,
ngClick:"viewJobLog(all_job.id)", ngClick:"viewJobLog(all_job.id)",
searchable: true, searchable: true,
@@ -53,11 +36,27 @@ export default
{ name: "Canceled", value: "canceled" } { name: "Canceled", value: "canceled" }
] ]
}, },
id: {
label: 'ID',
ngClick:"viewJobLog(all_job.id)",
searchType: 'int',
columnClass: 'col-lg-1 col-md-1 col-sm-2 col-xs-2 List-staticColumnAdjacent',
awToolTip: "{{ all_job.status_tip }}",
dataPlacement: 'top'
},
name: {
label: 'Name',
columnClass: 'col-lg-3 col-md-3 col-sm-4 col-xs-6',
ngClick: "viewJobLog(all_job.id, all_job.nameHref)",
defaultSearchField: true,
awToolTip: "{{ all_job.name | sanitize }}",
dataPlacement: 'top'
},
type: { type: {
label: 'Type', label: 'Type',
ngBind: 'all_job.type_label', ngBind: 'all_job.type_label',
link: false, link: false,
columnClass: "col-lg-2 col-md-2 hidden-sm hidden-xs", columnClass: "col-lg-3 col-md-3 hidden-sm hidden-xs",
columnShow: "showJobType", columnShow: "showJobType",
searchable: true, searchable: true,
searchType: 'select', searchType: 'select',
@@ -68,7 +67,7 @@ export default
noLink: true, noLink: true,
searchable: false, searchable: false,
filter: "longDate", filter: "longDate",
columnClass: "col-lg-2 col-md-2 col-sm-2 hidden-xs", columnClass: "col-lg-3 col-md-3 col-sm-3 hidden-xs",
key: true, key: true,
desc: true desc: true
}, },

View File

@@ -19,19 +19,11 @@ export default
well: false, well: false,
fields: { fields: {
id: {
label: 'ID',
ngClick:"viewJobLog(completed_job.id)",
searchType: 'int',
columnClass: 'col-lg-1 col-md-1 col-sm-2 col-xs-2',
awToolTip: "{{ completed_job.status_tip }}",
dataPlacement: 'top'
},
status: { status: {
label: 'Status', label: '',
columnClass: 'col-lg-1 col-md-2 col-sm-2 col-xs-2', columnClass: 'List-staticColumn--smallStatus',
awToolTip: "{{ completed_job.status_tip }}", awToolTip: "{{ completed_job.status_tip }}",
awTipPlacement: "top", awTipPlacement: "right",
dataTitle: "{{ completed_job.status_popover_title }}", dataTitle: "{{ completed_job.status_popover_title }}",
icon: 'icon-job-{{ completed_job.status }}', icon: 'icon-job-{{ completed_job.status }}',
iconOnly: true, iconOnly: true,
@@ -46,12 +38,28 @@ export default
{ name: "Canceled", value: "canceled" } { name: "Canceled", value: "canceled" }
] ]
}, },
id: {
label: 'ID',
ngClick:"viewJobLog(completed_job.id)",
searchType: 'int',
columnClass: 'col-lg-1 col-md-1 col-sm-2 col-xs-2 List-staticColumnAdjacent',
awToolTip: "{{ completed_job.status_tip }}",
dataPlacement: 'top'
},
name: {
label: 'Name',
columnClass: 'col-lg-4 col-md-4 col-sm-4 col-xs-6',
ngClick: "viewJobLog(completed_job.id, completed_job.nameHref)",
defaultSearchField: true,
awToolTip: "{{ completed_job.name | sanitize }}",
dataPlacement: 'top'
},
finished: { finished: {
label: 'Finished', label: 'Finished',
noLink: true, noLink: true,
searchable: false, searchable: false,
filter: "longDate", filter: "longDate",
columnClass: "col-lg-2 col-md-2 hidden-xs", columnClass: "col-lg-3 col-md-3 col-sm-3 hidden-xs",
key: true, key: true,
desc: true desc: true
}, },
@@ -65,14 +73,6 @@ export default
searchType: 'select', searchType: 'select',
searchOptions: [] // populated via GetChoices() in controller searchOptions: [] // populated via GetChoices() in controller
}, },
name: {
label: 'Name',
columnClass: 'col-md-3 col-sm-4 col-xs-4',
ngClick: "viewJobLog(completed_job.id, completed_job.nameHref)",
defaultSearchField: true,
awToolTip: "{{ completed_job.name | sanitize }}",
dataPlacement: 'top'
},
failed: { failed: {
label: 'Job failed?', label: 'Job failed?',
searchSingleValue: true, searchSingleValue: true,
@@ -86,6 +86,9 @@ export default
actions: { }, actions: { },
fieldActions: { fieldActions: {
columnClass: 'col-lg-2 col-md-2 col-sm-3 col-xs-4',
stdout: { stdout: {
mode: 'all', mode: 'all',
href: '/#/jobs/{{ completed_job.id }}/stdout', href: '/#/jobs/{{ completed_job.id }}/stdout',

View File

@@ -18,8 +18,8 @@ export default
fields: { fields: {
status: { status: {
label: 'Status', label: '',
columnClass: 'col-md-2 col-sm-2 col-xs-2', columnClass: 'List-staticColumn--mediumStatus',
searchable: false, searchable: false,
nosort: true, nosort: true,
ngClick: "null", ngClick: "null",
@@ -28,13 +28,13 @@ export default
icon: "{{ 'icon-cloud-' + group.status_class }}", icon: "{{ 'icon-cloud-' + group.status_class }}",
awToolTip: "{{ group.status_tooltip }}", awToolTip: "{{ group.status_tooltip }}",
dataTipWatch: "group.launch_tooltip", dataTipWatch: "group.launch_tooltip",
awTipPlacement: "top", awTipPlacement: "right",
ngClick: "viewUpdateStatus(group.id)", ngClick: "viewUpdateStatus(group.id)",
ngClass: "group.launch_class" ngClass: "group.launch_class"
},{ },{
icon: "{{ 'icon-job-' + group.hosts_status_class }}", icon: "{{ 'icon-job-' + group.hosts_status_class }}",
awToolTip: "{{ group.hosts_status_tip }}", awToolTip: "{{ group.hosts_status_tip }}",
awTipPlacement: "top", awTipPlacement: "right",
ngClick: "showHostSummary($event, group.id)", ngClick: "showHostSummary($event, group.id)",
ngClass: "" ngClass: ""
}] }]
@@ -43,13 +43,13 @@ export default
key: true, key: true,
label: 'Group', label: 'Group',
ngClick: "editGroup(group.id, group.inventory)", ngClick: "editGroup(group.id, group.inventory)",
columnClass: 'col-lg-4 col-md3 col-sm-3 col-xs-6 ellipsis' columnClass: 'col-lg-6 col-md-5 col-sm-5 col-xs-8 ellipsis List-staticColumnAdjacent'
}, },
inventory_name: { inventory_name: {
label: 'Inventory', label: 'Inventory',
sourceModel: 'inventory', sourceModel: 'inventory',
sourceField: 'name', sourceField: 'name',
columnClass: 'col-lg-3 col-md2 col-sm-2 hidden-xs elllipsis', columnClass: 'col-lg-4 col-md-5 col-sm-3 hidden-xs elllipsis',
linkTo: "{{ '/#/inventories/' + group.inventory + '/' }}" linkTo: "{{ '/#/inventories/' + group.inventory + '/' }}"
}, },
source: { source: {
@@ -117,6 +117,9 @@ export default
}, },
fieldActions: { fieldActions: {
columnClass: 'col-lg-2 col-md-2 col-sm-4 col-xs-4',
/* /*
sync_status: { sync_status: {
mode: 'all', mode: 'all',
@@ -161,7 +164,7 @@ export default
}, },
actions: { actions: {
} }
}); });

View File

@@ -19,23 +19,22 @@ export default
fields: { fields: {
status: { status: {
label: "Status", label: "",
iconOnly: true, iconOnly: true,
icon: "{{ 'icon-job-' + host.active_failures }}", icon: "{{ 'icon-job-' + host.active_failures }}",
awToolTip: "{{ host.badgeToolTip }}", awToolTip: "{{ host.badgeToolTip }}",
awTipPlacement: "top", awTipPlacement: "right",
dataPlacement: "right", dataPlacement: "right",
awPopOver: "{{ host.job_status_html }}", awPopOver: "{{ host.job_status_html }}",
dataTitle: "{{ host.job_status_title }}",
ngClick:"bob", ngClick:"bob",
columnClass: "col-md-1 col-sm-2 col-xs-3", columnClass: "List-staticColumn--smallStatus",
searchable: false, searchable: false,
nosort: true nosort: true
}, },
name: { name: {
key: true, key: true,
label: 'Name', label: 'Name',
columnClass: 'col-lg-4 col-md3 col-sm-3 col-xs-7 ellipsis', columnClass: 'col-lg-5 col-md-5 col-sm-5 col-xs-8 ellipsis List-staticColumnAdjacent',
ngClass: "{ 'host-disabled-label': !host.enabled }", ngClass: "{ 'host-disabled-label': !host.enabled }",
ngClick: "editHost(host.id)" ngClick: "editHost(host.id)"
}, },
@@ -43,7 +42,7 @@ export default
label: 'Inventory', label: 'Inventory',
sourceModel: 'inventory', sourceModel: 'inventory',
sourceField: 'name', sourceField: 'name',
columnClass: 'col-lg-3 col-md2 col-sm-2 hidden-xs elllipsis', columnClass: 'col-lg-5 col-md-4 col-sm-4 hidden-xs elllipsis',
linkTo: "{{ '/#/inventories/' + host.inventory }}" linkTo: "{{ '/#/inventories/' + host.inventory }}"
}, },
enabled: { enabled: {
@@ -74,6 +73,9 @@ export default
}, },
fieldActions: { fieldActions: {
columnClass: 'col-lg-2 col-md-3 col-sm-3 col-xs-4',
/*active_failures: { /*active_failures: {
//label: 'Job Status', //label: 'Job Status',
//ngHref: "\{\{'/#/hosts/' + host.id + '/job_host_summaries/?inventory=' + inventory_id \}\}", //ngHref: "\{\{'/#/hosts/' + host.id + '/job_host_summaries/?inventory=' + inventory_id \}\}",
@@ -94,7 +96,7 @@ export default
}, },
actions: { actions: {
} }
}); });

View File

@@ -21,8 +21,8 @@ export default
fields: { fields: {
status: { status: {
label: 'Status', label: '',
columnClass: 'col-md-2 col-sm-2 col-xs-2', columnClass: 'List-staticColumn--mediumStatus',
searchable: false, searchable: false,
nosort: true, nosort: true,
ngClick: "null", ngClick: "null",
@@ -31,13 +31,13 @@ export default
icons: [{ icons: [{
icon: "{{ 'icon-cloud-' + inventory.syncStatus }}", icon: "{{ 'icon-cloud-' + inventory.syncStatus }}",
awToolTip: "{{ inventory.syncTip }}", awToolTip: "{{ inventory.syncTip }}",
awTipPlacement: "top", awTipPlacement: "right",
ngClick: "showGroupSummary($event, inventory.id)", ngClick: "showGroupSummary($event, inventory.id)",
ngClass: "inventory.launch_class" ngClass: "inventory.launch_class"
},{ },{
icon: "{{ 'icon-job-' + inventory.hostsStatus }}", icon: "{{ 'icon-job-' + inventory.hostsStatus }}",
awToolTip: "{{ inventory.hostsTip }}", awToolTip: "{{ inventory.hostsTip }}",
awTipPlacement: "top", awTipPlacement: "right",
ngClick: "showHostSummary($event, inventory.id)", ngClick: "showHostSummary($event, inventory.id)",
ngClass: "" ngClass: ""
}] }]
@@ -45,7 +45,7 @@ export default
name: { name: {
key: true, key: true,
label: 'Name', label: 'Name',
columnClass: 'col-md-4 col-sm-6 col-xs-6', columnClass: 'col-md-5 col-sm-5 col-xs-8 List-staticColumnAdjacent',
modalColumnClass: 'col-md-8', modalColumnClass: 'col-md-8',
linkTo: '/#/inventories/{{inventory.id}}/manage' linkTo: '/#/inventories/{{inventory.id}}/manage'
}, },
@@ -56,7 +56,7 @@ export default
sourceModel: 'organization', sourceModel: 'organization',
sourceField: 'name', sourceField: 'name',
excludeModal: true, excludeModal: true,
columnClass: 'col-md-4 hidden-sm hidden-xs' columnClass: 'col-md-5 col-sm-3 hidden-xs'
}, },
has_inventory_sources: { has_inventory_sources: {
label: 'Cloud sourced?', label: 'Cloud sourced?',

View File

@@ -18,26 +18,12 @@ export default
well: true, well: true,
fields: { fields: {
id: {
label: 'ID',
//ngClick:"viewJobLog(job.id)",
key: true,
noLink: true, //undocumented: 'key' above will automatically made the fields a link, but 'noLink' will override this setting
desc: true,
searchType: 'int',
columnClass: 'col-lg-1 col-md-1 col-sm-2 col-xs-2',
// awToolTip: "{{ job.status_tip }}",
// awTipPlacement: "top",
},
status: { status: {
label: 'Status', label: '',
columnClass: 'col-lg-1 col-md-2 col-sm-2 col-xs-2', columnClass: 'List-staticColumn--smallStatus',
// awToolTip: "{{ job.status_tip }}",
// awTipPlacement: "top",
dataTitle: "{{ portal_job.status_popover_title }}", dataTitle: "{{ portal_job.status_popover_title }}",
icon: 'icon-job-{{ portal_job.status }}', icon: 'icon-job-{{ portal_job.status }}',
iconOnly: true, iconOnly: true,
// ngClick:"viewJobLog(job.id)",
searchable: true, searchable: true,
nosort: true, nosort: true,
searchType: 'select', searchType: 'select',
@@ -48,24 +34,34 @@ export default
{ name: "Canceled", value: "canceled" } { name: "Canceled", value: "canceled" }
] ]
}, },
id: {
label: 'ID',
key: true,
noLink: true, //undocumented: 'key' above will automatically made the fields a link, but 'noLink' will override this setting
desc: true,
searchType: 'int',
columnClass: 'col-lg-1 col-md-1 col-sm-2 col-xs-2 List-staticColumnAdjacent',
},
name: {
label: 'Name',
columnClass: 'col-lg-4 col-md-4 col-sm-4 col-xs-6',
defaultSearchField: true
},
started: { started: {
label: 'Started', label: 'Started',
noLink: true, noLink: true,
searchable: false, searchable: false,
filter: "longDate", filter: "longDate",
columnClass: "col-lg-3 col-md-3 hidden-sm" columnClass: "col-lg-4 col-md-4 col-sm-3 xs-hidden"
},
name: {
label: 'Name',
columnClass: 'col-md-5 col-xs-5',
//ngClick: "viewJobLog(job.id, job.nameHref)",
defaultSearchField: true
} }
}, },
actions: { }, actions: { },
fieldActions: { fieldActions: {
columnClass: 'col-lg-3 col-md-4 col-sm-3 col-xs-4',
job_details: { job_details: {
mode: 'all', mode: 'all',
ngClick: "viewJobLog(portal_job.id)", ngClick: "viewJobLog(portal_job.id)",

View File

@@ -21,14 +21,14 @@ export default
fields: { fields: {
status: { status: {
label: 'Status', label: '',
iconOnly: true, iconOnly: true,
ngClick: 'showSCMStatus(project.id)', ngClick: 'showSCMStatus(project.id)',
awToolTip: '{{ project.statusTip }}', awToolTip: '{{ project.statusTip }}',
dataTipWatch: 'project.statusTip', dataTipWatch: 'project.statusTip',
dataPlacement: 'top', dataPlacement: 'right',
icon: "icon-job-{{ project.statusIcon }}", icon: "icon-job-{{ project.statusIcon }}",
columnClass: "col-lg-1 col-md-1 col-sm-2 col-xs-2", columnClass: "List-staticColumn--smallStatus",
nosort: true, nosort: true,
searchType: 'select', searchType: 'select',
searchOptions: [], //set in the controller searchOptions: [], //set in the controller
@@ -37,7 +37,7 @@ export default
name: { name: {
key: true, key: true,
label: 'Name', label: 'Name',
columnClass: "col-lg-5 col-md-4 col-sm-6 col-xs-6", columnClass: "col-lg-4 col-md-4 col-sm-5 col-xs-7 List-staticColumnAdjacent",
modalColumnClass: 'col-md-8' modalColumnClass: 'col-md-8'
}, },
scm_type: { scm_type: {
@@ -45,12 +45,12 @@ export default
searchType: 'select', searchType: 'select',
searchOptions: [], // will be set by Options call to projects resource searchOptions: [], // will be set by Options call to projects resource
excludeModal: true, excludeModal: true,
columnClass: 'col-lg-2 col-md-2 hidden-sm hidden-xs' columnClass: 'col-lg-3 col-md-2 col-sm-3 hidden-xs'
}, },
last_updated: { last_updated: {
label: 'Last Updated', label: 'Last Updated',
filter: "longDate", filter: "longDate",
columnClass: "col-lg-2 col-md-2 hidden-sm hidden-xs", columnClass: "col-lg-3 col-md-3 hidden-sm hidden-xs",
excludeModal: true, excludeModal: true,
searchable: false, searchable: false,
nosort: true nosort: true
@@ -77,7 +77,7 @@ export default
fieldActions: { fieldActions: {
columnClass: 'col-lg-2 col-md-3 col-sm-4 col-xs-4', columnClass: 'col-lg-2 col-md-3 col-sm-4 col-xs-5',
scm_update: { scm_update: {
ngClick: 'SCMUpdate(project.id, $event)', ngClick: 'SCMUpdate(project.id, $event)',

View File

@@ -18,10 +18,10 @@ export default
fields: { fields: {
status: { status: {
label: 'Status', label: '',
columnClass: 'col-lg-1 col-md-2 col-sm-2 col-xs-2', columnClass: 'List-staticColumn--smallStatus',
awToolTip: "{{ schedule.status_tip }}", awToolTip: "{{ schedule.status_tip }}",
awTipPlacement: "top", awTipPlacement: "right",
icon: 'icon-job-{{ schedule.status }}', icon: 'icon-job-{{ schedule.status }}',
iconOnly: true, iconOnly: true,
ngClick: "toggleSchedule($event, schedule.id)", ngClick: "toggleSchedule($event, schedule.id)",
@@ -30,7 +30,7 @@ export default
}, },
name: { name: {
label: 'Name', label: 'Name',
columnClass: 'col-lg-3 col-md-3 col-sm-3 col-xs-5', columnClass: 'col-lg-4 col-md-5 col-sm-5 col-xs-7 List-staticColumnAdjacent',
sourceModel: 'unified_job_template', sourceModel: 'unified_job_template',
sourceField: 'name', sourceField: 'name',
ngClick: "editSchedule(schedule.id)", ngClick: "editSchedule(schedule.id)",