Update of /var/cvs/contributions/didactor2/src/core/java/nl/didactor/security
In directory james.mmbase.org:/tmp/cvs-serv23489/java/nl/didactor/security

Modified Files:
        Authentication.java UserContext.java 
Log Message:
automaticly select relevant education for logged in users


See also: 
http://cvs.mmbase.org/viewcvs/contributions/didactor2/src/core/java/nl/didactor/security


Index: Authentication.java
===================================================================
RCS file: 
/var/cvs/contributions/didactor2/src/core/java/nl/didactor/security/Authentication.java,v
retrieving revision 1.42
retrieving revision 1.43
diff -u -b -r1.42 -r1.43
--- Authentication.java 13 Nov 2008 15:42:47 -0000      1.42
+++ Authentication.java 13 Nov 2008 16:57:24 -0000      1.43
@@ -19,6 +19,7 @@
 import org.mmbase.util.logging.Logging;
 import org.mmbase.util.functions.*;
 import org.mmbase.util.transformers.*;
+import org.mmbase.util.Casting;
 
 
 import java.util.concurrent.CopyOnWriteArrayList;
@@ -101,7 +102,7 @@
         if (education != null && n != null) {
             Function fun = n.getFunction("class");
             Parameters params = fun.createParameters();
-            params.set("education", education);
+            params.set("education", Casting.toInt(education));
             Node claz = (Node) fun.getFunctionValue(params);
             req.setAttribute("class", claz);
         }
@@ -115,6 +116,7 @@
         log.debug("Processing didactor logout because ", new Exception());
         HttpSession session = request == null ? null : 
request.getSession(false);
         if (session != null) {
+            
session.removeAttribute(nl.didactor.filter.ProviderFilter.USER_KEY);
             String loginComponent = 
(String)session.getAttribute("didactor-logincomponent");
             if (loginComponent != null) {
                 for (AuthenticationComponent ac : securityComponents) {
@@ -389,7 +391,9 @@
 
     }
     @Override public int getNode(org.mmbase.security.UserContext userContext) 
throws SecurityException {
-        return 
getUserNode(ContextProvider.getDefaultCloudContext().getCloud("mmbase", 
"class", null), userContext.getIdentifier()).getNumber();
+        String id = userContext.getIdentifier();
+        Node n = 
getUserNode(ContextProvider.getDefaultCloudContext().getCloud("mmbase", 
"class", null), id);
+        return n == null ? -1 : n.getNumber();
     }
 
 


Index: UserContext.java
===================================================================
RCS file: 
/var/cvs/contributions/didactor2/src/core/java/nl/didactor/security/UserContext.java,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -b -r1.12 -r1.13
--- UserContext.java    15 Jan 2008 11:15:47 -0000      1.12
+++ UserContext.java    13 Nov 2008 16:57:24 -0000      1.13
@@ -16,7 +16,7 @@
  * the roles based on a given context.
  * @author Johannes Verelst <[EMAIL PROTECTED]>
  * @author Michiel Meeuwissen
- * @version $Id: UserContext.java,v 1.12 2008/01/15 11:15:47 michiel Exp $
+ * @version $Id: UserContext.java,v 1.13 2008/11/13 16:57:24 michiel Exp $
  */
 public class UserContext extends org.mmbase.security.BasicUser implements 
WeakNodeEventListener {
     private static final Logger log = 
Logging.getLoggerInstance(UserContext.class);
@@ -127,14 +127,14 @@
     /**
      * From the org.mmbase.security.UserContext interface
      */
-    public String getIdentifier() {
+    @Override public String getIdentifier() {
         return identifier;
     }
 
     /**
      * From the org.mmbase.security.UserContext interface
      */
-    public String getOwnerField() {
+    @Override public String getOwnerField() {
         return owner;
     }
 
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs

Reply via email to