From a7feeb576f491f285cb76cba0b99e01e7a3ae390 Mon Sep 17 00:00:00 2001 From: Bharat Mediratta Date: Sat, 10 Jan 2009 00:34:23 +0000 Subject: Big set of changes to comments, with related changes to akismet and user modules. * Don't delete vars when we delete a module. This makes reinstalling a module a lot easier. * Add user::lookup() as the preferred way to load a user, so that other modules don't delve into the user module (that'd be a problem when we swap out user modules) * Notify site admins if Akismet is not fully configured * Bundle all server variables into the comment so that if/when we re-check the comment, we are not using the server info from the site admin's request. * Update Akismet to grab request context data from the comment * Pre-seed comment fields if we have a logged in user. Update comment::create() API to clarify it for this. * Delete comment::update(), that's a controller function. * Add url to User_Model * Add author_name() author_email() and author_url() to Comment_Model. It'll return the appropriate values depending on whether the comment was left by a logged in user or a guest. * Use resetForm() instead of clearForm() when we reload the comment form after ajax submit, this way we preserve the pre-seeded values. * In the user profile page, ignore blank passwords. --- modules/comment/controllers/comments.php | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) (limited to 'modules/comment/controllers') diff --git a/modules/comment/controllers/comments.php b/modules/comment/controllers/comments.php index 1bf1a9e2..998ed1ac 100644 --- a/modules/comment/controllers/comments.php +++ b/modules/comment/controllers/comments.php @@ -60,11 +60,12 @@ class Comments_Controller extends REST_Controller { $form = comment::get_add_form($item); if ($form->validate()) { - $comment = comment::create($this->input->post("author"), - $this->input->post("email"), - $this->input->post("text"), - $this->input->post("item_id"), - $this->input->post("url")); + $comment = comment::create( + $item, user::active(), + $form->add_comment->text->value, + $form->add_comment->inputs["name"]->value, + $form->add_comment->email->value, + $form->add_comment->url->value); print json_encode( array("result" => "success", @@ -111,11 +112,12 @@ class Comments_Controller extends REST_Controller { $form = comment::get_edit_form($comment); if ($form->validate()) { - $comment = comment::update($comment, - $this->input->post("author"), - $this->input->post("email"), - $this->input->post("text"), - $this->input->post("url")); + $comment->guest_name = $form->edit_comment->inputs["name"]->value; + $comment->guest_email = $form->edit_comment->email->value; + $comment->url = $form->edit_comment->url->value; + $comment->text = $form->edit_comment->text->value; + $comment->save(); + module::event("comment_updated", $comment); print json_encode( array("result" => "success", -- cgit v1.2.3