Book Image

Moodle 3.x Developer's Guide

By : Ian Wild, Jaswant Tak
Book Image

Moodle 3.x Developer's Guide

By: Ian Wild, Jaswant Tak

Overview of this book

The new and revamped Moodle is the top choice for developers to create cutting edge e-learning apps that cater to different user’s segments and are visually appealing as well. This book explains how the Moodle 3.x platform provides a framework that allows developers to create a customized e-learning solution. It begins with an exploration of the different types of plugin.. We then continue with an investigation of creating new courses. You will create a custom plugin that pulls in resources from a third-party repository. Then you’ll learn how users can be assigned to courses and granted the necessary permissions. Furthermore, you will develop a custom user home. At the end of the book, we’ll discuss the Web Services API to fully automate Moodle 3.x in real time.
Table of Contents (19 chapters)
Title Page
Credits
About the Author
Acknowledgments
About the Reviewer
www.PacktPub.com
Customer Feedback
Dedication
Preface
6
Managing Users - Letting in the Crowds

Templates


So far, we have been building HTML in renderer functions. Generating pages in this way is great for the developer but it can make life harder for the theme designer. Renderers can contain lots of logic that the theme designer wouldn't necessarily be interested in and this can make developing new formats much more difficult. Templates provide much better separation between the presentation layer and the business layer, which we shall see in this section.

Let us revisit the Courses information block description page. Recall that this displays an overview of the course:

This page is generated by the get_overview() function implemented in renderer.php. Let us re-implement this page so that it uses a Mustache template.

Mustache

This section only gives a very brief overview of Moodle templates. The templating technology employed is called Mustache (pronounced moo-stash not moo-starsh... and definitely not moo-stosh). For more details on Moodle's use of Mustache, check out the Moodle developer...