} } } } break; case 'delete': $result = $comment->delete($commentid); if ($result === true) { echo json_encode(array('client_id' => $client_id, 'commentid' => $commentid)); } else { if ($result == COMMENT_ERROR_INSUFFICIENT_CAPS) { $err->error = get_string('nopermissiontoeditcomment'); echo json_encode($err); } else { if ($result == COMMENT_ERROR_DB) { $err->error = get_string('dbupdatefailed'); echo json_encode($err); } } } break; case 'get': default: $ret = array(); $comments = $comment->get_comments($page); $ret['list'] = $comments; $ret['pagination'] = $comment->get_pagination($page); $ret['client_id'] = $client_id; echo json_encode($ret); exit; }
echo json_encode($result); die; } } break; case 'delete': $comment_record = $DB->get_record('comments', array('id' => $commentid)); if ($manager->can_delete($commentid) || $comment_record->userid == $USER->id) { if ($manager->delete($commentid)) { $result = array('client_id' => $client_id, 'commentid' => $commentid); echo json_encode($result); die; } } break; case 'get': default: if ($manager->can_view()) { $comments = $manager->get_comments($page); $result = array('list' => $comments, 'count' => $manager->count(), 'pagination' => $manager->get_pagination($page), 'client_id' => $client_id); echo json_encode($result); die; } break; } if (!isloggedin()) { // tell user to log in to view comments echo json_encode(array('error' => 'require_login')); } // ignore request die;
$args->ignore_permission = $ignore_permission; $manager = new comment($args); } else { die; } // process ajax request switch ($action) { case 'add': $result = $manager->add($content); if (!empty($result) && is_object($result)) { $result->count = $manager->count(); $result->client_id = $client_id; echo json_encode($result); } break; case 'delete': $result = $manager->delete($commentid); if ($result === true) { echo json_encode(array('client_id' => $client_id, 'commentid' => $commentid)); } break; case 'get': default: $result = array(); $comments = $manager->get_comments($page); $result['list'] = $comments; $result['count'] = $manager->count(); $result['pagination'] = $manager->get_pagination($page); $result['client_id'] = $client_id; echo json_encode($result); }