[Buildroot] [git commit] docs/website: fixing js for the new feed source
Thomas Petazzoni
thomas.petazzoni at bootlin.com
Mon Feb 6 09:51:28 UTC 2023
commit: https://git.buildroot.net/buildroot/commit/?id=ca97c78ee0e069c70b8fa051012ea02c911dbf2d
branch: https://git.buildroot.net/buildroot/commit/?id=refs/heads/master
Feed source is moved to a local atom file available on the web server to
remove further problems with unreliable feed sources.
Moving the feed required a bit of refactor of the load_activity function
so it won't download two times te same url.
This change requires a cron job like this enabled on the website:
* * * * * wget -O new.atom https://lore.kernel.org/buildroot/new.atom
Signed-off-by: Angelo Compagnucci <angelo at amarulasolutions.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni at bootlin.com>
---
docs/website/js/buildroot.js | 70 +++++++++++++++++++++++++-------------------
1 file changed, 40 insertions(+), 30 deletions(-)
diff --git a/docs/website/js/buildroot.js b/docs/website/js/buildroot.js
index bf80f11d7a..288e3e745c 100644
--- a/docs/website/js/buildroot.js
+++ b/docs/website/js/buildroot.js
@@ -1,39 +1,50 @@
-function load_activity(feedurl, divid) {
- let container = document.getElementById(divid);
+function display_activity(result, activity) {
+ let loaded = 0;
+ let nb_display = 8;
+ let container;
+ if (result==null) return;
+ for (let i = 0; i < result.feed.entry.length; i++) {
+ let entry = result.feed.entry[i];
+ if (activity==="commit" && entry.title.toString().indexOf("git commit") !== -1) {
+ container = document.getElementById("commit-activity");
+ } else if (activity==="mailing-list" && entry.title.toString().indexOf("git commit") === -1) {
+ container = document.getElementById("mailing-list-activity");
+ } else {
+ continue;
+ }
+ loaded += 1
+ if (loaded > nb_display)
+ break;
+ let div = document.createElement("p");
+ let link = document.createElement("a");
+ let d = new Date(entry.updated);
+ let data = '[' + d.toLocaleDateString() + '] ' + entry.title;
+ let text = document.createTextNode(data);
+ link.appendChild(text);
+ link.title = entry.title;
+ link.href = entry.link._href;
+ div.appendChild(link);
+ container.appendChild(div);
+ }
+ for (let i = 0; i < (nb_display - loaded); i++) {
+ container.appendChild(document.createElement("p"));
+ }
+}
+
+function load_activity(feedurl) {
$.ajax({
- url: "https://cors-anywhere.herokuapp.com/" + feedurl
+ url: feedurl
})
.done(function(data){
let x2js = new X2JS();
let result = x2js.xml_str2json(data.documentElement.outerHTML);
- let loaded = 0;
- let nb_display = 8;
- if (result==null) return;
- for (let i = 0; i < result.feed.entry.length; i++) {
- let entry = result.feed.entry[i];
- if (entry.title.indexOf("git commit") !== -1)
- continue;
- loaded += 1;
- if (loaded > nb_display)
- break;
- let div = document.createElement("p");
- let link = document.createElement("a");
- let d = new Date(entry.published);
- let data = '[' + d.toLocaleDateString() + '] ' + entry.title;
- let text = document.createTextNode(data);
- link.appendChild(text);
- link.title = entry.title;
- link.href = entry.link._href;
- div.appendChild(link);
- container.appendChild(div);
- }
- let empty = nb_display - loaded;
- for (let i = 0; i < empty; i++) {
- container.appendChild(document.createElement("p"));
- }
+ display_activity(result, "commit");
+ display_activity(result, "mailing-list");
});
}
+
+
function google_analytics() {
let _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-21761074-1']);
@@ -86,8 +97,7 @@ jQuery(document).ready(function($) {
url = url.split(/[\\/]/).pop();
$('.nav a[href="/' + url + '"]').parent().addClass('active');
- load_activity("http://buildroot-busybox.2317881.n4.nabble.com/Buildroot-busybox-ft2.xml", "mailing-list-activity");
- load_activity("http://git.buildroot.org/buildroot/atom/?h=master", "commit-activity");
+ load_activity("/new.atom");
$('#slides').html('<iframe src="https://docs.google.com/gview?url=http://bootlin.com/doc/training/buildroot/buildroot-slides.pdf&embedded=true" style="position:absolute; width:100%; height:100%; top:0; left:0;" frameborder="0"></iframe>')
});
More information about the buildroot
mailing list