From: Grégoire Aubert Date: Mon, 6 Aug 2018 13:20:03 +0000 (+0200) Subject: SONAR-11038 Fix redirect url when not logged in user access project create page X-Git-Tag: 7.5~609 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=f45364195152e849c9bc14ca0f68d9dc6717f55a;p=sonarqube.git SONAR-11038 Fix redirect url when not logged in user access project create page --- diff --git a/server/sonar-web/src/main/js/apps/projects/create/CreateProjectPage.tsx b/server/sonar-web/src/main/js/apps/projects/create/CreateProjectPage.tsx index f4ea23b49bb..fd86a11afee 100644 --- a/server/sonar-web/src/main/js/apps/projects/create/CreateProjectPage.tsx +++ b/server/sonar-web/src/main/js/apps/projects/create/CreateProjectPage.tsx @@ -62,26 +62,26 @@ interface State { export class CreateProjectPage extends React.PureComponent { mounted = false; - - constructor(props: Props) { - super(props); - this.state = { loading: true }; - const query = parseQuery(props.location.query); - if (query.error) { - this.props.addGlobalErrorMessage(query.error); - } - if (!this.canAutoCreate(props)) { - this.updateQuery({ manual: true }); - } - } + state: State = { loading: true }; componentDidMount() { - this.mounted = true; - if (!isLoggedIn(this.props.currentUser)) { + if (isLoggedIn(this.props.currentUser)) { + this.mounted = true; + const query = parseQuery(this.props.location.query); + if (query.error) { + this.props.addGlobalErrorMessage(query.error); + } + if (!this.canAutoCreate()) { + this.setState({ loading: false }); + this.updateQuery({ manual: true }); + } else { + this.fetchIdentityProviders(); + } + document.body.classList.add('white-page'); + document.documentElement.classList.add('white-page'); + } else { handleRequiredAuthentication(); } - document.body.classList.add('white-page'); - document.documentElement.classList.add('white-page'); } componentWillUnmount() { @@ -189,14 +189,14 @@ export class CreateProjectPage extends React.PureComponent { )} - {displayManual || !hasAutoProvisioning ? ( + {displayManual || !hasAutoProvisioning || !identityProvider ? ( ) : ( )}