]> git.wh0rd.org Git - tt-rss.git/commitdiff
allow setting article score manually
authorAndrew Dolgov <fox@madoka.volgo-balt.ru>
Wed, 31 Oct 2012 10:39:26 +0000 (14:39 +0400)
committerAndrew Dolgov <fox@madoka.volgo-balt.ru>
Wed, 31 Oct 2012 10:39:26 +0000 (14:39 +0400)
classes/feeds.php
classes/rpc.php
js/viewfeed.js

index ed33b30c083b70889ef1f3395f87e37880f1a95c..1926d0c39707e3583807265bfaaf35bc87b121f9 100644 (file)
@@ -395,7 +395,7 @@ class Feeds extends Handler_Protected {
                                $score_pic = "<img class='hlScorePic' src=\"images/$score_pic\"\r
                                        onclick=\"adjustArticleScore($id, $score)\" title=\"$score $score_title\">"; */\r
 \r
-                               $score_pic = "<img class='hlScorePic' src=\"$score_pic\"\r
+                               $score_pic = "<img class='hlScorePic' score='$score' onclick='changeScore($id, this)' src=\"$score_pic\"\r
                                        title=\"$score\">";\r
 \r
                                if ($score > 500) {\r
index 35de3362a26fa8349b98058d48ac68a653b71027..88c6f1ddc81a2b78e5fcf650a5d45ca2a6204351 100644 (file)
@@ -763,5 +763,16 @@ class RPC extends Handler_Protected {
                }
        }
 
+       function setScore() {
+               $id = db_escape_string($_REQUEST['id']);
+               $score = (int)db_escape_string($_REQUEST['score']);
+
+               db_query($this->link, "UPDATE ttrss_user_entries SET
+                       score = '$score' WHERE ref_id = '$id' AND owner_uid = " . $_SESSION["uid"]);
+
+               print json_encode(array("id" => $id,
+                       "score_pic" => theme_image($link, get_score_pic($score))));
+       }
+
 }
 ?>
index 86e0076c145ef423a62f95d679809ab06421f2c1..cbb10c3f14a2eed78893b1acf6b1bcbdd61104b3 100644 (file)
@@ -2137,3 +2137,30 @@ function cancelSearch() {
                exception_error("cancelSearch", e);
        }
 }
+
+function changeScore(id, pic) {
+       try {
+               var score = pic.getAttribute("score");
+
+               var new_score = prompt(__("Please enter new score for this article:"), score);
+
+               if (new_score != undefined) {
+
+                       var query = "op=rpc&method=setScore&id=" + param_escape(id) +
+                               "&score=" + param_escape(new_score);
+
+                       new Ajax.Request("backend.php", {
+                               parameters: query,
+                               onComplete: function(transport) {
+                                       var reply = JSON.parse(transport.responseText);
+
+                                       if (reply) {
+                                               pic.src = pic.src.replace(/score_.*?\.png/, reply["score_pic"]);
+                                               pic.setAttribute("score", new_score);
+                                       }
+                               } });
+               }
+       } catch (e) {
+               exception_error("changeScore", e);
+       }
+}