[aur-dev] [PATCH 4/5] aurjson.class.php: Add methods load_comment and save_comment

Marcel Korpel marcel.korpel at gmail.com
Mon Jul 20 22:08:47 UTC 2015


Signed-off-by: Marcel Korpel <marcel.korpel at gmail.com>
---
 web/lib/aurjson.class.php | 35 ++++++++++++++++++++++++++++++++++-
 1 file changed, 34 insertions(+), 1 deletion(-)

diff --git a/web/lib/aurjson.class.php b/web/lib/aurjson.class.php
index a272741..cdb5d7e 100644
--- a/web/lib/aurjson.class.php
+++ b/web/lib/aurjson.class.php
@@ -14,7 +14,7 @@ class AurJSON {
 	private $version = 1;
 	private static $exposed_methods = array(
 		'search', 'info', 'multiinfo', 'msearch', 'suggest',
-		'suggest-pkgbase'
+		'suggest-pkgbase', 'load-comment', 'save-comment'
 	);
 	private static $exposed_fields = array(
 		'name', 'name-desc'
@@ -477,5 +477,38 @@ class AurJSON {
 
 		return json_encode($result_array);
 	}
+
+	private function load_comment($http_data) {
+		$comment_id = $http_data['arg'];
+		list($user_id, $comment) = comment_by_id($comment_id);
+
+		if (!has_credential(CRED_COMMENT_EDIT, array($user_id)) || is_null($comment)) {
+			$output = false;
+		} else {
+			ob_start();
+			include('pkg_comment_form.php');
+			$html = ob_get_clean();
+			$output = array('form' => $html);
+		}
+
+		return json_encode($output);
+	}
+
+	private function save_comment($http_data) {
+		include_once('pkgbasefuncs.inc.php');
+		$argument_array = $http_data['arg'];
+		$comment = $argument_array['comment'];
+		$comment_id = $argument_array['id'];
+
+		list($success, $message) = pkgbase_edit_comment($comment, $comment_id);
+		if ($success) {
+			$html = parse_comment($comment);
+			$output = array('success' => 1, 'html' => $html);
+		} else {
+			$output = array('success' => 0, 'error' => $message);
+		}
+
+		return json_encode($output);
+	}
 }
 
-- 
2.4.6


More information about the aur-dev mailing list