public String getDisplayName(User user) { if (!UNADVISED_USER_EID.equals(user.getEid())) { return user.getFirstName() + " " + user.getLastName() + DISPLAY_ADVISED_SUFFIX; } else { return null; } }
protected Map<String, String> getCurrentUserFields() { Map<String, String> rv = new HashMap<String, String>(); String userRef = developerHelperService.getCurrentUserReference(); if (userRef != null) { User user = (User) developerHelperService.fetchEntity(userRef); try { String email = user.getEmail(); if (email == null) email = ""; String first = user.getFirstName(); if (first == null) first = ""; String last = user.getLastName(); if (last == null) last = ""; rv.put(CURRENT_USER_EMAIL, email); rv.put(CURRENT_USER_FIRST_NAME, first); rv.put(CURRENT_USER_LAST_NAME, last); rv.put(CURRENT_USER_DISPLAY_NAME, user.getDisplayName()); rv.put(CURRENT_USER_DISPLAY_ID, user.getDisplayId()); rv.put("currentUserDispalyId", user.getDisplayId()); } catch (Exception e) { log.warn("Failed to get current user replacements: " + userRef, e); } } /*NoN user fields */ rv.put(LOCAL_SAKAI_NAME, serverConfigurationService.getString("ui.service", "Sakai")); rv.put( LOCAL_SAKAI_SUPPORT_MAIL, serverConfigurationService.getString( "support.email", "help@" + serverConfigurationService.getServerUrl())); rv.put(LOCAL_SAKAI_URL, serverConfigurationService.getServerUrl()); return rv; }
public String getUserDisplayName(User user, String contextReference) { if (contextualSiteUid.equals(contextReference)) { if (!NOT_IN_SITE_USER_EID.equals(user.getEid())) { return user.getFirstName() + " " + user.getLastName() + CONTEXTUAL_SITE_NAME; } } return null; }
private void checkExplicitContextualService(User user) { Assert.assertEquals(null, contextualUserDisplayService.getUserDisplayId(user, standardSiteUid)); Assert.assertEquals( null, contextualUserDisplayService.getUserDisplayName(user, standardSiteUid)); Assert.assertEquals( user.getEid() + CONTEXTUAL_SITE_NAME, contextualUserDisplayService.getUserDisplayId(user, contextualSiteUid)); Assert.assertEquals( user.getFirstName() + " " + user.getLastName() + CONTEXTUAL_SITE_NAME, contextualUserDisplayService.getUserDisplayName(user, contextualSiteUid)); }
/** * @see org.sakaiproject.api.common.edu.person.SakaiPersonManager#create(java.lang.String, * java.lang.String, org.sakaiproject.api.common.type.Type) */ public SakaiPerson create(String userId, Type recordType) { if (LOG.isDebugEnabled()) { LOG.debug("create(String " + userId + ", Type " + recordType + ")"); } if (userId == null || userId.length() < 1) throw new IllegalArgumentException("Illegal agentUuid argument passed!"); ; // a null uid is valid if (!isSupportedType(recordType)) throw new IllegalArgumentException("Illegal recordType argument passed!"); SakaiPersonImpl spi = new SakaiPersonImpl(); persistableHelper.createPersistableFields(spi); spi.setUuid(IdManager.createUuid()); spi.setAgentUuid(userId); spi.setUid(userId); spi.setTypeUuid(recordType.getUuid()); spi.setLocked(Boolean.valueOf(false)); this.getHibernateTemplate().save(spi); // log the event String ref = getReference(spi); eventTrackingService.post(eventTrackingService.newEvent("profile.new", ref, true)); // do not do this for system profiles if (serverConfigurationService.getBoolean("profile.updateUser", false)) { try { User u = userDirectoryService.getUser(userId); spi.setGivenName(u.getFirstName()); spi.setSurname(u.getLastName()); spi.setMail(u.getEmail()); } catch (UserNotDefinedException uue) { LOG.error("User " + userId + "doesn't exist"); } } LOG.debug("return spi;"); return spi; }
protected void processRoster( HttpServletRequest request, HttpServletResponse response, String lti_message_type, Site site, String siteId, String placement_id, Properties pitch, String user_id, Map<String, Object> theMap) throws java.io.IOException { // Check for permission in placement String allowRoster = pitch.getProperty(LTIService.LTI_ALLOWROSTER); if (!"on".equals(allowRoster)) { doError( request, response, theMap, "outcomes.invalid", "lti_message_type=" + lti_message_type, null); return; } String roleMapProp = pitch.getProperty("rolemap"); String releaseName = pitch.getProperty(LTIService.LTI_SENDNAME); String releaseEmail = pitch.getProperty(LTIService.LTI_SENDEMAILADDR); String assignment = pitch.getProperty("assignment"); String allowOutcomes = ServerConfigurationService.getString( SakaiBLTIUtil.BASICLTI_OUTCOMES_ENABLED, SakaiBLTIUtil.BASICLTI_OUTCOMES_ENABLED_DEFAULT); if (!"true".equals(allowOutcomes)) allowOutcomes = null; String maintainRole = site.getMaintainRole(); SakaiBLTIUtil.pushAdvisor(); boolean success = false; try { List<Map<String, Object>> lm = new ArrayList<Map<String, Object>>(); Set<Member> members = site.getMembers(); Map<String, String> roleMap = SakaiBLTIUtil.convertRoleMapPropToMap(roleMapProp); for (Member member : members) { Map<String, Object> mm = new TreeMap<String, Object>(); Role role = member.getRole(); String ims_user_id = member.getUserId(); mm.put("/user_id", ims_user_id); String ims_role = "Learner"; // If there is a role mapping, it has precedence over site.update if (roleMap.containsKey(role.getId())) { ims_role = roleMap.get(role.getId()); } else if (ComponentManager.get(AuthzGroupService.class) .isAllowed(ims_user_id, SiteService.SECURE_UPDATE_SITE, "/site/" + siteId)) { ims_role = "Instructor"; } // Using "/role" is inconsistent with to // http://developers.imsglobal.org/ext_membership.html. It // should be roles. If we can determine that nobody is using // the role tag, we should remove it. mm.put("/role", ims_role); mm.put("/roles", ims_role); User user = null; if ("true".equals(allowOutcomes) && assignment != null) { user = UserDirectoryService.getUser(ims_user_id); String placement_secret = pitch.getProperty(LTIService.LTI_PLACEMENTSECRET); String result_sourcedid = SakaiBLTIUtil.getSourceDID(user, placement_id, placement_secret); if (result_sourcedid != null) mm.put("/lis_result_sourcedid", result_sourcedid); } if ("on".equals(releaseName) || "on".equals(releaseEmail)) { if (user == null) user = UserDirectoryService.getUser(ims_user_id); if ("on".equals(releaseName)) { mm.put("/person_name_given", user.getFirstName()); mm.put("/person_name_family", user.getLastName()); mm.put("/person_name_full", user.getDisplayName()); } if ("on".equals(releaseEmail)) { mm.put("/person_contact_email_primary", user.getEmail()); mm.put("/person_sourcedid", user.getEid()); } } Collection groups = site.getGroupsWithMember(ims_user_id); if (groups.size() > 0) { List<Map<String, Object>> lgm = new ArrayList<Map<String, Object>>(); for (Iterator i = groups.iterator(); i.hasNext(); ) { Group group = (Group) i.next(); Map<String, Object> groupMap = new HashMap<String, Object>(); groupMap.put("/id", group.getId()); groupMap.put("/title", group.getTitle()); groupMap.put("/set", new HashMap(groupMap)); lgm.add(groupMap); } mm.put("/groups/group", lgm); } lm.add(mm); } theMap.put("/message_response/members/member", lm); success = true; } catch (Exception e) { doError(request, response, theMap, "memberships.fail", "", e); } finally { SakaiBLTIUtil.popAdvisor(); } if (!success) return; theMap.put("/message_response/statusinfo/codemajor", "Success"); theMap.put("/message_response/statusinfo/severity", "Status"); theMap.put("/message_response/statusinfo/codeminor", "fullsuccess"); String theXml = XMLMap.getXML(theMap, true); PrintWriter out = response.getWriter(); out.println(theXml); M_log.debug(theXml); }
private void checkForContextualProperties(User user) { Assert.assertEquals(user.getEid() + CONTEXTUAL_SITE_NAME, user.getDisplayId()); Assert.assertEquals( user.getFirstName() + " " + user.getLastName() + CONTEXTUAL_SITE_NAME, user.getDisplayName()); }
private void checkForUnadvisedProperties(User user) { Assert.assertEquals(user.getEid(), user.getDisplayId()); Assert.assertEquals(user.getFirstName() + " " + user.getLastName(), user.getDisplayName()); }
private void checkForAdvisedProperties(User user) { Assert.assertEquals(user.getEid() + DISPLAY_ADVISED_SUFFIX, user.getDisplayId()); Assert.assertEquals( user.getFirstName() + " " + user.getLastName() + DISPLAY_ADVISED_SUFFIX, user.getDisplayName()); }
public List /* EmailGroup */ getEmailGroupsByType(String roletypefilter) { List /* EmailGroup */ thegroups = new ArrayList(); List emailroles = this.getEmailRoles(); for (Iterator i = emailroles.iterator(); i.hasNext(); ) { EmailRole emailrole = (EmailRole) i.next(); if (emailrole.roletype.equals("role") && roletypefilter.equals("role")) { String realmid = emailrole.getRealmid(); AuthzGroup therealm = null; try { therealm = m_realmService.getAuthzGroup(realmid); } catch (GroupNotDefinedException e1) { log.debug("GroupNotDefinedException: Mailtool.getEmailGroups() #1, ", e1); return thegroups; } catch (Exception e2) { log.debug("Exception: Mailtool.getEmailGroups() #1, " + e2.getMessage()); return thegroups; } Set users = therealm.getUsersHasRole(emailrole.getRoleid()); List /* EmailUser */ mailusers = new ArrayList(); for (Iterator j = users.iterator(); j.hasNext(); ) { String userid = (String) j.next(); try { User theuser = m_userDirectoryService.getUser(userid); String firstname_for_display = ""; String lastname_for_display = ""; if (theuser.getFirstName().trim().equals("")) { if (theuser.getEmail().trim().equals("") && theuser.getLastName().trim().equals("")) firstname_for_display = theuser.getDisplayId(); // fix for SAK-7539 else firstname_for_display = theuser.getEmail(); // fix for SAK-7356 } else { firstname_for_display = theuser.getFirstName(); } lastname_for_display = theuser.getLastName(); EmailUser emailuser = new EmailUser( theuser.getId(), firstname_for_display, lastname_for_display, theuser.getEmail()); mailusers.add(emailuser); } catch (Exception e) { log.debug("Exception: OptionsBean.getEmailGroupsByType() #2, " + e.getMessage()); } } Collections.sort(mailusers); EmailGroup thegroup = new EmailGroup(emailrole, mailusers); thegroups.add(thegroup); } else if (emailrole.roletype.equals("group") && roletypefilter.equals("group")) { String sid = getSiteID(); Site currentSite = null; try { currentSite = siteService.getSite(sid); } catch (IdUnusedException e1) { log.debug("IdUnusedException: Mailtool.getEmailGroups() #3, ", e1); return thegroups; } catch (Exception e2) { log.debug("Exception: Mailtool.getEmailGroups() #3, " + e2.getMessage()); return thegroups; } Collection groups = currentSite.getGroups(); Group agroup = null; for (Iterator groupIterator = groups.iterator(); groupIterator.hasNext(); ) { agroup = (Group) groupIterator.next(); String groupname = agroup.getTitle(); if (emailrole.getRoleid().equals(groupname)) break; } Set users2 = agroup.getUsersHasRole(groupAwareRoleFound); List mailusers2 = new ArrayList(); for (Iterator k = users2.iterator(); k.hasNext(); ) { String userid2 = (String) k.next(); try { User theuser2 = m_userDirectoryService.getUser(userid2); String firstname_for_display = ""; String lastname_for_display = ""; if (theuser2.getFirstName().trim().equals("")) { if (theuser2.getEmail().trim().equals("") && theuser2.getLastName().trim().equals("")) firstname_for_display = theuser2.getDisplayId(); // fix for SAK-7539 else firstname_for_display = theuser2.getEmail(); // fix for SAK-7356 } else { firstname_for_display = theuser2.getFirstName(); } lastname_for_display = theuser2.getLastName(); EmailUser emailuser2 = new EmailUser( theuser2.getId(), firstname_for_display, lastname_for_display, theuser2.getEmail()); mailusers2.add(emailuser2); } catch (Exception e) { log.debug("Exception: OptionsBean.getEmailGroupsByType() #3-1, " + e.getMessage()); } } Collections.sort(mailusers2); EmailGroup thegroup2 = new EmailGroup(emailrole, mailusers2); thegroups.add(thegroup2); } // else else if (emailrole.roletype.equals("section") && roletypefilter.equals("section")) { String sid = getSiteID(); Site currentSite = null; try { currentSite = siteService.getSite(sid); } catch (IdUnusedException e1) { log.debug("IdUnusedException: Mailtool.getEmailGroups() #4, ", e1); return thegroups; } catch (Exception e2) { log.debug("Exception: Mailtool.getEmailGroups() #4, " + e2.getMessage()); return thegroups; } Collection groups = currentSite.getGroups(); Group agroup = null; for (Iterator groupIterator = groups.iterator(); groupIterator.hasNext(); ) { agroup = (Group) groupIterator.next(); String groupname = agroup.getTitle(); if (emailrole.getRoleid().equals(groupname)) break; } Set users2 = agroup.getUsersHasRole(groupAwareRoleFound); List mailusers2 = new ArrayList(); for (Iterator k = users2.iterator(); k.hasNext(); ) { String userid2 = (String) k.next(); try { User theuser2 = m_userDirectoryService.getUser(userid2); String firstname_for_display = ""; String lastname_for_display = ""; if (theuser2.getFirstName().trim().equals("")) { if (theuser2.getEmail().trim().equals("") && theuser2.getLastName().trim().equals("")) firstname_for_display = theuser2.getDisplayId(); // fix for SAK-7539 else firstname_for_display = theuser2.getEmail(); // fix for SAK-7356 } else { firstname_for_display = theuser2.getFirstName(); } lastname_for_display = theuser2.getLastName(); EmailUser emailuser2 = new EmailUser( theuser2.getId(), firstname_for_display, lastname_for_display, theuser2.getEmail()); mailusers2.add(emailuser2); } catch (Exception e) { log.debug("Exception: OptionsBean.getEmailGroupsByType() #4-1, " + e.getMessage()); } } Collections.sort(mailusers2); EmailGroup thegroup2 = new EmailGroup(emailrole, mailusers2); thegroups.add(thegroup2); } // else else if (emailrole.roletype.equals("role_groupaware") && roletypefilter.equals("role_groupaware")) { String realmid = emailrole.getRealmid(); AuthzGroup therealm = null; try { therealm = m_realmService.getAuthzGroup(realmid); } catch (GroupNotDefinedException e1) { log.debug("GroupNotDefinedException: Mailtool.getEmailGroupsByType() #5, ", e1); return thegroups; } catch (Exception e2) { log.debug("Exception: Mailtool.getEmailGroupsByType() #5, " + e2.getMessage()); return thegroups; } Set users = therealm.getUsersHasRole(emailrole.getRoleid()); List /* EmailUser */ mailusers = new ArrayList(); for (Iterator j = users.iterator(); j.hasNext(); ) { String userid = (String) j.next(); try { User theuser = m_userDirectoryService.getUser(userid); String firstname_for_display = ""; String lastname_for_display = ""; if (theuser.getFirstName().trim().equals("")) { if (theuser.getEmail().trim().equals("") && theuser.getLastName().trim().equals("")) firstname_for_display = theuser.getDisplayId(); // fix for SAK-7539 else firstname_for_display = theuser.getEmail(); // fix for SAK-7356 } else { firstname_for_display = theuser.getFirstName(); } lastname_for_display = theuser.getLastName(); EmailUser emailuser = new EmailUser( theuser.getId(), firstname_for_display, lastname_for_display, theuser.getEmail()); mailusers.add(emailuser); } catch (Exception e) { log.debug("Exception: OptionsBean.getEmailGroupsByType() #5-1, " + e.getMessage()); } } Collections.sort(mailusers); EmailGroup thegroup = new EmailGroup(emailrole, mailusers); thegroups.add(thegroup); } // else } return thegroups; }