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
//Based on https://www.jackbarber.co.uk/blog/2019-04-26-email-address-plugin-for-redactor with small improvements | |
(function ($R) { | |
$R.add('plugin', 'email', { | |
modals: { | |
// this is variable with modal HTML body | |
'emailmodal': '<form action=""><div class="form-item"><label>Email Address</label><input type="text" name="emailaddress"><label>Text</label><input type="text" name="anchortext"></div></form>' | |
}, | |
// set translations | |
translations: { | |
en: { |
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
{# | |
# USAGE: | |
# (transform can either be an object, or an array of objects, aka srcset) | |
# | |
# {{ macro.regular(entry.image.one(), { width: 50, height: 50 }, 'class="block"') }} | |
# ➡️ <img src="..." width="50" height="50" alt="..." class="block" /> | |
# | |
# {{ macro.url(entry.image.one(), { width: 50, height: 50 }) }} | |
# ➡️ /uploads_c/../{...}.jpg | |
# |
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
<?php | |
add_filter( 'timber/twig', 'add_to_twig' ); | |
function add_to_twig( $twig ) { | |
$twig->addFilter( new Timber\Twig_Filter( 'noWidows', 'twigNoWidow' ) ); | |
return $twig; | |
} | |
function twigNoWidow($text = "", $numberOfWords = 1, $outputRaw = true ) { |
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
<?php | |
use yii\base\Event; | |
use Craft; | |
use craft\elements\Entry; | |
Event::on( | |
Entry::class, | |
Entry::EVENT_AFTER_SAVE, | |
function(ModelEvent $event) { |
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
/* https://gist.github.com/nmsdvid/8807205#gistcomment-3168449 */ | |
var debounce = (callback, wait = 250) => { | |
let timer; | |
let last_call = 0; | |
return (...args) => { | |
clearTimeout(timer); | |
const now = Date.now(), time_from_last_call = now - last_call; | |
if (time_from_last_call > wait) { |
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
/* Based on https://github.com/appleple/react-modal-video/ */ | |
<template> | |
<div v-if="isOpen"> | |
<div | |
:class="classNames.modalVideo" | |
tabIndex='-1' | |
role='dialog' | |
:aria-label="aria.openMessage" | |
@click="$emit('update:isOpen', false)" |
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
<template> | |
<div | |
ref="stepsApp" | |
class="steps" | |
> | |
<div class="step-item is-active is-success"> | |
<div class="step-marker"> | |
1 | |
</div> | |
<div class="step-details"> |
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
import gql from 'graphql-tag' | |
import { print } from 'graphql/language/printer' | |
import richTextFragment from './contentModules/richText.gql' | |
import logoBlockFragment from './contentModules/logoBlock.gql' | |
import embedBlockFragment from './contentModules/embedBlock.gql' | |
import videoBlockFragment from './contentModules/videoBlock.gql' | |
import imageCollageFragment from './contentModules/imageCollage.gql' | |
import imageGridFragment from './contentModules/imageGrid.gql' | |
import slideshowBlockFragment from './contentModules/slideshowBlock.gql' | |
import singleImageFragment from './contentModules/singleImage.gql' |
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
import Vue from 'vue' | |
import { debounce } from './utils/debounce'; | |
import { ProCatalogCategoriesQuery } from './queries/proCatalogCategories.gql'; | |
import { makeProCatalogResourcesQuery } from './queries/proCatalogResources'; | |
import Loading from './components/loading.vue'; | |
const GraphqlEndpoint = '/api' | |
const ResultsPerPage = 12; | |
const el = document.querySelector('#professional-catalog-app') |