X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/a900901fa7ed5201d0bf34cc4cd559f82ba25aa1..e522f0285d8214484d09e9342c97a1b97d7768c5:/apps/workbench/app/views/users/welcome.html.erb diff --git a/apps/workbench/app/views/users/welcome.html.erb b/apps/workbench/app/views/users/welcome.html.erb index 2842cd8848..92fd6dad46 100644 --- a/apps/workbench/app/views/users/welcome.html.erb +++ b/apps/workbench/app/views/users/welcome.html.erb @@ -5,10 +5,10 @@ SPDX-License-Identifier: AGPL-3.0 %> <% content_for :breadcrumbs do raw '' end %> <%= javascript_tag do %> - async function controller_password_authenticate(event) { + function controller_password_authenticate(event) { event.preventDefault() document.getElementById('login-authenticate-error').innerHTML = ''; - const resp = await fetch('<%= "#{Rails.configuration.Services.Controller.ExternalURL}" %>arvados/v1/users/authenticate', { + fetch('<%= "#{Rails.configuration.Services.Controller.ExternalURL}" %>arvados/v1/users/authenticate', { method: 'POST', headers: {'Content-Type': 'application/json'}, @@ -16,20 +16,24 @@ SPDX-License-Identifier: AGPL-3.0 %> username: document.getElementById('login-username').value, password: document.getElementById('login-password').value, }), - }) - if (!resp.ok) { - const respj = await resp.json() - document.getElementById('login-authenticate-error').innerHTML = `

${respj.errors[0]}

`; - return - } - var redir = document.getElementById('login-return-to').value - if (redir.indexOf('?') > 0) { - redir += '&' - } else { - redir += '?' - } - const respj = await resp.json() - document.location = redir + "api_token=v2/" + respj.uuid + "/" + respj.api_token + }).then(function(resp) { + if (!resp.ok) { + resp.json().then(function(respj) { + document.getElementById('login-authenticate-error').innerHTML = "

"+respj.errors[0]+"

"; + }); + return; + } + + var redir = document.getElementById('login-return-to').value + if (redir.indexOf('?') > 0) { + redir += '&' + } else { + redir += '?' + } + resp.json().then(function(respj) { + document.location = redir + "api_token=v2/" + respj.uuid + "/" + respj.api_token; + }); + }); } function clear_authenticate_error() { document.getElementById('login-authenticate-error').innerHTML = ""; @@ -43,18 +47,9 @@ SPDX-License-Identifier: AGPL-3.0 %> <%= raw(Rails.configuration.Workbench.WelcomePageHTML) %> <% case %> - <% when Rails.configuration.Login.Google.Enable %> - <% when Rails.configuration.Login.OpenIDConnect.Enable %> - <% when Rails.configuration.Login.SSO.Enable %> -
- <%= link_to arvados_api_client.arvados_login_url(return_to: request.url), class: "btn btn-primary" do %> - Log in to <%= Rails.configuration.Workbench.SiteName %> - - <% end %> -
- <% when Rails.configuration.Login.PAM.Enable %> - <% when Rails.configuration.Login.LDAP.Enable %> - <% when Rails.configuration.Login.Test.Enable %> + <% when Rails.configuration.Login.PAM.Enable, + Rails.configuration.Login.LDAP.Enable, + Rails.configuration.Login.Test.Enable %>

username oninput="clear_authenticate_error()">

" id="login-return-to">

- +
+ <% else %> +
+ <%= link_to arvados_api_client.arvados_login_url(return_to: request.url), class: "btn btn-primary" do %> + Log in to <%= Rails.configuration.Workbench.SiteName %> + + <% end %> +
<% end %>