In Chapter 3, Internal Interfaces, we investigated core Moodle application programming interfaces--that is, libraries of functions provided to developers that ensure third-party plugins interface with Moodle in a coherent and consistent way. In this chapter, we will be
developing plugins to enhance course layout and structure. We will be focusing on three different types of course plugin:
- Course formats
- Blocks
- Text filters
Developing these plugin types will allow us to further explore Moodle's internal APIs--and allows us to see just how plugins can be used to alter Moodle's default behavior.
By the end of this chapter, you will have done the following:
- Developed a new course format that will reveal activities depending on your GPS location
- Investigated the intricacies of Moodle's file handling API (the File API) by
developing a novel QR Code...