private void registerWithSite(String qualifierIdString, String siteId) { if (siteId == null || siteId.length() == 0) { PersistenceService.getInstance().getAuthzQueriesFacade() .createAuthorization(AgentFacade.getCurrentSiteId(), "EDIT_ASSESSMENT", qualifierIdString); } else { PersistenceService.getInstance().getAuthzQueriesFacade() .createAuthorization(siteId, "EDIT_ASSESSMENT", qualifierIdString); } }
private Set<String> getAuthorizedGroups(String assessmentId) { List authorizations = PersistenceService.getInstance().getAuthzQueriesFacade() .getAuthorizationByFunctionAndQualifier("TAKE_PUBLISHED_ASSESSMENT", assessmentId); Set<String> authorizedGroups = new HashSet<String>(); if (authorizations != null && authorizations.size()>0) { Iterator authsIter = authorizations.iterator(); while (authsIter.hasNext()) { AuthorizationData ad = (AuthorizationData) authsIter.next(); authorizedGroups.add(ad.getAgentIdString()); } } return authorizedGroups; }
/** * Creates Authorizations for Selected Groups * @param p */ public void createAuthorizationForSelectedGroups(PublishedAssessmentData publishedAssessment) { AuthzQueriesFacadeAPI authz = PersistenceService.getInstance().getAuthzQueriesFacade(); String qualifierIdString = publishedAssessment.getPublishedAssessmentId().toString(); authz.createAuthorization(AgentFacade.getCurrentSiteId(), "OWN_PUBLISHED_ASSESSMENT", qualifierIdString); authz.createAuthorization(AgentFacade.getCurrentSiteId(), "VIEW_PUBLISHED_ASSESSMENT", qualifierIdString); List authorizationsToCopy = authz.getAuthorizationByFunctionAndQualifier("TAKE_ASSESSMENT", publishedAssessment.getAssessmentId().toString()); if (authorizationsToCopy != null && authorizationsToCopy.size()>0) { Iterator authsIter = authorizationsToCopy.iterator(); while (authsIter.hasNext()) { AuthorizationData adToCopy = (AuthorizationData) authsIter.next(); authz.createAuthorization(adToCopy.getAgentIdString(), "TAKE_PUBLISHED_ASSESSMENT", publishedAssessment.getPublishedAssessmentId().toString()); } } }
public void removeAssessment(Long assessmentId, String action) { PublishedAssessmentData assessment = (PublishedAssessmentData) getHibernateTemplate() .load(PublishedAssessmentData.class, assessmentId); // for preview, delete assessment // for others, simply set pub assessment to inactive if (action == null || action.equals("preview")) { delete(assessment); // remove authorization PersistenceService.getInstance().getAuthzQueriesFacade() .removeAuthorizationByQualifier( assessment.getPublishedAssessmentId().toString(), true); } else { assessment.setStatus(PublishedAssessmentIfc.DEAD_STATUS); try { saveOrUpdate(assessment); } catch (Exception e) { log.warn(e.getMessage()); } } }
/** * Creates Authorizations for Selected Groups * @param p */ public void createAuthorizationForSelectedGroups(PublishedAssessmentData publishedAssessment) { AuthzQueriesFacadeAPI authz = PersistenceService.getInstance().getAuthzQueriesFacade(); String qualifierIdString = publishedAssessment.getPublishedAssessmentId().toString(); authz.createAuthorization(AgentFacade.getCurrentSiteId(), "OWN_PUBLISHED_ASSESSMENT", qualifierIdString); authz.createAuthorization(AgentFacade.getCurrentSiteId(), "VIEW_PUBLISHED_ASSESSMENT", qualifierIdString); List authorizationsToCopy = authz.getAuthorizationByFunctionAndQualifier("TAKE_ASSESSMENT", publishedAssessment.getAssessmentId().toString()); if (authorizationsToCopy != null && authorizationsToCopy.size()>0) { Iterator authsIter = authorizationsToCopy.iterator(); while (authsIter.hasNext()) { AuthorizationData adToCopy = (AuthorizationData) authsIter.next(); authz.createAuthorization(adToCopy.getAgentIdString(), "TAKE_PUBLISHED_ASSESSMENT", publishedAssessment.getPublishedAssessmentId().toString()); } } }
public void removeAssessment(Long assessmentId, String action) { PublishedAssessmentData assessment = (PublishedAssessmentData) getHibernateTemplate() .load(PublishedAssessmentData.class, assessmentId); // for preview, delete assessment // for others, simply set pub assessment to inactive if (action == null || action.equals("preview")) { delete(assessment); // remove authorization PersistenceService.getInstance().getAuthzQueriesFacade() .removeAuthorizationByQualifier( assessment.getPublishedAssessmentId().toString(), true); } else { assessment.setStatus(PublishedAssessmentIfc.DEAD_STATUS); try { saveOrUpdate(assessment); RubricsService rubricsService = (RubricsService) SpringBeanLocator.getInstance().getBean("org.sakaiproject.rubrics.logic.RubricsService"); rubricsService.deleteRubricAssociationsByItemIdPrefix(RubricsConstants.RBCS_PUBLISHED_ASSESSMENT_ENTITY_PREFIX + assessmentId + ".", RubricsConstants.RBCS_TOOL_SAMIGO); } catch (Exception e) { log.warn(e.getMessage()); } } }
private Set<String> getAuthorizedGroups(String assessmentId) { List authorizations = PersistenceService.getInstance().getAuthzQueriesFacade() .getAuthorizationByFunctionAndQualifier("TAKE_PUBLISHED_ASSESSMENT", assessmentId); Set<String> authorizedGroups = new HashSet<String>(); if (authorizations != null && authorizations.size()>0) { Iterator authsIter = authorizations.iterator(); while (authsIter.hasNext()) { AuthorizationData ad = (AuthorizationData) authsIter.next(); authorizedGroups.add(ad.getAgentIdString()); } } return authorizedGroups; }
private void registerWithSite(String qualifierIdString, String siteId) { if (siteId == null || siteId.length() == 0) { PersistenceService.getInstance().getAuthzQueriesFacade() .createAuthorization(AgentFacade.getCurrentSiteId(), "EDIT_ASSESSMENT", qualifierIdString); } else { PersistenceService.getInstance().getAuthzQueriesFacade() .createAuthorization(siteId, "EDIT_ASSESSMENT", qualifierIdString); } }
private Map<String, String> getReleaseToGroups(Map groupsForSite, Long assessmentId) { Map<String, String> releaseToGroups = new HashMap(); AuthzQueriesFacadeAPI authz = PersistenceService.getInstance().getAuthzQueriesFacade(); List authorizations = authz.getAuthorizationByFunctionAndQualifier("TAKE_ASSESSMENT", assessmentId.toString()); if (authorizations != null && authorizations.size()>0) { Iterator authsIter = authorizations.iterator(); while (authsIter.hasNext()) { AuthorizationData ad = (AuthorizationData) authsIter.next(); if (groupsForSite.containsKey(ad.getAgentIdString())) { String group = groupsForSite.get(ad.getAgentIdString()).toString(); if (group != null) { releaseToGroups.put(ad.getAgentIdString(), group); } } } releaseToGroups.entrySet().stream() .sorted(Map.Entry.comparingByValue()) .collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue, (oldValue, newValue) -> oldValue, LinkedHashMap::new)); } return releaseToGroups; }
.createAuthorization(AgentFacade.getCurrentSiteId(), "OWN_PUBLISHED_ASSESSMENT", qualifierIdString); log.debug("** agentId=" + agentId); PersistenceService.getInstance().getAuthzQueriesFacade() .createAuthorization(agentId, "TAKE_PUBLISHED_ASSESSMENT", qualifierIdString); PersistenceService.getInstance().getAuthzQueriesFacade() .createAuthorization(agentId, "VIEW_PUBLISHED_ASSESSMENT_FEEDBACK", qualifierIdString); PersistenceService.getInstance().getAuthzQueriesFacade() .createAuthorization(agentId, "GRADE_PUBLISHED_ASSESSMENT", qualifierIdString); PersistenceService.getInstance().getAuthzQueriesFacade() .createAuthorization(agentId, "VIEW_PUBLISHED_ASSESSMENT", qualifierIdString);
String releaseToGroupsAsString = null; AuthzQueriesFacadeAPI authz = PersistenceService.getInstance().getAuthzQueriesFacade(); List authorizations = authz.getAuthorizationByFunctionAndQualifier("TAKE_PUBLISHED_ASSESSMENT", assessmentId.toString()); if (authorizations != null && authorizations.size()>0) { Iterator authsIter = authorizations.iterator();
.createAuthorization(AgentFacade.getCurrentSiteId(), "OWN_PUBLISHED_ASSESSMENT", qualifierIdString); log.debug("** agentId=" + agentId); PersistenceService.getInstance().getAuthzQueriesFacade() .createAuthorization(agentId, "TAKE_PUBLISHED_ASSESSMENT", qualifierIdString); PersistenceService.getInstance().getAuthzQueriesFacade() .createAuthorization(agentId, "VIEW_PUBLISHED_ASSESSMENT_FEEDBACK", qualifierIdString); PersistenceService.getInstance().getAuthzQueriesFacade() .createAuthorization(agentId, "GRADE_PUBLISHED_ASSESSMENT", qualifierIdString); PersistenceService.getInstance().getAuthzQueriesFacade() .createAuthorization(agentId, "VIEW_PUBLISHED_ASSESSMENT", qualifierIdString);
/** * * @param assessmentId * @return */ private Map<String, String> getReleaseToGroups(Map groupsForSite, Long assessmentId) { Map<String, String> releaseToGroups = new HashMap(); AuthzQueriesFacadeAPI authz = PersistenceService.getInstance().getAuthzQueriesFacade(); List authorizations = authz.getAuthorizationByFunctionAndQualifier("TAKE_PUBLISHED_ASSESSMENT", assessmentId.toString()); if (authorizations != null && authorizations.size()>0) { Iterator authsIter = authorizations.iterator(); while (authsIter.hasNext()) { AuthorizationData ad = (AuthorizationData) authsIter.next(); if (groupsForSite.containsKey(ad.getAgentIdString())) { String group = groupsForSite.get(ad.getAgentIdString()).toString(); if (group != null) { releaseToGroups.put(ad.getAgentIdString(), group); } } } releaseToGroups.entrySet().stream() .sorted(Map.Entry.comparingByValue()) .collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue, (oldValue, newValue) -> oldValue, LinkedHashMap::new)); } return releaseToGroups; }
.createAuthorization(toContext, "EDIT_ASSESSMENT", a.getAssessmentId().toString());
private boolean checkMembership(PublishedAssessmentIfc pub, String userId){ boolean isMember=false; // get list of site that this published assessment has been released to List l = PersistenceService.getInstance().getAuthzQueriesFacade(). getAuthorizationByFunctionAndQualifier("VIEW_PUBLISHED_ASSESSMENT", pub.getPublishedAssessmentId().toString()); for (int i=0;i<l.size();i++){ String siteId = ((AuthorizationData)l.get(i)).getAgentIdString(); try { isMember = (siteService.getSite(siteId).getUserRole(userId) != null); } catch (IdUnusedException e) { log.info("Site with ID: " + siteId + " does not exists but is " + "authorized for assessment id: " + pub.getPublishedAssessmentId()); } if (isMember) { break; } } return isMember; }
.createAuthorization(AgentFacade.getCurrentSiteId(), "EDIT_ASSESSMENT", newAssessmentData.getAssessmentId().toString());
private boolean checkMembership(PublishedAssessmentIfc pub, String userId){ boolean isMember=false; // get list of site that this published assessment has been released to List l = PersistenceService.getInstance().getAuthzQueriesFacade(). getAuthorizationByFunctionAndQualifier("VIEW_PUBLISHED_ASSESSMENT", pub.getPublishedAssessmentId().toString()); for (int i=0;i<l.size();i++){ String siteId = ((AuthorizationData)l.get(i)).getAgentIdString(); try { isMember = (siteService.getSite(siteId).getUserRole(userId) != null); } catch (IdUnusedException e) { log.info("Site with ID: " + siteId + " does not exists but is " + "authorized for assessment id: " + pub.getPublishedAssessmentId()); } if (isMember) { break; } } return isMember; }
.createAuthorization(toContext, "EDIT_ASSESSMENT", a.getAssessmentId().toString());
private boolean checkMembershipForGroupRelease(PublishedAssessmentIfc pub, String userId){ boolean isMember=false; // get the site that owns the published assessment List l =PersistenceService.getInstance().getAuthzQueriesFacade(). getAuthorizationByFunctionAndQualifier("OWN_PUBLISHED_ASSESSMENT", pub.getPublishedAssessmentId().toString()); if (l == null || l.isEmpty()) { return false; } String siteId = ((AuthorizationData)l.get(0)).getAgentIdString(); Collection siteGroupsContainingUser = null; try { siteGroupsContainingUser = siteService.getSite(siteId).getGroupsWithMember(userId); } catch (IdUnusedException ex) { // no site found } // get list of groups that this published assessment has been released to l =PersistenceService.getInstance().getAuthzQueriesFacade(). getAuthorizationByFunctionAndQualifier("TAKE_PUBLISHED_ASSESSMENT", pub.getPublishedAssessmentId().toString()); for (int i=0;i<l.size();i++){ String groupId = ((AuthorizationData)l.get(i)).getAgentIdString(); isMember = isUserInAuthorizedGroup(groupId, siteGroupsContainingUser); if (isMember) { break; } } return isMember; }
.createAuthorization(AgentFacade.getCurrentSiteId(), "EDIT_ASSESSMENT", newAssessmentData.getAssessmentId().toString());