diff --git a/awx/settings/defaults.py b/awx/settings/defaults.py index 040bbb2ee0..ef33a512cb 100644 --- a/awx/settings/defaults.py +++ b/awx/settings/defaults.py @@ -260,6 +260,7 @@ AUTHENTICATION_BACKENDS = ( 'social.backends.github.GithubOAuth2', 'social.backends.github.GithubOrganizationOAuth2', 'social.backends.github.GithubTeamOAuth2', + 'social.backends.azuread.AzureADOAuth2', 'awx.sso.backends.SAMLAuth', 'django.contrib.auth.backends.ModelBackend', ) diff --git a/awx/ui/client/assets/fontcustom/.fontcustom-manifest.json b/awx/ui/client/assets/fontcustom/.fontcustom-manifest.json index 06fddffd64..c50d13abe3 100644 --- a/awx/ui/client/assets/fontcustom/.fontcustom-manifest.json +++ b/awx/ui/client/assets/fontcustom/.fontcustom-manifest.json @@ -1,18 +1,38 @@ { "checksum": { - "previous": "e4442d278bfc4c1a673bdd29512213a18cfaf74decd9bb21ecd698b4860e7453", - "current": "e4442d278bfc4c1a673bdd29512213a18cfaf74decd9bb21ecd698b4860e7453" + "previous": "3dfbafd778b214fc5df2a64fe14fbfb30ba40e33282eedf0d98b5a613786db88", + "current": "3dfbafd778b214fc5df2a64fe14fbfb30ba40e33282eedf0d98b5a613786db88" }, "fonts": [ - "..//fontcustom_e4442d278bfc4c1a673bdd29512213a1.ttf", - "..//fontcustom_e4442d278bfc4c1a673bdd29512213a1.svg", - "..//fontcustom_e4442d278bfc4c1a673bdd29512213a1.woff", - "..//fontcustom_e4442d278bfc4c1a673bdd29512213a1.eot" + "./fontcustom_3dfbafd778b214fc5df2a64fe14fbfb3.ttf", + "./fontcustom_3dfbafd778b214fc5df2a64fe14fbfb3.svg", + "./fontcustom_3dfbafd778b214fc5df2a64fe14fbfb3.woff", + "./fontcustom_3dfbafd778b214fc5df2a64fe14fbfb3.eot" ], "glyphs": { - "fontcustom_fbf6cfce71d2c35351b84596defbfd01": { - "codepoint": 61696, - "source": "./fontcustom_fbf6cfce71d2c35351b84596defbfd01.svg" + "activity-stream": { + "codepoint": 61697, + "source": "new_icons/activity-stream.svg" + }, + "google": { + "codepoint": 61698, + "source": "new_icons/google.svg" + }, + "launch": { + "codepoint": 61699, + "source": "new_icons/launch.svg" + }, + "microsoft": { + "codepoint": 61700, + "source": "new_icons/microsoft.svg" + }, + "saml-02": { + "codepoint": 61701, + "source": "new_icons/saml-02.svg" + }, + "user": { + "codepoint": 61702, + "source": "new_icons/user.svg" } }, "options": { @@ -25,16 +45,16 @@ "font_design_size": 16, "font_em": 512, "font_name": "fontcustom", - "force": true, + "force": false, "input": { - "templates": ".", - "vectors": "." + "templates": "new_icons/", + "vectors": "new_icons/" }, "no_hash": false, "output": { - "css": "../", - "fonts": "../", - "preview": "../" + "css": ".", + "fonts": ".", + "preview": "." }, "preprocessor_path": null, "quiet": false, @@ -44,7 +64,7 @@ ] }, "templates": [ - "../fontcustom.css", - "../fontcustom-preview.html" + "./fontcustom.css", + "./fontcustom-preview.html" ] } \ No newline at end of file diff --git a/awx/ui/client/assets/fontcustom/fontcustom-preview.html b/awx/ui/client/assets/fontcustom/fontcustom-preview.html index becd88eca8..bda47533ba 100644 --- a/awx/ui/client/assets/fontcustom/fontcustom-preview.html +++ b/awx/ui/client/assets/fontcustom/fontcustom-preview.html @@ -141,11 +141,11 @@ @font-face { font-family: "fontcustom"; - src: url("./fontcustom_d77a9996ed04d45b02f5c06874cd36db.eot"); - src: url("./fontcustom_d77a9996ed04d45b02f5c06874cd36db.eot?#iefix") format("embedded-opentype"), - url("./fontcustom_d77a9996ed04d45b02f5c06874cd36db.woff") format("woff"), - url("./fontcustom_d77a9996ed04d45b02f5c06874cd36db.ttf") format("truetype"), - url("./fontcustom_d77a9996ed04d45b02f5c06874cd36db.svg#fontcustom") format("svg"); + src: url("./fontcustom_3dfbafd778b214fc5df2a64fe14fbfb3.eot"); + src: url("./fontcustom_3dfbafd778b214fc5df2a64fe14fbfb3.eot?#iefix") format("embedded-opentype"), + url("./fontcustom_3dfbafd778b214fc5df2a64fe14fbfb3.woff") format("woff"), + url("./fontcustom_3dfbafd778b214fc5df2a64fe14fbfb3.ttf") format("truetype"), + url("./fontcustom_3dfbafd778b214fc5df2a64fe14fbfb3.svg#fontcustom") format("svg"); font-weight: normal; font-style: normal; } @@ -153,7 +153,7 @@ @media screen and (-webkit-min-device-pixel-ratio:0) { @font-face { font-family: "fontcustom"; - src: url("./fontcustom_d77a9996ed04d45b02f5c06874cd36db.svg#fontcustom") format("svg"); + src: url("./fontcustom_3dfbafd778b214fc5df2a64fe14fbfb3.svg#fontcustom") format("svg"); } } @@ -163,9 +163,7 @@ .icon-activity-stream:before, .icon-google:before, .icon-launch:before, -.icon-launch-circle:before, -.icon-launch-new:before, -.icon-launch2:before, +.icon-microsoft:before, .icon-saml-02:before, .icon-user:before { display: inline-block; @@ -182,14 +180,12 @@ font-smoothing: antialiased; } - .icon-activity-stream:before { content: "\f102"; } -.icon-google:before { content: "\f100"; } + .icon-activity-stream:before { content: "\f101"; } +.icon-google:before { content: "\f102"; } .icon-launch:before { content: "\f103"; } -.icon-launch-circle:before { content: "\f105"; } -.icon-launch-new:before { content: "\f107"; } -.icon-launch2:before { content: "\f106"; } -.icon-saml-02:before { content: "\f101"; } -.icon-user:before { content: "\f104"; } +.icon-microsoft:before { content: "\f104"; } +.icon-saml-02:before { content: "\f105"; } +.icon-user:before { content: "\f106"; } @@ -205,7 +201,7 @@
-

fontcustom contains 8 glyphs:

+

fontcustom contains 6 glyphs:

Toggle Preview Characters
@@ -219,7 +215,7 @@
- +
@@ -232,7 +228,7 @@
- +
@@ -251,40 +247,14 @@
- PpPpPpPpPpPpPpPpPpPp + PpPpPpPpPpPpPpPpPpPp
12141618212436486072
- - -
-
- -
-
- PpPpPpPpPpPpPpPpPpPp -
-
- 12141618212436486072 -
-
- - -
-
- -
-
- PpPpPpPpPpPpPpPpPpPp -
-
- 12141618212436486072 -
-
- - + +
@@ -297,7 +267,7 @@
- +
@@ -310,7 +280,7 @@
- +
diff --git a/awx/ui/client/assets/fontcustom/fontcustom.css b/awx/ui/client/assets/fontcustom/fontcustom.css index 39ab124bda..6dfb140f36 100644 --- a/awx/ui/client/assets/fontcustom/fontcustom.css +++ b/awx/ui/client/assets/fontcustom/fontcustom.css @@ -4,11 +4,11 @@ @font-face { font-family: "fontcustom"; - src: url("./fontcustom_d77a9996ed04d45b02f5c06874cd36db.eot"); - src: url("./fontcustom_d77a9996ed04d45b02f5c06874cd36db.eot?#iefix") format("embedded-opentype"), - url("./fontcustom_d77a9996ed04d45b02f5c06874cd36db.woff") format("woff"), - url("./fontcustom_d77a9996ed04d45b02f5c06874cd36db.ttf") format("truetype"), - url("./fontcustom_d77a9996ed04d45b02f5c06874cd36db.svg#fontcustom") format("svg"); + src: url("./fontcustom_3dfbafd778b214fc5df2a64fe14fbfb3.eot"); + src: url("./fontcustom_3dfbafd778b214fc5df2a64fe14fbfb3.eot?#iefix") format("embedded-opentype"), + url("./fontcustom_3dfbafd778b214fc5df2a64fe14fbfb3.woff") format("woff"), + url("./fontcustom_3dfbafd778b214fc5df2a64fe14fbfb3.ttf") format("truetype"), + url("./fontcustom_3dfbafd778b214fc5df2a64fe14fbfb3.svg#fontcustom") format("svg"); font-weight: normal; font-style: normal; } @@ -16,7 +16,7 @@ @media screen and (-webkit-min-device-pixel-ratio:0) { @font-face { font-family: "fontcustom"; - src: url("./fontcustom_d77a9996ed04d45b02f5c06874cd36db.svg#fontcustom") format("svg"); + src: url("./fontcustom_3dfbafd778b214fc5df2a64fe14fbfb3.svg#fontcustom") format("svg"); } } @@ -26,9 +26,7 @@ .icon-activity-stream:before, .icon-google:before, .icon-launch:before, -.icon-launch-circle:before, -.icon-launch-new:before, -.icon-launch2:before, +.icon-microsoft:before, .icon-saml-02:before, .icon-user:before { display: inline-block; @@ -45,11 +43,9 @@ font-smoothing: antialiased; } -.icon-activity-stream:before { content: "\f102"; } -.icon-google:before { content: "\f100"; } +.icon-activity-stream:before { content: "\f101"; } +.icon-google:before { content: "\f102"; } .icon-launch:before { content: "\f103"; } -.icon-launch-circle:before { content: "\f105"; } -.icon-launch-new:before { content: "\f107"; } -.icon-launch2:before { content: "\f106"; } -.icon-saml-02:before { content: "\f101"; } -.icon-user:before { content: "\f104"; } +.icon-microsoft:before { content: "\f104"; } +.icon-saml-02:before { content: "\f105"; } +.icon-user:before { content: "\f106"; } diff --git a/awx/ui/client/assets/fontcustom/fontcustom_3dfbafd778b214fc5df2a64fe14fbfb3.eot b/awx/ui/client/assets/fontcustom/fontcustom_3dfbafd778b214fc5df2a64fe14fbfb3.eot new file mode 100644 index 0000000000..7d890d22c2 Binary files /dev/null and b/awx/ui/client/assets/fontcustom/fontcustom_3dfbafd778b214fc5df2a64fe14fbfb3.eot differ diff --git a/awx/ui/client/assets/fontcustom/fontcustom_3dfbafd778b214fc5df2a64fe14fbfb3.svg b/awx/ui/client/assets/fontcustom/fontcustom_3dfbafd778b214fc5df2a64fe14fbfb3.svg new file mode 100644 index 0000000000..20e687b626 --- /dev/null +++ b/awx/ui/client/assets/fontcustom/fontcustom_3dfbafd778b214fc5df2a64fe14fbfb3.svg @@ -0,0 +1,76 @@ + + + + + +Created by FontForge 20120731 at Mon Nov 28 21:58:48 2016 + By Chris Church +Created by Chris Church with FontForge 2.0 (http://fontforge.sf.net) + + + + + + + + + + + + + + diff --git a/awx/ui/client/assets/fontcustom/fontcustom_3dfbafd778b214fc5df2a64fe14fbfb3.ttf b/awx/ui/client/assets/fontcustom/fontcustom_3dfbafd778b214fc5df2a64fe14fbfb3.ttf new file mode 100644 index 0000000000..b5bb62ffce Binary files /dev/null and b/awx/ui/client/assets/fontcustom/fontcustom_3dfbafd778b214fc5df2a64fe14fbfb3.ttf differ diff --git a/awx/ui/client/assets/fontcustom/fontcustom_3dfbafd778b214fc5df2a64fe14fbfb3.woff b/awx/ui/client/assets/fontcustom/fontcustom_3dfbafd778b214fc5df2a64fe14fbfb3.woff new file mode 100644 index 0000000000..1ec0dcb5c6 Binary files /dev/null and b/awx/ui/client/assets/fontcustom/fontcustom_3dfbafd778b214fc5df2a64fe14fbfb3.woff differ diff --git a/awx/ui/client/assets/fontcustom/fontcustom_d77a9996ed04d45b02f5c06874cd36db.eot b/awx/ui/client/assets/fontcustom/fontcustom_d77a9996ed04d45b02f5c06874cd36db.eot deleted file mode 100644 index 739e0b64f5..0000000000 Binary files a/awx/ui/client/assets/fontcustom/fontcustom_d77a9996ed04d45b02f5c06874cd36db.eot and /dev/null differ diff --git a/awx/ui/client/assets/fontcustom/fontcustom_d77a9996ed04d45b02f5c06874cd36db.svg b/awx/ui/client/assets/fontcustom/fontcustom_d77a9996ed04d45b02f5c06874cd36db.svg deleted file mode 100644 index f1fe2ac03d..0000000000 --- a/awx/ui/client/assets/fontcustom/fontcustom_d77a9996ed04d45b02f5c06874cd36db.svg +++ /dev/null @@ -1,108 +0,0 @@ - - - - - -Created by FontForge 20150401 at Thu Nov 12 14:46:50 2015 - By John Mitchell -Copyright (c) 2015, John Mitchell - - - - - - - - - - - - - - - - diff --git a/awx/ui/client/assets/fontcustom/fontcustom_d77a9996ed04d45b02f5c06874cd36db.ttf b/awx/ui/client/assets/fontcustom/fontcustom_d77a9996ed04d45b02f5c06874cd36db.ttf deleted file mode 100644 index 5d151b75b0..0000000000 Binary files a/awx/ui/client/assets/fontcustom/fontcustom_d77a9996ed04d45b02f5c06874cd36db.ttf and /dev/null differ diff --git a/awx/ui/client/assets/fontcustom/fontcustom_d77a9996ed04d45b02f5c06874cd36db.woff b/awx/ui/client/assets/fontcustom/fontcustom_d77a9996ed04d45b02f5c06874cd36db.woff deleted file mode 100644 index 4c79bee685..0000000000 Binary files a/awx/ui/client/assets/fontcustom/fontcustom_d77a9996ed04d45b02f5c06874cd36db.woff and /dev/null differ diff --git a/awx/ui/client/assets/fontcustom/new_icons/microsoft.svg b/awx/ui/client/assets/fontcustom/new_icons/microsoft.svg new file mode 100644 index 0000000000..934eb2b4b9 --- /dev/null +++ b/awx/ui/client/assets/fontcustom/new_icons/microsoft.svg @@ -0,0 +1,14 @@ + + + + + + + + + + diff --git a/awx/ui/client/src/login/loginModal/thirdPartySignOn/thirdPartySignOn.service.js b/awx/ui/client/src/login/loginModal/thirdPartySignOn/thirdPartySignOn.service.js index ebc64fe9fc..7ab1980495 100644 --- a/awx/ui/client/src/login/loginModal/thirdPartySignOn/thirdPartySignOn.service.js +++ b/awx/ui/client/src/login/loginModal/thirdPartySignOn/thirdPartySignOn.service.js @@ -25,6 +25,17 @@ var options = [], error = ""; + function parseAzure(option) { + var newOption = {}; + + newOption.type = "azure"; + newOption.icon = "ThirdPartySignOn-icon--fontCustom icon-microsoft"; + newOption.link = option.login_url; + newOption.tooltip = i18n.sprintf(i18n._("Sign in with %s"), "Azure AD"); + + return newOption; + } + function parseGoogle(option) { var newOption = {}; @@ -78,7 +89,9 @@ // set up the particular tooltip, icon, etc. // needed by the login type - if (key.split("-")[0] === "google") { + if (key.split("-")[0] === "azuread") { + finalOption = parseAzure(option, key); + } else if (key.split("-")[0] === "google") { finalOption = parseGoogle(option, key); } else if (key.split("-")[0] === "github") { finalOption = parseGithub(option, key);