Posts made by Urs Hunkler

Picture of Core developers

By asking how can a solution look to circumvent the visual design restrictions in Moodle I worked on two solutions.

1. Templates

One nice solution with maximum flexibility for web/graphic designers is to add templates to Moodle. Templates enable designers to work in their design world with their design tools mostly without the need to involve developers.

So I implemented a template class in Moodle 1.9 as a prove of concept. With this template class I added two template engines: a RawPHP template engine and the PHPTAL engine. You may check the outcome at my lab.unodo-design.com site. This is a real and working Moodle 1.9 site showing how flexible you can implement very different page designs.

My posting about this implementation and the discussion with some Moodle developers you may read in The Future of Moodle Templates?.

In short Moodle developers state that it is not possible to implement themes in Moodle now. Many developers argue that Moodle does not even need templates at all. Most developers argue only from their developer point of view. They don't realize the huge advantage of templates for designers. But we designers are the ones who have the potential to implement great pages and interfaces. Moodle developers have proven to lack design competencies.

2. A few line hack in two scripts for Moodle 1.9

For a client project I started to implement a solution to be able to use sticky blocks on all Moodle pages. With this solution not only blocks on all Moodle pages but also positioning the side columns and content different from the actual page layout is possible. This project has been stopped before it was ready. But this concept may be 75% of the solution Nabha is looking for.

A short explanation of the approach

  1. Fetch the left and right column into a variable each.
  2. Fetch the content into a variable.
  3. Create a table-less page layout. (I used RawPHP templates)
  4. Output content for the header, the left column blocks, the right column blocks, the content area, the footer in the template.

You definitely can create pages as Patrick had sketched in his Good 1.9 themes posting where he writes "The first example that jumps to mind is the two-column theme with the third "column" of sideblocks at the bottom of the content just above the footer."

When there will be a budget to develop this approach ready and test it and enough support to convince Martin Dougiamas to implement this few changes in Moodle 1.9 we may be able to work a bit more flexible with Moodle than now.

The changes I have implemented in a way that they do not change standard Moodle behavior when not activated.

Picture of Core developers

With some interesting why questions I am preoccupied for some time now:

  1. Why do some Moodle developers tend to more and more ask why someone wants to design Moodle in a certain way instead of asking how Moodle developers can support/help to easily design Moodle in many different ways?
  2. Why does Moodle headquarter not employ a graphic/web designer to bring design competence into Moodle development? And to help Moodle developers understand visual design aspects.
  3. Why does Moodle still offer "the existing quite crappy" themes? Martin Dougiamas talked about replacing them in July 2007.
  4. Why do Moodle developers take the "crappy" and overly simple Moodle standard theme as their reference? Hardly anybody uses centered page layouts. The Moodle theme used for development must reflect the design complexity of real world Moodle pages and not lead the developers to believe the pages work in reality when they look ok in the Moodle standard theme.
  5. Why does the number of depreciated HTML tags in the latest Moodle versions increase? The goal was to remove all for a long time.
Picture of Core developers

To create a certain look and feel for Moodle can be thought in roughly three different complex ways:

  1. To change some colours and the Moodle header and footer is fairly easy with CSS and some basic web design skills.
  2. To create a distinct look to for example integrate Moodle smoothly into the online presence following the company/institution corporate design a designer quite experienced with Moodle will need some days. A novice might not be able to accomplish the goal within a reasonable budget.
  3. To fundamentally change the layout of the Moodle pages needs even more competences. You need a very experienced designer and an experienced Moodle developer. And a good update strategy to handle the necessary updates within a reasonable budget.
Average of ratings: Useful (1)
Picture of Core developers

Ah, now I see which way the wind is blowing. You simply deny me (the designer) the competence to talk seriously about development. That's easy and very successful.

Let's go back to business as usual.

PS. May be you change your mind a bit when you have seen in the book that the authors write about separating page logic and presentation with templates throughout the whole book.