Implement the last part of #276: show the list of available feeds in the frontend and let the user select one of them (refs #276)

This commit is contained in:
Christian Weiske 2010-11-09 22:42:03 +01:00 committed by Andrew Dolgov
parent 9a8ce9561d
commit 5eeb387497
2 changed files with 31 additions and 1 deletions

View File

@ -1322,9 +1322,31 @@ function subscribeToFeed() {
break;
case 2:
case 3:
case 4:
alert(__("Can't subscribe to the specified URL."));
break;
case 4:
new Ajax.Request("backend.php", {
parameters: 'op=rpc&subop=extractfeedurls&url=' + encodeURIComponent(feed_url),
onComplete: function(transport) {
var result = transport.responseXML.getElementsByTagName('urls')[0];
var feeds = JSON.parse(result.firstChild.nodeValue);
var select = document.getElementById("faad_feeds_container_select");
while (select.hasChildNodes()) {
select.removeChild(elem.firstChild);
}
var count = 0;
for (var feedUrl in feeds) {
select.insert(new Option(feeds[feedUrl], feedUrl, false));
count++;
}
if (count > 5) count = 5;
select.size = count;
Effect.Appear('fadd_feeds_container', {duration : 0.5});
}
});
break;
case 0:
alert(__("You are already subscribed to this feed."));
break;

View File

@ -263,6 +263,14 @@
print "</div>";
print '<div id="fadd_feeds_container" style="display:none">
<div class="dlgSec">' . __('Available feeds') . '</div>
<div class="dlgSecCont">'
. ' <select name="feed" id="faad_feeds_container_select" size="3"></select>'
. '</div></div>';
print "<div id='fadd_login_container' style='display:none'>
<div class=\"dlgSec\">".__("Authentication")."</div>