(New form element) |
m (Titles) |
||
Line 1: | Line 1: | ||
==Edit form template== | |||
{| class="nicetable" | {| class="nicetable" | ||
|+ Form | |+ Form template | ||
|- | |- | ||
!width="50%"|Type A | !width="50%"|Type A | ||
!width="50%"|Type B | !width="50%"|Type B | ||
|- | |- | ||
| <code | | | ||
| <code xml> | |||
{{! | |||
@template mod_lesson/page_editor | |||
}} | |||
<div class="mod_lesson_page_editor"> | |||
<form action=""> | |||
<h3>Edit this {{lessonpagetype}} </h3> | |||
{{#title}} | |||
{{>core/form-element-text}} | |||
{{/title}} | |||
<div>Page Content</div> | |||
{{#select}} | |||
{{>core/form-element-select}} | |||
{{/select}} | |||
< | <div> | ||
<button type="button" id="mod_lesson_editor_save_btn">Save</button> | |||
<button type="button" id="mod_lesson_editor_cancel_btn">Cancel</button> | |||
</div> | |||
</form> | |||
</div> | |||
</code> | </code> | ||
|} | |} | ||
==Form data compilation for displaying== | |||
{| class="nicetable" | {| class="nicetable" | ||
|+ Form data compilation for display | |+ Form data compilation for display | ||
Line 130: | Line 116: | ||
|} | |} | ||
==Saving a form== | |||
{| class="nicetable" | |||
|+ Form saving | |||
|- | |||
!width="50%"|Type A | |||
!width="50%"|Type B | |||
|- | |||
| <code javascript> | |||
save_edit_form: function(formobject) { | |||
// Perhaps this could all be included in a save method for the form. | |||
var formdata = formfactory.getFormData(); | |||
formdata["lessonid"] = lesson.id; | |||
formdata["pageid"] = this.id; | |||
delete formdata["Jump_1"]; | |||
var promises = ajax.call([{ | |||
methodname: 'mod_lesson_add_page', | |||
args: formdata | |||
}]); | |||
$.when.apply($.when, promises).then(function(response) { | |||
if (response.warnings.length != "0") { | |||
formobject.handleErrors(response.warnings); | |||
} | |||
}); | |||
</code> | |||
| <code javascript> | |||
save_edit_form: function(formobject) { | |||
// Perhaps this could all be included in a save method for the form. | |||
var formdata = formfactory.getFormData(); | |||
formdata["lessonid"] = lesson.id; | |||
formdata["pageid"] = this.id; | |||
delete formdata["Jump_1"]; | |||
var promises = ajax.call([{ | |||
methodname: 'mod_lesson_add_page', | |||
args: formdata | |||
}]); | |||
$.when.apply($.when, promises).then(function(response) { | |||
if (response.warnings.length != "0") { | |||
formfactory.handleErrors(response.warnings, formobject); | |||
} | |||
}); | |||
</code> | |||
|} | |||
==New form elements== | |||
{| class="nicetable" | {| class="nicetable" | ||
|+ New form elements | |+ New form elements | ||
Line 243: | Line 279: | ||
</code> | </code> | ||
==Form library and helper functions== | |||
{| class="nicetable" | {| class="nicetable" |
Revision as of 01:39, 26 November 2015
Edit form template
Type A | Type B |
---|---|
|
Form data compilation for displaying
Type A | Type B |
---|---|
|
|
Saving a form
Type A | Type B |
---|---|
|
|
New form elements
Type A | Type B |
---|---|
|
Template for a select element
Same for both.
<label {{#hiddenLabel}}class="accesshide"Adrian Greeve/form comparison/hiddenLabel for="Template:id">
Template:label
{{#required}}{{>core/form-required}}Adrian Greeve/form comparison/required
{{#advanced}}{{>core/form-advanced}}Adrian Greeve/form comparison/advanced
</label>
{{{helpButton}}}
{{#error}}
{{{error}}}
Adrian Greeve/form comparison/error
<select name="Template:name" id="Template:id" {{#required}}requiredAdrian Greeve/form comparison/required {{#size}}size="Template:size"Adrian Greeve/form comparison/size>
{{#options}}
<option value="Template:value" {{#selected}}selectedAdrian Greeve/form comparison/selected>Template:text</option>
Adrian Greeve/form comparison/options
</select>
Form library and helper functions
Type A | Type B |
---|---|
|
|