AJAX Dialog Forms: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
| Line 39: | Line 39: | ||
The text displayed as the title of the dialog is passed back as the value of <code>$json->label->value</code>. | The text displayed as the title of the dialog is passed back as the value of <code>$json->label->value</code>. | ||
==Editing records== | |||
===Overview=== | |||
* Specify handler with Sections CMS > Edit URI setting | |||
* Create an include file containing the form markup and place it in <code>_templates/forms/</code> in the content type's CMS directory. | |||
* Add the content type of the <code>cache_class</code>. | |||
* Update necessary <code>cache_class</code> routines. | |||
===Generic AJAX handler script=== | |||
* <code>[COMMON_LIB]_ajax/utils/edit_record.php</code> | |||
* Specify handler with Sections CMS > Edit URI setting | |||
* Define handler in <code>cache_class::load_json_content()</code> | |||
** Include the content type and optionally its corresponding filter class. | |||
** Within the <code>load_json_content()<code> routine create a case for the content type and the 'edit' operation. | |||
** Define any necessary logic in the content class's <code>save()</code> routine. | |||
[[Category:CMS Documentation]] | [[Category:CMS Documentation]] | ||
[[Category:JQuery/AJAX]] | [[Category:JQuery/AJAX]] | ||
Revision as of 13:03, 21 May 2012
TODO
Document all the components necessary to create a popup dialog using JQueryUI.
Form Markup Requirements
Create separate PHP include file containing the markup for the FORM element that will be inserted into the dialog.
FORM element
Has no parent DIV element.
id="dialog-edit-form"
<form id="dialog-edit-form"> </form>
Contains hidden input storing action property, and optionally record id and content type id.
<input type="hidden" name="<?=P_COMMIT?>" value="1" /> <input type="hidden" name="<?=$input->id->param?>" value="<?=$input->id->value?>" /> <input type="hidden" name="<?=$input->site_section->id->param?>" value="<?=$input->site_section->id->value?>" />
Submit buttons. JavaScript handlers will be assigned to the buttons after the FORM element has been added to the DOM.
data-tidattribute stores the content type value if it's needed by the JavaScript callback for the button.data-opattribute stores the operation when usingLITTLED.dialogEdit()or a similar callback for the button.
<div class="submit-container"> <a href="javascript:void(0)" class="dlg-commit-btn" data-tid="<?=$input->site_section->id->value?>" data-op="delete">delete</a> <a href="javascript:void(0)" class="dlg-cancel-btn">cancel</a> </div>
AJAX Handler Script
The text displayed as the title of the dialog is passed back as the value of $json->label->value.
Editing records
Overview
- Specify handler with Sections CMS > Edit URI setting
- Create an include file containing the form markup and place it in
_templates/forms/in the content type's CMS directory. - Add the content type of the
cache_class. - Update necessary
cache_classroutines.
Generic AJAX handler script
[COMMON_LIB]_ajax/utils/edit_record.php- Specify handler with Sections CMS > Edit URI setting
- Define handler in
cache_class::load_json_content()- Include the content type and optionally its corresponding filter class.
- Within the
load_json_content()routine create a case for the content type and the 'edit' operation. - Define any necessary logic in the content class's
save()routine.