From b92ff43d373e2e1084c1c52f8a603aee21dd1464 Mon Sep 17 00:00:00 2001
From: gnaegi <none@none>
Date: Fri, 18 May 2012 19:38:42 +0200
Subject: [PATCH] OO-267 search for OLAT provider before activating controller
 to support LDAP/OLAT setup

---
 .../org/olat/login/LoginAuthprovidersController.java   | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/src/main/java/org/olat/login/LoginAuthprovidersController.java b/src/main/java/org/olat/login/LoginAuthprovidersController.java
index 7906c25d11f..c978897f301 100644
--- a/src/main/java/org/olat/login/LoginAuthprovidersController.java
+++ b/src/main/java/org/olat/login/LoginAuthprovidersController.java
@@ -146,6 +146,16 @@ public class LoginAuthprovidersController extends MainLayoutBasicController impl
 		} else if ("about".equals(type)) {
 			showAboutPage(ureq);
 			olatMenuTree.setSelectedNodeId(aboutNode.getIdent());
+		} else if ("registration".equals(type)) {
+			// make sure the OLAT authentication controller is activated as only this one can handle registration requests
+			AuthenticationProvider OLATProvider = LoginModule.getAuthenticationProvider(BaseSecurityModule.getDefaultAuthProviderIdentifier());
+			if (OLATProvider.isEnabled()) {
+				initLoginContent(ureq, BaseSecurityModule.getDefaultAuthProviderIdentifier());
+				if(authController instanceof Activateable2) {
+					((Activateable2)authController).activate(ureq, entries, state);
+				}
+			}			
+			// don't know what to do when the OLAT provider is not enabled
 		} else if(authController instanceof Activateable2) {
 			((Activateable2)authController).activate(ureq, entries, state);
 		}
-- 
GitLab