use of org.olat.portfolio.model.structel.EPStructureElementToGroupRelation in project openolat by klemens.
the class EPStructureManager method removeBaseGroup.
private void removeBaseGroup(EPAbstractMap map) {
Set<EPStructureElementToGroupRelation> relations = map.getGroups();
if (relations != null) {
for (EPStructureElementToGroupRelation relation : relations) {
Group group = relation.getGroup();
if (relation.isDefaultGroup()) {
groupDao.removeMemberships(group);
groupDao.removeGroup(group);
}
}
}
}
use of org.olat.portfolio.model.structel.EPStructureElementToGroupRelation in project OpenOLAT by OpenOLAT.
the class EPStructureManager method createPortfolioMapTemplate.
/**
* Create a map template, create an OLAT resource and a repository entry with a security group
* of type owner to the repository and add the identity has an owner.
* @param identity
* @param title
* @param description
* @return The structure element
*/
public PortfolioStructureMap createPortfolioMapTemplate(Identity identity, String title, String description) {
EPStructuredMapTemplate el = new EPStructuredMapTemplate();
fillStructureElement(el, title, description);
// create a repository entry with default security settings
RepositoryEntry re = createRepositoryEntry(identity, el.getOlatResource(), title);
dbInstance.commit();
Group ownerGroup = repositoryService.getDefaultGroup(re);
EPStructureElementToGroupRelation relation = createBaseRelation(el, ownerGroup);
Set<EPStructureElementToGroupRelation> relations = new HashSet<>();
relations.add(relation);
el.setGroups(relations);
return el;
}
use of org.olat.portfolio.model.structel.EPStructureElementToGroupRelation in project OpenOLAT by OpenOLAT.
the class EPStructureManager method createBaseRelation.
private EPStructureElementToGroupRelation createBaseRelation(EPStructureElement element, Group ownerGroup) {
// create security group
EPStructureElementToGroupRelation relation = new EPStructureElementToGroupRelation();
relation.setDefaultGroup(true);
relation.setCreationDate(new Date());
relation.setGroup(ownerGroup);
relation.setStructureElement(element);
return relation;
}
use of org.olat.portfolio.model.structel.EPStructureElementToGroupRelation in project OpenOLAT by OpenOLAT.
the class EPStructureManager method importPortfolioMapTemplate.
/**
* Import the structure.
* @param root
* @param identity
* @return
*/
public PortfolioStructureMap importPortfolioMapTemplate(PortfolioStructure root, OLATResource resource) {
EPStructuredMapTemplate el = new EPStructuredMapTemplate();
fillStructureElement(el, root.getTitle(), root.getDescription(), resource);
EPStructuredMapTemplate rootTemp = (EPStructuredMapTemplate) root;
rootTemp.setStructureElSource(null);
el.setStyle(((EPStructureElement) root).getStyle());
importEPStructureElementRecursively((EPStructureElement) root, el);
// create an empty group
Group ownerGroup = groupDao.createGroup();
EPStructureElementToGroupRelation relation = createBaseRelation(el, ownerGroup);
Set<EPStructureElementToGroupRelation> relations = new HashSet<>();
relations.add(relation);
el.setGroups(relations);
return el;
}
use of org.olat.portfolio.model.structel.EPStructureElementToGroupRelation in project OpenOLAT by OpenOLAT.
the class EPPolicyManager method applyPolicyToAllUsers.
private EPStructureElementToGroupRelation applyPolicyToAllUsers(EPMapPolicy wrapper, PortfolioStructureMap map) {
List<EPStructureElementToGroupRelation> currentRelations = wrapper.getRelations();
if (!currentRelations.isEmpty()) {
EPStructureElementToGroupRelation currentRelation = currentRelations.get(0);
updatePolicy(currentRelation, wrapper.getFrom(), wrapper.getTo());
return currentRelation;
}
return createBaseRelation(map, null, EPMapPolicy.Type.allusers.name(), wrapper.getFrom(), wrapper.getTo());
}
Aggregations