JSFiddle - React, Tailwind, and code Playground
pushover api v05
by dledle2
JavaScript
javascript: try {
void(function() {
function remainder(x, y) {
while (x >= y) {
x -= y;
}
return x;
}
function getDayOfMonthSuffix(dayOfMonth) {
if (dayOfMonth >= 11 && dayOfMonth <= 13) {
return 'th';
}
/* switch (dayOfMonth % 10) { */
switch (remainder(dayOfMonth, 10)) {
case 1: return "st";
case 2: return "nd";
case 3: return "rd";
default: return "th";
}
}
var now = new Date();
var monthNames = ["January", "February", "March", "April", "May", "June", "July",
"August", "September", "October", "November", "December"
];
var monthIndex = now.getMonth();
var monthName = monthNames[monthIndex];
var dayOfMonth = now.getDate();
var suffix = getDayOfMonthSuffix(dayOfMonth);
var formattedDate = monthName + ' ' + dayOfMonth + suffix;
var currentTime = now.toLocaleTimeString([], {hour: '2-digit', minute:'2-digit'});
var message = 'hello world ' + currentTime + ' ' + formattedDate;
var pushNotificationCount = 0;
function sendPushNotification() {
var xhr = new XMLHttpRequest();
xhr.open('POST', 'https://api.pushover.net/1/messages.json', true);
xhr.setRequestHeader('Content-Type', 'application/json');
var data = {
token: 'xxxx',
user: 'xxx',
message: message,
};
xhr.send(JSON.stringify(data));
}
// Check for the condition every 1 second using setInterval
var intervalId = setInterval(function() {
var blurbElements = document.querySelectorAll('#blurb');
if (blurbElements.length > 0 && blurbElements[0].innerHTML.includes('loads failed')) {
sendPushNotification();
pushNotificationCount++;
if (pushNotificationCount >= 2) {
clearInterval(intervalId);
}
}
}, 10 * 1000);
}())
} catch (e) {}
void(0);