Skip to content

Instantly share code, notes, and snippets.

@keithws
keithws / download-jive-users-with-points.js
Last active April 2, 2020 00:47
Download a CSV file of all users with points in the Jive Rewards system for your community.
View download-jive-users-with-points.js
/*
* get users with points from Jive Rewards
* this code is meant to be injected into the browser console at
* https://rewards.jivesoftware.com/
* start by logging into your Jive Community and then
* visit the Jive Rewards Console (in your profile menu)
*
* after injection, it will add a "Download CSV" link in the page
* click the link to download a CSV of all Jive Users with Points
*/
@keithws
keithws / json-beautify-bootstrap.js
Last active September 7, 2021 15:24
code to pretty-print JSON responses in the browser
View json-beautify-bootstrap.js
/*
* load the JSON Beautify source
* and let client cache it for 24 hours
*/
(function () {
var now, script, today, url;
url = "https://gist.githubusercontent.com/keithws/6b5333dd09753c26d8cec19414fca2fc/raw/9ae2d49d89b523f1522280eb940456ac49d48f43/json-beautify.js";
now = Date.now();
@keithws
keithws / gtm-ipify.html
Created September 21, 2018 22:40
Get IP address and add it to the Google Tag Manager data layer. Uses the free ipify.org service and intelligent caching to minimize requests.
View gtm-ipify.html
<script>
/*
* get ip address and add it to the GTM data layer
* uses the free ipify.org service
* and intelligent caching to minimize requests
*/
// mark the start of the script loading
window.dataLayer = window.dataLayer || [];
@keithws
keithws / gtm-ipify-ipinfo-tag.html
Created September 21, 2018 22:15
Google Tag Manager tag to load GeoIP data into data layer. Provides country based on IP address to help with GDPR.
View gtm-ipify-ipinfo-tag.html
<script>
/*
* get geographical location data by ip address
* uses the free ipify.org service
* and the paid ipinfo.io service
* and intelligent caching to minimize requests
*/
// mark the start of the script loading
@keithws
keithws / gtm-ipapi-tag.html
Created September 21, 2018 20:16
Google Tag Manager tag load GeoIP data into data layer from ipapi.co. Provides the data necessary to help with GDPR.
View gtm-ipapi-tag.html
<script>
/*
* get geographical location data by ip address
* uses the free ipify.org service
* and the paid ipapi.co service
* and intelligent caching to minimize requests
*/
// mark the start of the script loading
@keithws
keithws / gtm-maxmind-geoip2-tag.html
Last active January 31, 2019 01:51
Google Tag Manager tag to load GeoIP data into the GTM data layer. Helps with GDPR.
View gtm-maxmind-geoip2-tag.html
<script src="//js.maxmind.com/js/apis/geoip2/v2.1/geoip2.js"></script>
<script>
/*
* get geographical location data by ip address
* uses the free ipify.org services
* and the paid Maxmind GeoIP2 Precision services
*/
(function (geoip2) {
@keithws
keithws / 15-ssl-intermediate.conf
Last active November 10, 2023 13:50
Secure Dovecot SSL settings by following Mozilla's Security/Server Side TLS guidelines
View 15-ssl-intermediate.conf
##
## Dovecot SSL settings with Intermediate compatibility
## Follows Mozilla's Security/Server Side TLS guidelines
## https://wiki.mozilla.org/Security/Server_Side_TLS
##
##
## Optionial:
## Disable 3DES ciphersuites to prevent CVE-2016-2183
## by appending ":!3DES" to the ssl_cipher_list
@keithws
keithws / state-from-zipcode.js
Created April 24, 2018 00:09
Function to return the two letter state abbreviation from a US zip code.
View state-from-zipcode.js
function stateFromZIPCode (zipcode) {
var i, item, l, state, statesByZIP;
// list of zip code ranges and the states they reside in
statesByZIP = [
[ 210, 3897, "NH" ],
[ 501, 544, "NY" ],
[ 1001, 5544, "MA" ],
[ 2801, 2940, "RI" ],
@keithws
keithws / gtm.captora.html
Created June 21, 2016 21:59
Captora Tracking Tag which loads jQuery when necessary
View gtm.captora.html
<!-- Captora -->
<script>
/**
* initialize Captora
* requires jQuery, so load jQuery if not present
*/
(function initCaptora () {
"use strict";
@keithws
keithws / mkto.form.listener.html
Last active November 22, 2023 18:59
Marketo Form Listener for Google Tag Manager (GTM)
View mkto.form.listener.html
<script>
/**
* push events to Google Tag Manager when the Marketo Forms 2 Javascript is
* loaded and executed and when Marketo form events occur
* uses the Marketo Forms 2.0 API
* http://developers.marketo.com/documentation/websites/forms-2-0/
*
* @author Keith W. Shaw <keith.w.shaw@gmail.com>
* @license MIT
*/