Need help with the understanding of openOlat

39 views
Skip to first unread message

alexander...@googlemail.com

unread,
Jan 22, 2015, 5:19:55 AM1/22/15
to open...@googlegroups.com
Hello community,

we are some students in an University of Applied Science and we have to develop a small feature for an course.

We have some trouble with the main understanding of "How does openOlat work".

We have at first 2 questions:

1. We need to extand the group view. Can you help us and give us some information where we should take a look in the classes? We also need to unfold from all group entries the assigned group members. Can you also tell us pls where we can do this step?

2. In the course editor -> tab: visibility: We need to extend the simple and expert mode. Can you tell us please where we can find the trigger classes for e.g. "onClick"-operations. The idea is that we have to update the code that the changes from the expert mode will assgined also to the simple mode (which doesnt work right now for us)

Thank you a lot.


visibility.PNG
visibility_expert mode.PNG
Bildschirmfoto3_2.png

Florian Gnägi

unread,
Feb 5, 2015, 5:47:00 AM2/5/15
to open...@googlegroups.com
Hi Alexander

we are some students in an University of Applied Science and we have to develop a small feature for an course.

We have some trouble with the main understanding of "How does openOlat work”.

Best is to use the debugger and step through the events when you click in OpenOLAT. 

First, the clicks will be routed to a Component by the AuthenticatedDispatcher.execute(). The component does whatever it has to do in the UI and normally fires an event to the Controller which is listening to the component. The controller does whatever it has to do with the UI model, creates new Controllers, adds componentes and controller views to velocity Containers and might fire some controller events to its listeners. 

Once all this dispatching phase is finished, the current window (which is a component/container) is told to draw itself. This will recursively traverse the component hierarchy and all dirty components are found. Normally, only the dirty components are redrawn. This means that html is generated which is packed to a JSON file which is sent to the browser which then does DOM replacmeents. This is the OpenOLAT AJAX mode. In some cases the request will render the entire page and not just some elements, we call this a full-page-refresh. 

To find out the details you have to dig into the code and use the debugger to step through. 

We have at first 2 questions:

1. We need to extand the group view. Can you help us and give us some information where we should take a look in the classes? We also need to unfold from all group entries the assigned group members. Can you also tell us pls where we can do this step?

The groups UI is found in the org.olat.group.ui package.
See BusinessGroupServiceImpl.getMembers() to get the members of a specific group. Search for references of BusinessGroupService to learn more about how to use the group service.

2. In the course editor -> tab: visibility: We need to extend the simple and expert mode. Can you tell us please where we can find the trigger classes for e.g. "onClick"-operations. The idea is that we have to update the code that the changes from the expert mode will assgined also to the simple mode (which doesnt work right now for us)

This will be tricky. In the expert mode you can define all kind of things not possible in the easy mode. But anyway, you will find that out yourself ;-)
Have a look at the ConditionEditController. This is where the easy and expert mode is managed. 

Cheers
Florian


----------------------------------------------------------
professional services for the e-learning system OpenOLAT
 hosting - operating - support - development - consulting
----------------------------------------------------------

frentix  GmbH
Florian Gnägi, Geschäftsführer
Hardturmstrasse 76
CH-8005 Zürich, Switzerland

skype:gnaegi  twitter:gnaegi  xing:Florian_Gnaegi 
----------------------------------------------------------




Reply all
Reply to author
Forward
0 new messages