adding myself as an author and setting up a newsletter base

This commit is contained in:
Chris Cochrun 2022-11-08 09:28:17 -06:00
parent 8c6910f269
commit d4f5a3cec9
5 changed files with 312 additions and 102 deletions

View file

@ -1405,22 +1405,22 @@ select {
right: 0px;
}
.bottom-0 {
bottom: 0px;
}
.top-0 {
top: 0px;
}
.top-\[100vh\] {
top: 100vh;
}
.bottom-0 {
bottom: 0px;
}
.top-\[calc\(100vh-5\.5rem\)\] {
top: calc(100vh - 5.5rem);
}
.top-0 {
top: 0px;
}
.right-0 {
right: 0px;
}
@ -1441,14 +1441,14 @@ select {
order: -9999;
}
.m-4 {
margin: 1rem;
}
.m-auto {
margin: auto;
}
.m-4 {
margin: 1rem;
}
.m-0 {
margin: 0px;
}
@ -1651,10 +1651,6 @@ select {
display: none;
}
.h-96 {
height: 24rem;
}
.h-screen {
height: 100vh;
}
@ -1663,6 +1659,10 @@ select {
height: 3rem;
}
.h-96 {
height: 24rem;
}
.h-24 {
height: 6rem;
}
@ -1719,6 +1719,10 @@ select {
min-height: 148px;
}
.w-12 {
width: 3rem;
}
.w-full {
width: 100%;
}
@ -1731,10 +1735,6 @@ select {
width: 9rem;
}
.w-12 {
width: 3rem;
}
.w-24 {
width: 6rem;
}
@ -1771,6 +1771,10 @@ select {
max-width: 100%;
}
.max-w-7xl {
max-width: 80rem;
}
.max-w-prose {
max-width: 65ch;
}
@ -1779,10 +1783,6 @@ select {
max-width: 5rem;
}
.max-w-7xl {
max-width: 80rem;
}
.max-w-xl {
max-width: 36rem;
}
@ -1912,6 +1912,10 @@ select {
scroll-behavior: smooth;
}
.rounded-full {
border-radius: 9999px;
}
.rounded-xl {
border-radius: 0.75rem;
}
@ -1924,10 +1928,6 @@ select {
border-radius: 0.375rem;
}
.rounded-full {
border-radius: 9999px;
}
.rounded-2xl {
border-radius: 1rem;
}
@ -1986,10 +1986,6 @@ select {
border-color: rgba(var(--color-primary-500), var(--tw-border-opacity));
}
.bg-neutral-100\/50 {
background-color: rgba(var(--color-neutral-100), 0.5);
}
.bg-neutral {
--tw-bg-opacity: 1;
background-color: rgba(var(--color-neutral), var(--tw-bg-opacity));
@ -2004,6 +2000,10 @@ select {
background-color: rgba(var(--color-neutral), 0.5);
}
.bg-neutral-100\/50 {
background-color: rgba(var(--color-neutral-100), 0.5);
}
.bg-transparent {
background-color: transparent;
}
@ -2110,6 +2110,21 @@ select {
padding: 0.25rem;
}
.px-6 {
padding-left: 1.5rem;
padding-right: 1.5rem;
}
.px-3 {
padding-left: 0.75rem;
padding-right: 0.75rem;
}
.py-1 {
padding-top: 0.25rem;
padding-bottom: 0.25rem;
}
.px-0 {
padding-left: 0px;
padding-right: 0px;
@ -2120,11 +2135,6 @@ select {
padding-bottom: 2rem;
}
.py-1 {
padding-top: 0.25rem;
padding-bottom: 0.25rem;
}
.px-4 {
padding-left: 1rem;
padding-right: 1rem;
@ -2135,11 +2145,6 @@ select {
padding-bottom: 1.5rem;
}
.px-6 {
padding-left: 1.5rem;
padding-right: 1.5rem;
}
.px-10 {
padding-left: 2.5rem;
padding-right: 2.5rem;
@ -2155,11 +2160,6 @@ select {
padding-right: 0.25rem;
}
.px-3 {
padding-left: 0.75rem;
padding-right: 0.75rem;
}
.px-2 {
padding-left: 0.5rem;
padding-right: 0.5rem;
@ -2263,6 +2263,16 @@ select {
line-height: 2.5rem;
}
.text-lg {
font-size: 1.125rem;
line-height: 1.75rem;
}
.text-sm {
font-size: 0.875rem;
line-height: 1.25rem;
}
.text-xl {
font-size: 1.25rem;
line-height: 1.75rem;
@ -2273,11 +2283,6 @@ select {
line-height: 1rem;
}
.text-sm {
font-size: 0.875rem;
line-height: 1.25rem;
}
.text-base {
font-size: 1rem;
line-height: 1.5rem;
@ -2293,11 +2298,6 @@ select {
line-height: 2rem;
}
.text-lg {
font-size: 1.125rem;
line-height: 1.75rem;
}
.text-\[0\.6rem\] {
font-size: 0.6rem;
}
@ -2306,6 +2306,10 @@ select {
font-weight: 800;
}
.font-bold {
font-weight: 700;
}
.font-semibold {
font-weight: 600;
}
@ -2314,10 +2318,6 @@ select {
font-weight: 500;
}
.font-bold {
font-weight: 700;
}
.font-normal {
font-weight: 400;
}
@ -2330,14 +2330,14 @@ select {
font-style: italic;
}
.leading-loose {
line-height: 2;
}
.leading-7 {
line-height: 1.75rem;
}
.leading-loose {
line-height: 2;
}
.leading-6 {
line-height: 1.5rem;
}
@ -2351,6 +2351,16 @@ select {
color: rgba(var(--color-neutral-900), var(--tw-text-opacity));
}
.text-primary-600 {
--tw-text-opacity: 1;
color: rgba(var(--color-primary-600), var(--tw-text-opacity));
}
.text-neutral-700 {
--tw-text-opacity: 1;
color: rgba(var(--color-neutral-700), var(--tw-text-opacity));
}
.text-neutral-800 {
--tw-text-opacity: 1;
color: rgba(var(--color-neutral-800), var(--tw-text-opacity));
@ -2366,11 +2376,6 @@ select {
color: rgba(var(--color-neutral-500), var(--tw-text-opacity));
}
.text-neutral-700 {
--tw-text-opacity: 1;
color: rgba(var(--color-neutral-700), var(--tw-text-opacity));
}
.text-primary-300 {
--tw-text-opacity: 1;
color: rgba(var(--color-primary-300), var(--tw-text-opacity));
@ -2386,11 +2391,6 @@ select {
color: rgba(var(--color-neutral-300), var(--tw-text-opacity));
}
.text-primary-600 {
--tw-text-opacity: 1;
color: rgba(var(--color-primary-600), var(--tw-text-opacity));
}
.text-primary-500 {
--tw-text-opacity: 1;
color: rgba(var(--color-primary-500), var(--tw-text-opacity));
@ -2470,14 +2470,14 @@ select {
box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.backdrop-blur-sm {
--tw-backdrop-blur: blur(4px);
.backdrop-blur {
--tw-backdrop-blur: blur(8px);
-webkit-backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
}
.backdrop-blur {
--tw-backdrop-blur: blur(8px);
.backdrop-blur-sm {
--tw-backdrop-blur: blur(4px);
-webkit-backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
}
@ -3389,14 +3389,14 @@ body:has(#menu-controller:checked) {
border-left-width: 1px;
}
[dir="ltr"] .ltr\:pl-5 {
padding-left: 1.25rem;
}
[dir="ltr"] .ltr\:pr-2 {
padding-right: 0.5rem;
}
[dir="ltr"] .ltr\:pl-5 {
padding-left: 1.25rem;
}
[dir="ltr"] .ltr\:pr-3 {
padding-right: 0.75rem;
}
@ -3445,14 +3445,14 @@ body:has(#menu-controller:checked) {
border-right-width: 1px;
}
[dir="rtl"] .rtl\:pr-5 {
padding-right: 1.25rem;
}
[dir="rtl"] .rtl\:pl-2 {
padding-left: 0.5rem;
}
[dir="rtl"] .rtl\:pr-5 {
padding-right: 1.25rem;
}
[dir="rtl"] .rtl\:pl-3 {
padding-left: 0.75rem;
}
@ -3484,10 +3484,6 @@ body:has(#menu-controller:checked) {
border-color: rgba(var(--color-primary-600), var(--tw-border-opacity));
}
.dark .dark\:bg-neutral-900\/50 {
background-color: rgba(var(--color-neutral-900), 0.5);
}
.dark .dark\:bg-neutral-800 {
--tw-bg-opacity: 1;
background-color: rgba(var(--color-neutral-800), var(--tw-bg-opacity));
@ -3502,6 +3498,10 @@ body:has(#menu-controller:checked) {
background-color: rgba(var(--color-neutral-800), 0.5);
}
.dark .dark\:bg-neutral-900\/50 {
background-color: rgba(var(--color-neutral-900), 0.5);
}
.dark .dark\:bg-primary-400 {
--tw-bg-opacity: 1;
background-color: rgba(var(--color-primary-400), var(--tw-bg-opacity));
@ -3583,6 +3583,11 @@ body:has(#menu-controller:checked) {
color: rgba(var(--color-neutral), var(--tw-text-opacity));
}
.dark .dark\:text-primary-400 {
--tw-text-opacity: 1;
color: rgba(var(--color-primary-400), var(--tw-text-opacity));
}
.dark .dark\:text-neutral-500 {
--tw-text-opacity: 1;
color: rgba(var(--color-neutral-500), var(--tw-text-opacity));
@ -3603,11 +3608,6 @@ body:has(#menu-controller:checked) {
color: rgba(var(--color-neutral-300), var(--tw-text-opacity));
}
.dark .dark\:text-primary-400 {
--tw-text-opacity: 1;
color: rgba(var(--color-primary-400), var(--tw-text-opacity));
}
.dark .dark\:text-neutral-800 {
--tw-text-opacity: 1;
color: rgba(var(--color-neutral-800), var(--tw-text-opacity));
@ -3710,16 +3710,16 @@ body:has(#menu-controller:checked) {
padding: 1.5rem;
}
.sm\:px-6 {
padding-left: 1.5rem;
padding-right: 1.5rem;
}
.sm\:px-14 {
padding-left: 3.5rem;
padding-right: 3.5rem;
}
.sm\:px-6 {
padding-left: 1.5rem;
padding-right: 1.5rem;
}
.sm\:py-10 {
padding-top: 2.5rem;
padding-bottom: 2.5rem;

View file

@ -5,7 +5,9 @@ tags: ["Chris & Abbie Cochrun", "Leadership Retreat", "Northern Valley", "180 E
featured_image: ""
description: "At TFC, we do our best to make sure teens become a lot more than just Christians."
summary: "At TFC, we do our best to make sure teens become a lot more than just Christians."
staff: ["Chris & Abbie Cochrun"]
showAuthor: false
authors: ["chriscochrun"]
showAuthorsBadges: false
---
# 👑 Leaders Rise Up!

View file

@ -2,6 +2,7 @@
title: "Newsletters"
date: 2022-10-28T12:00:00-05:00
groupByYear: true
showAuthorsBadges: true
cascade:
showDate: true
showWordCount: true

View file

@ -0,0 +1,10 @@
{
"name": "Chris Cochrun",
"image" : "img/chris_avatar.jpg",
"bio": "Staff Member & IT Director",
"social": [
{ "github": "https://github.com/chriscochrun" },
{ "facebook": "https://facebook.com/chriscochrun" },
{ "reddit": "https://reddit.com/user/Litanys" }
]
}

View file

@ -0,0 +1,197 @@
{{ define "main" }}
<article>
{{ if .Params.showHero | default (.Site.Params.article.showHero | default false) }}
{{ $heroStyle := print "partials/hero/" .Site.Params.article.heroStyle ".html" }}
{{ if templates.Exists $heroStyle }}
{{ partial $heroStyle . }}
{{ else }}
{{ partial "partials/hero/basic.html" . }}
{{ end }}
{{- end -}}
<header id="single_header" class="mt-5 max-w-prose">
{{ if .Params.showBreadcrumbs | default (.Site.Params.article.showBreadcrumbs | default false) }}
{{ partial "breadcrumbs.html" . }}
{{ end }}
<h1 class="mt-0 text-4xl font-extrabold text-neutral-900 dark:text-neutral">
{{ .Title | emojify }}
</h1>
<div class="mt-1 mb-6 text-base text-neutral-500 dark:text-neutral-400 print:hidden">
{{ partial "article-meta.html" (dict "context" . "scope" "single") }}
</div>
</header>
<section class="flex flex-col max-w-full mt-0 prose dark:prose-invert lg:flex-row">
{{ if and (.Params.showTableOfContents | default (.Site.Params.article.showTableOfContents | default false)) (in
.TableOfContents "<ul") }}
<div class="order-first sm:max-w-prose lg:ml-auto px-0 lg:order-last lg:max-w-xs ltr:lg:pl-8 rtl:lg:pr-8">
<div class="toc ltr:pl-5 rtl:pr-5 print:hidden lg:sticky {{ if eq .Site.Params.header.layout "fixed" }} lg:top-[140px] {{ else }} lg:top-10 {{ end }}">
{{ partial "toc.html" . }}
</div>
</div>
{{ end }}
<div class="min-w-0 min-h-0 max-w-prose">
{{ partial "series.html" . }}
{{ .Content | emojify }}
</br></br>
{{ partial "series-closed.html" . }}
</div>
<script>
var liked_article = false
if (typeof auth !== 'undefined') {
var oid = "views_{{ .File.Path }}"
var id = oid ? oid.replaceAll("/", "-") : oid
var viewed = localStorage.getItem(id);
if (!viewed) {
auth.signInAnonymously()
.then(() => {
var docRef = db.collection('views').doc(id)
localStorage.setItem(id, true);
docRef.get().then((doc) => {
if (doc.exists) {
db.collection('views').doc(id).update({
views: firebase.firestore.FieldValue.increment(1)
});
} else {
db.collection('views').doc(id).set({ views: 1 })
}
}).catch((error) => {
console.log("Error getting document:", error);
});
})
.catch((error) => {
var errorCode = error.code;
var errorMessage = error.message;
console.error(errorCode, errorMessage)
});
}
var oid_likes = "likes_{{ .File.Path }}"
var id_likes = oid_likes ? oid_likes.replaceAll("/", "-") : oid_likes
var liked = localStorage.getItem(id_likes);
if (liked) {
liked_article = true
document.querySelectorAll("span[id='likes_button_heart']")[0].style.display = ""
document.querySelectorAll("span[id='likes_button_emtpty_heart']")[0].style.display = "none"
document.querySelectorAll("span[id='likes_button_text']")[0].innerText = ""
}
}
function like_article(id_likes) {
auth.signInAnonymously()
.then(() => {
var docRef = db.collection('likes').doc(id_likes)
docRef.get().then((doc) => {
liked_article = true
localStorage.setItem(id_likes, true);
document.querySelectorAll("span[id='likes_button_heart']")[0].style.display = ""
document.querySelectorAll("span[id='likes_button_emtpty_heart']")[0].style.display = "none"
document.querySelectorAll("span[id='likes_button_text']")[0].innerText = ""
if (doc.exists) {
db.collection('likes').doc(id_likes).update({
likes: firebase.firestore.FieldValue.increment(1)
});
} else {
db.collection('likes').doc(id_likes).set({ likes: 1 })
}
}).catch((error) => {
console.log("Error getting document:", error);
});
})
.catch((error) => {
var errorCode = error.code;
var errorMessage = error.message;
console.error(errorCode, errorMessage)
});
}
function remove_like_article(id_likes) {
auth.signInAnonymously()
.then(() => {
var docRef = db.collection('likes').doc(id_likes)
docRef.get().then((doc) => {
liked_article = false
localStorage.removeItem(id_likes);
document.querySelectorAll("span[id='likes_button_heart']")[0].style.display = "none"
document.querySelectorAll("span[id='likes_button_emtpty_heart']")[0].style.display = ""
document.querySelectorAll("span[id='likes_button_text']")[0].innerText = "\xa0Like"
if (doc.exists) {
db.collection('likes').doc(id_likes).update({
likes: firebase.firestore.FieldValue.increment(-1)
});
} else {
db.collection('likes').doc(id_likes).set({ likes: 0 })
}
}).catch((error) => {
console.log("Error getting document:", error);
});
})
.catch((error) => {
var errorCode = error.code;
var errorMessage = error.message;
console.error(errorCode, errorMessage)
});
}
function process_article() {
var oid_likes = "likes_{{ .File.Path }}"
var id_likes = oid_likes ? oid_likes.replaceAll("/", "-") : oid_likes
if (!liked_article) {
like_article(id_likes)
} else {
remove_like_article(id_likes)
}
}
</script>
</section>
<footer class="pt-8 max-w-prose print:hidden">
{{ partial "author.html" . }}
{{ $authorsData := .Site.Data.authors }}
{{ $taxonomies := .Site.Taxonomies.authors }}
{{ $baseURL := .Site.BaseURL }}
{{ if not (strings.HasSuffix $baseURL "/") }}
{{ $baseURL = delimit (slice $baseURL "/") "" }}
{{ end }}
{{ range $author := .Page.Params.authors }}
{{ $authorData := index $authorsData $author }}
{{- if $authorData -}}
{{ $taxonomyLink := 0 }}
{{ range $taxonomyname, $taxonomy := $taxonomies }}
{{ if (eq $taxonomyname $author) }}
{{ $taxonomyLink = delimit (slice $baseURL "/authors/" $author) "" }}
{{ end }}
{{ end }}
{{ partial "author-extra.html" (dict "context" . "data" $authorData "link" $taxonomyLink) }}
{{- end -}}
{{ end }}
{{ partial "sharing-links.html" . }}
{{ partial "article-pagination.html" . }}
{{ if .Params.showComments | default (.Site.Params.article.showComments | default false) }}
{{ if templates.Exists "partials/comments.html" }}
<div class="pt-3">
<hr class="border-dotted border-neutral-300 dark:border-neutral-600" />
<div class="pt-3">
{{ partial "comments.html" . }}
</div>
</div>
{{ else }}
{{ warnf "[BLOWFISH] Comments are enabled for %s but no comments partial exists." .File.Path }}
{{ end }}
{{ end }}
</footer>
</article>
{{ end }}