Skip to content
This repository was archived by the owner on Mar 19, 2025. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions lib/casserver/server.rb
Original file line number Diff line number Diff line change
Expand Up @@ -556,6 +556,8 @@ def self.init_database!

@message[:message] += t.notice.click_to_continue if @continue_url

@log_out_of_services = true

@lt = generate_login_ticket

if @gateway && @service
Expand Down
12 changes: 11 additions & 1 deletion lib/casserver/views/_login_form.erb
Original file line number Diff line number Diff line change
@@ -1,3 +1,14 @@
<% if @log_out_of_services %>
<!-- The purpose of this is to log out of all our dependent services, so a user
doesn't get trapped in a weird circle of logging out of Canvas, but still
being another user on BZ and thereby getting jerked around in a confusing
circle when she goes back to the home page.

Since it is a cross-domain, client side cookie, we had to implement this
using a helper method on the other side and an iframe on this side.
-->
<iframe style="visibility: hidden; width: 1px; height: 1px;" src="//<%= @domain %>/users/clear_session_cookie"></iframe>
<% end %>
<form method="post" action="<%= @form_action || "login" %>" id="login-form"
onsubmit="submitbutton = document.getElementById('login-submit'); submitbutton.value='<%= t.notice.please_wait %>'; submitbutton.disabled=true; return true;">
<div><label id="username-label" for="username">
Expand All @@ -19,4 +30,3 @@
<%= @infoline %>
</div>
</form>