summaryrefslogtreecommitdiff
path: root/scripts/blog.js
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/blog.js')
-rw-r--r--scripts/blog.js167
1 files changed, 85 insertions, 82 deletions
diff --git a/scripts/blog.js b/scripts/blog.js
index cef9a28..8f36fdb 100644
--- a/scripts/blog.js
+++ b/scripts/blog.js
@@ -2,112 +2,115 @@ var evaluatedTags = "";
const clamp = (val, min, max) => Math.min(Math.max(val, min), max)
function postList(n = 0) {
- fetch("/data/posts.json")
- .then((response) => response.json())
- .then((data) => {
- n = clamp(n, 0, data.posts.length);
- if (n < 1) {
- n = data.posts.length;
- }
-
- // i ❤ for loops
- for (var i = n - 1; i >= 0; i--) {
- console.log("dkfjlaafjsdk" + i)
- postCard(data.posts[i]);
- }
- });
+ fetch("/data/posts.json")
+ .then((response) => response.json())
+ .then((data) => {
+ n = clamp(n, 0, data.posts.length);
+ if (n < 1) {
+ n = data.posts.length;
+ }
+
+ // i ❤ for loops
+ for (var i = n - 1; i >= 0; i--) {
+ console.log("dkfjlaafjsdk" + i)
+ postCard(data.posts[i]);
+ }
+ });
}
function postCard(post) {
- var blogContainer = document.getElementById("blog-container");
-
- var title = post.title;
- var date = post.date;
- var author = post.author;
- var tags = post.tags;
- var thumbnail = post.thumbnail;
- var id = post.id;
-
- evaluatedTags = "";
- tags.forEach(createTags)
-
- var template = `
- <div class="card" tabindex="9999">
- <img src="${thumbnail}"
- alt="">
- <div>
- <div class="flex-container-normal chip-container">
- ${evaluatedTags}
- </div>
- <a href="/blog/post.html?post=${id}" class="link">${title}</a>
- <p>${date}</p>
- </div>
- </div>
- `
-
- blogContainer.innerHTML += template;
+ var blogContainer = document.getElementById("blog-container");
+
+ var title = post.title;
+ var date = post.date;
+ var author = post.author;
+ var tags = post.tags;
+ var thumbnail = post.thumbnail;
+ var id = post.id;
+
+ evaluatedTags = "";
+ tags.forEach(createTags)
+
+ var template = `
+ <div class="card" tabindex="9999">
+ <img src="${thumbnail}"
+ alt="">
+ <div>
+ <div class="flex-container-normal chip-container">
+ ${evaluatedTags}
+ </div>
+ <a href="/blog/post.html?post=${id}" class="link">${title}</a>
+ <p>${date}</p>
+ </div>
+ </div>
+ `
+
+ blogContainer.innerHTML += template;
}
function createTags(tag) {
- evaluatedTags += `<span class="chip">${tag}</span>`
+ evaluatedTags += `<span class="chip">${tag}</span>`
}
function getUrlVars() {
- var vars = [], hash;
- var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
- for (var i = 0; i < hashes.length; i++) {
- hash = hashes[i].split('=');
- vars.push(hash[0]);
- vars[hash[0]] = hash[1];
- }
- return vars;
+ var vars = [], hash;
+ var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
+ for (var i = 0; i < hashes.length; i++) {
+ hash = hashes[i].split('=');
+ vars.push(hash[0]);
+ vars[hash[0]] = hash[1];
+ }
+ return vars;
}
// DEPENDENCIES
// * /scripts/scroll.js
function loadPost(n) {
- const md = markdownit({
- 'html': true
- })
-
- fetch("/data/posts.json")
- .then((response) => response.json())
- .then((data) => {
- var post = data.posts[n];
-
- var banner = document.getElementById("banner");
- var title = document.getElementById("title");
- var date = document.getElementById("date");
- var author = document.getElementById("author");
- var tags = document.getElementById("tag-container");
- var content = document.getElementById("content");
-
- banner.src = post.banner;
- title.innerHTML = post.title;
- date.innerHTML = post.date;
- author.innerHTML = post.author;
- post.tags.forEach(createTags);
- tags.innerHTML = evaluatedTags;
-
- fetch(post.path)
- .then((response) => response.text())
+ const md = markdownit({
+ 'html': true
+ })
+
+ fetch("/data/posts.json")
+ .then((response) => response.json())
.then((data) => {
- data = data.replaceAll("-+-+-+", `
+ var post = data.posts[n];
+
+ var banner = document.getElementById("banner");
+ var title = document.getElementById("title");
+ var date = document.getElementById("date");
+ var author = document.getElementById("author");
+ var tags = document.getElementById("tag-container");
+ var content = document.getElementById("content");
+
+ banner.src = post.banner;
+ title.innerHTML = post.title;
+ date.innerHTML = post.date;
+ author.innerHTML = post.author;
+ post.tags.forEach(createTags);
+ tags.innerHTML = evaluatedTags;
+
+ document.title = `Blog / ${post.title} • altaf-creator`;
+
+ fetch(post.path)
+ .then((response) => response.text())
+ .then((data) => {
+ data = data.replaceAll("-+-+-+", `
<section class="normal-section">
<div class="center-grid">
<div class="div-sizing" id="content">
`)
- data = data.replaceAll("+-+-+-", `
+ data = data.replaceAll("+-+-+-", `
</div>
</div>
</section>
`)
- console.log(data);
+ console.log(data);
- var result = md.render(data);
- content.innerHTML = result;
- }).then(() => addNodes());
- });
+ var result = md.render(data);
+ result = result.replaceAll("<a", `<a class="link"`);
+ content.innerHTML = result;
+ }).then(() => addNodes());
+ });
}