mirror of
https://github.com/nunocoracao/blowfish.git
synced 2026-01-30 16:31:52 +01:00
♻️ refactor: Move similar javascript inline code out of line
- Move variables oid, oid_likes out of line - Move background-blur out of line - Move fetch-repo code out of line
This commit is contained in:
13
assets/js/background-blur.js
Normal file
13
assets/js/background-blur.js
Normal file
@@ -0,0 +1,13 @@
|
||||
function backgroundBlur() {
|
||||
const script = document.currentScript;
|
||||
const targetId = script && script.getAttribute("data-target-id") ? script.getAttribute("data-target-id")
|
||||
: (console.error("data-target-id is null"), null);
|
||||
|
||||
window.addEventListener("scroll", () => {
|
||||
const scroll = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0;
|
||||
const backgroundBlur = document.getElementById(targetId);
|
||||
backgroundBlur.style.opacity = scroll / 300;
|
||||
});
|
||||
}
|
||||
|
||||
backgroundBlur();
|
||||
30
assets/js/fetch-repo.js
Normal file
30
assets/js/fetch-repo.js
Normal file
@@ -0,0 +1,30 @@
|
||||
function fetchRepo() {
|
||||
const script = document.currentScript;
|
||||
const repoURL = script && script.getAttribute("data-url") ? script.getAttribute("data-url")
|
||||
: (console.error("data-url is null"), null);
|
||||
const repoId = script && script.getAttribute("data-id") ? script.getAttribute("data-id")
|
||||
: (console.error("data-id is null"), null);
|
||||
const requestObjects =
|
||||
repoId.startsWith("github") ? ["full_name", "description", "stargazers_count", "forks"]
|
||||
: repoId.startsWith("gitlab") ? ["name_with_namespace", "description", "star_count", "forks_count"]
|
||||
: ["full_name", "description", "stars_count", "forks_count"];
|
||||
fetch(repoURL, {
|
||||
headers: new Headers({
|
||||
"User-agent": "Mozilla/4.0 Custom User Agent"
|
||||
})
|
||||
})
|
||||
.then((response) => response.json())
|
||||
.then((data) => {
|
||||
requestObjects.forEach((requestObject) => {
|
||||
let element = document.getElementById(`${repoId}-${requestObject}`);
|
||||
if (requestObject === "stargazers_count" && repoId.startsWith("github")) {
|
||||
element = document.getElementById(`${repoId}-stargazers`);
|
||||
}
|
||||
element ? (element.innerHTML = data[requestObject])
|
||||
: (console.error(`element.innerHTML for '${repoId}-${requestObject}' is null`), null);
|
||||
});
|
||||
})
|
||||
.catch((error) => console.error(error));
|
||||
}
|
||||
|
||||
fetchRepo();
|
||||
@@ -1,15 +1,17 @@
|
||||
var liked_page = false
|
||||
var id = oid ? oid.replaceAll("/", "-") : oid
|
||||
var id_likes = oid_likes ? oid_likes.replaceAll("/", "-") : oid_likes
|
||||
const pageScriptElement = document.currentScript;
|
||||
const oid = pageScriptElement && pageScriptElement.getAttribute("data-oid") ? pageScriptElement.getAttribute("data-oid") : (console.error("data-oid is null"), null);
|
||||
const oid_likes = pageScriptElement && pageScriptElement.getAttribute("data-oid-likes") ? pageScriptElement.getAttribute("data-oid-likes") : (console.error("data-oid-likes is null"), null);
|
||||
const liked_page = false;
|
||||
const id = oid ? oid.replaceAll("/", "-") : oid;
|
||||
const id_likes = oid_likes ? oid_likes.replaceAll("/", "-") : oid_likes;
|
||||
|
||||
if (typeof auth !== 'undefined') {
|
||||
|
||||
var viewed = localStorage.getItem(id);
|
||||
if (typeof auth !== "undefined") {
|
||||
const viewed = localStorage.getItem(id);
|
||||
|
||||
if (!viewed) {
|
||||
auth.signInAnonymously()
|
||||
.then(() => {
|
||||
var docRef = db.collection('views').doc(id)
|
||||
const docRef = db.collection('views').doc(id)
|
||||
localStorage.setItem(id, true);
|
||||
docRef.get().then((doc) => {
|
||||
if (doc.exists) {
|
||||
@@ -24,13 +26,13 @@ if (typeof auth !== 'undefined') {
|
||||
});
|
||||
})
|
||||
.catch((error) => {
|
||||
var errorCode = error.code;
|
||||
var errorMessage = error.message;
|
||||
const errorCode = error.code;
|
||||
const errorMessage = error.message;
|
||||
console.error(errorCode, errorMessage)
|
||||
});
|
||||
}
|
||||
|
||||
var liked = localStorage.getItem(id_likes);
|
||||
const liked = localStorage.getItem(id_likes);
|
||||
|
||||
if (liked) {
|
||||
liked_page = true
|
||||
@@ -44,7 +46,7 @@ if (typeof auth !== 'undefined') {
|
||||
function like_article(id_likes) {
|
||||
auth.signInAnonymously()
|
||||
.then(() => {
|
||||
var docRef = db.collection('likes').doc(id_likes)
|
||||
const docRef = db.collection('likes').doc(id_likes)
|
||||
docRef.get().then((doc) => {
|
||||
liked_page = true
|
||||
localStorage.setItem(id_likes, true);
|
||||
@@ -63,8 +65,8 @@ function like_article(id_likes) {
|
||||
});
|
||||
})
|
||||
.catch((error) => {
|
||||
var errorCode = error.code;
|
||||
var errorMessage = error.message;
|
||||
const errorCode = error.code;
|
||||
const errorMessage = error.message;
|
||||
console.error(errorCode, errorMessage)
|
||||
});
|
||||
}
|
||||
@@ -72,7 +74,7 @@ function like_article(id_likes) {
|
||||
function remove_like_article(id_likes) {
|
||||
auth.signInAnonymously()
|
||||
.then(() => {
|
||||
var docRef = db.collection('likes').doc(id_likes)
|
||||
const docRef = db.collection('likes').doc(id_likes)
|
||||
docRef.get().then((doc) => {
|
||||
liked_page = false
|
||||
localStorage.removeItem(id_likes);
|
||||
@@ -91,8 +93,8 @@ function remove_like_article(id_likes) {
|
||||
});
|
||||
})
|
||||
.catch((error) => {
|
||||
var errorCode = error.code;
|
||||
var errorMessage = error.message;
|
||||
const errorCode = error.code;
|
||||
const errorMessage = error.message;
|
||||
console.error(errorCode, errorMessage)
|
||||
});
|
||||
}
|
||||
@@ -103,4 +105,4 @@ function process_article() {
|
||||
} else {
|
||||
remove_like_article(id_likes)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user