Skip to content

Instantly share code, notes, and snippets.

View evandonovan's full-sized avatar

Evan Donovan evandonovan

View GitHub Profile
@evandonovan
evandonovan / character-counting-form.markdown
Last active April 11, 2024 19:38
Character Counting Form
#!/bin/sh
# get entire website via wget
# from https://www.linuxjournal.com/content/downloading-entire-web-site-wget
# replace EXAMPLE.COM with your site
wget \
--recursive \
--no-clobber \
--page-requisites \
--html-extension \
--convert-links \
@evandonovan
evandonovan / menu-include.js
Created May 21, 2019 01:47
Javascript to dynamically include content on an Unbounce page
/* Example code - by Evan Donovan, public domain
Adjust the paths and selectors below as needed.
*/
/**
* Get HTML from another URL -
* Uses the vanilla JS XMLHttpRequest
* https://gomakethings.com/ditching-jquery/#get-html-from-another-page
* The first parameter is a URL to fetch, the second is the JS function that is called to handle the data that is received.
* @param {String} url The URL
@evandonovan
evandonovan / themename_addressfield_formatter__components.php
Created January 10, 2019 03:54
Cleaner formatting for addressfield (plus RDFa microdata)
// Override addressfield_tokens themeing function
// Requires addressfield_tokens module as well as addressfield
// Add to template.php and change THEMENAME to name of your theme, then clear cache
function THEMENAME_addressfield_formatter__components($vars) {
$loc = $vars['address'];
$out = '';
// Note added RDFa microdata - https://schema.org/PostalAddress
// Organization name if present (nothing in first or last name fields)
#!/usr/bin/expect -f
# exp_internal 1 ;# uncomment to turn on expect debugging
set timeout -1
USER="user"
HOST="127.0.0.1"
SRC="/src/dir/here"
DST="/dst/dir/here"
# creates an rsync process that will rsync with excluded directories
#! /bin/bash
# set user
USER="usr"
# set port
PORT="22"
# set remote IP (put yours here)
HOST="127.0.0.1"
@evandonovan
evandonovan / gist:6135556
Created August 1, 2013 21:33
DMOZ scraper
module DMOZ
FIELDS = {
"dmoz.csv" => [
Class.new(Object) do
def name
:title
end
end.new,
Class.new(Object) do
def name
@evandonovan
evandonovan / gist:6135383
Created August 1, 2013 21:12
JobExecutor code
class JobExecutor
attr_reader :data_store, :fields
def initialize(fields)
@jobs = []
@threads_working = 0
@lock = Mutex.new
@data_store = DataStore.new(fields)
@fields = fields
@evandonovan
evandonovan / gist:6135344
Created August 1, 2013 21:08
Web crawler
## Task class
require 'mysql'
module OrgSocGraph
FIELDS = {
"orgs.csv" => [
Class.new(Object) do
def name
:description
end
@evandonovan
evandonovan / gist:1562280
Created January 4, 2012 21:37
Leads code for Round Robin Record Assignment
// leadsRoundRobin.trigger:
trigger leadRoundRobin on Lead (before insert, before update) {
//
//Check if assignment owner has changed
//
Map<Integer,Id> queueIds = new Map<Integer,Id>(); //Trigger index --> Queue ID
Integer idx = 0;
for (Lead l : Trigger.new)