| 1 10 package org.mmbase.security.implementation.cloudcontext.builders; 11 12 import org.mmbase.security.implementation.cloudcontext.*; 13 import org.mmbase.module.core.*; 14 import org.mmbase.core.CoreField; 15 16 25 public class PeopleContexts extends Contexts { 26 27 28 29 protected String peopleBuilder = "people"; 30 public boolean init() { 31 String s = (String ) getInitParameters().get("peoplebuilder"); 32 if (s != null) { 33 peopleBuilder = s; 34 } 35 return super.init(); 36 } 37 38 protected boolean isOwnNode(User user, MMObjectNode node) { 40 if (super.isOwnNode(user, node)) return true; 41 if (node.getBuilder().getTableName().equals(peopleBuilder)) { 42 CoreField field = node.getBuilder().getField("account"); 43 if (field != null) { 44 switch (field.getType()) { 45 case CoreField.TYPE_STRING: 46 if (node.getStringValue("account").equals(user.getIdentifier())) { 47 return true; 48 } 49 break; 50 case CoreField.TYPE_NODE: 51 if (node.getIntValue("account") == user.getNode().getNumber()) { 52 return true; 53 } 54 break; 55 default: 56 break; 57 } 58 } 59 } 60 return false; 61 } 62 63 64 } 65 | Popular Tags |