summaryrefslogtreecommitdiff
path: root/modules/recaptcha/helpers
diff options
context:
space:
mode:
authorTim Almdal <tnalmdal@shaw.ca>2009-11-01 13:14:11 -0800
committerTim Almdal <tnalmdal@shaw.ca>2009-11-01 13:14:11 -0800
commit809e738536b6639bb42ecae8eb1e183543fed93c (patch)
tree585365cff3fb009ebc4ad1d1485f4467791eacb1 /modules/recaptcha/helpers
parent91c5a9abb7b617e45b547ced6a28c14a64ef760f (diff)
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.
Diffstat (limited to 'modules/recaptcha/helpers')
-rw-r--r--modules/recaptcha/helpers/recaptcha_event.php10
1 files changed, 7 insertions, 3 deletions
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");
}
}