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/recaptcha/helpers/recaptcha_event.php | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'modules/recaptcha/helpers') diff --git a/modules/recaptcha/helpers/recaptcha_event.php b/modules/recaptcha/helpers/recaptcha_event.php index feedced4..7a0b4f58 100644 --- a/modules/recaptcha/helpers/recaptcha_event.php +++ b/modules/recaptcha/helpers/recaptcha_event.php @@ -18,9 +18,13 @@ * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. */ class recaptcha_event_Core { - static function comment_add_form($form) { - if (module::get_var("recaptcha", "public_key")) { - $form->add_comment->recaptcha("recaptcha")->label("")->id("g-recaptcha"); + static function extend_form($event_data) { + // @todo put into an admin interface + $config = Kohana::config("recaptcha"); + if (module::get_var("recaptcha", "public_key") && + in_array($event_data->id, $config["recaptcha"])) { + $input = empty($event_data->append_to) ? $event_data->form : $event_data->append_to; + $input->recaptcha("recaptcha")->label("")->id("g-recaptcha"); } } -- cgit v1.2.3