change to PropertyGroupTemplateModel to prevent drawing meaningless headers when a DataProperty is not visible or editable

This commit is contained in:
brianjlowe 2013-11-25 10:42:32 -05:00
parent 98f231a863
commit 2df39c9e24

View file

@ -9,6 +9,7 @@ import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import edu.cornell.mannlib.vitro.webapp.auth.policy.PolicyHelper;
import edu.cornell.mannlib.vitro.webapp.auth.requestedAction.display.DisplayDataProperty;
import edu.cornell.mannlib.vitro.webapp.auth.requestedAction.display.DisplayObjectProperty;
import edu.cornell.mannlib.vitro.webapp.auth.requestedAction.ifaces.RequestedAction;
import edu.cornell.mannlib.vitro.webapp.beans.DataProperty;
@ -50,8 +51,15 @@ public class PropertyGroupTemplateModel extends BaseTemplateModel {
properties.add(tm);
}
} else if (p instanceof DataProperty){
DataProperty dp = (DataProperty) p;
RequestedAction dop = new DisplayDataProperty(dp);
if (!PolicyHelper.isAuthorizedForActions(vreq, dop)) {
continue;
}
properties.add(new DataPropertyTemplateModel(dp, subject, vreq, editing, populatedDataPropertyList));
} else {
properties.add(new DataPropertyTemplateModel((DataProperty)p, subject, vreq, editing, populatedDataPropertyList));
log.debug(p.getURI() + " is neither an ObjectProperty nor a DataProperty; skipping display");
}
}
}