Table of Contents
Preface
Chapter 1: Combining Moodle and JavaScript
Chapter 2: Moodle and Yahoo! User Interface Library (YUI)
Chapter 3: Moodle Forms Validation
Chapter 4: Manipulating Data with YUI 3
Chapter 5: Working with Data Tables
Chapter 6: Enhancing Page Elements
Chapter 7: Advanced Layout Techniques
Chapter 8: Animating Components
Chapter 9: Integrating External Libraries
Index
- Chapter 1: Combining Moodle and JavaScript
- Introduction
- Creating a new Moodle PHP page
- Loading a JavaScript file
- Loading a JavaScript file in <head>
- Generating a JavaScript function call from PHP
- Passing variables from PHP to JavaScript
- Ensuring compliance with XHTML Strict
- Retrieving language strings from Moodle
- Chapter 2: Moodle and Yahoo! User Interface Library (YUI)
- Introduction
- Initializing the YUI 3 library
- Loading additional YUI modules
- Loading YUI 2 modules from YUI 3
- Attaching basic event handlers
- Attaching advanced DOM event handlers
- Implementing event delegation
- Debugging with the YUI console
- Chapter 3: Moodle Forms Validation
- Introduction
- Adding a required field
- Adding a field with a maximum length
- Adding a field with a minimum length
- Adding a field length within in a specified range
- Adding a valid e-mail address field
- Adding custom validation with a Regular Expression
- Adding a field that accepts only alphabetic characters
- Adding a field that accepts only alphanumeric characters
- Adding a field that accepts only numeric characters
- Rejecting punctuation characters
- Rejecting input without a leading zero
- Comparing with another field
- Adding a custom JavaScript validation function callback
- Chapter 4: Manipulating Data with YUI 3
- Introduction
- Using IO to request a URI
- Using IO's alternative transport method for requesting external URIs
- Using PHP as a proxy to load data from an external domain
- Parsing XML with DataSource
- Parsing JSON with DataSource
- Parsing CSV data with DataSource
- Retrieving data from a Moodle 2.0 web service
- Chapter 5: Working with Data Tables
- Introduction
- Initializing a YUI DataSource
- Displaying data
- Basic column sorting
- Adding paging
- Enabling scrolling
- Enabling editing
- Chapter 6: Enhancing Page Elements
- Introduction
- Adding a text box with auto-complete
- Adding a combo box with auto-complete
- Displaying auto-updating data
- Enabling resizable elements
- Adding custom tooltips
- Adding custom button controls
- Chapter 7: Advanced Layout Techniques
- Introduction
- Adding a fly-out navigation menu
- Adding a drop-down navigation menu
- Displaying a tree-view navigation menu
- Adding a tabbed content control
- Displaying content in a modal window
- Chapter 8: Animating Components
- Introduction
- Fading in an element
- Fading out an element
- Scrolling an element
- Resizing an element
- Animating with easing
- Moving an element along a straight path
- Moving an element along a curved path
- Changing an element's color
- Sequencing multiple animations
- Chapter 9: Integrating External Libraries
- Introduction
- Adding the jQuery framework
- Adding the MooTools framework
- Adding the Dojo framework
- Adding the Prototype framework
- Adding the script.aculo.us add-on to Prototype
- Adding image enlargement with Lightbox 2