diff options
Diffstat (limited to 'templates/talkpost.rs.html')
| -rw-r--r-- | templates/talkpost.rs.html | 124 |
1 files changed, 0 insertions, 124 deletions
diff --git a/templates/talkpost.rs.html b/templates/talkpost.rs.html deleted file mode 100644 index 8e30e7e..0000000 --- a/templates/talkpost.rs.html +++ /dev/null @@ -1,124 +0,0 @@ -@use super::{header_html, footer_html}; -@use crate::{post::Post, tmpl::nag}; - -@(post: Post, body: impl ToHtml, referer: Option<String>) - -@:header_html(Some(&post.front_matter.title.clone()), None) - -<!-- Twitter --> -<meta name="twitter:card" content="summary" /> -<meta name="twitter:site" content="@@theprincessxena" /> -<meta name="twitter:title" content="@post.front_matter.title" /> -<meta name="twitter:description" content="Posted on @post.date.format("%Y-%m-%d")" /> - -<!-- Facebook --> -<meta property="og:type" content="website" /> -<meta property="og:title" content="@post.front_matter.title" /> -<meta property="og:site_name" content="Xe's Blog" /> - -<!-- Description --> -<meta name="description" content="@post.front_matter.title - Xe's Blog" /> -<meta name="author" content="Xe Iaso" /> - -<link rel="canonical" href="https://xeiaso.net/@post.link" /> - -<script type="application/ld+json"> - @{ - "@@context": "http://schema.org", - "@@type": "Article", - "headline": "@post.front_matter.title", - "image": "https://xeiaso.net/static/img/avatar.png", - "url": "https://xeiaso.net/@post.link", - "datePublished": "@post.date.format("%Y-%m-%d")", - "mainEntityOfPage": @{ - "@@type": "WebPage", - "@@id": "https://xeiaso.net/@post.link" - @}, - "author": @{ - "@@type": "Person", - "name": "Xe Iaso" - @}, - "publisher": @{ - "@@type": "Person", - "name": "Xe Iaso" - @} - @} -</script> - -@Html(nag::referer(referer).0) - -@Html(nag::prerelease(&post).0) - -@body - -<a href="@post.front_matter.slides_link.as_ref().unwrap()">Link to the slides</a> - -<hr /> - -<!-- The button that should be clicked. --> -<button onclick="share_on_mastodon()">Share on Mastodon</button> - -<p>This article was posted on @post.detri(). Facts and circumstances may have changed since publication. Please <a href="/contact">contact me</a> before jumping to conclusions if something seems wrong or unclear.</p> - -@if post.front_matter.series.is_some() { - <p>Series: <a href="/blog/series/@post.front_matter.series.as_ref().unwrap()">@post.front_matter.series.as_ref().unwrap()</a></p> -} - -@if post.front_matter.tags.is_some() { - <p>Tags: @for tag in post.front_matter.tags.as_ref().unwrap() { <code>@tag</code> }</p> -} - -<script> - -// The actual function. Set this as an onclick function for your "Share on Mastodon" button -function share_on_mastodon() @{ - // Prefill the form with the user's previously-specified Mastodon instance, if applicable - var default_url = localStorage['mastodon_instance']; - - // If there is no cached instance/domain, then insert a "https://" with no domain at the start of the prompt. - if (!default_url) - default_url = "https://"; - - var instance = prompt("Enter your instance's address: (ex: https://linuxrocks.online)", default_url); - if (instance) @{ - // Handle URL formats - if ( !instance.startsWith("https://") && !instance.startsWith("http://") ) - instance = "https://" + instance; - - // get the current page's url - var url = window.location.href; - - // get the page title from the og:title meta tag, if it exists. - var title = document.querySelectorAll('meta[property="og:title"]')[0].getAttribute("content"); - - // Otherwise, use the <title> tag as the title - if (!title) var title = document.getElementsByTagName("title")[0].innerHTML; - - // Handle slash - if ( !instance.endsWith("/") ) - instance = instance + "/"; - - // Cache the instance/domain for future requests - localStorage['mastodon_instance'] = instance; - - // Hashtags - var hashtags = "#talk"; - - @if post.front_matter.tags.is_some() { - hashtags += "@for tag in post.front_matter.tags.as_ref().unwrap() { #@tag}"; - } - - // Tagging users, such as offical accounts or the author of the post - var author = "@@cadey@@pony.social"; - - // Create the Share URL - // https://someinstance.tld/share?text=URL%20encoded%20text - mastodon_url = instance + "share?text=" + encodeURIComponent(title + "\n\n" + url + "\n\n" + hashtags + " " + author); - - // Open a new window at the share location - window.open(mastodon_url, '_blank'); - @} - @} -</script> - -@:footer_html() |
