From 54eff92ea332879cfe5173fc546c43420b34c2bf Mon Sep 17 00:00:00 2001
From: chouseknecht View JSON examples at www.json.org View YAML examples at ansibleworks.com View YAML examples at ansibleworks.com View YAML examples at ansibleworks.com---
\n" +
'
somevar: somevalue
password: magic
The number of parallel or simultaneous processes to use while executing the playbook. Provide a value between 0 and 100. " + "A value of zero will use the ansible default setting of 5 parallel processes.
", + dataContainer: 'body', dataTitle: 'Forks', dataPlacement: 'right' }, @@ -113,6 +115,7 @@ angular.module('JobFormDefinition', []) "Multiple patterns can be separated by ; : or ,For more information and examples see the " + "Selecting Targets section under Inventory and Patterns " + " in the Ansible documentation.
", + dataContainer: 'body', dataTitle: 'Limit', dataPlacement: 'right' }, @@ -126,7 +129,8 @@ angular.module('JobFormDefinition', []) column: 1, awPopOver: "Control the level of output ansible will produce as the playbook executes.
", dataTitle: 'Verbosity', - dataPlacement: 'right' + dataPlacement: 'right', + dataContainer: 'body' }, variables: { label: 'Extra Variables', @@ -143,6 +147,7 @@ angular.module('JobFormDefinition', []) "YAML:---\n", dataTitle: 'Extra Variables', + dataContainer: 'body', dataPlacement: 'left' }, job_tags: { @@ -161,6 +166,7 @@ angular.module('JobFormDefinition', []) "in the Job Tags field:<\p>\n" + "
somevar: somevalue
password: magic
configuration,packages\n", dataTitle: "Job Tags", + dataContainer: 'body', dataPlacement: "left" }, allow_callbacks: { @@ -183,7 +189,7 @@ angular.module('JobFormDefinition', []) "in one of your defined inventories, the request will be denied." + "
Successful requests will result in an entry on the Jobs tab, where the results and history can be viewed.
", detailPlacement: 'left', - dataContainer: '#jobs', + dataContainer: 'body', dataTitle: 'Callback URL' }, callback_url: { @@ -203,7 +209,7 @@ angular.module('JobFormDefinition', []) "in one of your defined inventories, the request will be denied." + "Successful requests will result in an entry on the Jobs tab, where the results and history can be viewed.
", detailPlacement: 'left', - dataContainer: '#jobs', + dataContainer: 'body', dataTitle: 'Callback URL' }, host_config_key: { @@ -217,7 +223,7 @@ angular.module('JobFormDefinition', []) "curl --data \"host_config_key=5a8ec154832b780b9bdef1061764ae5a\" " + "http://your.server.com:999/api/v1/job_templates/1/callback/
\n", detailPlacement: 'left', - dataContainer: '#jobs' + dataContainer: 'body' } }, @@ -233,6 +239,7 @@ angular.module('JobFormDefinition', []) ngClick: 'formReset()', label: 'Reset', icon: 'icon-remove', + 'class': 'btn btn-default', ngDisabled: true //Disabled when $pristine } }, @@ -282,7 +289,7 @@ angular.module('JobFormDefinition', []) label: 'Hosts', icon: 'icon-th-large', ngClick: "jobSummary()", - "class": 'btn btn-small', + "class": 'btn btn-default btn-small', awToolTip: 'View host summary', mode: 'all' }, @@ -290,7 +297,7 @@ angular.module('JobFormDefinition', []) label: 'Events', icon: 'icon-list-ul', ngClick: "jobEvents()", - "class": 'btn btn-small', + "class": 'btn btn-default btn-small', awToolTip: 'Edit job events', mode: 'all' } diff --git a/awx/ui/static/js/forms/Organizations.js b/awx/ui/static/js/forms/Organizations.js index d749820e13..e0cc15b405 100644 --- a/awx/ui/static/js/forms/Organizations.js +++ b/awx/ui/static/js/forms/Organizations.js @@ -43,6 +43,7 @@ angular.module('OrganizationFormDefinition', []) ngClick: 'formReset()', label: 'Reset', icon: 'icon-trash', + 'class': 'btn btn-default', ngDisabled: true //Disabled when $pristine } }, @@ -82,6 +83,7 @@ angular.module('OrganizationFormDefinition', []) label: 'Edit', ngClick: "edit('users', \{\{ user.id \}\}, '\{\{ user.username \}\}')", icon: 'icon-edit', + 'class': 'btn btn-default', awToolTip: 'Edit user' }, "delete": { @@ -125,7 +127,8 @@ angular.module('OrganizationFormDefinition', []) label: 'Edit', ngClick: "edit('users', \{\{ admin.id \}\}, '\{\{ admin.username \}\}')", icon: 'icon-edit', - awToolTip: 'Edit administrator' + awToolTip: 'Edit administrator', + 'class': 'btn btn-default' }, "delete": { label: 'Delete', diff --git a/awx/ui/static/js/forms/Permissions.js b/awx/ui/static/js/forms/Permissions.js index 1e9f3677ab..0fe40d6c99 100644 --- a/awx/ui/static/js/forms/Permissions.js +++ b/awx/ui/static/js/forms/Permissions.js @@ -98,6 +98,7 @@ angular.module('PermissionFormDefinition', []) ngClick: 'formReset()', label: 'Reset', icon: 'icon-trash', + 'class': 'btn btn-default', ngDisabled: true //Disabled when $pristine } }, diff --git a/awx/ui/static/js/forms/Projects.js b/awx/ui/static/js/forms/Projects.js index ebdad0a37c..14017ce166 100644 --- a/awx/ui/static/js/forms/Projects.js +++ b/awx/ui/static/js/forms/Projects.js @@ -83,6 +83,7 @@ angular.module('ProjectFormDefinition', []) ngClick: 'formReset()', label: 'Reset', icon: 'icon-trash', + 'class': 'btn btn-default', ngDisabled: true //Disabled when $pristine } }, @@ -118,7 +119,8 @@ angular.module('ProjectFormDefinition', []) label: 'Edit', ngClick: "edit('organizations', \{\{ organization.id \}\}, '\{\{ organization.name \}\}')", icon: 'icon-edit', - awToolTip: 'Edit the organization' + awToolTip: 'Edit the organization', + 'class': 'btn btn-default' }, "delete": { label: 'Delete', diff --git a/awx/ui/static/js/forms/Teams.js b/awx/ui/static/js/forms/Teams.js index 75281904ea..79bf981c1a 100644 --- a/awx/ui/static/js/forms/Teams.js +++ b/awx/ui/static/js/forms/Teams.js @@ -57,6 +57,7 @@ angular.module('TeamFormDefinition', []) ngClick: 'formReset()', label: 'Reset', icon: 'icon-trash', + 'class': 'btn btn-default', ngDisabled: true //Disabled when $pristine } }, @@ -93,7 +94,8 @@ angular.module('TeamFormDefinition', []) label: 'Edit', ngClick: "edit('credentials', \{\{ credential.id \}\}, '\{\{ credential.name \}\}')", icon: 'icon-edit', - awToolTip: 'Modify the credential' + awToolTip: 'Modify the credential', + 'class': 'btn btn-default' }, "delete": { label: 'Delete', @@ -148,7 +150,8 @@ angular.module('TeamFormDefinition', []) label: 'Edit', ngClick: "edit('permissions', \{\{ permission.id \}\}, '\{\{ permission.name \}\}')", icon: 'icon-edit', - awToolTip: 'Edit the permission' + awToolTip: 'Edit the permission', + 'class': 'btn btn-default' }, "delete": { @@ -191,7 +194,8 @@ angular.module('TeamFormDefinition', []) label: 'Edit', ngClick: "edit('projects', \{\{ project.id \}\}, '\{\{ project.name \}\}')", icon: 'icon-edit', - awToolTip: 'Modify the project' + awToolTip: 'Modify the project', + 'class': 'btn btn-default' }, "delete": { label: 'Delete', @@ -236,7 +240,8 @@ angular.module('TeamFormDefinition', []) label: 'Edit', ngClick: "edit('users', \{\{ user.id \}\}, '\{\{ user.username \}\}')", icon: 'icon-edit', - awToolTip: 'Edit user' + awToolTip: 'Edit user', + 'class': 'btn btn-default' }, "delete": { label: 'Delete', diff --git a/awx/ui/static/js/forms/Users.js b/awx/ui/static/js/forms/Users.js index 3626826a67..2611f00134 100644 --- a/awx/ui/static/js/forms/Users.js +++ b/awx/ui/static/js/forms/Users.js @@ -98,6 +98,7 @@ angular.module('UserFormDefinition', []) ngClick: 'formReset()', label: 'Reset', icon: 'icon-trash', + 'class': 'btn btn-default', ngDisabled: true //Disabled when $pristine } }, @@ -134,7 +135,8 @@ angular.module('UserFormDefinition', []) label: 'Edit', ngClick: "edit('credentials', \{\{ credential.id \}\}, '\{\{ credential.name \}\}')", icon: 'icon-edit', - awToolTip: 'Edit the credential' + awToolTip: 'Edit the credential', + 'class': 'btn btn-default' }, "delete": { label: 'Delete', @@ -191,7 +193,8 @@ angular.module('UserFormDefinition', []) label: 'Edit', ngClick: "edit('permissions', \{\{ permission.id \}\}, '\{\{ permission.name \}\}')", icon: 'icon-edit', - awToolTip: 'Edit the permission' + awToolTip: 'Edit the permission', + 'class': 'btn btn-default' }, "delete": { diff --git a/awx/ui/static/js/helpers/Groups.js b/awx/ui/static/js/helpers/Groups.js index e22ed9e653..2d9d097275 100644 --- a/awx/ui/static/js/helpers/Groups.js +++ b/awx/ui/static/js/helpers/Groups.js @@ -72,7 +72,7 @@ angular.module('GroupsHelper', [ 'RestServices', 'Utilities', 'ListGenerator', ' }); scope.createGroup = function() { - $('#form-modal').modal('hide'); + $('#form-modal').modal('hide'); GroupsAdd({ inventory_id: inventory_id, group_id: group_id }); } @@ -101,6 +101,14 @@ angular.module('GroupsHelper', [ 'RestServices', 'Utilities', 'ListGenerator', ' scope.formModalCancelShow = true; scope.parseType = 'yaml'; ParseTypeChange(scope); + + $('#form-modal').on('hidden.bs.modal', function() { + var me = $(this); + $('.modal-backdrop').each(function(index) { + $(this).remove(); + }); + me.unbind('hidden.bs.modal'); + }); $('#form-modal .btn-none').removeClass('btn-none').addClass('btn-success'); diff --git a/awx/ui/static/js/lists/Credentials.js b/awx/ui/static/js/lists/Credentials.js index 1708f551ee..14ad2169a8 100644 --- a/awx/ui/static/js/lists/Credentials.js +++ b/awx/ui/static/js/lists/Credentials.js @@ -59,7 +59,7 @@ angular.module('CredentialsListDefinition', []) ngClick: "editCredential(\{\{ credential.id \}\})", icon: 'icon-edit', label: 'Edit', - "class": 'btn-mini', + "class": 'btn-mini btn-default', awToolTip: 'View/Edit credential' }, diff --git a/awx/ui/static/js/lists/Groups.js b/awx/ui/static/js/lists/Groups.js index 5b5e51d972..7b76f4d02f 100644 --- a/awx/ui/static/js/lists/Groups.js +++ b/awx/ui/static/js/lists/Groups.js @@ -41,10 +41,10 @@ angular.module('GroupListDefinition', []) "or to the selected parent group by clicking the Select button. You can also create a new group by clicking the " + "Create New Group button.", dataPlacement: 'left', - dataContainer: "#form-modal", + dataContainer: '#form-modal .modal-content', icon: "icon-question-sign", mode: 'all', - 'class': 'btn-mini btn-info', + 'class': 'btn-mini btn-info btn-help', awToolTip: 'Click for help', dataTitle: 'Adding Groups', id: 'group-help-button', @@ -57,7 +57,7 @@ angular.module('GroupListDefinition', []) label: 'Edit', ngClick: "editGroup(\{\{ group.id \}\})", icon: 'icon-edit', - "class": 'btn-mini', + "class": 'btn-mini btn-default', awToolTip: 'View/Edit group' }, diff --git a/awx/ui/static/js/lists/Hosts.js b/awx/ui/static/js/lists/Hosts.js index 5508c05484..df78cc9df5 100644 --- a/awx/ui/static/js/lists/Hosts.js +++ b/awx/ui/static/js/lists/Hosts.js @@ -32,10 +32,10 @@ angular.module('HostListDefinition', []) help: { awPopOver: "Select hosts by clicking on each host you wish to add. Add the selected hosts to the group by clicking the Select button.", dataPlacement: 'left', - dataContainer: "#form-modal", + dataContainer: '#form-modal .modal-content', icon: "icon-question-sign", mode: 'all', - 'class': 'btn-mini btn-info', + 'class': 'btn-mini btn-info btn-help', awToolTip: 'Click for help', dataTitle: 'Selecting Hosts', iconSize: 'large', @@ -48,7 +48,7 @@ angular.module('HostListDefinition', []) label: 'Edit', ngClick: "editHost(\{\{ host.id \}\})", icon: 'icon-edit', - "class": 'btn-mini', + "class": 'btn-mini btn-default', awToolTip: 'View/Edit host' }, diff --git a/awx/ui/static/js/lists/Inventories.js b/awx/ui/static/js/lists/Inventories.js index b93bb340ac..5d4b35051e 100644 --- a/awx/ui/static/js/lists/Inventories.js +++ b/awx/ui/static/js/lists/Inventories.js @@ -64,7 +64,7 @@ angular.module('InventoriesListDefinition', []) label: 'Edit', ngClick: "editInventory(\{\{ inventory.id \}\})", icon: 'icon-edit', - "class": 'btn-mini', + "class": 'btn-mini btn-default', awToolTip: 'View/Edit inventory' }, diff --git a/awx/ui/static/js/lists/JobEvents.js b/awx/ui/static/js/lists/JobEvents.js index beb60543f8..ea2a8bebd3 100644 --- a/awx/ui/static/js/lists/JobEvents.js +++ b/awx/ui/static/js/lists/JobEvents.js @@ -70,7 +70,7 @@ angular.module('JobEventsListDefinition', []) label: 'Details', ngClick: "jobDetails()", icon: 'icon-zoom-in', - "class": 'btn btn-mini', + "class": 'btn btn-default btn-mini', awToolTip: 'Edit job details', mode: 'all' }, @@ -78,7 +78,7 @@ angular.module('JobEventsListDefinition', []) label: 'Hosts', icon: 'icon-th-large', ngClick: "jobSummary()", - "class": 'btn btn-mini', + "class": 'btn btn-default btn-mini', awToolTip: 'View host summary', mode: 'all' } @@ -89,7 +89,7 @@ angular.module('JobEventsListDefinition', []) label: 'View', ngClick: "viewJobEvent(\{\{ jobevent.id \}\})", icon: 'icon-zoom-in', - "class": 'btn-mini', + "class": 'btn-default btn-mini', awToolTip: 'View event details' } } diff --git a/awx/ui/static/js/lists/JobHosts.js b/awx/ui/static/js/lists/JobHosts.js index 06441edbfb..28b28e9ff5 100644 --- a/awx/ui/static/js/lists/JobHosts.js +++ b/awx/ui/static/js/lists/JobHosts.js @@ -68,7 +68,7 @@ angular.module('JobHostDefinition', []) label: 'Details', icon: 'icon-edit', ngClick: "jobDetails()", - "class": 'btn btn-mini', + "class": 'btn btn-default btn-mini', awToolTip: 'Edit job details', mode: 'all' }, @@ -76,7 +76,7 @@ angular.module('JobHostDefinition', []) label: 'Events', icon: 'icon-list-ul', ngClick: "jobEvents()", - "class": 'btn btn-mini', + "class": 'btn btn-default btn-mini', awToolTip: 'View job events', mode: 'all' }, @@ -94,8 +94,8 @@ angular.module('JobHostDefinition', []) 'class': 'btn-info btn-mini btn-help', awToolTip: 'Click for help', dataTitle: 'Job Host Summary', - iconSize: 'large', - id: 'jobhost-help-button' + id: 'jobhost-help-button', + iconSize: 'large' } }, diff --git a/awx/ui/static/js/lists/JobTemplates.js b/awx/ui/static/js/lists/JobTemplates.js index 93bd7ca36c..3b1d4a4121 100644 --- a/awx/ui/static/js/lists/JobTemplates.js +++ b/awx/ui/static/js/lists/JobTemplates.js @@ -46,7 +46,7 @@ angular.module('JobTemplatesListDefinition', []) ngClick: "editJobTemplate(\{\{ job_template.id \}\})", icon: 'icon-edit', awToolTip: 'Edit template', - "class": 'btn-mini' + "class": 'btn-default btn-mini' }, submit: { label: 'Launch', diff --git a/awx/ui/static/js/lists/Jobs.js b/awx/ui/static/js/lists/Jobs.js index 0843a41341..6b771938a9 100644 --- a/awx/ui/static/js/lists/Jobs.js +++ b/awx/ui/static/js/lists/Jobs.js @@ -70,7 +70,7 @@ angular.module('JobsListDefinition', []) label: 'Hosts', icon: 'icon-th-large', ngClick: "viewSummary(\{{ job.id \}\}, '\{\{ job.name \}\}')", - "class": 'btn btn-mini', + "class": 'btn btn-default btn-mini', awToolTip: 'View host summary', ngDisabled: "job.status == 'new'" }, @@ -79,7 +79,7 @@ angular.module('JobsListDefinition', []) icon: 'icon-list-ul', mode: 'all', ngClick: "viewEvents(\{{ job.id \}\}, '\{\{ job.name \}\}')", - "class": 'btn btn-mini', + "class": 'btn btn-default btn-mini', awToolTip: 'View events', ngDisabled: "job.status == 'new'" }, @@ -87,7 +87,7 @@ angular.module('JobsListDefinition', []) label: 'Details', icon: 'icon-zoom-in', ngClick: "editJob(\{\{ job.id \}\}, '\{\{ job.name \}\}')", - "class": 'btn btn-mini', + "class": 'btn btn-default btn-mini', awToolTip: 'View job details' }, rerun: { diff --git a/awx/ui/static/js/lists/Organizations.js b/awx/ui/static/js/lists/Organizations.js index 1d72d36984..4a63f2cdee 100644 --- a/awx/ui/static/js/lists/Organizations.js +++ b/awx/ui/static/js/lists/Organizations.js @@ -43,7 +43,7 @@ angular.module('OrganizationListDefinition', []) label: 'Edit', ngClick: "editOrganization(\{\{ organization.id \}\})", icon: 'icon-edit', - "class": 'btn-mini', + "class": 'btn-mini btn-default', awToolTip: 'View/Edit organization' }, diff --git a/awx/ui/static/js/lists/Permissions.js b/awx/ui/static/js/lists/Permissions.js index 36935c3bb1..d4b4783213 100644 --- a/awx/ui/static/js/lists/Permissions.js +++ b/awx/ui/static/js/lists/Permissions.js @@ -57,7 +57,7 @@ angular.module('PermissionListDefinition', []) label: 'Edit', ngClick: "editPermission(\{\{ permission.id \}\})", icon: 'icon-edit', - "class": 'btn-mini', + "class": 'btn-mini btn-default', awToolTip: 'View/Edit permission' }, diff --git a/awx/ui/static/js/lists/Projects.js b/awx/ui/static/js/lists/Projects.js index a52e4c53e7..f08084e2bf 100644 --- a/awx/ui/static/js/lists/Projects.js +++ b/awx/ui/static/js/lists/Projects.js @@ -45,7 +45,7 @@ angular.module('ProjectsListDefinition', []) label: 'Edit', ngClick: "editProject(\{\{ project.id \}\})", icon: 'icon-edit', - "class": 'btn-mini', + "class": 'btn-mini btn-default', awToolTip: 'View/edit project' }, diff --git a/awx/ui/static/js/lists/Teams.js b/awx/ui/static/js/lists/Teams.js index b1d3b58bf0..5bf19dd612 100644 --- a/awx/ui/static/js/lists/Teams.js +++ b/awx/ui/static/js/lists/Teams.js @@ -50,7 +50,7 @@ angular.module('TeamsListDefinition', []) label: 'Edit', ngClick: "editTeam(\{\{ team.id \}\})", icon: 'icon-edit', - "class": 'btn-mini', + "class": 'btn-mini btn-default', awToolTip: 'View/Edit team' }, diff --git a/awx/ui/static/js/lists/Users.js b/awx/ui/static/js/lists/Users.js index 2f40477c57..3130ce4e32 100644 --- a/awx/ui/static/js/lists/Users.js +++ b/awx/ui/static/js/lists/Users.js @@ -50,7 +50,7 @@ angular.module('UserListDefinition', []) label: 'Edit', ngClick: "editUser(\{\{ user.id \}\})", icon: 'icon-edit', - "class": 'btn-mini', + "class": 'btn-mini btn-default', awToolTip: 'View/Edit user' }, diff --git a/awx/ui/static/lib/ansible/directives.js b/awx/ui/static/lib/ansible/directives.js index d99819b468..95f3510114 100644 --- a/awx/ui/static/lib/ansible/directives.js +++ b/awx/ui/static/lib/ansible/directives.js @@ -187,7 +187,15 @@ angular.module('AWDirectives', ['RestServices']) return function(scope, element, attrs) { var delay = (attrs.delay != undefined && attrs.delay != null) ? attrs.delay : $AnsibleConfig.tooltip_delay; var placement = (attrs.placement != undefined && attrs.placement != null) ? attrs.placement : 'left'; - $(element).tooltip({ placement: placement, delay: delay, title: attrs.awToolTip }); + $(element).on('hidden.bs.tooltip', function( ) { + // TB3RC1 is leaving behind tooltip