1
0
mirror of https://git.tt-rss.org/git/tt-rss.git synced 2026-01-23 07:27:11 +00:00

implement sharing articles by unique url

This commit is contained in:
Andrew Dolgov
2011-10-04 13:11:07 +04:00
parent 359fc686dd
commit 83cd33fcec
11 changed files with 136 additions and 8 deletions

View File

@@ -783,6 +783,15 @@
return;
}
// Silent
if ($subop == "clearArticleKeys") {
db_query($link, "UPDATE ttrss_user_entries SET uuid = '' WHERE
owner_uid = " . $_SESSION["uid"]);
return;
}
if ($subop == "verifyRegexp") {
$reg_exp = $_REQUEST["reg_exp"];

View File

@@ -1071,12 +1071,52 @@
__('Cancel')."</button></div>";
return;
}
if ($id == "shareArticle") {
$result = db_query($link, "SELECT uuid, ref_id FROM ttrss_user_entries WHERE int_id = '$param'
AND owner_uid = " . $_SESSION['uid']);
if (db_num_rows($result) == 0) {
print "Article not found.";
} else {
$uuid = db_fetch_result($result, 0, "uuid");
$ref_id = db_fetch_result($result, 0, "ref_id");
if (!$uuid) {
$uuid = db_escape_string(sha1(uniqid(rand(), true)));
db_query($link, "UPDATE ttrss_user_entries SET uuid = '$uuid' WHERE int_id = '$param'
AND owner_uid = " . $_SESSION['uid']);
}
print __("You can share this article by the following unique URL:");
$url_path = get_self_url_prefix();
$url_path .= "/backend.php?op=share&key=$uuid";
print "<div class=\"tagCloudContainer\">";
print "<a id='pub_opml_url' href='$url_path' target='_blank'>$url_path</a>";
print "</div>";
/* if (!label_find_id($link, __('Shared'), $_SESSION["uid"]))
label_create($link, __('Shared'), $_SESSION["uid"]);
label_add_article($link, $ref_id, __('Shared'), $_SESSION['uid']); */
}
print "<div align='center'>";
print "<button dojoType=\"dijit.form.Button\" onclick=\"return dijit.byId('shareArticleDlg').hide()\">".
__('Close this window')."</button>";
print "</div>";
return;
}
print "</dlg>";
}
?>

View File

@@ -1506,7 +1506,9 @@
print "</div>"; #pane
print "<div dojoType=\"dijit.layout.AccordionPane\" title=\"".__('Published articles and generated feeds')."\">";
print "<div dojoType=\"dijit.layout.AccordionPane\" title=\"".__('Published & shared articles and generated feeds')."\">";
print "<h3>" . __("Published articles and generated feeds") . "</h3>";
print "<p>".__('Published articles are exported as a public RSS feed and can be subscribed by anyone who knows the URL specified below.')."</p>";
@@ -1519,6 +1521,13 @@
print "<button dojoType=\"dijit.form.Button\" onclick=\"return clearFeedAccessKeys()\">".
__('Clear all generated URLs')."</button> ";
print "<h3>" . __("Articles shared by URL") . "</h3>";
print "<p>" . __("You can disable all articles shared by unique URLs here.") . "</p>";
print "<button dojoType=\"dijit.form.Button\" onclick=\"return clearArticleAccessKeys()\">".
__('Unshare all articles')."</button> ";
print "</div>"; #pane
if (defined('CONSUMER_KEY') && CONSUMER_KEY != '') {