-
-
-
-
{{errorMessage}}
-
- The e-mail address
{{ sent.orgemail }}
is assigned to organization
{{ sent.orgname }}
.
- To access that organization, an admin user must be used.
-
- An e-mail has been sent to
-
{{ sent.orgemail }}
with the full list of admin users.
+
+
+
+
+
+
+
+
+
+
+
-
Account recovery email was sent.
+
+
diff --git a/static/img/quay-horizontal-color.svg b/static/img/quay-horizontal-color.svg
new file mode 100644
index 000000000..5ff210b1b
--- /dev/null
+++ b/static/img/quay-horizontal-color.svg
@@ -0,0 +1 @@
+
quay
\ No newline at end of file
diff --git a/static/js/app.js b/static/js/app.js
index a7798c7e1..948992876 100644
--- a/static/js/app.js
+++ b/static/js/app.js
@@ -274,7 +274,13 @@ quayApp.run(['$location', '$rootScope', 'Restangular', 'UserService', 'PlanServi
if (!current.$$route) { return; }
- $rootScope.pageClass = current.$$route.pageClass || '';
+ var pageClass = current.$$route.pageClass || '';
+ if (typeof pageClass != 'string') {
+ pageClass = pageClass(Features);
+ }
+
+
+ $rootScope.pageClass = pageClass;
$rootScope.newLayout = !!current.$$route.newLayout;
$rootScope.fixFooter = !!current.$$route.fixFooter;
diff --git a/static/js/directives/ui/header-bar.js b/static/js/directives/ui/header-bar.js
index 7435190b6..3617fdcdd 100644
--- a/static/js/directives/ui/header-bar.js
+++ b/static/js/directives/ui/header-bar.js
@@ -160,15 +160,7 @@ angular.module('quay').directive('headerBar', function () {
};
$scope.getEnterpriseLogo = function() {
- if (!Config.ENTERPRISE_LOGO_URL) {
- if (Features.BILLING) {
- return '/static/img/quay-horizontal-whiteblue-nobackground.svg';
- } else {
- return '/static/img/QuayEnterprise_horizontal_color.svg'
- }
- }
-
- return Config.ENTERPRISE_LOGO_URL;
+ return Config.getEnterpriseLogo(false);
};
$scope.toggleSearch = function() {
diff --git a/static/js/directives/ui/recovery-form.js b/static/js/directives/ui/recovery-form.js
new file mode 100644
index 000000000..c41420ce4
--- /dev/null
+++ b/static/js/directives/ui/recovery-form.js
@@ -0,0 +1,35 @@
+/**
+ * An element which displays a box for the user to recover their account.
+ */
+angular.module('quay').directive('recoveryForm', function () {
+ var directiveDefinitionObject = {
+ priority: 0,
+ templateUrl: '/static/directives/recovery-form.html',
+ replace: false,
+ transclude: true,
+ restrict: 'C',
+ scope: {
+ },
+ controller: function($scope, $location, $timeout, ApiService, KeyService, UserService, Config, Features) {
+ $scope.Config = Config;
+ $scope.Features = Features;
+
+ $scope.sendRecovery = function() {
+ $scope.sendingRecovery = true;
+
+ ApiService.requestRecoveryEmail($scope.recovery).then(function(resp) {
+ $scope.invalidRecovery = false;
+ $scope.errorMessage = '';
+ $scope.sent = resp;
+ $scope.sendingRecovery = false;
+ }, function(resp) {
+ $scope.invalidRecovery = true;
+ $scope.errorMessage = ApiService.getErrorMessage(resp, 'Cannot send recovery email');
+ $scope.sent = null;
+ $scope.sendingRecovery = false;
+ });
+ };
+ }
+ };
+ return directiveDefinitionObject;
+});
diff --git a/static/js/directives/ui/signup-form.js b/static/js/directives/ui/signup-form.js
index 50e23a474..1f1226244 100644
--- a/static/js/directives/ui/signup-form.js
+++ b/static/js/directives/ui/signup-form.js
@@ -18,8 +18,7 @@ angular.module('quay').directive('signupForm', function () {
$scope.awaitingConfirmation = false;
$scope.registering = false;
- $scope.EXTERNAL_LOGINS = ExternalLoginService.EXTERNAL_LOGINS;
- $scope.singleSigninUrl = ExternalLoginService.getSingleSigninUrl();
+ $scope.Config = Config;
$scope.register = function() {
UIService.hidePopover('#signupButton');
diff --git a/static/js/directives/ui/user-setup.js b/static/js/directives/ui/user-setup.js
index 70782e56d..61705b249 100644
--- a/static/js/directives/ui/user-setup.js
+++ b/static/js/directives/ui/user-setup.js
@@ -10,9 +10,10 @@ angular.module('quay').directive('userSetup', function () {
restrict: 'C',
scope: {
'redirectUrl': '=redirectUrl',
-
'inviteCode': '=inviteCode',
+ 'hideLogo': '@hideLogo',
+
'signInStarted': '&signInStarted',
'signedIn': '&signedIn',
'userRegistered': '&userRegistered'
@@ -20,30 +21,23 @@ angular.module('quay').directive('userSetup', function () {
controller: function($scope, $location, $timeout, ApiService, KeyService, UserService, Config, Features) {
$scope.Config = Config;
$scope.Features = Features;
+ $scope.currentView = 'createAccount';
- $scope.sendRecovery = function() {
- $scope.sendingRecovery = true;
+ var hasSignedIn = function() {
+ return UserService.hasEverLoggedIn() || Config.AUTHENTICATION_TYPE != 'Database';
+ };
- ApiService.requestRecoveryEmail($scope.recovery).then(function(resp) {
- $scope.invalidRecovery = false;
- $scope.errorMessage = '';
- $scope.sent = resp;
- $scope.sendingRecovery = false;
- }, function(resp) {
- $scope.invalidRecovery = true;
- $scope.errorMessage = ApiService.getErrorMessage(resp, 'Cannot send recovery email');
- $scope.sent = null;
- $scope.sendingRecovery = false;
- });
+ if (hasSignedIn()) {
+ $scope.currentView = 'signin';
+ }
+
+ $scope.setView = function(view) {
+ $scope.currentView = view;
};
$scope.handleUserRegistered = function(username) {
$scope.userRegistered({'username': username});
};
-
- $scope.hasSignedIn = function() {
- return UserService.hasEverLoggedIn() || Config.AUTHENTICATION_TYPE != 'Database';
- };
}
};
return directiveDefinitionObject;
diff --git a/static/js/pages/landing.js b/static/js/pages/landing.js
index 3408c7fd6..9595b38d7 100644
--- a/static/js/pages/landing.js
+++ b/static/js/pages/landing.js
@@ -4,7 +4,9 @@
*/
angular.module('quayPages').config(['pages', function(pages) {
pages.create('landing', 'landing.html', LandingCtrl, {
- 'pageClass': 'landing-page'
+ 'pageClass': function(Features) {
+ return Features.BILLING ? 'landing-page' : '';
+ }
});
}]);
@@ -20,7 +22,6 @@
UserService.updateUserIn($scope, function(user) {
if (!user.anonymous) {
$location.path('/repository');
- return;
}
});
@@ -81,13 +82,5 @@
}
});
};
-
- $scope.getEnterpriseLogo = function() {
- if (!Config.ENTERPRISE_LOGO_URL) {
- return '/static/img/QuayEnterprise_horizontal_color.svg';
- }
-
- return Config.ENTERPRISE_LOGO_URL;
- };
}
})();
diff --git a/static/js/pages/signin.js b/static/js/pages/signin.js
index d1d49f010..f8bd1e92c 100644
--- a/static/js/pages/signin.js
+++ b/static/js/pages/signin.js
@@ -4,7 +4,7 @@
*/
angular.module('quayPages').config(['pages', function(pages) {
pages.create('signin', 'signin.html', SignInCtrl, {
- 'title': 'Sign In'
+ 'title': 'Sign In',
});
}]);
diff --git a/static/js/services/features-config.js b/static/js/services/features-config.js
index 2632aa0d3..11a97db8c 100644
--- a/static/js/services/features-config.js
+++ b/static/js/services/features-config.js
@@ -35,7 +35,7 @@ angular.module('quay').factory('Features', [function() {
/**
* Application configuration.
*/
-angular.module('quay').factory('Config', [function() {
+angular.module('quay').factory('Config', ['Features', function(Features) {
if (!window.__config) {
return {};
}
@@ -71,5 +71,21 @@ angular.module('quay').factory('Config', [function() {
return value;
};
+ config.getEnterpriseLogo = function(forWhiteBackground) {
+ if (!config.ENTERPRISE_LOGO_URL) {
+ if (Features.BILLING) {
+ if (forWhiteBackground) {
+ return '/static/img/quay-horizontal-color.svg';
+ } else {
+ return '/static/img/quay-horizontal-whiteblue-nobackground.svg';
+ }
+ } else {
+ return '/static/img/QuayEnterprise_horizontal_color.svg';
+ }
+ }
+
+ return config.ENTERPRISE_LOGO_URL;
+ };
+
return config;
}]);
\ No newline at end of file
diff --git a/static/partials/landing-login.html b/static/partials/landing-login.html
index 571f571df..a49c4ae10 100644
--- a/static/partials/landing-login.html
+++ b/static/partials/landing-login.html
@@ -1,18 +1,7 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
diff --git a/static/partials/plans.html b/static/partials/plans.html
index 606df45f9..80c61b091 100644
--- a/static/partials/plans.html
+++ b/static/partials/plans.html
@@ -610,15 +610,13 @@
-
+
diff --git a/static/partials/repo-list.html b/static/partials/repo-list.html
index 8041ffdb2..0c85e82ba 100644
--- a/static/partials/repo-list.html
+++ b/static/partials/repo-list.html
@@ -17,12 +17,8 @@
-
-
-
You must be signed in to view repositories.
-
-
+
diff --git a/static/partials/signin.html b/static/partials/signin.html
index ad90ff9ed..9bd2bc04a 100644
--- a/static/partials/signin.html
+++ b/static/partials/signin.html
@@ -1,7 +1,5 @@