shared opml and feed dialogs: remove unique target element id, move associated methods into dialog
This commit is contained in:
parent
9f31381bb6
commit
3c584376ca
|
@ -369,35 +369,6 @@ const CommonDialogs = {
|
||||||
|
|
||||||
dialog.show();
|
dialog.show();
|
||||||
},
|
},
|
||||||
genUrlChangeKey: function(feed, is_cat) {
|
|
||||||
if (confirm(__("Generate new syndication address for this feed?"))) {
|
|
||||||
|
|
||||||
Notify.progress("Trying to change address...", true);
|
|
||||||
|
|
||||||
const query = {op: "pref-feeds", method: "regenFeedKey", id: feed, is_cat: is_cat};
|
|
||||||
|
|
||||||
xhrJson("backend.php", query, (reply) => {
|
|
||||||
const new_link = reply.link;
|
|
||||||
const e = $('gen_feed_url');
|
|
||||||
|
|
||||||
if (new_link) {
|
|
||||||
e.innerHTML = e.innerHTML.replace(/&key=.*$/,
|
|
||||||
"&key=" + new_link);
|
|
||||||
|
|
||||||
e.href = e.href.replace(/&key=.*$/,
|
|
||||||
"&key=" + new_link);
|
|
||||||
|
|
||||||
new Effect.Highlight(e);
|
|
||||||
|
|
||||||
Notify.close();
|
|
||||||
|
|
||||||
} else {
|
|
||||||
Notify.error("Could not change feed URL.");
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
},
|
|
||||||
publishedOPML: function() {
|
publishedOPML: function() {
|
||||||
|
|
||||||
Notify.progress("Loading, please wait...", true);
|
Notify.progress("Loading, please wait...", true);
|
||||||
|
@ -406,15 +377,40 @@ const CommonDialogs = {
|
||||||
try {
|
try {
|
||||||
const dialog = new fox.SingleUseDialog({
|
const dialog = new fox.SingleUseDialog({
|
||||||
title: __("Public OPML URL"),
|
title: __("Public OPML URL"),
|
||||||
|
regenOPMLKey: function() {
|
||||||
|
if (confirm(__("Replace current OPML publishing address with a new one?"))) {
|
||||||
|
Notify.progress("Trying to change address...", true);
|
||||||
|
|
||||||
|
xhrJson("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;
|
||||||
|
|
||||||
|
new Effect.Highlight(target);
|
||||||
|
|
||||||
|
Notify.close();
|
||||||
|
|
||||||
|
} else {
|
||||||
|
Notify.error("Could not change feed URL.");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
},
|
||||||
content: `
|
content: `
|
||||||
<header>${__("Your Public OPML URL is:")}</header>
|
<header>${__("Your Public OPML URL is:")}</header>
|
||||||
<section>
|
<section>
|
||||||
<div class='panel text-center'>
|
<div class='panel text-center'>
|
||||||
<a id='pub_opml_url' href="${App.escapeHtml(reply.link)}" target='_blank'>${reply.link}</a>
|
<a class='generated_url' href="${App.escapeHtml(reply.link)}" target='_blank'>${App.escapeHtml(reply.link)}</a>
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
<footer class='text-center'>
|
<footer class='text-center'>
|
||||||
<button dojoType='dijit.form.Button' onclick="return Helpers.OPML.changeKey()">
|
<button dojoType='dijit.form.Button' onclick="return App.dialogOf(this).regenOPMLKey()">
|
||||||
${__('Generate new URL')}
|
${__('Generate new URL')}
|
||||||
</button>
|
</button>
|
||||||
<button dojoType='dijit.form.Button' type='submit' class='alt-primary'>
|
<button dojoType='dijit.form.Button' type='submit' class='alt-primary'>
|
||||||
|
@ -441,18 +437,47 @@ const CommonDialogs = {
|
||||||
try {
|
try {
|
||||||
const dialog = new fox.SingleUseDialog({
|
const dialog = new fox.SingleUseDialog({
|
||||||
title: __("Show as feed"),
|
title: __("Show as feed"),
|
||||||
|
regenFeedKey: function(feed, is_cat) {
|
||||||
|
if (confirm(__("Generate new syndication address for this feed?"))) {
|
||||||
|
|
||||||
|
Notify.progress("Trying to change address...", true);
|
||||||
|
|
||||||
|
const query = {op: "pref-feeds", method: "regenFeedKey", id: feed, is_cat: is_cat};
|
||||||
|
|
||||||
|
xhrJson("backend.php", query, (reply) => {
|
||||||
|
const new_link = reply.link;
|
||||||
|
const target = this.domNode.querySelector(".generated_url");
|
||||||
|
|
||||||
|
if (new_link && target) {
|
||||||
|
target.innerHTML = target.innerHTML.replace(/&key=.*$/,
|
||||||
|
"&key=" + new_link);
|
||||||
|
|
||||||
|
target.href = target.href.replace(/&key=.*$/,
|
||||||
|
"&key=" + new_link);
|
||||||
|
|
||||||
|
new Effect.Highlight(target);
|
||||||
|
|
||||||
|
Notify.close();
|
||||||
|
|
||||||
|
} else {
|
||||||
|
Notify.error("Could not change feed URL.");
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
},
|
||||||
content: `
|
content: `
|
||||||
<header>${__("%s can be accessed via the following secret URL:").replace("%s", App.escapeHtml(reply.title))}</header>
|
<header>${__("%s can be accessed via the following secret URL:").replace("%s", App.escapeHtml(reply.title))}</header>
|
||||||
<section>
|
<section>
|
||||||
<div class='panel text-center'>
|
<div class='panel text-center'>
|
||||||
<a id='gen_feed_url' href="${App.escapeHtml(reply.link)}" target='_blank'>${App.escapeHtml(reply.link)}</a>
|
<a class='generated_url' href="${App.escapeHtml(reply.link)}" target='_blank'>${App.escapeHtml(reply.link)}</a>
|
||||||
</div>
|
</div>
|
||||||
</section>
|
</section>
|
||||||
<footer>
|
<footer>
|
||||||
<button dojoType='dijit.form.Button' style='float : left' class='alt-info'
|
<button dojoType='dijit.form.Button' style='float : left' class='alt-info'
|
||||||
onclick='window.open("https://tt-rss.org/wiki/GeneratedFeeds")'>
|
onclick='window.open("https://tt-rss.org/wiki/GeneratedFeeds")'>
|
||||||
<i class='material-icons'>help</i> ${__("More info...")}</button>
|
<i class='material-icons'>help</i> ${__("More info...")}</button>
|
||||||
<button dojoType='dijit.form.Button' onclick="return CommonDialogs.genUrlChangeKey('${feed}', '${is_cat}')">
|
<button dojoType='dijit.form.Button' onclick="return App.dialogOf(this).regenFeedKey('${feed}', '${is_cat}')">
|
||||||
${__('Generate new URL')}
|
${__('Generate new URL')}
|
||||||
</button>
|
</button>
|
||||||
<button dojoType='dijit.form.Button' class='alt-primary' type='submit'>
|
<button dojoType='dijit.form.Button' class='alt-primary' type='submit'>
|
||||||
|
|
|
@ -291,30 +291,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"));
|
||||||
},
|
},
|
||||||
changeKey: function() {
|
|
||||||
if (confirm(__("Replace current OPML publishing address with a new one?"))) {
|
|
||||||
Notify.progress("Trying to change address...", true);
|
|
||||||
|
|
||||||
xhrJson("backend.php", {op: "pref-feeds", method: "regenOPMLKey"}, (reply) => {
|
|
||||||
if (reply) {
|
|
||||||
const new_link = reply.link;
|
|
||||||
const e = $('pub_opml_url');
|
|
||||||
|
|
||||||
if (new_link) {
|
|
||||||
e.href = new_link;
|
|
||||||
e.innerHTML = new_link;
|
|
||||||
|
|
||||||
new Effect.Highlight(e);
|
|
||||||
|
|
||||||
Notify.close();
|
|
||||||
|
|
||||||
} else {
|
|
||||||
Notify.error("Could not change feed URL.");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
},
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in New Issue