OLAT

Developer Documentation

MELS - Multimedia & E-Learning Services, University of Zurich, Switzerland

Table of Contents

Preface
1. How to setup OLAT in the Eclipse - MySQL - Tomcat environment
1.1. Software and Configuration
1.2. OLAT source code
1.3. Setup your OLAT Database
1.4. Configure OLAT
1.5. Last step, Run OLAT
1.6. Optional: Use olatcore source code instead of precompiled jar-file
2. The OLAT LMS implementation concepts
2.1. Interaction design
Overview
Principle
Guidelines for interactive elements
2.2. User management
System roles and rights
Authentication providers
2.3. Resources and repository
Types and repositoryhandlers
Workflows
2.4. Resource Course
Course structure and course building blocks
Course run, User course session, Course environment
Editor - publish - run
Configuration
Visibility and accessability rules
Assessment and scoring
Groups - areas - roles - rights
Activity logging and tracking
2.5. Resource IMS QTI
Editor
Runtime
Results
Disabling of collaboration tools
2.6. Groups
System roles versus resource owners versus business groups
Generic business group and Grouptypes
Groupcontext
Areas
Rights
Group type based localization
Collaboration tools
IM roster synchronization
2.7. Shibboleth
Registration
Attributes
Authentication Providers
2.8. Home
Settings
Portal and portlets
Personal folder
User visiting card
2.9. Other elements
SCORM 1.2
Folders and WebDAV
Direct jumps and state activation
Context sensitive and comprehensive help
GUI preferences
3. OLAT development framework overview
3.1. Architectural overview
Introduction
System boundaries
Programming concept
Component based
Separation of logic and layout
Event dispatching
OLAT Web 2.0 Ajax mode
Ease of developing and debugging
Authentication and Authorization
GUI demo: Grafical elements in action
Proper usage of escaping in velocity pages
3.2. Application Layers
Responsibilities of the layers in short
3.3. Easily extending OLAT (How to write your own code for OLAT)
Extend OLAT using Eclipse
The extension concept
How to add a new site/menuitem
3.4. Elements explained
Controllers
Managers
i18n
Mappers
Properties
db
3.5. The util package
3.6. OLAT Clustering and Scalability Concepts
Syncer
Locker
Cacher
EventBus
Example usages of the tools
Things to avoid
Hints and cookbooks for the four „tools“
3.7. Going deeper into OLAT development
3.8. Reusable components and controller library
TextComponent and TextFactory
4. OLAT software license
5. Version Control and Branching
5.1. Feature branch
5.2. Release branch
6. Contact, mailinglists and support
6.1. Mailinglists
6.2. Support

List of Figures

2.1. How the repository looks.
2.2. The actions on the repository.
2.3. How the repository looks.
3.1. Select Debug Mode
3.2. GUI debug stack
3.3. GUI debug listeners box
3.4. Red screen of an unchecked exception.
3.5. creating a new instance of a buddygroup

List of Tables

2.1. Repository file validating classes, suffixes and handlers
3.1. Extension points
3.2. Multi User Events
3.3.
3.4.