| 
				
			 | 
			
			
				@@ -40,8 +40,8 @@ module AuthenticationHelper 
			 | 
		
	
		
			
			| 
				40
			 | 
			
				40
			 | 
			
			
				   end 
			 | 
		
	
		
			
			| 
				41
			 | 
			
				41
			 | 
			
			
				  
			 | 
		
	
		
			
			| 
				42
			 | 
			
				42
			 | 
			
			
				   # Determine whether the user is logged in, and if so, disable the Session, then flush session cookies. 
			 | 
		
	
		
			
			| 
				43
			 | 
			
				
			 | 
			
			
				-  def log_out 
			 | 
		
	
		
			
			| 
				44
			 | 
			
				
			 | 
			
			
				-    if is_logged_in? and @user_session 
			 | 
		
	
		
			
			| 
				
			 | 
			
				43
			 | 
			
			
				+  def log_out(session_broken = false) 
			 | 
		
	
		
			
			| 
				
			 | 
			
				44
			 | 
			
			
				+    if !session_broken && is_logged_in? && @user_session 
			 | 
		
	
		
			
			| 
				45
			 | 
			
				45
			 | 
			
			
				       get_user_session 
			 | 
		
	
		
			
			| 
				46
			 | 
			
				46
			 | 
			
			
				  
			 | 
		
	
		
			
			| 
				47
			 | 
			
				47
			 | 
			
			
				       @user_session.update!(active: false) 
			 | 
		
	
	
		
			
			| 
				
			 | 
			
			
				@@ -104,8 +104,7 @@ module AuthenticationHelper 
			 | 
		
	
		
			
			| 
				104
			 | 
			
				104
			 | 
			
			
				  
			 | 
		
	
		
			
			| 
				105
			 | 
			
				105
			 | 
			
			
				     # Edge case if a session no longer exists in the database 
			 | 
		
	
		
			
			| 
				106
			 | 
			
				106
			 | 
			
			
				     if not @user_session 
			 | 
		
	
		
			
			| 
				107
			 | 
			
				
			 | 
			
			
				-      log_out 
			 | 
		
	
		
			
			| 
				108
			 | 
			
				
			 | 
			
			
				-      redirect_to login_path # FIXME! 
			 | 
		
	
		
			
			| 
				
			 | 
			
				107
			 | 
			
			
				+      log_out(session_broken = true) 
			 | 
		
	
		
			
			| 
				109
			 | 
			
				108
			 | 
			
			
				     end 
			 | 
		
	
		
			
			| 
				110
			 | 
			
				109
			 | 
			
			
				   end 
			 | 
		
	
		
			
			| 
				111
			 | 
			
				110
			 | 
			
			
				  
			 |