View checkbox.required-any.js
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Allow 'require-ing' at least one option from a list of checkboxes | |
// with the same name. Polyfill for modifying the default HTML behaviour | |
// which is requiring all checkboxes with the 'required' attribute | |
// | |
// eg: | |
// <input type=checkbox name=eg value=a data-required-any> | |
// <input type=checkbox name=eg value=b data-required-any> | |
// <input type=checkbox name=eg value=c data-required-any> | |
(function (window) { |
View nginx.conf
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# | |
# WARNING: This is not a complete NGINX configuration file | |
# It tries to highlight just the directives used to enable FastCGI microcaching | |
# as explained in my “Micro-caching in Nginx for High Performance” talk | |
# https://speakerdeck.com/rungta/micro-caching-in-nginx-for-high-performance | |
# Video: https://youtu.be/termdb4vepA?t=2199 | |
# | |
http { | |
#... |
View checkboxscope.js
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
(function (w) { | |
function closeScopedCheckboxes(checkbox_selector, scope_selector) { | |
return function (event) { | |
var el = event.target; | |
document | |
.querySelectorAll(scope_selector) | |
.forEach(function(toggleScope) { | |
if (!toggleScope.contains(el)) { | |
Array |
View checkboxradio.js
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
(function(w) { | |
function checkboxAsRadio(selector) { | |
return function (event) { | |
var el = event.target; | |
// only proceed if we have a matching checkbox | |
if (!(el instanceof HTMLInputElement && el.matches(selector))) { | |
return; | |
} |
View jquery.external-links-new-window.js
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
* Open all external links in a new window | |
*/ | |
(function ($) { | |
function openExternalLinksInNewWindows() { | |
$('a') | |
.filter('[href^="http"], [href^="//"]') | |
.not('[href*="' + window.location.host + '"]') | |
.attr('rel', function (i, val) { | |
return 'noopener noreferrer ' + (val || ''); |
View _init.twig
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{# _init.twig #} | |
{# | |
Usage | |
extend `_init` | |
set `doNotCache` to true to exclude a page | |
set `cacheKey` to a string to cache a template globally | |
(as opposed to by URL). eg: 404 template | |
modify `cacheKeyPrefix` to include variation params, if any | |
#} |
View fontloader.js
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
* fontloader.js | |
Helps you avoid FOIT and progressively load in multiple | |
sets of webfonts as asynchronous non-blocking resources. | |
Apply them on the page when the fonts are ready, like so: | |
.title-type { font-family: serif; } | |
.prose-type { font-family: sans-serif; } | |
View _vanity_router.twig
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{# Treat the slug as a template path #} | |
{% set template = include(top_level_slug, ignore_missing = true) %} | |
{# Render the template contents if found, otherwise treat the slug as a username #} | |
{% if template is not empty %} | |
{{- template|raw -}} | |
{% else %} | |
{%- include 'users/_profile' with { username: top_level_slug } -%} | |
{% endif %} |
View trello_to_markdown.py
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#-*- coding: utf-8 -*- | |
""" | |
Render a Trello board's contents from JSON into a more human readable format (Markdown) | |
Sample output: | |
Board Name | |
========== | |
List Name |
View smoothscroll.jquery.js
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// from https://css-tricks.com/snippets/jquery/smooth-scrolling/ | |
// modified to use native scrollIntoView when supported | |
// Select all links with hashes | |
$('html').on('click', 'a[href*="#"]', function(event) { | |
// On-page links | |
if ( | |
location.pathname.replace(/^\//, '') == this.pathname.replace(/^\//, '') && | |
location.hostname == this.hostname | |
) { |
NewerOlder