mirror of
https://github.com/ansible/awx.git
synced 2026-02-16 10:40:01 -03:30
Implement setup menu
This commit is contained in:
BIN
awx/ui/static/fonts/merriweather-bold-webfont.woff
Normal file
BIN
awx/ui/static/fonts/merriweather-bold-webfont.woff
Normal file
Binary file not shown.
BIN
awx/ui/static/fonts/merriweather-bold-webfont.woff2
Normal file
BIN
awx/ui/static/fonts/merriweather-bold-webfont.woff2
Normal file
Binary file not shown.
BIN
awx/ui/static/fonts/merriweather-bolditalic-webfont.woff
Normal file
BIN
awx/ui/static/fonts/merriweather-bolditalic-webfont.woff
Normal file
Binary file not shown.
BIN
awx/ui/static/fonts/merriweather-bolditalic-webfont.woff2
Normal file
BIN
awx/ui/static/fonts/merriweather-bolditalic-webfont.woff2
Normal file
Binary file not shown.
BIN
awx/ui/static/fonts/merriweather-heavyitalic-webfont.woff
Normal file
BIN
awx/ui/static/fonts/merriweather-heavyitalic-webfont.woff
Normal file
Binary file not shown.
BIN
awx/ui/static/fonts/merriweather-heavyitalic-webfont.woff2
Normal file
BIN
awx/ui/static/fonts/merriweather-heavyitalic-webfont.woff2
Normal file
Binary file not shown.
BIN
awx/ui/static/fonts/merriweather-italic-webfont.woff
Normal file
BIN
awx/ui/static/fonts/merriweather-italic-webfont.woff
Normal file
Binary file not shown.
BIN
awx/ui/static/fonts/merriweather-italic-webfont.woff2
Normal file
BIN
awx/ui/static/fonts/merriweather-italic-webfont.woff2
Normal file
Binary file not shown.
BIN
awx/ui/static/fonts/merriweather-lightitalic-webfont.woff
Normal file
BIN
awx/ui/static/fonts/merriweather-lightitalic-webfont.woff
Normal file
Binary file not shown.
BIN
awx/ui/static/fonts/merriweather-lightitalic-webfont.woff2
Normal file
BIN
awx/ui/static/fonts/merriweather-lightitalic-webfont.woff2
Normal file
Binary file not shown.
BIN
awx/ui/static/fonts/merriweather-regular-webfont.woff
Normal file
BIN
awx/ui/static/fonts/merriweather-regular-webfont.woff
Normal file
Binary file not shown.
BIN
awx/ui/static/fonts/merriweather-regular-webfont.woff2
Normal file
BIN
awx/ui/static/fonts/merriweather-regular-webfont.woff2
Normal file
Binary file not shown.
BIN
awx/ui/static/fonts/merriweather_light-webfont.woff
Normal file
BIN
awx/ui/static/fonts/merriweather_light-webfont.woff
Normal file
Binary file not shown.
BIN
awx/ui/static/fonts/merriweather_light-webfont.woff2
Normal file
BIN
awx/ui/static/fonts/merriweather_light-webfont.woff2
Normal file
Binary file not shown.
BIN
awx/ui/static/fonts/merriweather_ultrabold-webfont.woff
Normal file
BIN
awx/ui/static/fonts/merriweather_ultrabold-webfont.woff
Normal file
Binary file not shown.
BIN
awx/ui/static/fonts/merriweather_ultrabold-webfont.woff2
Normal file
BIN
awx/ui/static/fonts/merriweather_ultrabold-webfont.woff2
Normal file
Binary file not shown.
15
awx/ui/static/img/InventoryScripts.svg
Normal file
15
awx/ui/static/img/InventoryScripts.svg
Normal file
@@ -0,0 +1,15 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg width="40px" height="29px" viewBox="0 0 40 29" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
|
||||
<!-- Generator: Sketch 3.2.1 (9971) - http://www.bohemiancoding.com/sketch -->
|
||||
<title>InventoryScripts</title>
|
||||
<desc>Created with Sketch.</desc>
|
||||
<defs></defs>
|
||||
<g id="Random" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" sketch:type="MSPage">
|
||||
<g id="InventoryScripts" sketch:type="MSArtboardGroup" fill="#FFFFFF">
|
||||
<path d="M18.069332,19.643368 C15.4291803,19.643368 13.289335,17.5029916 13.289335,14.863371 C13.289335,12.2237504 15.4291803,10.0833739 18.069332,10.0833739 L18.069332,8.49004158 L22.0664718,10.8003735 L18.069332,13.1107054 L18.069332,11.1455955 C16.0192444,11.1455955 14.3515566,12.8132834 14.3515566,14.863371 C14.3515566,16.9134586 16.0192444,18.5811465 18.069332,18.5811465 C20.1188886,18.5811465 21.7871075,16.9134586 21.7871075,14.863371 L22.8493291,14.863371 C22.8493291,17.5029916 20.7084215,19.643368 18.069332,19.643368 L18.069332,19.643368 Z M23.1386641,23.3611435 L8.50668238,23.3611435 C4.99019788,23.3611435 2.13866408,20.5090786 2.13866408,16.9878141 C2.13866408,14.1941714 3.9423163,11.8254173 6.44650364,10.9650178 C6.78641455,8.95741907 8.52845792,7.42782001 10.6311255,7.42782001 C11.3162584,7.42782001 11.961558,7.59246435 12.5346266,7.88457528 C13.859748,5.11217699 16.6799462,3.19486706 19.9558375,3.19486706 C24.502677,3.19486706 28.1880547,6.8807759 28.1880547,11.4270842 C28.1880547,11.5120619 28.1779636,11.5970397 28.1758391,11.6767063 C29.6866205,11.6816924 31.0623568,12.2600933 32.0969473,13.2053689 L23.1386641,13.2053689 L23.1386641,23.3611435 Z" id="Fill-87" sketch:type="MSShapeGroup"></path>
|
||||
<path d="M35.6964491,18.9938144 L33.022193,16 L34.2563702,16 L36.9528193,18.9938144 L34.2563702,22 L33,22 L35.6964491,18.9938144 Z" id=">" sketch:type="MSShapeGroup"></path>
|
||||
<path d="M26.6964491,18.9938144 L24.022193,16 L25.2563702,16 L27.9528193,18.9938144 L25.2563702,22 L24,22 L26.6964491,18.9938144 Z" id=">-2" sketch:type="MSShapeGroup" transform="translate(25.976410, 19.000000) scale(-1, -1) translate(-25.976410, -19.000000) "></path>
|
||||
<path d="M32.4528193,15 L29.9528193,23 L28.9528193,23 L31.4528193,15 L32.4528193,15 Z" id="⁄" sketch:type="MSShapeGroup"></path>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2.4 KiB |
14
awx/ui/static/img/ManagementJobs.svg
Normal file
14
awx/ui/static/img/ManagementJobs.svg
Normal file
@@ -0,0 +1,14 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg width="30px" height="29px" viewBox="0 0 30 29" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
|
||||
<!-- Generator: Sketch 3.2.1 (9971) - http://www.bohemiancoding.com/sketch -->
|
||||
<title>MaintenanceJobs</title>
|
||||
<desc>Created with Sketch.</desc>
|
||||
<defs></defs>
|
||||
<g id="Random" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" sketch:type="MSPage">
|
||||
<g id="MaintenanceJobs" sketch:type="MSArtboardGroup" fill="#FFFFFF">
|
||||
<path d="M22.7780898,23.3397977 L22.7780898,22.3006685 L22.0506329,22.1134422 C21.9919203,21.8918136 21.9063401,21.6817396 21.7977523,21.4867754 L22.1806538,20.8224647 L21.4668592,20.0876761 L20.8235604,20.4849764 C20.634065,20.3734563 20.4298915,20.2855681 20.2144936,20.2253379 L20.0290614,19.4772694 L19.0196215,19.4772694 L18.8377446,20.2261221 C18.6224482,20.2865615 18.4183763,20.3746588 18.2289825,20.486388 L17.5836521,20.0922247 L16.8698575,20.8270133 L17.2558063,21.4892327 C17.1474725,21.6843015 17.0620955,21.8944801 17.0035861,22.1162132 L16.276891,22.3070993 L16.276891,23.3462286 L17.0043479,23.5334548 C17.0630605,23.7550835 17.1486407,23.9651575 17.2572285,24.1601217 L16.874327,24.8244324 L17.5881216,25.559221 L18.2314204,25.1619207 C18.4209158,25.2734408 18.6250893,25.3613289 18.8404872,25.4215592 L19.0259194,26.1696277 L20.0353593,26.1696277 L20.2172362,25.420775 C20.4325326,25.3603355 20.6366045,25.2722383 20.8259983,25.1604567 L21.4712779,25.55462 L22.1850725,24.8198315 L21.7991237,24.1576121 C21.9074575,23.9625433 21.9928345,23.7523647 22.0513439,23.5306315 L22.7780391,23.3397455 L22.7780898,23.3397977 Z M19.5275666,24.6011307 C18.5738427,24.6011307 17.8007261,23.8052754 17.8007261,22.8235008 C17.8007261,21.8417263 18.5738427,21.0458709 19.5275666,21.0458709 C20.4812904,21.0458709 21.2544071,21.8417263 21.2544071,22.8235008 C21.2544071,23.8052754 20.4812904,24.6011307 19.5275666,24.6011307 L19.5275666,24.6011307 Z" id="Shape" sketch:type="MSShapeGroup" transform="translate(19.527490, 22.823449) rotate(-16.000000) translate(-19.527490, -22.823449) "></path>
|
||||
<path d="M26.2603822,19.2223114 L26.2603822,18.4196181 L25.6984455,18.2749919 C25.653092,18.1037911 25.5869841,17.9415157 25.5031036,17.7909123 L25.7988824,17.277754 L25.2474995,16.7101539 L24.7505722,17.0170554 C24.6041932,16.9309097 24.4464759,16.863019 24.280088,16.8164931 L24.1368477,16.2386347 L23.3570885,16.2386347 L23.2165945,16.8170989 C23.0502851,16.8637864 22.8926462,16.9318386 22.7463458,17.0181458 L22.2478491,16.7136676 L21.6964662,17.2812677 L21.994599,17.7928105 C21.9109147,17.9434947 21.8449637,18.1058508 21.7997671,18.2771324 L21.2384189,18.4245857 L21.2384189,19.227279 L21.8003556,19.3719051 C21.8457091,19.543106 21.911817,19.7053813 21.9956975,19.8559848 L21.6999187,20.3691431 L22.2513016,20.9367432 L22.7482289,20.6298417 C22.8946079,20.7159873 23.0523252,20.783878 23.2187131,20.830404 L23.3619534,21.4082624 L24.1417126,21.4082624 L24.2822066,20.8297982 C24.448516,20.7831107 24.6061549,20.7150584 24.7524554,20.6287109 L25.2509128,20.9331891 L25.8022957,20.365589 L25.5041629,19.8540462 C25.5878472,19.703362 25.6537982,19.5410059 25.6989948,19.3697242 L26.260343,19.222271 L26.2603822,19.2223114 Z M23.7494594,20.1966498 C23.012739,20.1966498 22.4155317,19.5818776 22.4155317,18.8234889 C22.4155317,18.0651002 23.012739,17.450328 23.7494594,17.450328 C24.4861798,17.450328 25.0833871,18.0651002 25.0833871,18.8234889 C25.0833871,19.5818776 24.4861798,20.1966498 23.7494594,20.1966498 L23.7494594,20.1966498 Z" id="Shape-2" sketch:type="MSShapeGroup" transform="translate(23.749401, 18.823449) rotate(-3.000000) translate(-23.749401, -18.823449) "></path>
|
||||
<path d="M24.2941158,6.29410711 C24.2941158,7.17094577 23.5827184,7.88234317 22.7058798,7.88234317 C21.8290411,7.88234317 21.1176437,7.17094577 21.1176437,6.29410711 C21.1176437,5.41726844 21.8290411,4.70587104 22.7058798,4.70587104 C23.5827184,4.70587104 24.2941158,5.41726844 24.2941158,6.29410711 L24.2941158,6.29410711 Z M14.4988011,26.6992243 L12.3823454,27.9338235 C12.2996247,27.9834559 12.2169041,28 12.1176393,28 C11.9852863,28 11.8529333,27.9503676 11.7371245,27.8511029 L10.6783004,26.7922788 C10.5459474,26.6433817 10.496315,26.4448522 10.5459474,26.2628668 L11.9521981,21.6966881 L7.30329877,17.0477888 L2.73712008,18.4540395 C2.68748771,18.4705836 2.63785533,18.4705836 2.58822295,18.4705836 C2.45586995,18.4705836 2.30697282,18.4209512 2.20770806,18.3216865 L1.14888402,17.2628624 C0.983442761,17.080877 0.95035451,16.816171 1.06616339,16.6176415 L4.77204754,10.2646973 C4.8713123,10.1158001 5.03675355,10.0165354 5.20219481,9.99999126 L11.4724184,9.66910874 C12.465066,8.49447582 13.4411694,7.40256353 14.3841846,6.44300424 C18.520216,2.32351694 21.680144,0.999986887 27.4374997,0.999986887 C27.735294,0.999986887 28,1.23160465 28,1.52939891 C28,7.02204864 26.4779404,10.6783004 22.5569827,14.6158023 C22.4272714,14.7432772 22.2951416,14.8713567 22.160716,14.9999999 L14.4988011,15 L14.4988011,26.6992243 Z" id="Type-something-2" sketch:type="MSShapeGroup"></path>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 5.1 KiB |
17
awx/ui/static/img/Organizations.svg
Normal file
17
awx/ui/static/img/Organizations.svg
Normal file
@@ -0,0 +1,17 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg width="26px" height="30px" viewBox="0 0 26 30" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
|
||||
<!-- Generator: Sketch 3.2.1 (9971) - http://www.bohemiancoding.com/sketch -->
|
||||
<title>Organizations</title>
|
||||
<desc>Created with Sketch.</desc>
|
||||
<defs></defs>
|
||||
<g id="Random" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" sketch:type="MSPage">
|
||||
<g id="Organizations" sketch:type="MSArtboardGroup" fill="#FFFFFF">
|
||||
<g id="Organizations-back" sketch:type="MSLayerGroup" transform="translate(10.006000, 0.000000)">
|
||||
<path d="M7.38461538,4.10869565 L9.22707692,4.10869565 L9.22707692,6.45652174 L7.38461538,6.45652174 L7.38461538,4.10869565 Z M11.0732308,4.10869565 L13.5347692,4.10869565 L13.5347692,6.45652174 L11.0732308,6.45652174 L11.0732308,4.10869565 Z M11.0732308,8.80434783 L13.5347692,8.80434783 L13.5347692,11.1521739 L11.0732308,11.1521739 L11.0732308,8.80434783 Z M7.38461538,13.5 L9.22707692,13.5 L9.22707692,15.8478261 L7.38461538,15.8478261 L7.38461538,13.5 Z M11.0732308,13.5 L13.5347692,13.5 L13.5347692,15.8478261 L11.0732308,15.8478261 L11.0732308,13.5 Z M7.38461538,8.80434783 L9.22707692,8.80434783 L9.22707692,11.1521739 L7.38461538,11.1521739 L7.38461538,8.80434783 Z M8.61169231,22.3494391 L11.0769231,22.3494391 L11.0769231,27 L8.61169231,27 L8.61169231,22.3494391 Z M7.38092308,1.76086957 L0,1.76086957 L0,0 L16,0 L16,27 L7.38092308,27 L7.38092308,1.76086957 Z" sketch:type="MSShapeGroup"></path>
|
||||
</g>
|
||||
<g id="Organizations-front" sketch:type="MSLayerGroup" transform="translate(0.006000, 3.000000)">
|
||||
<path d="M2.45784615,4.10869565 L4.91938462,4.10869565 L4.91938462,6.45652174 L2.45784615,6.45652174 L2.45784615,4.10869565 Z M6.76553846,4.10869565 L9.22707692,4.10869565 L9.22707692,6.45652174 L6.76553846,6.45652174 L6.76553846,4.10869565 Z M11.0732308,4.10869565 L13.5347692,4.10869565 L13.5347692,6.45652174 L11.0732308,6.45652174 L11.0732308,4.10869565 Z M11.0732308,8.80434783 L13.5347692,8.80434783 L13.5347692,11.1521739 L11.0732308,11.1521739 L11.0732308,8.80434783 Z M2.45784615,13.5 L4.91938462,13.5 L4.91938462,15.8478261 L2.45784615,15.8478261 L2.45784615,13.5 Z M6.76553846,13.5 L9.22707692,13.5 L9.22707692,15.8478261 L6.76553846,15.8478261 L6.76553846,13.5 Z M11.0732308,13.5 L13.5347692,13.5 L13.5347692,15.8478261 L11.0732308,15.8478261 L11.0732308,13.5 Z M2.45784615,8.80434783 L4.91938462,8.80434783 L4.91938462,11.1521739 L2.45784615,11.1521739 L2.45784615,8.80434783 Z M6.76553846,8.80434783 L9.22707692,8.80434783 L9.22707692,11.1521739 L6.76553846,11.1521739 L6.76553846,8.80434783 Z M8.61169231,22.3494391 L11.0769231,22.3494391 L11.0769231,27 L8.61169231,27 L8.61169231,22.3494391 Z M4.91938462,22.3494391 L7.38461538,22.3494391 L7.38461538,27 L4.91938462,27 L4.91938462,22.3494391 Z M0,0 L16,0 L16,27 L0,27 L0,0 Z" sketch:type="MSShapeGroup"></path>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 3.0 KiB |
@@ -38,6 +38,8 @@ import routeExtensions from 'tower/shared/route-extensions/main';
|
||||
import breadcrumbs from 'tower/shared/breadcrumbs/main';
|
||||
|
||||
// modules
|
||||
import setupMenu from 'tower/setup-menu/main';
|
||||
import mainMenu from 'tower/main-menu/main';
|
||||
import browserData from 'tower/browser-data/main';
|
||||
|
||||
import {JobDetailController} from 'tower/controllers/JobDetail';
|
||||
@@ -83,6 +85,8 @@ var tower = angular.module('Tower', [
|
||||
browserData.name,
|
||||
breadcrumbs.name,
|
||||
systemTracking.name,
|
||||
setupMenu.name,
|
||||
mainMenu.name,
|
||||
'AuthService',
|
||||
'Utilities',
|
||||
'LicenseHelper',
|
||||
|
||||
15
awx/ui/static/js/setup-menu/main.js
Normal file
15
awx/ui/static/js/setup-menu/main.js
Normal file
@@ -0,0 +1,15 @@
|
||||
import route from './setup.route';
|
||||
|
||||
export default
|
||||
angular.module('setupMenu',
|
||||
[ 'AboutAnsibleHelpModal',
|
||||
'LicenseHelper',
|
||||
'ConfigureTowerHelper',
|
||||
'CreateCustomInventoryHelper'
|
||||
])
|
||||
.config(['$routeProvider', function($routeProvider) {
|
||||
var url = route.route;
|
||||
delete route.route;
|
||||
$routeProvider.when(url, route)
|
||||
}]);
|
||||
|
||||
53
awx/ui/static/js/setup-menu/setup-item.block.less
Normal file
53
awx/ui/static/js/setup-menu/setup-item.block.less
Normal file
@@ -0,0 +1,53 @@
|
||||
/** @define SetupItem */
|
||||
|
||||
@import 'shared/branding/colors.less';
|
||||
|
||||
.SetupItem {
|
||||
@vertical-basis: 3rem;
|
||||
|
||||
padding: 0;
|
||||
padding-bottom: @vertical-basis;
|
||||
|
||||
&:nth-child(2n) {
|
||||
.SetupItem-icon {
|
||||
background-color: @blue;
|
||||
}
|
||||
}
|
||||
|
||||
@media screen and (min-width: 931px) and (max-width: 1251px) {
|
||||
&:nth-child(2n) {
|
||||
.SetupItem-icon {
|
||||
background-color: @ansible-red;
|
||||
}
|
||||
}
|
||||
&:nth-child(4n+3), &:nth-child(4n+4) {
|
||||
.SetupItem-icon {
|
||||
background-color: @blue;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.SetupItem-icon {
|
||||
display: flex;
|
||||
padding: 1.5rem;
|
||||
background-color: @ansible-red;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
img {
|
||||
height: 26px;
|
||||
}
|
||||
}
|
||||
|
||||
&--button {
|
||||
.SetupItem-icon {
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
|
||||
.SetupItem-title {
|
||||
font-size: 3rem;
|
||||
text-align: center;
|
||||
padding: @vertical-basis;
|
||||
margin: 0;
|
||||
}
|
||||
}
|
||||
43
awx/ui/static/js/setup-menu/setup-menu.block.less
Normal file
43
awx/ui/static/js/setup-menu/setup-menu.block.less
Normal file
@@ -0,0 +1,43 @@
|
||||
/** @define SetupMenu */
|
||||
|
||||
@import "shared/branding/colors.less";
|
||||
|
||||
.SetupMenu {
|
||||
display: flex;
|
||||
justify-content: flex-start;
|
||||
background-color: #EDEDED;
|
||||
flex-wrap: wrap;
|
||||
margin-top: -2.8rem;
|
||||
|
||||
&-block {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
color: white;
|
||||
flex: 1 0 30%;
|
||||
margin: 2.8rem;
|
||||
max-width: 24rem;
|
||||
transition: background-color 0.25s ease-in-out;
|
||||
background-color: white;
|
||||
&:hover, &:focus, &:active {
|
||||
color: black;
|
||||
}
|
||||
}
|
||||
|
||||
.SetupItem-description {
|
||||
font-family: merriweather;
|
||||
font-weight: lighter;
|
||||
color: black;
|
||||
padding: 1.4rem;
|
||||
padding-top: 0;
|
||||
}
|
||||
|
||||
@media screen and (max-width: 930px) {
|
||||
flex-flow: nowrap column;
|
||||
align-items: center;
|
||||
&-block {
|
||||
width: 100%;
|
||||
max-width: inherit;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
57
awx/ui/static/js/setup-menu/setup-menu.partial.html
Normal file
57
awx/ui/static/js/setup-menu/setup-menu.partial.html
Normal file
@@ -0,0 +1,57 @@
|
||||
<section id="htmlTemplate" class="Container" page-name="SetupMenu">
|
||||
<nav class="SetupMenu Container-main">
|
||||
<a href="#/credentials" class="SetupItem SetupMenu-block">
|
||||
<i class="SetupItem-icon"><img src="/static/img/Credentials.svg"></i>
|
||||
<h4 class="SetupItem-title">Credentials</h4>
|
||||
<p class="SetupItem-description">
|
||||
Add passwords, SSH keys, etc. for Tower to use when launching jobs against machines, or syncing inventories or projects.
|
||||
</p>
|
||||
</a>
|
||||
<a href="#/users" class="SetupItem SetupMenu-block">
|
||||
<i class="SetupItem-icon"><img src="/static/img/Users.svg"></i>
|
||||
<h4 class="SetupItem-title">Users</h4>
|
||||
<p class="SetupItem-description">
|
||||
Allow others to sign into Tower and own content they create.
|
||||
</p>
|
||||
</a>
|
||||
<a href="#/teams" class="SetupItem SetupMenu-block">
|
||||
<i class="SetupItem-icon"><img src="/static/img/Teams.svg"></i>
|
||||
<h4 class="SetupItem-title">Teams</h4>
|
||||
<p class="SetupItem-description">
|
||||
Divide up your organization to associate content and control permissions for groups.
|
||||
</p>
|
||||
</a>
|
||||
<a href="#/organizations" class="SetupItem SetupMenu-block">
|
||||
<i class="SetupItem-icon"><img src="/static/img/Organizations.svg"></i>
|
||||
<h4 class="SetupItem-title">Organizations</h4>
|
||||
<p class="SetupItem-description">
|
||||
Group all of your content to manage permissions across departments in your company
|
||||
</p>
|
||||
|
||||
</a>
|
||||
<button class="SetupMenu-block SetupItem SetupItem--button Button--pseudo" ng-click="showManagementJobsModal()" ng-if="user_is_superuser">
|
||||
<i class="SetupItem-icon"><img src="/static/img/ManagementJobs.svg"></i>
|
||||
<h4 class="SetupItem-title">Management Jobs</h4>
|
||||
<p class="SetupItem-description">
|
||||
Schedule jobs to periodically cleanup job history
|
||||
</p>
|
||||
</button>
|
||||
<button class="SetupMenu-block SetupItem SetupItem--button Button--pseudo" ng-click="showInventoryScriptsModal()" ng-if="user_is_superuser">
|
||||
<i class="SetupItem-icon"><img src="/static/img/InventoryScripts.svg"></i>
|
||||
<h4 class="SetupItem-title">Inventory Scripts</h4>
|
||||
<p class="SetupItem-description">
|
||||
Create and edit scripts to dynamically load hosts from any sources
|
||||
</p>
|
||||
</button>
|
||||
</nav>
|
||||
<aside class="Container-aside">
|
||||
<nav class="DetailNav Menu Menu--vertical">
|
||||
<button href="#/license" ng-click="showLicenseModal()" class="Button--pseudo">
|
||||
<h4 class="DetailNav-title">View your License</h4>
|
||||
</button>
|
||||
<button ng-click="showAboutModal()" class="DetailNav--extra Button--pseudo">
|
||||
<h4 class="DetailNav-title">About Tower</h4>
|
||||
</button>
|
||||
</nav>
|
||||
</aside>
|
||||
</section>
|
||||
30
awx/ui/static/js/setup-menu/setup.controller.js
Normal file
30
awx/ui/static/js/setup-menu/setup.controller.js
Normal file
@@ -0,0 +1,30 @@
|
||||
export default
|
||||
[ '$scope',
|
||||
'$rootScope',
|
||||
'AboutAnsibleHelp',
|
||||
'LicenseViewer',
|
||||
'ConfigureTower',
|
||||
'CreateCustomInventory',
|
||||
function(
|
||||
$scope,
|
||||
$rootScope,
|
||||
showAboutModal,
|
||||
licenseViewer,
|
||||
configureTower,
|
||||
showInventoryScriptsModal
|
||||
) {
|
||||
$scope.showAboutModal = showAboutModal;
|
||||
$scope.showLicenseModal = licenseViewer.showViewer.bind(licenseViewer);
|
||||
|
||||
$scope.showManagementJobsModal =
|
||||
configureTower.bind(null,
|
||||
{ scope: $rootScope,
|
||||
parent_scope: $rootScope
|
||||
});
|
||||
|
||||
$scope.showInventoryScriptsModal = showInventoryScriptsModal.bind(null,
|
||||
{ parent_scope: $rootScope
|
||||
});
|
||||
|
||||
}
|
||||
]
|
||||
7
awx/ui/static/js/setup-menu/setup.route.js
Normal file
7
awx/ui/static/js/setup-menu/setup.route.js
Normal file
@@ -0,0 +1,7 @@
|
||||
import controller from './setup.controller';
|
||||
|
||||
export default {
|
||||
route: '/setup',
|
||||
controller: controller,
|
||||
templateUrl: '/static/js/setup-menu/setup-menu.partial.html'
|
||||
}
|
||||
19
awx/ui/static/js/shared/container/container.block.less
Normal file
19
awx/ui/static/js/shared/container/container.block.less
Normal file
@@ -0,0 +1,19 @@
|
||||
/** @define Container */
|
||||
|
||||
.Container {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
&-main {
|
||||
flex: 9;
|
||||
margin-right: 2.28rem;
|
||||
}
|
||||
&-aside {
|
||||
flex: 3;
|
||||
}
|
||||
}
|
||||
|
||||
@media screen and (max-width: 710px) {
|
||||
.Container {
|
||||
flex-direction: column;
|
||||
}
|
||||
}
|
||||
12
awx/ui/static/js/shared/detail-nav/detail-nav.block.less
Normal file
12
awx/ui/static/js/shared/detail-nav/detail-nav.block.less
Normal file
@@ -0,0 +1,12 @@
|
||||
/** @define DetailNav */
|
||||
|
||||
.DetailNav {
|
||||
|
||||
&-title {
|
||||
font-size: 1.4rem;
|
||||
margin-bottom: 0.4rem;
|
||||
&:first-child {
|
||||
margin-top: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
16
awx/ui/static/js/shared/menu/button.block.less
Normal file
16
awx/ui/static/js/shared/menu/button.block.less
Normal file
@@ -0,0 +1,16 @@
|
||||
/** @define Button */
|
||||
|
||||
@import 'shared/branding/colors.less';
|
||||
|
||||
.Button {
|
||||
&--pseudo {
|
||||
// Make pseudo button
|
||||
background: transparent;
|
||||
border: 0;
|
||||
padding: 0;
|
||||
color: @blue-link;
|
||||
text-align: left;
|
||||
|
||||
outline: none;
|
||||
}
|
||||
}
|
||||
@@ -22,6 +22,7 @@
|
||||
}
|
||||
|
||||
@import "../js/shared/branding/colors.less";
|
||||
@import "fonts.less";
|
||||
@import "main-layout.less";
|
||||
@import "animations.less";
|
||||
@import "jquery-ui-overrides.less";
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
color: @black;
|
||||
font-weight: normal;
|
||||
text-decoration: none;
|
||||
padding: 3px 8px 3px 20px;
|
||||
padding: 3px 8px 3px 16px;
|
||||
background: @white; /* fallback color */
|
||||
position: relative;
|
||||
left: 0;
|
||||
@@ -39,6 +39,7 @@
|
||||
.ansible-breadcrumb li:first-child a{
|
||||
border-top-left-radius: 4px;
|
||||
border-bottom-left-radius: 4px;
|
||||
padding-left: 11px;
|
||||
}
|
||||
|
||||
.ansible-breadcrumb li.active a {
|
||||
|
||||
19
awx/ui/static/less/fonts.less
Normal file
19
awx/ui/static/less/fonts.less
Normal file
@@ -0,0 +1,19 @@
|
||||
.include-font(@family-name; @filename; @weight: normal; @style: normal) {
|
||||
@font-face {
|
||||
font-family: @family-name;
|
||||
src: url("/static/fonts/@{filename}.woff2") format('woff2'),
|
||||
url("/static/fonts/@{filename}.woff") format('woff');
|
||||
font-weight: @weight;
|
||||
font-style: @style;
|
||||
}
|
||||
}
|
||||
|
||||
.include-font('merriweather'; 'merriweather_light-webfont'; 200);
|
||||
.include-font('merriweather'; 'merriweather-regular-webfont');
|
||||
.include-font('merriweather'; 'merriweather-bold-webfont'; bold);
|
||||
.include-font('merriweather'; 'merriweather_ultrabold-webfont'; 800);
|
||||
.include-font('merriweather'; 'merriweather-lightitalic-webfont'; 200; italic);
|
||||
.include-font('merriweather'; 'merriweather-bolditalic-webfont'; bold; italic);
|
||||
.include-font('merriweather'; 'merriweather-heavyitalic-webfont'; 800; italic);
|
||||
.include-font('merriweather'; 'merriweather-italic-webfont'; normal; italic);
|
||||
|
||||
@@ -7,12 +7,6 @@
|
||||
*
|
||||
*/
|
||||
|
||||
html, body { height: 100%; }
|
||||
|
||||
html {
|
||||
background-color: @white;
|
||||
}
|
||||
|
||||
body {
|
||||
font-family: 'Open Sans', sans-serif;
|
||||
font-weight: 400;
|
||||
|
||||
2
awx/ui/static/lib/angular/index.js
vendored
Normal file
2
awx/ui/static/lib/angular/index.js
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
require('./angular');
|
||||
module.exports = angular;
|
||||
25
awx/ui/static/lib/angular/package.json
Normal file
25
awx/ui/static/lib/angular/package.json
Normal file
@@ -0,0 +1,25 @@
|
||||
{
|
||||
"name": "angular",
|
||||
"version": "1.3.15",
|
||||
"description": "HTML enhanced for web apps",
|
||||
"main": "index.js",
|
||||
"scripts": {
|
||||
"test": "echo \"Error: no test specified\" && exit 1"
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/angular/angular.js.git"
|
||||
},
|
||||
"keywords": [
|
||||
"angular",
|
||||
"framework",
|
||||
"browser",
|
||||
"client-side"
|
||||
],
|
||||
"author": "Angular Core Team <angular-core+npm@google.com>",
|
||||
"license": "MIT",
|
||||
"bugs": {
|
||||
"url": "https://github.com/angular/angular.js/issues"
|
||||
},
|
||||
"homepage": "http://angularjs.org"
|
||||
}
|
||||
@@ -1,4 +1,5 @@
|
||||
<breadcrumbs>
|
||||
<breadcrumb path="/setup" title="Setup"></breadcrumb>
|
||||
<breadcrumb path="/credentials" title="Credentials"></breadcrumb>
|
||||
<breadcrumb
|
||||
path="/credentials/add"
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
<breadcrumbs>
|
||||
<breadcrumb path="/setup" title="Setup"></breadcrumb>
|
||||
<breadcrumb path="/organizations" title="Organizations"></breadcrumb>
|
||||
<breadcrumb
|
||||
path="/organizations/add"
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
<breadcrumbs>
|
||||
<breadcrumb path="/setup" title="Setup"></breadcrumb>
|
||||
<breadcrumb path="/teams" title="Teams"></breadcrumb>
|
||||
<breadcrumb
|
||||
path="/teams/add"
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
<breadcrumbs>
|
||||
<breadcrumb path="/setup" title="Setup"></breadcrumb>
|
||||
<breadcrumb path="/users" title="Users"></breadcrumb>
|
||||
<breadcrumb
|
||||
path="/users/add"
|
||||
|
||||
Reference in New Issue
Block a user