summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2013-03-21 23:29:06 +0400
committerAndrew Dolgov <[email protected]>2013-03-21 23:29:06 +0400
commit7fc2e87e17cb878406d29d050d25e3fee139591a (patch)
treeb3f0981d2cbc62962802b4de5ae3aa886e6f0862
parent3a693fa76f0cc6a38aa5642a08b48f58c29758bc (diff)
add headline menu entry to show article url
-rw-r--r--classes/rpc.php15
-rw-r--r--js/viewfeed.js24
2 files changed, 39 insertions, 0 deletions
diff --git a/classes/rpc.php b/classes/rpc.php
index 139f1fe49..8144f6b97 100644
--- a/classes/rpc.php
+++ b/classes/rpc.php
@@ -829,5 +829,20 @@ class RPC extends Handler_Protected {
}
}
+ function getlinkbyid() {
+ $id = db_escape_string($_REQUEST['id']);
+
+ $result = db_query($this->link, "SELECT link FROM ttrss_entries, ttrss_user_entries
+ WHERE ref_id = '$id' AND ref_id = id AND owner_uid = ". $_SESSION["uid"]);
+
+ if (db_num_rows($result) != 0) {
+ $link = db_fetch_result($result, 0, "link");
+
+ echo json_encode(array("link" => $link));
+ } else {
+ echo json_encode(array("error" => "ARTICLE_NOT_FOUND"));
+ }
+ }
+
}
?>
diff --git a/js/viewfeed.js b/js/viewfeed.js
index 5567c717a..35c9c12a7 100644
--- a/js/viewfeed.js
+++ b/js/viewfeed.js
@@ -1824,6 +1824,12 @@ function initHeadlinesMenu() {
openArticleInNewWindow(this.getParent().callerRowId);
}}));
+ menu.addChild(new dijit.MenuItem({
+ label: __("Display article URL"),
+ onClick: function(event) {
+ displayArticleUrl(this.getParent().callerRowId);
+ }}));
+
menu.addChild(new dijit.MenuSeparator());
menu.addChild(new dijit.MenuItem({
@@ -2035,3 +2041,21 @@ function changeScore(id, pic) {
exception_error("changeScore", e);
}
}
+
+function displayArticleUrl(id) {
+ try {
+ var query = "op=rpc&method=getlinkbyid&id=" + param_escape(id);
+
+ new Ajax.Request("backend.php", {
+ parameters: query,
+ onComplete: function(transport) {
+ var reply = JSON.parse(transport.responseText);
+
+ if (reply && reply.link) {
+ prompt(__("Article URL:"), reply.link);
+ }
+ } });
+ } catch (e) {
+ exception_error("changeScore", e);
+ }
+}