From 809e738536b6639bb42ecae8eb1e183543fed93c Mon Sep 17 00:00:00 2001 From: Tim Almdal Date: Sun, 1 Nov 2009 13:14:11 -0800 Subject: Try an new approach to extending forms. Create an extend_form event. For the first attempt replace the comment_add_form and item_add_form events. --- modules/tag/helpers/tag_event.php | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) (limited to 'modules/tag/helpers') diff --git a/modules/tag/helpers/tag_event.php b/modules/tag/helpers/tag_event.php index 57986e40..cc134766 100644 --- a/modules/tag/helpers/tag_event.php +++ b/modules/tag/helpers/tag_event.php @@ -64,16 +64,20 @@ class tag_event_Core { tag::compact(); } - static function item_edit_form($item, $form) { - $url = url::site("tags/autocomplete"); - $form->script("") - ->text("$('form input[id=tags]').ready(function() { + static function extend_form($event_data) { + if (in_array($event_data->id, + array("g-edit-album-form", "g-edit-movie-form", "g-edit-photo-form"))) { + $url = url::site("tags/autocomplete"); + $event_data->form->script("") + ->text("$('form input[id=tags]').ready(function() { $('form input[id=tags]').autocomplete( '$url', {max: 30, multiple: true, multipleSeparator: ',', cacheLength: 1}); });"); - $tag_value = implode(", ", tag::item_tags($item)); - $form->edit_item->input("tags")->label(t("Tags (comma separated)")) - ->value($tag_value); + $tag_value = implode(", ", tag::item_tags($event_data->data)); + $input = empty($event_data->append_to) ? $event_data->form : $event_data->append_to; + $input->input("tags")->label(t("Tags (comma separated)")) + ->value($tag_value); + } } static function item_edit_form_completed($item, $form) { -- cgit v1.2.3