Inventory refactor: lists now uniformly set tool tips placement to 'top'. Fixed an ugly scope bug when using modals that call LookupInit. The callbacks inside search were being left in the inventory scope and fired everytime the host view refreshed. Added a cleanup method in search to remove its callbacks. Calling the cleanup method on modal close fixes.

This commit is contained in:
Chris Houseknecht
2014-01-13 20:55:28 +00:00
parent 6d205213db
commit afb151bf29
19 changed files with 117 additions and 85 deletions

View File

@@ -59,7 +59,8 @@ angular.module('CloudCredentialsListDefinition', [])
icon: 'fa-edit',
label: 'Edit',
"class": 'btn-sm',
awToolTip: 'View/Edit credential'
awToolTip: 'View/Edit credential',
dataPlacement: 'top'
},
"delete": {
@@ -67,7 +68,8 @@ angular.module('CloudCredentialsListDefinition', [])
icon: 'fa-trash-o',
label: 'Delete',
"class": 'btn-sm',
awToolTip: 'Delete credential'
awToolTip: 'Delete credential',
dataPlacement: 'top'
}
}
});

View File

@@ -73,7 +73,8 @@ angular.module('CredentialsListDefinition', [])
icon: 'fa-edit',
label: 'Edit',
"class": 'btn-sm',
awToolTip: 'View/Edit credential'
awToolTip: 'View/Edit credential',
dataPlacement: 'top'
},
"delete": {
@@ -81,7 +82,8 @@ angular.module('CredentialsListDefinition', [])
icon: 'fa-trash',
label: 'Delete',
"class": 'btn-sm',
awToolTip: 'Delete credential'
awToolTip: 'Delete credential',
dataPlacement: 'top'
}
}
});

View File

@@ -44,7 +44,8 @@ angular.module('GroupListDefinition', [])
ngClick: "editGroup(\{\{ group.id \}\})",
icon: 'icon-edit',
"class": 'btn-xs',
awToolTip: 'View/Edit group'
awToolTip: 'View/Edit group',
dataPlacement: 'top'
},
"delete": {
@@ -52,7 +53,8 @@ angular.module('GroupListDefinition', [])
ngClick: "deleteGroup(\{\{ group.id \}\},'\{\{ group.name \}\}')",
icon: 'icon-trash',
"class": 'btn-xs',
awToolTip: 'Delete group'
awToolTip: 'Delete group',
dataPlacement: 'top'
}
}
});

View File

@@ -44,7 +44,8 @@ angular.module('HostListDefinition', [])
ngClick: "editHost(\{\{ host.id \}\})",
icon: 'icon-edit',
"class": 'btn-xs',
awToolTip: 'View/Edit host'
awToolTip: 'View/Edit host',
dataPlacement: 'top'
},
"delete": {
@@ -52,7 +53,8 @@ angular.module('HostListDefinition', [])
ngClick: "deleteHost(\{\{ host.id \}\},'\{\{ host.name \}\}')",
icon: 'icon-trash',
"class": 'btn-xs',
awToolTip: 'Delete host'
awToolTip: 'Delete host',
dataPlacement: 'top'
}
}
});

View File

@@ -101,14 +101,16 @@ angular.module('InventoriesListDefinition', [])
ngClick: "editInventory(\{\{ inventory.id \}\})",
icon: 'icon-edit',
"class": 'btn-xs btn-default',
awToolTip: 'Edit inventory'
awToolTip: 'Edit inventory',
dataPlacement: 'top'
},
"delete": {
label: 'Delete',
ngClick: "deleteInventory(\{\{ inventory.id \}\},'\{\{ inventory.name \}\}')",
icon: 'icon-trash',
"class": 'btn-xs btn-danger',
awToolTip: 'Delete inventory'
awToolTip: 'Delete inventory',
dataPlacement: 'top'
},
dropdown: {
type: 'DropDown',

View File

@@ -100,13 +100,12 @@ angular.module('InventoryHostsDefinition', [])
awToolTip: "Create a new host"
},
stream: {
mode: 'all',
ngClick: "showActivity()",
awToolTip: "View Activity Stream",
mode: 'all',
ngShow: "user_is_superuser"
},
help: {
dataPlacement: 'top',
mode: 'all',
awToolTip:
//"<div style=\"text-align:left;\"><img src=\"/static/img/cow.png\" style=\"width:50px; height:56px; float:left; padding-right:5px;\">" +

View File

@@ -50,7 +50,8 @@ angular.module('JobTemplatesListDefinition', [])
ngClick: "editJobTemplate(\{\{ job_template.id \}\})",
icon: 'icon-edit',
awToolTip: 'Edit template',
"class": 'btn-default btn-xs'
"class": 'btn-default btn-xs',
dataPlacement: 'top'
},
submit: {
label: 'Launch',
@@ -58,14 +59,16 @@ angular.module('JobTemplatesListDefinition', [])
mode: 'all',
"class": 'btn-xs btn-success',
ngClick: 'submitJob(\{\{ job_template.id \}\})',
awToolTip: 'Start a job using this template'
awToolTip: 'Start a job using this template',
dataPlacement: 'top'
},
"delete": {
label: 'Delete',
ngClick: "deleteJobTemplate(\{\{ job_template.id \}\},'\{\{ job_template.name \}\}')",
icon: 'icon-trash',
"class": 'btn-danger btn-xs',
awToolTip: 'Delete template'
awToolTip: 'Delete template',
dataPlacement: 'top'
}
}
});

View File

@@ -89,7 +89,8 @@ angular.module('JobsListDefinition', [])
mode: 'all',
ngClick: "submitJob(\{\{ job.id \}\}, '\{\{ job.summary_fields.job_template.name \}\}' )",
'class': 'btn-success btn-xs',
awToolTip: 'Relaunch the job template, running it again from scratch'
awToolTip: 'Relaunch the job template, running it again from scratch',
dataPlacement: 'top'
},
cancel: {
label: 'Cancel',
@@ -98,7 +99,8 @@ angular.module('JobsListDefinition', [])
ngClick: 'deleteJob(\{\{ job.id \}\})',
"class": 'btn-danger btn-xs delete-btn',
awToolTip: 'Cancel a running or pending job',
ngShow: "job.status == 'pending' || job.status == 'running' || job.status == 'waiting'"
ngShow: "job.status == 'pending' || job.status == 'running' || job.status == 'waiting'",
dataPlacement: 'top'
},
"delete": {
label: 'Delete',
@@ -107,7 +109,8 @@ angular.module('JobsListDefinition', [])
ngClick: 'deleteJob(\{\{ job.id \}\})',
"class": 'btn-danger btn-xs delete-btn',
awToolTip: 'Remove the selected job from the database',
ngShow: "job.status != 'pending' && job.status != 'running' && job.status != 'waiting'"
ngShow: "job.status != 'pending' && job.status != 'running' && job.status != 'waiting'",
dataPlacement: 'top'
},
dropdown: {
type: 'DropDown',

View File

@@ -47,7 +47,8 @@ angular.module('OrganizationListDefinition', [])
ngClick: "editOrganization(\{\{ organization.id \}\})",
icon: 'icon-edit',
"class": 'btn-xs btn-default',
awToolTip: 'View/Edit organization'
awToolTip: 'View/Edit organization',
dataPlacement: 'top'
},
"delete": {
@@ -55,7 +56,8 @@ angular.module('OrganizationListDefinition', [])
ngClick: "deleteOrganization(\{\{ organization.id \}\},'\{\{ organization.name \}\}')",
icon: 'icon-trash',
"class": 'btn-xs btn-danger',
awToolTip: 'Delete organization'
awToolTip: 'Delete organization',
dataPlacement: 'top'
}
}
});

View File

@@ -62,7 +62,8 @@ angular.module('PermissionListDefinition', [])
ngClick: "editPermission(\{\{ permission.id \}\})",
icon: 'icon-edit',
"class": 'btn-xs btn-default',
awToolTip: 'View/Edit permission'
awToolTip: 'View/Edit permission',
dataPlacement: 'top'
},
"delete": {
@@ -71,7 +72,8 @@ angular.module('PermissionListDefinition', [])
icon: 'icon-trash',
"class": 'btn-xs btn-danger',
awToolTip: 'Delete permission',
ngShow: 'PermissionAddAllowed'
ngShow: 'PermissionAddAllowed',
dataPlacement: 'top'
}
}
});

View File

@@ -95,7 +95,8 @@ angular.module('ProjectsListDefinition', [])
ngClick: "editProject(\{\{ project.id \}\})",
icon: 'icon-edit',
"class": 'btn-xs btn-default',
awToolTip: 'View/edit project properties'
awToolTip: 'View/edit project properties',
dataPlacement: 'top'
},
scm_update: {
label: 'Update',
@@ -103,7 +104,8 @@ angular.module('ProjectsListDefinition', [])
"class": 'btn-xs btn-success',
ngClick: 'SCMUpdate(\{\{ project.id \}\})',
awToolTip: "\{\{ project.scm_update_tooltip \}\}",
ngClass: "project.scm_type_class"
ngClass: "project.scm_type_class",
dataPlacement: 'top'
},
cancel: {
label: 'Cancel',
@@ -111,7 +113,8 @@ angular.module('ProjectsListDefinition', [])
ngClick: "cancelUpdate(\{\{ project.id \}\}, '\{\{ project.name \}\}')",
"class": 'btn-danger btn-xs delete-btn',
awToolTip: 'Cancel a running SCM update process',
ngShow: "project.status == 'updating'"
ngShow: "project.status == 'updating'",
dataPlacement: 'top'
},
"delete": {
label: 'Delete',
@@ -119,7 +122,8 @@ angular.module('ProjectsListDefinition', [])
icon: 'icon-trash',
"class": 'btn-danger btn-xs delete-btn',
awToolTip: 'Permanently remove project from the database',
ngShow: "project.status !== 'updating'"
ngShow: "project.status !== 'updating'",
dataPlacement: 'top'
}
}
});

View File

@@ -54,7 +54,8 @@ angular.module('TeamsListDefinition', [])
ngClick: "editTeam(\{\{ team.id \}\})",
icon: 'icon-edit',
"class": 'btn-xs btn-default',
awToolTip: 'View/Edit team'
awToolTip: 'View/Edit team',
dataPlacement: 'top'
},
"delete": {
@@ -62,7 +63,8 @@ angular.module('TeamsListDefinition', [])
ngClick: "deleteTeam(\{\{ team.id \}\},'\{\{ team.name \}\}')",
icon: 'icon-trash',
"class": 'btn-xs btn-danger',
awToolTip: 'Delete team'
awToolTip: 'Delete team',
dataPlacement: 'top'
}
}
});

View File

@@ -56,7 +56,8 @@ angular.module('UserListDefinition', [])
ngClick: "editUser(\{\{ user.id \}\})",
icon: 'icon-edit',
"class": 'btn-xs btn-default',
awToolTip: 'View/Edit user'
awToolTip: 'View/Edit user',
dataPlacement: 'top'
},
"delete": {
@@ -64,7 +65,8 @@ angular.module('UserListDefinition', [])
ngClick: "deleteUser(\{\{ user.id \}\},'\{\{ user.username \}\}')",
icon: 'icon-trash',
"class": 'btn-xs btn-danger',
awToolTip: 'Delete user'
awToolTip: 'Delete user',
dataPlacement: 'top'
}
}
});