remove published opml (use CLI instead)
This commit is contained in:
parent
c134aa387d
commit
44b274b6d4
|
@ -753,27 +753,6 @@ class Handler_Public extends Handler {
|
||||||
<?php
|
<?php
|
||||||
}
|
}
|
||||||
|
|
||||||
function publishOpml() {
|
|
||||||
$key = clean($_REQUEST["key"]);
|
|
||||||
$pdo = Db::pdo();
|
|
||||||
|
|
||||||
$sth = $pdo->prepare( "SELECT owner_uid
|
|
||||||
FROM ttrss_access_keys WHERE
|
|
||||||
access_key = ? AND feed_id = 'OPML:Publish'");
|
|
||||||
$sth->execute([$key]);
|
|
||||||
|
|
||||||
if ($row = $sth->fetch()) {
|
|
||||||
$owner_uid = $row['owner_uid'];
|
|
||||||
|
|
||||||
$opml = new OPML($_REQUEST);
|
|
||||||
$opml->opml_export("published.opml", $owner_uid, true, false);
|
|
||||||
|
|
||||||
} else {
|
|
||||||
header($_SERVER["SERVER_PROTOCOL"]." 404 Not Found");
|
|
||||||
echo "File not found.";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
function cached() {
|
function cached() {
|
||||||
list ($cache_dir, $filename) = explode("/", $_GET["file"], 2);
|
list ($cache_dir, $filename) = explode("/", $_GET["file"], 2);
|
||||||
|
|
||||||
|
|
|
@ -633,12 +633,6 @@ class OPML extends Handler_Protected {
|
||||||
print "$msg<br/>";
|
print "$msg<br/>";
|
||||||
}
|
}
|
||||||
|
|
||||||
static function get_publish_url(){
|
|
||||||
return Config::get_self_url() .
|
|
||||||
"/public.php?op=publishOpml&key=" .
|
|
||||||
Feeds::_get_access_key('OPML:Publish', false, $_SESSION["uid"]);
|
|
||||||
}
|
|
||||||
|
|
||||||
function get_feed_category($feed_cat, $parent_cat_id = false) {
|
function get_feed_category($feed_cat, $parent_cat_id = false) {
|
||||||
|
|
||||||
$parent_cat_id = (int) $parent_cat_id;
|
$parent_cat_id = (int) $parent_cat_id;
|
||||||
|
|
|
@ -1012,17 +1012,6 @@ class Pref_Feeds extends Handler_Protected {
|
||||||
</label>
|
</label>
|
||||||
</form>
|
</form>
|
||||||
|
|
||||||
<hr/>
|
|
||||||
|
|
||||||
<h2><?= __("Published OPML") ?></h2>
|
|
||||||
|
|
||||||
<?= format_notice("Your OPML can be published and then subscribed by anyone who knows the URL below. This won't include your settings nor authenticated feeds.") ?>
|
|
||||||
|
|
||||||
<button dojoType='dijit.form.Button' class='alt-primary' onclick="return Helpers.OPML.publish()">
|
|
||||||
<?= \Controls\icon("share") ?>
|
|
||||||
<?= __('Display published OPML URL') ?>
|
|
||||||
</button>
|
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_TAB_SECTION, "prefFeedsOPML");
|
PluginHost::getInstance()->run_hooks(PluginHost::HOOK_PREFS_TAB_SECTION, "prefFeedsOPML");
|
||||||
}
|
}
|
||||||
|
@ -1251,17 +1240,6 @@ class Pref_Feeds extends Handler_Protected {
|
||||||
return Feeds::_clear_access_keys($_SESSION['uid']);
|
return Feeds::_clear_access_keys($_SESSION['uid']);
|
||||||
}
|
}
|
||||||
|
|
||||||
function getOPMLKey() {
|
|
||||||
print json_encode(["link" => OPML::get_publish_url()]);
|
|
||||||
}
|
|
||||||
|
|
||||||
function regenOPMLKey() {
|
|
||||||
Feeds::_update_access_key('OPML:Publish',
|
|
||||||
false, $_SESSION["uid"]);
|
|
||||||
|
|
||||||
print json_encode(["link" => OPML::get_publish_url()]);
|
|
||||||
}
|
|
||||||
|
|
||||||
function regenFeedKey() {
|
function regenFeedKey() {
|
||||||
$feed_id = clean($_REQUEST['id']);
|
$feed_id = clean($_REQUEST['id']);
|
||||||
$is_cat = clean($_REQUEST['is_cat']);
|
$is_cat = clean($_REQUEST['is_cat']);
|
||||||
|
|
|
@ -808,63 +808,5 @@ const Helpers = {
|
||||||
console.log("export");
|
console.log("export");
|
||||||
window.open("backend.php?op=opml&method=export&" + dojo.formToQuery("opmlExportForm"));
|
window.open("backend.php?op=opml&method=export&" + dojo.formToQuery("opmlExportForm"));
|
||||||
},
|
},
|
||||||
publish: function() {
|
|
||||||
Notify.progress("Loading, please wait...", true);
|
|
||||||
|
|
||||||
xhr.json("backend.php", {op: "pref-feeds", method: "getOPMLKey"}, (reply) => {
|
|
||||||
try {
|
|
||||||
const dialog = new fox.SingleUseDialog({
|
|
||||||
title: __("Public OPML URL"),
|
|
||||||
regenOPMLKey: function() {
|
|
||||||
if (confirm(__("Replace current OPML publishing address with a new one?"))) {
|
|
||||||
Notify.progress("Trying to change address...", true);
|
|
||||||
|
|
||||||
xhr.json("backend.php", {op: "pref-feeds", method: "regenOPMLKey"}, (reply) => {
|
|
||||||
if (reply) {
|
|
||||||
const new_link = reply.link;
|
|
||||||
const target = this.domNode.querySelector('.generated_url');
|
|
||||||
|
|
||||||
if (new_link && target) {
|
|
||||||
target.href = new_link;
|
|
||||||
target.innerHTML = new_link;
|
|
||||||
|
|
||||||
Notify.close();
|
|
||||||
|
|
||||||
} else {
|
|
||||||
Notify.error("Could not change feed URL.");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
},
|
|
||||||
content: `
|
|
||||||
<header>${__("Your Public OPML URL is:")}</header>
|
|
||||||
<section>
|
|
||||||
<div class='panel text-center'>
|
|
||||||
<a class='generated_url' href="${App.escapeHtml(reply.link)}" target='_blank'>${App.escapeHtml(reply.link)}</a>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
<footer class='text-center'>
|
|
||||||
<button dojoType='dijit.form.Button' onclick="return App.dialogOf(this).regenOPMLKey()">
|
|
||||||
${App.FormFields.icon("refresh")}
|
|
||||||
${__('Generate new URL')}
|
|
||||||
</button>
|
|
||||||
<button dojoType='dijit.form.Button' type='submit' class='alt-primary'>
|
|
||||||
${__('Close this window')}
|
|
||||||
</button>
|
|
||||||
</footer>
|
|
||||||
`
|
|
||||||
});
|
|
||||||
|
|
||||||
dialog.show();
|
|
||||||
|
|
||||||
Notify.close();
|
|
||||||
|
|
||||||
} catch (e) {
|
|
||||||
App.Error.report(e);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
},
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in New Issue