You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
56 lines
1.4 KiB
56 lines
1.4 KiB
"use strict"; |
|
var feeds = [<?php foreach ($this->feeds as $feed) { ?>{<?php |
|
?>url: "<?php echo Minz_Url::display(array('c' => 'feed', 'a' => 'actualize', 'params' => array('id' => $feed->id(), 'ajax' => '1')), 'php'); ?>",<?php |
|
?>title: "<?php echo $feed->name(); ?>"<?php |
|
?>},<?php } ?>], |
|
feed_processed = 0, |
|
feed_count = feeds.length; |
|
|
|
function initProgressBar(init) { |
|
if (init) { |
|
$("body").after("\<div id=\"actualizeProgress\" class=\"notification good\">\ |
|
<?php echo _t('refresh'); ?><br /><span class=\"title\">/</span><br />\ |
|
<span class=\"progress\">0 / " + feed_count + "</span>\ |
|
</div>"); |
|
} else { |
|
window.location.reload(); |
|
} |
|
} |
|
function updateProgressBar(i, title_feed) { |
|
$("#actualizeProgress .progress").html(i + " / " + feed_count); |
|
$("#actualizeProgress .title").html(title_feed); |
|
} |
|
|
|
function updateFeeds() { |
|
if (feed_count === 0) { |
|
openNotification("<?php echo _t('no_feed_to_refresh'); ?>", "good"); |
|
ajax_loading = false; |
|
return; |
|
} |
|
initProgressBar(true); |
|
|
|
for (var i = 0; i < 10; i++) { |
|
updateFeed(); |
|
} |
|
} |
|
|
|
function updateFeed() { |
|
var feed = feeds.pop(); |
|
if (feed == undefined) { |
|
return; |
|
} |
|
|
|
$.ajax({ |
|
type: 'POST', |
|
url: feed['url'], |
|
}).complete(function (data) { |
|
feed_processed++; |
|
updateProgressBar(feed_processed, feed['title']); |
|
|
|
if (feed_processed === feed_count) { |
|
initProgressBar(false); |
|
} else { |
|
updateFeed(); |
|
} |
|
}); |
|
}
|
|
|