Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3

...

The Course Schedule Portlet currently resides in the JASIG sandbox. The default configuration is setup with mock implementations of
the portlet's data access objects - no configuration changes are needed to try it out in your environment.

Screenshots

List View:
Image Modified

Grid View:
Image Modified

Source

The source can be obtained from the JASIG subversion repository:

...

  • org.jasig.portlet.courseschedule.service.ICourseMeetingDao provides CourseMeetings for the authenticated user and their selected year/season
  • org.jasig.portlet.courseschedule.service.ISemesterDao provides the "current" Semester and a list of "visible" semesters the visitor may choose from

Customization

The Course Schedule Portlet is best extended by creating an "overlay" portlet project that depends on the CourseSchedulePortlet.

  1. Start by creating a new Maven portlet project.
  2. In the dependencies section of your pom.xml, add the CourseSchedulePortlet in the following fashion:
    Code Block
    
    <dependency>
      <groupId>org.jasig.portlet.courseschedule</groupId>
      <artifactId>CourseSchedulePortlet</artifactId>
      <version>1.0.0-M1</version>
      <classifier>classes</classifier>
      <type>jar</type>
    </dependency>
    <dependency>
      <groupId>org.jasig.portlet.courseschedule</groupId>
      <artifactId>CourseSchedulePortlet</artifactId>
      <type>war</type>
      <scope>runtime</scope>
      <version>1.0.0-M1</version>
    </dependency>
    
  3. In the build section of your pom.xml, add the maven-war-plugin:
    Code Block
    
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-war-plugin</artifactId>
      <configuration>
        <overlays>
          <overlay>
            <groupId>org.jasig.portlet.courseschedule</groupId>
            <artifactId>CourseSchedulePortlet</artifactId>
          </overlay>
        </overlays>
      </configuration>
    </plugin>
    

The code in your new project now will be laid over the top of the CourseSchedulePortlet when you run the maven package command.

It is likely that your university will model course data differently. The best way to integrate your curricular data is to take the following steps:

  1. Implement an ISemesterDao based on your Academic Calendar.
  2. Implement an ICourseMeetingDao that is backed with your SPIs for retrieving curricular data. This implementation will focus on translating a "Course Meeting" in your data model to a CourseSchedulePortlet's CourseMeeting object.

...