Skip to content

Instantly share code, notes, and snippets.

View walkergv's full-sized avatar

Glenn Walker walkergv

View GitHub Profile
@walkergv
walkergv / elementor.gtm,.js
Created September 20, 2022 20:34
Data Layer Push for GTM Customer Event with Elementor
// Always endure you have given each form a Form ID in the Elementor backend or else action will not track.
jQuery( document ).ready(function( $ ){
jQuery( document ).on('submit_success', function(event) {
// for example, to submit a custom event to GTM DataLayer
//dataLayer.push({event:"GAEvent",eventCategory:"Form Submission", eventAction:event.target.id ,eventLabel:undefined});
});
});
@walkergv
walkergv / financial-data.csv
Created May 3, 2022 03:11
Sample Financial Data
We can make this file beautiful and searchable if this error is corrected: Unclosed quoted field in line 7.
Segment,Country, Product , Discount Band ,Units Sold, Manufacturing Price , Sale Price , Gross Sales , Discounts , Sales , COGS , Profit ,Date,Month Number, Month Name ,Year
Government,Canada, Carretera , None ,1618.5, $3.00 , $20.00 ," $32,370.00 ", $- ," $32,370.00 "," $16,185.00 "," $16,185.00 ",2014-01-01,1, January ,2014
Government,Germany, Carretera , None ,1321, $3.00 , $20.00 ," $26,420.00 ", $- ," $26,420.00 "," $13,210.00 "," $13,210.00 ",2014-01-01,1, January ,2014
Midmarket,France, Carretera , None ,2178, $3.00 , $15.00 ," $32,670.00 ", $- ," $32,670.00 "," $21,780.00 "," $10,890.00 ",2014-06-01,6, June ,2014
Midmarket,Germany, Carretera , None ,888, $3.00 , $15.00 ," $13,320.00 ", $- ," $13,320.00 "," $8,880.00 "," $4,440.00 ",2014-06-01,6, June ,2014
Midmarket,Mexico, Carretera , None ,2470, $3.00 , $15.00 ," $37,050.00 ", $- ," $37,050.00 "," $24,700.00 "," $12,350.00 ",2014-06-01,6, June ,2014
Government,Germany, Carretera , None ,1513, $3.00 , $350.00 ," $529,550.00 ", $- ," $529
@walkergv
walkergv / pulautin.gs
Created December 17, 2019 16:26 — forked from k0sti/pulautin.gs
Yle Skenaariopeli - Korttipulautin
function onOpen() {
var ui = SpreadsheetApp.getUi();
ui.createMenu('Korttipulautin')
.addItem('Luo Ilmiökortit', 'createScenarioCards')
.addItem('Luo Linssikortit', 'createLensCards')
.addToUi();
}
function getNamedRange(name) {
var sheet = SpreadsheetApp.getActive();
@walkergv
walkergv / slidesAppSctipt.js
Created December 17, 2019 16:24
Playing around with Google Slides App Script
function myFunction() {
var currentPresentation = SlidesApp.getActivePresentation();
var obj = currentPresentation.getSlides();
var Master = currentPresentation.getMasters();
var Layouts = Master[1].getLayouts();
for (var i = 0; i < Layouts.length; i++){
Logger.log("Layout = " + Layouts[i].getLayoutName());
var Elements = Layouts[i].getPageElements()
for (var j = 0; j < Elements.length; i++){
@walkergv
walkergv / eventTracker.js
Created April 27, 2016 22:03
Unbounce Event Tracker Script
<script type='text/javascript'>
(function() {
var EventTracker, lpScriptVersion;
lpScriptVersion = "1.2.0";
(function(i, s, o, g, r, a, m) {
i['GoogleAnalyticsObject'] = r;
i[r] = i[r] || function() {
(i[r].q = i[r].q || []).push(arguments)
@walkergv
walkergv / faq.schema.org.json.html
Last active January 30, 2020 08:11
Frequently Asked Questions (FAQ) Pages Schema.org JSON-LD format
<!--When a JSON-LD document's top-level structure is an object that contains no other
properties than @graph and optionally @context (properties that are not mapped to an IRI
or a keyword are ignored), @graph is considered to express the otherwise implicit default graph.
This mechanism can be useful when a number of nodes exist at the document's top level that
share the same context, which is, e.g., the case when a document is flattened. The @graph
keyword collects such nodes in an array and allows the use of a shared context.
From https://www.w3.org/TR/json-ld/#h3_named-graphs
More on graph - http://stackoverflow.com/questions/30505796/json-ld-schema-org-multiple-video-image-page/30506476#30506476
@walkergv
walkergv / powerpoint.macro.layouts.vba
Last active August 29, 2015 14:26
List layouts of each PowerPoint slide in a deck using a Macro.
Public Sub LayoutDebug()
Dim oPres As Presentation
Dim oSld As Slide
Set oPres = ActivePresentation
For Each oSld In oPres.Slides
Debug.Print oSld.SlideIndex & " - " & oSld.CustomLayout.Name
Next
End Sub
@walkergv
walkergv / privacy.policy.txt
Created April 29, 2015 14:46
Privacy Policy Boilerplate
Privacy Policy
Your privacy and security are important to us.
We recognize and respect your need for privacy and security as you visit our site. When you visit our site to view any pages, read product information, or use our on-line calculators and tools, you do so without telling us who you are and without revealing any personal information. While we do not collect identifying information about visitors to our site, we do use standard software to collect information for the strict purpose of tracking activity on our site. This allows us to better understand how many people use our site and which pages and features are most popular. The only information we normally collect and store is:
The name of your Internet service provider
The web site that referred you to us (if any)
The date and time the pages were accessed
The page or pages you requested
@walkergv
walkergv / gtm.tampermonkey.js
Last active February 21, 2023 07:55
Adding GTM (Google Tag Manager) Container Code using Tampermonkey
// ==UserScript==
//@name Name of your script
//@namespace http://use.i.E.your.homepage/
//@version 0.1
//@description Inject GTM bootstrap on my website
//@include http://www.domain.com/* [wildcard url where GTM should inject the code]
// ==/UserScript==
// Google Tag Manager
setTimeout("(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':"+
@walkergv
walkergv / mailt0-scraper.appscript.js
Created February 12, 2015 19:00
Scrapes a list of sites and gathers the values of mailto links
function scrapeAndGetEmail() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName("Sheet1");
var array = sheet.getDataRange().getValues();
var emails = [];
var i = 0;
for (i = 0; i < array[0].length; i++){
var URL = array[i][0].toString();
var response = UrlFetchApp.fetch(URL);