reformte js
parent
77a6b4f165
commit
2a8a424ca7
|
@ -1,53 +1,62 @@
|
|||
document.addEventListener("DOMContentLoaded", function() {
|
||||
|
||||
let url="https://ical2json.c3re.de/api/?url=https%3A%2F%2Fcloud.c3re.de%2Fremote.php%2Fdav%2Fpublic-calendars%2FRLKKkdjNYgXH8yEz%3Fexport&start=today&end=next+month&maxitems=10"
|
||||
let xmlHttp = new XMLHttpRequest();
|
||||
let zeropad=function(i){
|
||||
let o=""
|
||||
if(i<=9) o+="0"
|
||||
o+=i
|
||||
return o
|
||||
}
|
||||
xmlHttp.onreadystatechange = function() {
|
||||
if (xmlHttp.readyState == 4 && xmlHttp.status == 200){
|
||||
let cal=JSON.parse(xmlHttp.responseText)
|
||||
let $ = jQuery
|
||||
let box=$('#calendar')
|
||||
for(let item of cal){
|
||||
let li=$("<li/>")
|
||||
//li.text(item.summary)
|
||||
let startDate=new Date(item.start * 1000)
|
||||
let date=$("<span class='date'/>")
|
||||
date.text(zeropad(startDate.getDate())+'.'+zeropad(1+startDate.getMonth())+'.'+startDate.getFullYear()+' - '+zeropad(startDate.getHours())+':'+zeropad(startDate.getMinutes()))
|
||||
date.appendTo(li)
|
||||
let summary=$("<span class='summary'/>")
|
||||
summary.text(item.summary)
|
||||
if(item.url){
|
||||
let a = $('<a/>')
|
||||
a.attr('href',item.url)
|
||||
a.attr('title',item.description)
|
||||
a.append(summary)
|
||||
a.appendTo(li)
|
||||
}else{
|
||||
summary.appendTo(li)
|
||||
}
|
||||
if(item.location){
|
||||
let loc=$("<span class='location'>📍</span>")
|
||||
|
||||
loc.attr('data-loc',item.location)
|
||||
loc.attr('title',"Click to copy: "+item.location)
|
||||
loc.appendTo(li)
|
||||
}
|
||||
|
||||
li.attr('title',item.description)
|
||||
li.appendTo(box)
|
||||
document.addEventListener("DOMContentLoaded", function () {
|
||||
let url =
|
||||
"https://ical2json.c3re.de/api/?url=https%3A%2F%2Fcloud.c3re.de%2Fremote.php%2Fdav%2Fpublic-calendars%2FRLKKkdjNYgXH8yEz%3Fexport&start=today&end=next+month&maxitems=10";
|
||||
let xmlHttp = new XMLHttpRequest();
|
||||
let zeropad = function (i) {
|
||||
let o = "";
|
||||
if (i <= 9) o += "0";
|
||||
o += i;
|
||||
return o;
|
||||
};
|
||||
xmlHttp.onreadystatechange = function () {
|
||||
if (xmlHttp.readyState == 4 && xmlHttp.status == 200) {
|
||||
let cal = JSON.parse(xmlHttp.responseText);
|
||||
let $ = jQuery;
|
||||
let box = $("#calendar");
|
||||
for (let item of cal) {
|
||||
let li = $("<li/>");
|
||||
//li.text(item.summary)
|
||||
let startDate = new Date(item.start * 1000);
|
||||
let date = $("<span class='date'/>");
|
||||
date.text(
|
||||
zeropad(startDate.getDate()) +
|
||||
"." +
|
||||
zeropad(1 + startDate.getMonth()) +
|
||||
"." +
|
||||
startDate.getFullYear() +
|
||||
" - " +
|
||||
zeropad(startDate.getHours()) +
|
||||
":" +
|
||||
zeropad(startDate.getMinutes())
|
||||
);
|
||||
date.appendTo(li);
|
||||
let summary = $("<span class='summary'/>");
|
||||
summary.text(item.summary);
|
||||
if (item.url) {
|
||||
let a = $("<a/>");
|
||||
a.attr("href", item.url);
|
||||
a.attr("title", item.description);
|
||||
a.append(summary);
|
||||
a.appendTo(li);
|
||||
} else {
|
||||
summary.appendTo(li);
|
||||
}
|
||||
$(".location",box).click(function(){
|
||||
navigator.clipboard.writeText($(this).attr('data-loc'))
|
||||
})
|
||||
}
|
||||
}
|
||||
xmlHttp.open("GET", url, true); // true for asynchronous
|
||||
xmlHttp.send();
|
||||
if (item.location) {
|
||||
let loc = $("<span class='location'>📍</span>");
|
||||
|
||||
});
|
||||
loc.attr("data-loc", item.location);
|
||||
loc.attr("title", "Click to copy: " + item.location);
|
||||
loc.appendTo(li);
|
||||
}
|
||||
|
||||
li.attr("title", item.description);
|
||||
li.appendTo(box);
|
||||
}
|
||||
$(".location", box).click(function () {
|
||||
navigator.clipboard.writeText($(this).attr("data-loc"));
|
||||
});
|
||||
}
|
||||
};
|
||||
xmlHttp.open("GET", url, true); // true for asynchronous
|
||||
xmlHttp.send();
|
||||
});
|
||||
|
|
|
@ -1,21 +1,37 @@
|
|||
document.addEventListener("DOMContentLoaded", function () {
|
||||
const update = function () {
|
||||
fetch("https://spaceapi.c3re.de/")
|
||||
.then(function (response) {
|
||||
return response.json();
|
||||
})
|
||||
.then(function (data) {
|
||||
document
|
||||
.getElementById("ds-img")
|
||||
.setAttribute(
|
||||
"src",
|
||||
data.state.open ? data.state.icon.open : data.state.icon.closed
|
||||
);
|
||||
document.getElementById("ds-status").innerHTML = data.state.open
|
||||
? "Geöffnet"
|
||||
: "Geschlossen";
|
||||
|
||||
document.addEventListener("DOMContentLoaded", function() {
|
||||
const update=function(){
|
||||
fetch("https://spaceapi.c3re.de/").then(function(response) {
|
||||
return( response.json());
|
||||
}).then(function(data) {
|
||||
document.getElementById("ds-img").setAttribute("src",data.state.open?data.state.icon.open:data.state.icon.closed);
|
||||
document.getElementById("ds-status").innerHTML=data.state.open?"Geöffnet":"Geschlossen";
|
||||
|
||||
document.getElementById("ds-temp").innerHTML=""+data.sensors.temperature[0].value+data.sensors.temperature[0].unit;
|
||||
const lastchange=new Date(data.state.lastchange*1000)
|
||||
document.getElementById('ds-date').innerHTML=lastchange.getDate().toString().padStart(2, "0") + "."
|
||||
+ (lastchange.getMonth()+1).toString().padStart(2, "0") + "."
|
||||
+ lastchange.getFullYear() + " "
|
||||
+ lastchange.getHours().toString().padStart(2, "0") + ":"
|
||||
+ lastchange.getMinutes().toString().padStart(2, "0")
|
||||
})
|
||||
}
|
||||
update();
|
||||
setInterval(update,10000);
|
||||
document.getElementById("ds-temp").innerHTML =
|
||||
"" +
|
||||
data.sensors.temperature[0].value +
|
||||
data.sensors.temperature[0].unit;
|
||||
const lastchange = new Date(data.state.lastchange * 1000);
|
||||
document.getElementById("ds-date").innerHTML =
|
||||
lastchange.getDate().toString().padStart(2, "0") +
|
||||
"." +
|
||||
(lastchange.getMonth() + 1).toString().padStart(2, "0") +
|
||||
"." +
|
||||
lastchange.getFullYear() +
|
||||
" " +
|
||||
lastchange.getHours().toString().padStart(2, "0") +
|
||||
":" +
|
||||
lastchange.getMinutes().toString().padStart(2, "0");
|
||||
});
|
||||
};
|
||||
update();
|
||||
setInterval(update, 10000);
|
||||
});
|
||||
|
|
|
@ -1,20 +1,19 @@
|
|||
|
||||
document.addEventListener("DOMContentLoaded", function() {
|
||||
document.querySelectorAll('a').forEach(function(element) {
|
||||
document.addEventListener("DOMContentLoaded", function () {
|
||||
document.querySelectorAll("a").forEach(function (element) {
|
||||
const myhost = window.location.hostname;
|
||||
const linkhost=new URL(element.href).hostname;
|
||||
if(myhost === linkhost) {
|
||||
let prefetchUrl=new URL(element.href).toString()
|
||||
// lest make a prefetch tag for this url
|
||||
let link = document.createElement('link');
|
||||
link.setAttribute('rel', 'prefetch');
|
||||
link.setAttribute('href', prefetchUrl);
|
||||
link.setAttribute('as', 'document');
|
||||
document.head.appendChild(link);
|
||||
element.classList.add("internal");
|
||||
}else {
|
||||
element.setAttribute("target", "_blank");
|
||||
element.classList.add("external");
|
||||
const linkhost = new URL(element.href).hostname;
|
||||
if (myhost === linkhost) {
|
||||
let prefetchUrl = new URL(element.href).toString();
|
||||
// lest make a prefetch tag for this url
|
||||
let link = document.createElement("link");
|
||||
link.setAttribute("rel", "prefetch");
|
||||
link.setAttribute("href", prefetchUrl);
|
||||
link.setAttribute("as", "document");
|
||||
document.head.appendChild(link);
|
||||
element.classList.add("internal");
|
||||
} else {
|
||||
element.setAttribute("target", "_blank");
|
||||
element.classList.add("external");
|
||||
}
|
||||
})
|
||||
});
|
||||
});
|
||||
});
|
||||
|
|
Loading…
Reference in New Issue