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

Connecting to an XML-RPC API


As with PHP, the C# language provides a huge number of libraries--both proprietary and third-party--that provide everything from basic string handling to image manipulation. To connect to the XML-RPC API in Moodle, we will use the XML-RPC library developed by Charles Cook--check out http://cookcomputing.com/blog/index.html for details. The component we need is CookComputing.XmlRpcV2.dll. To install this component, download the relevant DLL, and in the Solution Explorer, right-click on References and select the Add Reference... option:

Browse to locate the DLL and follow the instructions to import it. A new reference to CookComputing.XmlRpcV2 will be added to the project:

Go back to the application's Windows form and double-click on the button. This will add a new method to harness.cs to support the button click event. This is where we will need to add our event handler code, including taking the time window and learner email information from the form and then calling...