org.olat.modules.fo
Class ForumController

java.lang.Object
  extended by org.olat.core.gui.control.DefaultController
      extended by org.olat.core.gui.control.controller.BasicController
          extended by org.olat.modules.fo.ForumController
All Implemented Interfaces:
Controller, ControllerEventListener, Disposable, GenericEventListener

public class ForumController
extends BasicController
implements GenericEventListener

Description:
CREATE: - new thread (topmessage) -> ask ForumCallback 'mayOpenNewThread' - new message -> ask ForumCallback 'mayReplyMessage'
READ: - everybody may read every message
UPDATE: - who wrote a message may edit and save his message as long as it has no children. - if somebody want to edit a message of somebodyelse -> ask ForumCallback 'mayEditMessageAsModerator'
DELETE: - who wrote a message may delete his message as long as it has no children. - if somebody want to delete a message of somebodyelse -> ask ForumCallback 'mayDeleteMessageAsModerator'

Notifications: notified when:
a new thread is opened
a new reply is given
a message has been edited
but not when a message has been deleted

Author:
Felix Jost, Refactorings: Roman Haag, roman.haag@frentix.com, frentix GmbH

Method Summary
 void event(Event event)
           
 void event(UserRequest ureq, Component source, Event event)
          abstract event method for subclasses.
 void event(UserRequest ureq, Controller source, Event event)
          the only method of the interface controllereventlistener.
 java.lang.String renderFileIconCssClass(java.lang.String filename)
          [used by velocity in vcThreadView.contextPut("myself", this);]
 
Methods inherited from class org.olat.core.gui.control.DefaultController
addControllerListener, addLoggingResourceable, dispatchEvent, dispatchEvent, dispose, getControllerCount, getInitialComponent, getUserActivityLogger, getWindowControlForDebug, isDisposed, toString
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Method Detail

event

public void event(UserRequest ureq,
                  Component source,
                  Event event)
Description copied from class: DefaultController
abstract event method for subclasses. the event received from the component we are listening to are always rerouted to this method here, except when the component has been disposed, in which case the events are simply ignored.

See Also:
DefaultController.event(org.olat.core.gui.UserRequest, org.olat.core.gui.components.Component, org.olat.core.gui.control.Event)

event

public void event(UserRequest ureq,
                  Controller source,
                  Event event)
Description copied from class: DefaultController
the only method of the interface controllereventlistener. always gets called when a controller we 'subscribed' to fires an event. we provide a default implementation here since there are many controllers which are standalone and need no subcontrollers

See Also:
DefaultController.event(org.olat.core.gui.UserRequest, org.olat.core.gui.control.Controller, org.olat.core.gui.control.Event)

event

public void event(Event event)
Specified by:
event in interface GenericEventListener
See Also:
GenericEventListener.event(org.olat.core.gui.control.Event)

renderFileIconCssClass

public java.lang.String renderFileIconCssClass(java.lang.String filename)
[used by velocity in vcThreadView.contextPut("myself", this);]

Parameters:
filename -
Returns:
css class that has a background icon for the given filename