mirror of
https://github.com/ansible/awx.git
synced 2026-02-22 05:30:18 -03:30
I've made the prompt_for_days modal require an integer, as well as a non-negative integer (allows 0), and fixed ngMin to new awMin
496 lines
32 KiB
HTML
496 lines
32 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en" ng-app="Tower">
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<title>Ansible Tower</title>
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
<link rel="stylesheet" href="{{ STATIC_URL }}css/custom-theme/jquery-ui-1.10.3.custom.min.css" />
|
|
<link rel="stylesheet" href="{{ STATIC_URL }}css/ansible-bootstrap.min.css" />
|
|
<link rel="stylesheet" href="{{ STATIC_URL }}lib/components-font-awesome/css/font-awesome.min.css" />
|
|
<link rel="stylesheet" href="{{ STATIC_URL }}lib/select2/select2.css" />
|
|
<link rel="stylesheet" href="{{ STATIC_URL }}lib/select2/select2-bootstrap.css" />
|
|
|
|
<link rel="stylesheet" href="{{ STATIC_URL }}lib/codemirror/lib/codemirror.css" />
|
|
<link rel="stylesheet" href="{{ STATIC_URL }}lib/codemirror/theme/elegant.css" />
|
|
<link rel="stylesheet" href="{{ STATIC_URL }}lib/codemirror/addon/lint/lint.css" />
|
|
<link rel="stylesheet" href="{{ STATIC_URL }}lib/novus-nvd3/nv.d3.css" type="text/css">
|
|
|
|
{% if settings.USE_MINIFIED_JS %}
|
|
<link rel="stylesheet" href="{{ STATIC_URL }}css/awx.min.css" />
|
|
{% else %}
|
|
<link rel="stylesheet/less" type="text/css" href="{{ STATIC_URL }}less/ansible-ui.less" />
|
|
{% endif %}
|
|
|
|
<link rel="shortcut icon" href="{{ STATIC_URL }}img/favicon.ico" />
|
|
<script>
|
|
var $basePath = "{{ STATIC_URL }}";
|
|
</script>
|
|
<script src="{{ STATIC_URL }}lib/jquery/dist/jquery.min.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/angular/angular.min.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/angular-route/angular-route.min.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/angular-resource/angular-resource.min.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/angular-cookies/angular-cookies.min.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/angular-sanitize/angular-sanitize.min.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/angular-md5/angular-md5.min.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/angular-codemirror/lib/AngularCodeMirror.js"></script>
|
|
|
|
<!-- scheduler pieces -->
|
|
<script src="{{ STATIC_URL }}lib/timezone-js/src/date.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/angular-tz-extensions/packages/jstimezonedetect/jstz.min.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/underscore/underscore.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/rrule/lib/rrule.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/rrule/lib/nlp.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/angular-tz-extensions/lib/angular-tz-extensions.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/angular-scheduler/lib/angular-scheduler.min.js"></script>
|
|
|
|
{% if settings.USE_MINIFIED_JS %}
|
|
<script src="{{ STATIC_URL }}js/awx.min.js"></script>
|
|
{% else %}
|
|
<script src="{{ STATIC_URL }}lib/less.js/dist/less-1.6.2.min.js"></script>
|
|
<script src="{{ STATIC_URL }}js/app.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/ansible/AuthService.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/ansible/RestServices.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/ansible/Utilities.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/ansible/form-generator.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/ansible/list-generator.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/ansible/prompt-dialog.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/ansible/generator-helpers.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/ansible/directives.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/ansible/filters.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/ansible/api-loader.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/ansible/pwdmeter.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/ansible/InventoryTree.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/ansible/Timer.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/ansible/Modal.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/ansible/Socket.js"></script>
|
|
<script src="{{ STATIC_URL }}js/controllers/Authentication.js"></script>
|
|
<script src="{{ STATIC_URL }}js/controllers/Organizations.js"></script>
|
|
<script src="{{ STATIC_URL }}js/controllers/Users.js"></script>
|
|
<script src="{{ STATIC_URL }}js/controllers/Admins.js"></script>
|
|
<script src="{{ STATIC_URL }}js/controllers/Inventories.js"></script>
|
|
<script src="{{ STATIC_URL }}js/controllers/Home.js"></script>
|
|
<script src="{{ STATIC_URL }}js/controllers/Teams.js"></script>
|
|
<script src="{{ STATIC_URL }}js/controllers/Credentials.js"></script>
|
|
<script src="{{ STATIC_URL }}js/controllers/Sockets.js"></script>
|
|
<script src="{{ STATIC_URL }}js/controllers/Projects.js"></script>
|
|
<script src="{{ STATIC_URL }}js/controllers/Jobs.js"></script>
|
|
<script src="{{ STATIC_URL }}js/controllers/JobDetail.js"></script>
|
|
<script src="{{ STATIC_URL }}js/controllers/JobTemplates.js"></script>
|
|
<script src="{{ STATIC_URL }}js/controllers/JobStdout.js"></script>
|
|
<script src="{{ STATIC_URL }}js/controllers/Portal.js"></script>
|
|
<script src="{{ STATIC_URL }}js/controllers/Permissions.js"></script>
|
|
<script src="{{ STATIC_URL }}js/controllers/Schedules.js"></script>
|
|
<script src="{{ STATIC_URL }}js/controllers/Sockets.js"></script>
|
|
<script src="{{ STATIC_URL }}js/forms/Users.js"></script>
|
|
<script src="{{ STATIC_URL }}js/forms/Organizations.js"></script>
|
|
<script src="{{ STATIC_URL }}js/forms/Inventories.js"></script>
|
|
<script src="{{ STATIC_URL }}js/forms/InventoryStatus.js"></script>
|
|
<script src="{{ STATIC_URL }}js/forms/Teams.js"></script>
|
|
<script src="{{ STATIC_URL }}js/forms/Hosts.js"></script>
|
|
<script src="{{ STATIC_URL }}js/forms/Groups.js"></script>
|
|
<script src="{{ STATIC_URL }}js/forms/Credentials.js"></script>
|
|
<script src="{{ STATIC_URL }}js/forms/CustomInventory.js"></script>
|
|
<script src="{{ STATIC_URL }}js/forms/JobTemplates.js"></script>
|
|
<script src="{{ STATIC_URL }}js/forms/Jobs.js"></script>
|
|
<script src="{{ STATIC_URL }}js/forms/Projects.js"></script>
|
|
<script src="{{ STATIC_URL }}js/forms/ProjectStatus.js"></script>
|
|
<script src="{{ STATIC_URL }}js/forms/Permissions.js"></script>
|
|
<script src="{{ STATIC_URL }}js/forms/EventsViewer.js"></script>
|
|
<script src="{{ STATIC_URL }}js/forms/HostGroups.js"></script>
|
|
<script src="{{ STATIC_URL }}js/forms/ActivityDetail.js"></script>
|
|
<script src="{{ STATIC_URL }}js/forms/JobSummary.js"></script>
|
|
<script src="{{ STATIC_URL }}js/forms/JobVarsPrompt.js"></script>
|
|
<script src="{{ STATIC_URL }}js/forms/LicenseForm.js"></script>
|
|
<script src="{{ STATIC_URL }}js/forms/LicenseUpdate.js"></script>
|
|
<script src="{{ STATIC_URL }}js/forms/Source.js"></script>
|
|
<script src="{{ STATIC_URL }}js/forms/SurveyQuestion.js"></script>
|
|
<script src="{{ STATIC_URL }}js/forms/LogViewerStatus.js"></script>
|
|
<script src="{{ STATIC_URL }}js/forms/LogViewerOptions.js"></script>
|
|
<script src="{{ STATIC_URL }}js/lists/Users.js"></script>
|
|
<script src="{{ STATIC_URL }}js/lists/ConfigureTowerJobs.js"></script>
|
|
<script src="{{ STATIC_URL }}js/lists/Organizations.js"></script>
|
|
<script src="{{ STATIC_URL }}js/lists/Admins.js"></script>
|
|
<script src="{{ STATIC_URL }}js/lists/Inventories.js"></script>
|
|
<script src="{{ STATIC_URL }}js/lists/Teams.js"></script>
|
|
<script src="{{ STATIC_URL }}js/lists/InventoryGroups.js"></script>
|
|
<script src="{{ STATIC_URL }}js/lists/InventoryHosts.js"></script>
|
|
<script src="{{ STATIC_URL }}js/lists/Credentials.js"></script>
|
|
<script src="{{ STATIC_URL }}js/lists/CustomInventory.js"></script>
|
|
<script src="{{ STATIC_URL }}js/lists/JobTemplates.js"></script>
|
|
<script src="{{ STATIC_URL }}js/lists/PortalJobTemplates.js"></script>
|
|
<script src="{{ STATIC_URL }}js/lists/Projects.js"></script>
|
|
<script src="{{ STATIC_URL }}js/lists/Jobs.js"></script>
|
|
<script src="{{ STATIC_URL }}js/lists/PortalJobs.js"></script>
|
|
<script src="{{ STATIC_URL }}js/lists/CompletedJobs.js"></script>
|
|
<script src="{{ STATIC_URL }}js/lists/RunningJobs.js"></script>
|
|
<script src="{{ STATIC_URL }}js/lists/QueuedJobs.js"></script>
|
|
<script src="{{ STATIC_URL }}js/lists/Permissions.js"></script>
|
|
<script src="{{ STATIC_URL }}js/lists/Streams.js"></script>
|
|
<script src="{{ STATIC_URL }}js/lists/HomeGroups.js"></script>
|
|
<script src="{{ STATIC_URL }}js/lists/HomeHosts.js"></script>
|
|
<script src="{{ STATIC_URL }}js/lists/Groups.js"></script>
|
|
<script src="{{ STATIC_URL }}js/lists/Hosts.js"></script>
|
|
<script src="{{ STATIC_URL }}js/lists/Schedules.js"></script>
|
|
<script src="{{ STATIC_URL }}js/lists/ScheduledJobs.js"></script>
|
|
<script src="{{ STATIC_URL }}js/helpers/SocketHelper.js"></script>
|
|
<script src="{{ STATIC_URL }}js/helpers/LoadConfig.js"></script>
|
|
<script src="{{ STATIC_URL }}js/helpers/ConfigureTower.js"></script>
|
|
<script src="{{ STATIC_URL }}js/helpers/CustomInventory.js"></script>
|
|
<script src="{{ STATIC_URL }}js/helpers/refresh-related.js"></script>
|
|
<script src="{{ STATIC_URL }}js/helpers/related-search.js"></script>
|
|
<script src="{{ STATIC_URL }}js/helpers/refresh.js"></script>
|
|
<script src="{{ STATIC_URL }}js/helpers/search.js"></script>
|
|
<script src="{{ STATIC_URL }}js/helpers/PaginationHelpers.js"></script>
|
|
<script src="{{ STATIC_URL }}js/helpers/inventory.js"></script>
|
|
<script src="{{ STATIC_URL }}js/helpers/teams.js"></script>
|
|
<script src="{{ STATIC_URL }}js/helpers/JobSubmission.js"></script>
|
|
<script src="{{ STATIC_URL }}js/helpers/Lookup.js"></script>
|
|
<script src="{{ STATIC_URL }}js/helpers/Parse.js"></script>
|
|
<script src="{{ STATIC_URL }}js/helpers/Children.js"></script>
|
|
<script src="{{ STATIC_URL }}js/helpers/ProjectPath.js"></script>
|
|
<script src="{{ STATIC_URL }}js/helpers/md5.js"></script>
|
|
<script src="{{ STATIC_URL }}js/helpers/Access.js"></script>
|
|
<script src="{{ STATIC_URL }}js/helpers/Selection.js"></script>
|
|
<script src="{{ STATIC_URL }}js/helpers/Projects.js"></script>
|
|
<script src="{{ STATIC_URL }}js/helpers/Users.js"></script>
|
|
<script src="{{ STATIC_URL }}js/helpers/Jobs.js"></script>
|
|
<script src="{{ STATIC_URL }}js/helpers/Credentials.js"></script>
|
|
<script src="{{ STATIC_URL }}js/helpers/Permissions.js"></script>
|
|
<script src="{{ STATIC_URL }}js/helpers/Groups.js"></script>
|
|
<script src="{{ STATIC_URL }}js/helpers/Hosts.js"></script>
|
|
<script src="{{ STATIC_URL }}js/helpers/Variables.js"></script>
|
|
<script src="{{ STATIC_URL }}js/helpers/Schedules.js"></script>
|
|
<script src="{{ STATIC_URL }}js/helpers/Survey.js"></script>
|
|
<script src="{{ STATIC_URL }}js/helpers/LogViewer.js"></script>
|
|
<script src="{{ STATIC_URL }}js/helpers/EventViewer.js"></script>
|
|
<script src="{{ STATIC_URL }}js/helpers/JobDetail.js"></script>
|
|
<script src="{{ STATIC_URL }}js/helpers/JobTemplates.js"></script>
|
|
<script src="{{ STATIC_URL }}js/helpers/HostEventsViewer.js"></script>
|
|
<script src="{{ STATIC_URL }}js/helpers/License.js"></script>
|
|
<script src="{{ STATIC_URL }}js/helpers/AboutAnsible.js"></script>
|
|
<script src="{{ STATIC_URL }}js/widgets/JobStatus.js"></script>
|
|
<script src="{{ STATIC_URL }}js/widgets/DashboardCounts.js"></script>
|
|
<script src="{{ STATIC_URL }}js/widgets/HostPieChart.js"></script>
|
|
<script src="{{ STATIC_URL }}js/widgets/HostGraph.js"></script>
|
|
<script src="{{ STATIC_URL }}js/widgets/JobStatusGraph.js"></script>
|
|
<script src="{{ STATIC_URL }}js/widgets/DashboardJobs.js"></script>
|
|
<script src="{{ STATIC_URL }}js/widgets/PortalJobs.js"></script>
|
|
<script src="{{ STATIC_URL }}js/widgets/Stream.js"></script>
|
|
<script src="{{ STATIC_URL }}js/help/InventoryGroups.js"></script>
|
|
<script src="{{ STATIC_URL }}js/help/FirefoxSocketHelp.js"></script>
|
|
<script src="{{ STATIC_URL }}js/help/SafariSocketHelp.js"></script>
|
|
<script src="{{ STATIC_URL }}js/help/ChromeSocketHelp.js"></script>
|
|
{% endif %}
|
|
|
|
</head>
|
|
<body>
|
|
|
|
<nav class="cbp-spmenu cbp-spmenu-vertical cbp-spmenu-right" id="ansible-mobile-menu">
|
|
<h3>Hello, <span ng-bind="current_user.username"></span></h3>
|
|
<a href="#home" id="mobile_home_link" ng-hide="portalMode===true">Home</a></li>
|
|
<a href="#organizations" id="mobile_organizations_link" ng-hide="portalMode===true">Organizations</a></li>
|
|
<a href="#users" id="mobile_users_link" ng-hide="portalMode===true">Users</a></li>
|
|
<a href="#teams" id="mobile_teams_link" ng-hide="portalMode===true">Teams</a></li>
|
|
<a href="#credentials" id="mobile_credentials_link" ng-hide="portalMode===true">Credentials</a></li>
|
|
<a href="#projects" id="mobile_projects_link" ng-hide="portalMode===true">Projects</a></li>
|
|
<a href="#inventories" id="mobile_inventories_link" ng-hide="portalMode===true">Inventories</a></li>
|
|
<a href="#job_templates" id="mobile_job_templates_link" ng-hide="portalMode===true">Job Templates</a></li>
|
|
<a href="#jobs" id="mobile_jobs_link" ng-hide="portalMode===true">Jobs</a></li>
|
|
|
|
<a href="" id="mobile_about" ng-click ="viewAboutTower()" ng-hide="portalMode===true">About Tower</a> </li>
|
|
<a href="" id="mobile_view_user" ng-click="viewCurrentUser()" ng-hide="portalMode===true">Account Settings</a></li>
|
|
<a href="https://ansibleworks.zendesk.com/anonymous_requests/new" id="mobile_contact_support" target="_blank" ng-hide="portalMode===true">Contact Support</a></li>
|
|
<a id="mobile_custom_inv" ng-click="createCustomInv()" ng-show="user_is_superuser" href="" ng-hide="portalMode===true">Inventory Scripts</a></li>
|
|
<a id="mobile_configure_tower" ng-click="configureTower()" ng-show="user_is_superuser" href="" ng-hide="portalMode===true">Management Jobs</a></li>
|
|
<a id="mobile_munin" target="_blank" ng-show="user_is_superuser" href="/munin" ng-hide="portalMode===true">Monitor Tower</a></li>
|
|
<a href="#portal" id="mobile_portal_link" ng-hide="portalMode===true">Portal Mode</a></li>
|
|
<a href="" id="mobile_view_license" ng-click="viewLicense()" ng-hide="portalMode===true">View License</a></li>
|
|
<a href="" id="mobile_view_leave_portal" ng-click="leavePortal()" ng-show="portalMode===true">Exit Portal</a></li>
|
|
<a href="#/logout" id="mobile_logout">Logout</a>
|
|
</nav>
|
|
|
|
<div id="main-menu-container">
|
|
<div class="navbar navbar-default navbar-fixed-top" role="navigation">
|
|
<div class="container-fluid">
|
|
<div class="navbar-header">
|
|
<div id="socket-beacon-div"></div>
|
|
<button type="button" class="navbar-toggle toggle-menu menu-right" id="main-menu-toggle-button">
|
|
<span class="sr-only">Toggle navigation</span>
|
|
<span class="icon-bar"></span>
|
|
<span class="icon-bar"></span>
|
|
<span class="icon-bar"></span>
|
|
</button>
|
|
<a class="navbar-brand" href="#home"><img id="ansible-brand-logo" src="{{ STATIC_URL }}img/ansible_tower_logo_minimalc.png" /></a>
|
|
<div id="ansible-list-title"></div> <!-- title to show on list pages when menu collapses. value set in app.js -->
|
|
</div>
|
|
<div class="navbar-collapse collapse" id="main-navbar-collapse">
|
|
<ul class="nav navbar-nav" id="ansible-main-menu">
|
|
<!-- <li id="home" class="active"><a href="#home" id="main_home_link" >Home</a></li> -->
|
|
<li id="organizations"><a href="#organizations" id="main_organizations_link" ng-hide="portalMode===true">Organizations</a></li>
|
|
<li id="users"><a href="#users" id="main_users_link" ng-hide="portalMode===true">Users</a></li>
|
|
<li id="teams"><a href="#teams" id="main_teams_link" ng-hide="portalMode===true">Teams</a></li>
|
|
<li id="credentials"><a href="#credentials" id="main_credentials_link" ng-hide="portalMode===true">Credentials</a></li>
|
|
<li id="projects"><a href="#projects" id="main_projects_link" ng-hide="portalMode===true">Projects</a></li>
|
|
<li id="inventories"><a href="#inventories" id="main_inventories_link" ng-hide="portalMode===true">Inventories</a></li>
|
|
<li id="job_templates"><a href="#job_templates" id="main_job_templates_link" ng-hide="portalMode===true">Job Templates</a></li>
|
|
<li id="jobs"><a href="#jobs" id="main_jobs_link" ng-hide="portalMode===true">Jobs</a></li>
|
|
<li id="portal"><a href="#portal" id="main_portal_link" ng-show="portalMode===true">Portal</a></li>
|
|
<li class="collapsed-option"><a href="#/login" id="main_login_link" ng-show="!current_user.username">Login</a></li>
|
|
<li ng-show="current_user.username" class="collapsed-option">
|
|
<a href="" id="account-menu-link">Hello, <span ng-bind="current_user.username"></span> <span class="caret"></span></a>
|
|
<ul class="nav navbar-nav" id="account-submenu">
|
|
<li><a href="" id="main_about" ng-click ="viewAboutTower()" ng-hide="portalMode===true">About Tower</a> </li>
|
|
<li><a id="main_view_user" href="" ng-click="viewCurrentUser()" ng-hide="portalMode===true">Account Settings</a></li>
|
|
<li><a id="main_contact_support" target="_blank" href="https://ansibleworks.zendesk.com/anonymous_requests/new" ng-hide="portalMode===true">Contact Support</a></li>
|
|
<li> <a id="main_custom_inv" ng-click="createCustomInv()" ng-show="user_is_superuser" href="" ng-hide="portalMode===true">Inventory Scripts</a></li>
|
|
<li><a id="main_configure_tower" ng-click="configureTower()" ng-show="user_is_superuser" href="" ng-hide="portalMode===true">Management Jobs</a></li>
|
|
<li><a id="main_munin" target="_blank" ng-show="user_is_superuser" href="/munin" ng-hide="portalMode===true">Monitor Tower</a></li>
|
|
<li><a href="#portal" id="main_view_portal_link" >Portal Mode</a></li>
|
|
<li><a id="main_view_license" href="" ng-click="viewLicense()" ng-hide="portalMode===true">View License</a></li>
|
|
<li><a id="main_view_leave_portal" href="" ng-click="leavePortal()" ng-show="portalMode===true">Exit Portal</a></li>
|
|
<li class="divider"></li>
|
|
<li><a id="main_logout" href="#/logout">Logout</a></li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
<ul class="nav navbar-nav navbar-right" id="account-menu">
|
|
<li id="socket-beacon-li"></li>
|
|
<li><a href="#/login" id="main_login_link" ng-show="!current_user.username">Login</a></li>
|
|
<li class="dropdown" ng-show="current_user.username">
|
|
<a href="" id="account-menu-link" class="dropdown-toggle" data-toggle="dropdown">Hello, <span ng-bind="current_user.username"></span> <span class="caret"></span></a>
|
|
<ul class="dropdown-menu" id="account-submenu">
|
|
<li><a href="" id="main_about" ng-click ="viewAboutTower()" ng-hide="portalMode===true">About Tower</a> </li>
|
|
<li><a id="main_view_user" href="" ng-click="viewCurrentUser()" ng-hide="portalMode===true">Account Settings</a></li>
|
|
<li><a id="main_contact_support" target="_blank" href="https://ansibleworks.zendesk.com/anonymous_requests/new" ng-hide="portalMode===true">Contact Support</a></li>
|
|
<li> <a id="main_custom_inv" ng-click="createCustomInv()" ng-show="user_is_superuser" href="" ng-hide="portalMode===true">Inventory Scripts</a></li>
|
|
<li><a id="configure_tower" ng-click="configureTower()" ng-show="user_is_superuser" href="" ng-hide="portalMode===true">Management Jobs</a></li>
|
|
<li><a id="main_munin" target="_blank" ng-show="user_is_superuser" href="/munin" ng-hide="portalMode===true">Monitor Tower</a></li>
|
|
<li><a href="#portal" id="main_view_portal_link" ng-hide="portalMode===true">Portal Mode</a></li>
|
|
<li><a id="main_view_license" href="" ng-click="viewLicense()" ng-hide="portalMode===true">View License</a></li>
|
|
<li><a id="main_view_leave_portal" href="" ng-click="leavePortal()" ng-show="portalMode===true">Exit Portal</a></li>
|
|
|
|
|
|
<li class="divider"></li>
|
|
<li><a id="main_logout" href="#/logout">Logout</a></li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
</div><!--/.nav-collapse -->
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="container-fluid" id="#content-container">
|
|
<div class="row">
|
|
<div class="col-lg-12">
|
|
<div ng-view id="main-view"></div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- login modal -->
|
|
<div id="login-modal" class="modal fade">
|
|
<div class="modal-dialog">
|
|
<div class="modal-content" id="login-modal-content"></div><!-- modal-content -->
|
|
</div><!-- modal-dialog -->
|
|
</div><!-- modal -->
|
|
|
|
<!-- Password Dialog -->
|
|
<div id="password-modal" style="display: none;"></div>
|
|
|
|
<!-- Generic Form dialog -->
|
|
<div id="form-modal" class="modal fade">
|
|
<div class="modal-dialog">
|
|
<div class="modal-content">
|
|
<div class="modal-header">
|
|
<button type="button" class="close" data-target="#form-modal"
|
|
data-dismiss="modal" aria-hidden="true" ng-click="cancelModal()">×</button>
|
|
<h3 ng-bind-html="formModalHeader"></h3>
|
|
</div>
|
|
<div class="modal-body" id="form-modal-body"></div>
|
|
<div class="modal-footer">
|
|
<button ng-show="formModalInfo !== undefined && formModalInfo != ''" ng-click="formModalInfoAction()"
|
|
class="btn btn-sm pull-left"><i class="fa fa-search-plus"></i> <span ng-bind="formModalInfo"></span></button>
|
|
<a href="#" ng-show="formModalCancelShow" data-target="#form-modal" ng-click="cancelModal()" data-dismiss="modal" id="form_cancel_btn" class="btn btn-default">Cancel</a>
|
|
<a href="" ng-bind="formModalActionLabel" ng-click="formModalAction()" ng-disabled="formModalActionDisabled" id="form_ok_btn" class="btn btn-primary"></a>
|
|
</div>
|
|
</div><!-- modal-content -->
|
|
</div><!-- modal-dialog -->
|
|
</div><!-- modal -->
|
|
|
|
<div id="form-modal2" class="modal fade">
|
|
<div class="modal-dialog">
|
|
<div class="modal-content">
|
|
<div class="modal-header">
|
|
<button type="button" class="close" data-target="#form-modal2"
|
|
data-dismiss="modal" aria-hidden="true">×</button>
|
|
<h3 ng-bind-html="formModal2Header"></h3>
|
|
</div>
|
|
<div class="modal-body" id="form-modal2-body"></div>
|
|
<div class="modal-footer">
|
|
<a href="" ng-bind="formModal2Info" ng-show="formModal2Info !== undefined && formModal2Info != ''" ng-click="formModal2InfoAction()"
|
|
class="btn btn-default btn-sm pull-left"><i class="fa fa-search-plus"></i> <span ng-bind="formModal2Info"></span></a>
|
|
<a href="#" ng-show="formModal2CancelShow" data-target="#form-modal2" data-dismiss="modal" id="form2_cancel_btn"
|
|
class="btn btn-default">Cancel</a>
|
|
<a href="" ng-bind="formModal2ActionLabel" ng-click="formModal2Action()" id="form2_ok_btn" class="btn btn-primary"></a>
|
|
</div>
|
|
</div><!-- modal-content -->
|
|
</div><!-- modal-dialog -->
|
|
</div><!-- modal -->
|
|
|
|
<!-- Confirmation Dialog -->
|
|
<div id="prompt-modal" class="modal fade">
|
|
<div class="modal-dialog">
|
|
<div class="modal-content">
|
|
<div class="modal-header">
|
|
<button type="button" class="close" data-target="#prompt-modal"
|
|
data-dismiss="modal" aria-hidden="true">×</button>
|
|
<h3 ng-bind="promptHeader" id="prompt-header"></h3>
|
|
</div>
|
|
<div class="modal-body" ng-bind-html="promptBody" id="prompt-body">
|
|
</div>
|
|
<div class="modal-footer">
|
|
<a href="#" data-target="#prompt-modal" data-dismiss="modal" id="prompt_cancel_btn" class="btn btn-default">No</a>
|
|
<a href="" ng-class="promptActionBtnClass" ng-click="promptAction()" id="prompt_action_btn" class="btn btn-primary">Yes</a>
|
|
</div>
|
|
</div><!-- modal-content -->
|
|
</div><!-- modal-dialog -->
|
|
</div><!-- modal -->
|
|
|
|
<!-- Alerts/error handling dialogs -->
|
|
<div id="alert-modal" class="modal fade">
|
|
<div class="modal-dialog">
|
|
<div class="modal-content">
|
|
<div class="modal-header">
|
|
<button type="button" class="close" ng-hide="disableButtons" data-target="#alert-modal"
|
|
data-dismiss="modal" class="modal" aria-hidden="true">×</button>
|
|
<h3 id= "alertHeader" ng-bind="alertHeader"></h3>
|
|
</div>
|
|
<div class="modal-body">
|
|
<div id="alert-modal-msg" class="alert" ng-bind-html="alertBody"></div>
|
|
</div>
|
|
<div class="modal-footer">
|
|
<a href="#" ng-hide="disableButtons" data-target="#form-modal" data-dismiss="modal" id="alert_ok_btn" class="btn btn-primary">OK</a>
|
|
</div>
|
|
</div><!-- modal-content -->
|
|
</div><!-- modal-dialog -->
|
|
</div><!-- modal -->
|
|
|
|
<div id="alert-modal2" class="modal fade">
|
|
<div class="modal-dialog">
|
|
<div class="modal-content">
|
|
<div class="modal-header">
|
|
<button type="button" class="close" data-target="#alert-modal2"
|
|
data-dismiss="modal" ng-hide="disableButtons2" aria-hidden="true">×</button>
|
|
<h3 id="alertHeader2" ng-bind="alertHeader2"></h3>
|
|
</div>
|
|
<div class="modal-body">
|
|
<div id="alert2-modal-msg" class="alert" ng-bind-html="alertBody2"></div>
|
|
</div>
|
|
<div class="modal-footer">
|
|
<a href="#" ng-hide="disableButtons2" data-target="#form-modal2" data-dismiss="modal" id="alert2_ok_btn" class="btn btn-primary">OK</a>
|
|
</div>
|
|
</div><!-- modal-content -->
|
|
</div><!-- modal-dialog -->
|
|
</div><!-- modal -->
|
|
|
|
<div id="login-modal-dialog" style="display: none;"></div>
|
|
<div id="help-modal-dialog" style="display: none;"></div>
|
|
<div id="license-modal-dialog" style="display: none;"></div>
|
|
<div id="about-modal-dialog" style="display: none;" ng-include=" 'static/partials/cowsay-about.html ' "></div>
|
|
<div id="custom-script-dialog" style="display:none;" > </div>
|
|
<div id='configure-tower-dialog' style="display:none" >
|
|
<div id="configure-jobs" ></div>
|
|
<div class="tab-pane" id="configure-schedules-tab">
|
|
<div id="configure-schedules-overlay"></div>
|
|
<div id="configure-schedules-list"></div>
|
|
<div id="configure-schedules-form-container">
|
|
<div id="configure-schedules-title">
|
|
<h4 ng-bind="schedulesTitle"></h4>
|
|
<button type="button" class="close pull-right" ng-click="cancelScheduleForm()">x</button>
|
|
</div>
|
|
<div id="configure-schedules-form-container-body">
|
|
<div id="configure-schedules-form"></div>
|
|
<div id="configure-schedules-detail"></div>
|
|
</div>
|
|
<div id="configure-schedules-buttons" >
|
|
<a id="configure-schedules-flip-link" ng-show="formShowing" ng-click="showScheduleDetail()" href=""><i class="fa fa-search-plus"></i> View Details</a>
|
|
<a id="configure-schedules-flip-link" ng-show="!formShowing" ng-click="showScheduleDetail()" href=""><i class="fa fa-arrow-circle-left"></i> Back to options</a>
|
|
<button type="button" class="btn btn-default btn-sm" id="configure-schedule-delete-button" ng-show="mode==='edit'" ng-click="deleteSystemSchedule($event)"><i class="fa fa-trash-o"></i> Delete</button>
|
|
<button type="button" class="btn btn-default btn-sm" id="configure-reset-button" ng-click="cancelScheduleForm()"><i class="fa fa-times"></i> Cancel</button>
|
|
<button type="button" class="btn btn-primary btn-sm" id="configure-save-button" ng-click="saveScheduleForm()"><i class="fa fa-check"></i> Save</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div id="prompt-for-days" style="display:none">
|
|
<form name="prompt_for_days_form" id="prompt_for_days_form">
|
|
How many days of data would you like to <b>keep</b>? <br>
|
|
<input type="number" id="days_to_keep" name="days_to_keep" ng-model="days_to_keep" ng-required="true" class="form-control" aw-min=0 min=0 style="margin-top:10px;" integer></input>
|
|
<div class="error" ng-show="prompt_for_days_form.days_to_keep.$dirty && prompt_for_days_form.days_to_keep.$error.required">A value is required!</div>
|
|
<div class="error survey_error" ng-show="prompt_for_days_form.days_to_keep.$error.number || prompt_for_days_form.days_to_keep.$error.integer" >This is not valid integer!</div>
|
|
<div class="error survey_error" ng-show="prompt_for_days_form.days_to_keep.$error.awMin"> This value cannot be negative!</div>
|
|
|
|
</form>
|
|
</div>
|
|
|
|
|
|
|
|
</div><!-- container -->
|
|
|
|
<div class="overlay"></div>
|
|
<div class="spinny"><i class="fa fa-cog fa-spin fa-2x"></i> <p>working...</p></div>
|
|
</div>
|
|
|
|
<!--
|
|
<div class="navbar navbar-inverse site-footer fade-in">
|
|
<div class="container-fluid">
|
|
<div class="row">
|
|
<div class="col-sm-3 text-left help">
|
|
<a href="https://ansibleworks.zendesk.com/anonymous_requests/new"
|
|
target="_blank"><i class="fa fa-question-circle"></i> Contact Support</a>
|
|
</div>
|
|
<div class="col-sm-6 text-center copyright">
|
|
<a href="http://www.ansible.com">Ansible Tower <span ng-bind="version"></span><br />Copyright © 2014 Ansible, Inc. All rights reserved.</a>
|
|
</div>
|
|
<div class="col-sm-3">
|
|
<div class="logo">
|
|
<a href="http://www.ansible.com" target="_blank"><img src="{{ STATIC_URL }}img/tower_console_bug.png" /></a>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
-->
|
|
<div class="site-footer"></div>
|
|
|
|
<script src="{{ STATIC_URL }}lib/jqueryui/ui/minified/jquery-ui.min.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/bootstrap/dist/js/bootstrap.min.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/js-yaml/dist/js-yaml.min.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/select2/select2.min.js"></script>
|
|
|
|
<!-- Codemirror bits to make variable editing possible -->
|
|
<script src="{{ STATIC_URL }}lib/jsonlint/lib/jsonlint.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/codemirror/lib/codemirror.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/codemirror/mode/javascript/javascript.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/codemirror/mode/yaml/yaml.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/codemirror/addon/lint/lint.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/codemirror/addon/lint/json-lint.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/angular-codemirror/lib/yaml-lint.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/codemirror/addon/edit/closebrackets.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/codemirror/addon/edit/matchbrackets.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/codemirror/addon/selection/active-line.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/scrollto/lib/jquery-scrollto.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/socket.io-client/dist/socket.io.min.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/d3js/build/d3.v3.min.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/novus-nvd3/nv.d3.min.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/d3Donut/d3Donut.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/jPushMenu/jPushMenu.js"></script>
|
|
<script src="{{ STATIC_URL }}lib/lrInfiniteScroll/lrInfiniteScroll.js"></script>
|
|
|
|
<script>
|
|
$('#main-menu-toggle-button').jPushMenu();
|
|
</script>
|
|
|
|
</body>
|
|
</html>
|