Skip to content

Commit

Permalink
Moving to Sakai 11+
Browse files Browse the repository at this point in the history
  • Loading branch information
juanjmerono committed Feb 13, 2017
1 parent a055ff6 commit c9433ff
Show file tree
Hide file tree
Showing 23 changed files with 209 additions and 95 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
/.project
11 changes: 0 additions & 11 deletions .project

This file was deleted.

2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
Sample tools Developed with JSF2 and Sakai 11+.

# kickroster-classic
Simple roster tool developed with JSF 1.2 and RichFaces.
Simple roster tool developed with JSF 1.2 and RichFaces/PrimeFaces.

# kickroster-prime
Simple roster tool developed with JSF 2.0 and PrimeFaces.
Expand Down
4 changes: 4 additions & 0 deletions kickroster-classic/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
/target/
/.settings/
/.classpath
/.project
12 changes: 4 additions & 8 deletions kickroster-classic/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -60,10 +60,6 @@
<groupId>org.sakaiproject.kernel</groupId>
<artifactId>sakai-component-manager</artifactId>
</dependency>
<dependency>
<groupId>org.sakaiproject</groupId>
<artifactId>sakai-roster-api</artifactId>
</dependency>
<!-- apache commons logging -->
<dependency>
<groupId>commons-logging</groupId>
Expand All @@ -73,12 +69,12 @@
<dependency>
<groupId>org.sakaiproject.jsf</groupId>
<artifactId>jsf-tool</artifactId>
<version>${sakai.jsf.version}</version>
<version>${sakai.version}</version>
</dependency>
<dependency>
<groupId>org.sakaiproject.jsf</groupId>
<artifactId>jsf-app</artifactId>
<version>${sakai.jsf.version}</version>
<version>${sakai.version}</version>
<classifier>jsf2</classifier>
<exclusions>
<exclusion>
Expand All @@ -98,7 +94,7 @@
<dependency>
<groupId>org.sakaiproject.jsf</groupId>
<artifactId>jsf-widgets-sun-depend</artifactId>
<version>${sakai.jsf.version}</version>
<version>${sakai.version}</version>
<type>pom</type>
<exclusions>
<exclusion>
Expand Down Expand Up @@ -182,7 +178,7 @@
</dependencies>

<build>
<finalName>kickroster</finalName>
<finalName>kickroster-classic</finalName>
<sourceDirectory>${basedir}/src/main/java</sourceDirectory>
<resources>
<resource>
Expand Down
53 changes: 43 additions & 10 deletions kickroster-classic/src/main/java/demo/RosterBean.java
Original file line number Diff line number Diff line change
Expand Up @@ -2,23 +2,24 @@

import java.util.ArrayList;
import java.util.Collection;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Set;

import javax.faces.application.FacesMessage;
import javax.faces.context.FacesContext;
import javax.faces.event.ActionEvent;
import javax.faces.model.SelectItem;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.richfaces.model.selection.Selection;
import org.sakaiproject.api.app.roster.Participant;
import org.sakaiproject.api.app.roster.RosterManager;
import org.sakaiproject.authz.api.Member;
import org.sakaiproject.exception.IdUnusedException;
import org.sakaiproject.site.api.Group;
import org.sakaiproject.site.api.Site;
import org.sakaiproject.site.api.SiteService;
import org.sakaiproject.tool.api.ToolManager;
import org.sakaiproject.user.api.User;
import org.sakaiproject.user.api.UserDirectoryService;

public class RosterBean {

Expand All @@ -32,23 +33,41 @@ public class RosterBean {
private Selection selection;

/* Sakai Services */
protected RosterManager rosterManager;
protected SiteService siteService;
protected ToolManager toolManager;
protected UserDirectoryService userDirectoryService;

private SelectItem[] roleOptions = new SelectItem[]{new SelectItem("","Select"),new SelectItem("access","access"),new SelectItem("maintain","maintain"),new SelectItem("Instructor","Instructor"),new SelectItem("Student","Student")};

public String getGroup() { return group; }
public void setGroup(String group) { this.group = group; }

public void setRosterManager(RosterManager rosterManager) { this.rosterManager = rosterManager; }
public void setUserDirectoryService(UserDirectoryService userDirectoryService) { this.userDirectoryService = userDirectoryService; }
public void setSiteService(SiteService siteService) { this.siteService = siteService; }
public void setToolManager(ToolManager toolManager) { this.toolManager = toolManager; }

public List<Participant> getDataModel() {
List<Participant> list = new ArrayList<Participant>();
if (rosterManager!=null) list = group==null||group.equals("-")?rosterManager.getRoster():rosterManager.getRoster(group);
return list;
List<Participant> users = new ArrayList<Participant>();
try {
Site currentSite = siteService.getSite(toolManager.getCurrentPlacement().getContext());
if (group==null||group.equals("-")) {
Collection<Member> currentMembers = currentSite.getMembers();
for (Member m:currentMembers) {
users.add(new Participant(userDirectoryService.getUser(m.getUserId()),m.getRole().getId(),""));
}
} else {
Set<String> groups = new HashSet<String>();
groups.add(group);
Collection<String> members = currentSite.getMembersInGroups(groups);
for (String m:members) {
Member member = currentSite.getMember(m);
users.add(new Participant(userDirectoryService.getUser(m),member.getRole().getId(),group));
}
}
} catch (Exception ex) {
log.error("Error getting members.");
}
return users;
}

public List<SelectItem> getGroupOptions() {
Expand Down Expand Up @@ -93,5 +112,19 @@ public List<Participant> getSelectedItems() {
public SelectItem[] getRoleOptions() {
return roleOptions;
}

class Participant {

public User user;
public String roleTitle;
public String groupsString;

public Participant(User user, String roleTitle, String groupsString) {
this.user = user;
this.roleTitle = roleTitle;
this.groupsString = groupsString;
}

}

}
8 changes: 4 additions & 4 deletions kickroster-classic/src/webapp/WEB-INF/faces-config.xml
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,6 @@
<managed-bean-name>rosterBean</managed-bean-name>
<managed-bean-class>demo.RosterBean</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
<managed-property>
<property-name>rosterManager</property-name>
<value>#{LocalRosterManager}</value>
</managed-property>
<managed-property>
<property-name>toolManager</property-name>
<value>#{LocalToolManager}</value>
Expand All @@ -29,6 +25,10 @@
<property-name>siteService</property-name>
<value>#{LocalSiteService}</value>
</managed-property>
<managed-property>
<property-name>userDirectoryService</property-name>
<value>#{LocalUserDirectoryService}</value>
</managed-property>
</managed-bean>
<navigation-rule>
<from-view-id>/pages/pflist.xhtml</from-view-id>
Expand Down
2 changes: 1 addition & 1 deletion kickroster-classic/src/webapp/WEB-INF/local.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@

<alias name="org.sakaiproject.tool.api.ToolManager" alias="LocalToolManager"/>
<alias name="org.sakaiproject.site.api.SiteService" alias="LocalSiteService"/>
<alias name="org.sakaiproject.api.app.roster.RosterManager" alias="LocalRosterManager"/>
<alias name="org.sakaiproject.user.api.UserDirectoryService" alias="LocalUserDirectoryService"/>

</beans>

7 changes: 2 additions & 5 deletions kickroster-classic/src/webapp/WEB-INF/web.xml
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@
</filter-mapping>
<!-- Sakai JSF Tool -->
<servlet>
<servlet-name>sakai.kickroster</servlet-name>
<servlet-name>sakai.kickroster.classic</servlet-name>
<servlet-class>org.sakaiproject.jsf.util.JsfTool</servlet-class>
<init-param>
<param-name>default</param-name>
Expand Down Expand Up @@ -111,9 +111,6 @@
</servlet-mapping>
<!-- Sakai Listeners -->
<listener>
<listener-class>org.sakaiproject.util.ToolListener</listener-class>
</listener>
<listener>
<listener-class>org.sakaiproject.util.ContextLoaderListener</listener-class>
<listener-class>org.sakaiproject.util.SakaiContextLoaderListener</listener-class>
</listener>
</web-app>
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@
<registration>

<tool
id="sakai.kickroster"
title="KickRoster"
id="sakai.kickroster.classic"
title="KickRoster Classic"
description="JSF1.2 Application">
<category name="project" />
<category name="course" />
Expand Down
5 changes: 5 additions & 0 deletions kickroster-prime/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
/target/
/.metadata/
/.settings/
/.classpath
/.project
12 changes: 4 additions & 8 deletions kickroster-prime/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -82,10 +82,6 @@
<groupId>org.sakaiproject.kernel</groupId>
<artifactId>sakai-component-manager</artifactId>
</dependency>
<dependency>
<groupId>org.sakaiproject</groupId>
<artifactId>sakai-roster-api</artifactId>
</dependency>
<dependency>
<groupId>javax.faces</groupId>
<artifactId>javax.faces-api</artifactId>
Expand Down Expand Up @@ -127,7 +123,7 @@
<dependency>
<groupId>org.sakaiproject.jsf</groupId>
<artifactId>jsf-app</artifactId>
<version>${sakai.jsf.version}</version>
<version>${sakai.version}</version>
<classifier>jsf2</classifier>
<exclusions>
<exclusion>
Expand All @@ -147,7 +143,7 @@
<dependency>
<groupId>org.sakaiproject.jsf</groupId>
<artifactId>jsf-tool</artifactId>
<version>${sakai.jsf.version}</version>
<version>${sakai.version}</version>
<exclusions>
<exclusion>
<groupId>commons-codec</groupId>
Expand All @@ -158,7 +154,7 @@
<dependency>
<groupId>org.sakaiproject.jsf</groupId>
<artifactId>jsf-widgets-sun-depend</artifactId>
<version>${sakai.jsf.version}</version>
<version>${sakai.version}</version>
<type>pom</type>
<exclusions>
<exclusion>
Expand All @@ -179,7 +175,7 @@
</dependencies>

<build>
<finalName>kickroster3</finalName>
<finalName>kickroster-prime</finalName>
<sourceDirectory>${basedir}/src/main/java</sourceDirectory>
<resources>
<resource>
Expand Down
50 changes: 43 additions & 7 deletions kickroster-prime/src/main/java/demo/RosterBean.java
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,9 @@

import java.util.ArrayList;
import java.util.Collection;
import java.util.HashSet;
import java.util.List;
import java.util.Set;

import javax.faces.application.FacesMessage;
import javax.faces.context.FacesContext;
Expand All @@ -11,12 +13,14 @@

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.sakaiproject.api.app.roster.Participant;
import org.sakaiproject.api.app.roster.RosterManager;
import org.sakaiproject.authz.api.Member;
import org.sakaiproject.exception.IdUnusedException;
import org.sakaiproject.site.api.Group;
import org.sakaiproject.site.api.Site;
import org.sakaiproject.site.api.SiteService;
import org.sakaiproject.tool.api.ToolManager;
import org.sakaiproject.user.api.User;
import org.sakaiproject.user.api.UserDirectoryService;

public class RosterBean {

Expand All @@ -26,8 +30,8 @@ public class RosterBean {
public String getGroup() { return group; }
public void setGroup(String group) { this.group = group; }

protected RosterManager rosterManager;
public void setRosterManager(RosterManager rosterManager) { this.rosterManager = rosterManager; }
protected UserDirectoryService userDirectoryService;
public void setUserDirectoryService(UserDirectoryService userDirectoryService) { this.userDirectoryService = userDirectoryService; }

protected SiteService siteService;
public void setSiteService(SiteService siteService) { this.siteService = siteService; }
Expand All @@ -36,9 +40,27 @@ public class RosterBean {
public void setToolManager(ToolManager toolManager) { this.toolManager = toolManager; }

public List<Participant> getDataModel() {
List<Participant> list = new ArrayList<Participant>();
if (rosterManager!=null) list = group==null||group.equals("-")?rosterManager.getRoster():rosterManager.getRoster(group);
return list;
List<Participant> users = new ArrayList<Participant>();
try {
Site currentSite = siteService.getSite(toolManager.getCurrentPlacement().getContext());
if (group==null||group.equals("-")) {
Collection<Member> currentMembers = currentSite.getMembers();
for (Member m:currentMembers) {
users.add(new Participant(userDirectoryService.getUser(m.getUserId()),m.getRole().getId(),""));
}
} else {
Set<String> groups = new HashSet<String>();
groups.add(group);
Collection<String> members = currentSite.getMembersInGroups(groups);
for (String m:members) {
Member member = currentSite.getMember(m);
users.add(new Participant(userDirectoryService.getUser(m),member.getRole().getId(),group));
}
}
} catch (Exception ex) {
log.error("Error getting members.");
}
return users;
}

public List<SelectItem> getGroupOptions() {
Expand All @@ -64,4 +86,18 @@ public void save(ActionEvent actionEvent) {
context.addMessage(null, new FacesMessage("Second Message", "Additional Info Here..."));
}

class Participant {

public User user;
public String roleTitle;
public String groupsString;

public Participant(User user, String roleTitle, String groupsString) {
this.user = user;
this.roleTitle = roleTitle;
this.groupsString = groupsString;
}

}

}
4 changes: 2 additions & 2 deletions kickroster-prime/src/webapp/WEB-INF/faces-config.xml
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,8 @@
<managed-bean-class>demo.RosterBean</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
<managed-property>
<property-name>rosterManager</property-name>
<value>#{LocalRosterManager}</value>
<property-name>userDirectoryService</property-name>
<value>#{LocalUserDirectoryService}</value>
</managed-property>
<managed-property>
<property-name>toolManager</property-name>
Expand Down
2 changes: 1 addition & 1 deletion kickroster-prime/src/webapp/WEB-INF/local.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@

<alias name="org.sakaiproject.tool.api.ToolManager" alias="LocalToolManager"/>
<alias name="org.sakaiproject.site.api.SiteService" alias="LocalSiteService"/>
<alias name="org.sakaiproject.api.app.roster.RosterManager" alias="LocalRosterManager"/>
<alias name="org.sakaiproject.user.api.UserDirectoryService" alias="LocalUserDirectoryService"/>

</beans>

Loading

0 comments on commit c9433ff

Please sign in to comment.