%# Copyright (C) The Arvados Authors. All rights reserved. SPDX-License-Identifier: AGPL-3.0 %> <% content_for :breadcrumbs do raw '' end %> <%= javascript_tag do %> function controller_password_authenticate(event) { event.preventDefault() document.getElementById('login-authenticate-error').innerHTML = ''; fetch('<%= "#{Rails.configuration.Services.Controller.ExternalURL}" %>arvados/v1/users/authenticate', { method: 'POST', headers: {'Content-Type': 'application/json'}, body: JSON.stringify({ username: document.getElementById('login-username').value, password: document.getElementById('login-password').value, }), }).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 = ""; } <% end %>