togglable local & remote timelines.
This commit is contained in:
parent
9dec1ad6cc
commit
2880f2fce7
4 changed files with 57 additions and 10 deletions
|
@ -4,6 +4,7 @@
|
||||||
<meta name="description" content="Change the fucking channel already!">
|
<meta name="description" content="Change the fucking channel already!">
|
||||||
|
|
||||||
<title>The Fediverse</title>
|
<title>The Fediverse</title>
|
||||||
|
<script type="module" src="../JS/setting.js"></script>
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body style="margin: 0px; text-align: center;">
|
<body style="margin: 0px; text-align: center;">
|
||||||
|
@ -11,6 +12,8 @@
|
||||||
<h1>Setting</h1>
|
<h1>Setting</h1>
|
||||||
</header>
|
</header>
|
||||||
<p>Just go back. It ain't ready yet...</p>
|
<p>Just go back. It ain't ready yet...</p>
|
||||||
|
<p class="Local">Toggle Local</p>
|
||||||
|
<p class="Remote">Toggle Remote</p>
|
||||||
<p onclick="history.back()"><b>OK</b></p>
|
<p onclick="history.back()"><b>OK</b></p>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|
|
@ -1,8 +1,18 @@
|
||||||
export async function GetPublicTimelineContent() {
|
export async function GetPublicTimeline(Local = false, Remote = false) {
|
||||||
var Timeline = await fetch("https://wetdry.world/api/v1/timelines/public?limit=12")
|
let Timeline;
|
||||||
.then((response) => response.json());
|
if (Local == true && Remote == true) {
|
||||||
for (let i in Timeline) {
|
console.log("Don't set both Local and Remote timelines to true.");
|
||||||
Timeline[i] = Timeline[i].content;
|
}
|
||||||
|
|
||||||
|
if (Local == true) {
|
||||||
|
Timeline = await fetch("https://wetdry.world/api/v1/timelines/public?limit=12&local=true")
|
||||||
|
.then((response) => response.json());
|
||||||
|
} else if (Remote == true) {
|
||||||
|
Timeline = await fetch("https://wetdry.world/api/v1/timelines/public?limit=12&remote=true")
|
||||||
|
.then((response) => response.json());
|
||||||
|
} else {
|
||||||
|
Timeline = await fetch("https://wetdry.world/api/v1/timelines/public?limit=12")
|
||||||
|
.then((response) => response.json());
|
||||||
}
|
}
|
||||||
return Timeline;
|
return Timeline;
|
||||||
}
|
}
|
||||||
|
|
24
JS/index.js
24
JS/index.js
|
@ -20,9 +20,9 @@ const BackgroundMusic = new Audio("Audio/soft-piano-music-312509.mp3");
|
||||||
|
|
||||||
// Update a timer
|
// Update a timer
|
||||||
function UpdateTime() {
|
function UpdateTime() {
|
||||||
var TimeNow = new Date();
|
let TimeNow = new Date();
|
||||||
var Hour = TimeNow.getHours();
|
let Hour = TimeNow.getHours();
|
||||||
var Minute = TimeNow.getMinutes();
|
let Minute = TimeNow.getMinutes();
|
||||||
|
|
||||||
var WebsiteTime = document.getElementsByClassName("Time")[0]
|
var WebsiteTime = document.getElementsByClassName("Time")[0]
|
||||||
WebsiteTime.innerHTML = "";
|
WebsiteTime.innerHTML = "";
|
||||||
|
@ -98,11 +98,25 @@ ArrowsButton[0].onclick = (event) => {
|
||||||
PosterContainerUpdate();
|
PosterContainerUpdate();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// ActivityPub integration
|
||||||
async function PosterContainerUpdate() {
|
async function PosterContainerUpdate() {
|
||||||
var Content = await ActivityPub.GetPublicTimelineContent();
|
// Cookies for the public timelines
|
||||||
var CenterContainer = document.getElementsByClassName("PostContainer")[1].children;
|
let LocalCookie = document.cookie.split("; ").find((row) => row.startsWith("Local="))?.split("=")[1];
|
||||||
|
var LocalTrue = (LocalCookie === 'true');
|
||||||
|
let RemoteCookie = document.cookie.split("; ").find((row) => row.startsWith("Remote="))?.split("=")[1];
|
||||||
|
var RemoteTrue = (RemoteCookie === 'true');
|
||||||
|
|
||||||
|
let Timeline = await ActivityPub.GetPublicTimeline(LocalTrue, RemoteTrue);
|
||||||
|
let Content = [];
|
||||||
|
let Users = [];
|
||||||
|
for (let i in Timeline) {
|
||||||
|
Content[i] = Timeline[i].content;
|
||||||
|
Users[i] = Timeline[i].account.username;
|
||||||
|
}
|
||||||
|
let CenterContainer = document.getElementsByClassName("PostContainer")[1].children;
|
||||||
for (let i in CenterContainer) {
|
for (let i in CenterContainer) {
|
||||||
CenterContainer[i].getElementsByClassName("PostContent")[0].innerHTML = Content[i];
|
CenterContainer[i].getElementsByClassName("PostContent")[0].innerHTML = Content[i];
|
||||||
|
CenterContainer[i].getElementsByClassName("Username")[0].innerHTML = Users[i];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
20
JS/setting.js
Normal file
20
JS/setting.js
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
let LocalButton = document.getElementsByClassName("Local")[0];
|
||||||
|
let RemoteButton = document.getElementsByClassName("Remote")[0];
|
||||||
|
|
||||||
|
LocalButton.onclick = (event) => {
|
||||||
|
// Toggle the cookie
|
||||||
|
if (document.cookie.split(";").some((item) => item.trim().startsWith("Local="))) {
|
||||||
|
document.cookie = "Local=true;samesite=strict;path=/;expires=Thu, 01 Jan 1970 00:00:00 GMT;";
|
||||||
|
} else {
|
||||||
|
document.cookie = "Local=true;samesite=strict;path=/;";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
RemoteButton.onclick = (event) => {
|
||||||
|
// Toggle the cookie
|
||||||
|
if (document.cookie.split(";").some((item) => item.trim().startsWith("Remote="))) {
|
||||||
|
document.cookie = "Remote=true;samesite=strict;path=/;expires=Thu, 01 Jan 1970 00:00:00 GMT;";
|
||||||
|
} else {
|
||||||
|
document.cookie = "Remote=true;samesite=strict;path=/;";
|
||||||
|
}
|
||||||
|
}
|
Loading…
Add table
Reference in a new issue