Javascript
unknown
plain_text
3 years ago
3.9 kB
11
Indexable
PÅ HJEMMESIDEN:
<script>
MemberStack.onReady.then(async function(member) {
if (!member.loggedIn) {
document.querySelectorAll("[data-item]").forEach(function(element) {
var likeButton = element.querySelector("[likeButton]")
likeButton.classList.remove("saved")
})
document.querySelector(".like-loader").style.display = "none"
return
}
//get member metadata
var metadata = await member.getMetaData()
var books = metadata.books
if (!books) books = [];
document.querySelectorAll("[data-item]").forEach(function(element) {
var link = element.querySelector("[data-link]")
var url = (new URL(link.href)).pathname
var likeButton = element.querySelector("[likeButton]")
if (!books.includes(url)) likeButton.classList.remove("saved")
likeButton.addEventListener("click", function(event){
event.preventDefault()
if (!books.includes(url)) {
books.push(url)
likeButton.classList.add("saved")
} else {
var index = books.indexOf(url);
if (index > -1) {
books.splice(index, 1);
}
likeButton.classList.remove("saved")
}
member.updateMetaData({books: books})
})
})
document.querySelector(".like-loader").style.display = "none"
})
</script>
PÅ SIDEN SOM HETER "SAVED PHOTOS":
<script>
document.addEventListener("DOMContentLoaded", function(event) {
document.querySelectorAll("[data-image]").forEach(function(image) {
image.dataset.imgsrc = image.src
image.src = ""
})
})
MemberStack.onReady.then(async function(member) {
if (!member.loggedIn) {
document.querySelectorAll("[data-item]").forEach(function(element) {
var likeButton = element.querySelector("[likeButton]")
likeButton.classList.remove("saved")
})
return
}
//get member metadata
var metadata = await member.getMetaData()
var books = metadata.books
if (!books) books = [];
document.querySelectorAll("[data-item]").forEach(function(element) {
var link = element.querySelector("[data-link]")
var url = (new URL(link.href)).pathname
var likeButton = element.querySelector("[likeButton]")
if (!books.includes(url)) {
element.remove()
document.querySelector(".like-loader").style.display = "none"
return
} else {
var image = element.querySelector("[data-image]")
image.src = image.dataset.imgsrc
}
likeButton.addEventListener("click", function(event){
event.preventDefault()
if (!books.includes(url)) {
books.push(url)
likeButton.classList.add("saved")
} else {
var index = books.indexOf(url);
if (index > -1) {
books.splice(index, 1);
}
likeButton.classList.remove("saved")
}
member.updateMetaData({books: books})
})
document.querySelector(".like-loader").style.display = "none"
})
})
</script>
PÅ CMS-MALEN TIL BILDENE PÅ DENNE SIDEN:
<script>
MemberStack.onReady.then(async function(member) {
if (!member.loggedIn) {
var likeButton = document.querySelector("[likeButton]")
likeButton.classList.remove("saved")
return
}
//get member metadata
var metadata = await member.getMetaData()
var books = metadata.books
if (!books) books = [];
var url = window.location.pathname
var likeButton = document.querySelector("[likeButton]")
if (!books.includes(url)) likeButton.classList.remove("saved")
likeButton.addEventListener("click", function(event){
event.preventDefault()
if (!books.includes(url)) {
books.push(url)
likeButton.classList.add("saved")
} else {
var index = books.indexOf(url);
if (index > -1) {
books.splice(index, 1);
}
likeButton.classList.remove("saved")
}
member.updateMetaData({books: books})
})
})
</script>Editor is loading...