1
0
mirror of https://git.tt-rss.org/git/tt-rss.git synced 2026-02-10 16:01:33 +00:00

generated feed: use client dialog

This commit is contained in:
Andrew Dolgov
2021-02-11 22:04:39 +03:00
parent 1a680d4eae
commit 4182018cb7
4 changed files with 71 additions and 49 deletions
-37
View File
@@ -128,41 +128,4 @@ class Dlg extends Handler_Protected {
print "</footer>";
}
function generatedFeed() {
$this->params = explode(":", $this->param, 3);
$feed_id = $this->params[0];
$is_cat = (bool) $this->params[1];
$key = Feeds::get_feed_access_key($feed_id, $is_cat);
$url_path = htmlspecialchars($this->params[2]) . "&key=" . $key;
$feed_title = Feeds::getFeedTitle($feed_id, $is_cat);
print "<header>".T_sprintf("%s can be accessed via the following secret URL:", $feed_title)."</header>";
print "<section>";
print "<div class='panel text-center'>";
print "<a id='gen_feed_url' href='$url_path' target='_blank'>$url_path</a>";
print "</div>";
print "</section>";
print "<footer>";
print "<button dojoType='dijit.form.Button' style='float : left' class='alt-info' onclick='window.open(\"https://tt-rss.org/wiki/GeneratedFeeds\")'>
<i class='material-icons'>help</i> ".__("More info...")."</button>";
print "<button dojoType='dijit.form.Button' onclick=\"return CommonDialogs.genUrlChangeKey('$feed_id', '$is_cat')\">".
__('Generate new URL')."</button> ";
print "<button dojoType='dijit.form.Button' onclick=\"return CommonDialogs.closeInfoBox()\">".
__('Close this window')."</button>";
print "</footer>";
//return;
}
}
+1 -1
View File
@@ -37,7 +37,7 @@ class Feeds extends Handler_Protected {
$reply .= "<a href=\"#\"
title=\"".__("Show as feed")."\"
onclick=\"App.displayDlg('".__("Show as feed")."','generatedFeed', '$feed_id:$is_cat:$rss_link')\">
onclick='CommonDialogs.generatedFeed(\"$feed_id\", \"$is_cat\", \"$rss_link\")'>
<i class='icon-syndicate material-icons'>rss_feed</i></a>";
$reply .= "<span id='feed_title'>";
+11 -8
View File
@@ -1391,10 +1391,10 @@ class Pref_Feeds extends Handler_Protected {
print "<h3>" . __('Published articles can be subscribed by anyone who knows the following URL:') . "</h3>";
$rss_url = '-2::' . htmlspecialchars(get_self_url_prefix() .
$rss_url = htmlspecialchars(get_self_url_prefix() .
"/public.php?op=rss&id=-2&view-mode=all_articles");;
print "<button dojoType='dijit.form.Button' class='alt-primary' onclick=\"return App.displayDlg('".__("Show as feed")."','generatedFeed', '$rss_url')\">".
print "<button dojoType='dijit.form.Button' class='alt-primary' onclick='CommonDialogs.generatedFeed('-2', false, \"$rss_url\")'>".
__('Display URL')."</button> ";
print "<button class=\"alt-danger\" dojoType=\"dijit.form.Button\" onclick=\"return Helpers.clearFeedAccessKeys()\">".
@@ -1714,23 +1714,26 @@ class Pref_Feeds extends Handler_Protected {
$this->update_feed_access_key('OPML:Publish',
false, $_SESSION["uid"]);
$new_link = OPML::opml_publish_url();
print json_encode(["link" => $new_link]);
print json_encode(["link" => OPML::opml_publish_url()]);
}
function regenFeedKey() {
$feed_id = clean($_REQUEST['id']);
$is_cat = clean($_REQUEST['is_cat']);
$new_key = $this->update_feed_access_key($feed_id, $is_cat);
$new_key = $this->update_feed_access_key($feed_id, $is_cat, $_SESSION["uid"]);
print json_encode(["link" => $new_key]);
}
function getFeedKey() {
$feed_id = clean($_REQUEST['id']);
$is_cat = clean($_REQUEST['is_cat']);
private function update_feed_access_key($feed_id, $is_cat, $owner_uid = false) {
if (!$owner_uid) $owner_uid = $_SESSION["uid"];
print json_encode(["link" => Feeds::get_feed_access_key($feed_id, $is_cat, $_SESSION["uid"])]);
}
private function update_feed_access_key($feed_id, $is_cat, $owner_uid) {
// clear old value and generate new one
$sth = $this->pdo->prepare("DELETE FROM ttrss_access_keys