CONTRIB-4878: url escape mailto links
Merge pull request #12 from carleton/CONTRIB-4878

CONTRIB-4878: url escape mailto links
fixing regression caused by CONTRIB-4865
format lang tags in file name
Scheduler - Fixes bugs, typos, issues relating to language support and WCAG 2.0 compliance.

Changes include:

Replaced a box_start() with a paragraph tag because:
1) The box wasn't being displayed - functon needs to be echo'd.
2) Wasn't using the correct parameters for the API call.

Also moved the box below the Slots heading in order to comply with WCAG 2.0 Success criteria 1.3.1 - Information and relationships.

Removed <center> and </center> tags as these are deprecated. Also added a table.generaltable class in styles.css to set the table width to 99% thereby improving readability of the table whose information no longer has to wrap unnecessarily. It also makes it easier to read on mobile devices. I could have set this in the table object but this just adds a width to the table tag which has been deprecated. This was done for WCAG 2.0 Compliance.

Fixed the call to $OUTPUT->box($noslots...). It needed to be echo'd, and a newly created CSS class was added because you can't specify a width in the parameters to this function (third parameter is an ID, not a width). Also added a new class called path-mod-70 in styles.css to achieve the intended width formatting.

Added a title tag to each of the radio buttons in the Slots table in order to comply with WCAG 2.0 Success criteria 1.3.1 - Information and relationships.

Applied the format_string() function to the location in case a multi-language markup was used to specify the location.

Fixed the CSS classes passed to $OUTPUT->box_start('error') and added a paragraph tag around the text being displayed in the box to improve formatting of the message being displayed. I believe that this achieves the authors intended presentation. The result is that it is now also WCAG 2.0 compliant.

Wrapped "bold line" in the 'welcomebackstudent' definition in a set of strong tags and turned it to a link which takes the user directly to their booked appointment. This was done for WCAG 2.0 Compliance.

Added a new string definition called 'slotdescription' which is now applied as the title tag of each radio button in the Slots table. This was done for WCAG 2.0 Compliance.

Removed dependency on hard coded style which would not work if the background colour of the theme was also set to red. Also, the ‘red’ text on a white background does not meet WCAG 2.0 colour contrast ratio requirements.
- "<span style="color: red">" with "<span class="error">"

All instances of the <b> tag, whose purpose has changed, have been replaced with <strong>. This was done for WCAG 2.0 Compliance.

All instances of the <i> tag, which is deprecated, have been replaced with <em>. This was done for WCAG 2.0 Compliance.

Fixed some typos in English language file. This was done for WCAG 2.0 Compliance.

Removed all trailing spaces in lines and fixed some minor code formatting issues.

Note: Only WCAG 2.0 issues related the public facing pages fixed.

Affected files include:
- studentview.php
- studentview.controller.php
- lang/en/scheduler.php
- styles.css

Signed-off-by: Michael Milette <michael.milette@instruxmedia.com>
Adding model classes and unit tests
Merge branch 'models'
DB upgrade line for 2.7 version
CONTRIB-1761 Allow booking of multiple appointments

Merging changes by carleton (with some modifications)
Note: This is not yet functional - work in progress
Changes to scheduler mode settings
Introducing scheduler model class
Merge remote-tracking branch 'Michael-MiletteScheduler/scheduler-fixes-for-bugs-typos-langauge-support-and-wcag-2.0'

Due to conflicts, restricting to language file and CSS class
Removing teacher field
Fixing end-of-file PHP tags and whitespace issues
Enable multi-slot bookings
Replacing <b> and <i> tags, as suggested by Michael Milette
Refactoring the appointment edit form
CONTRIB-4969 add explicit creation of stdClass object
CONTRIB-4945 Avoid adding slots in course with no teacher
Refactoring the student booking screen