Skip to content

Instantly share code, notes, and snippets.

View samuelcole's full-sized avatar

Sam Cole samuelcole

View GitHub Profile
@samuelcole
samuelcole / gist:1d73da2d45290c558906
Last active August 29, 2015 14:20
Insert or move an object to the front of the list
# given a set of shows that the user is going to
going = [c, e]
# and a set of shows that are available
available = [a, b, c, d]
# 1. insert the going shows at the beginning of the array
# 2. make sure the same show doesn't appear twice
list == [c, e, a, b, d]
Verifying that +samuelcole is my openname (Bitcoin username). https://onename.io/samuelcole
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
i can't believe you aren't on this thing
-----BEGIN PGP SIGNATURE-----
Version: Keybase OpenPGP v1.0.3
Comment: https://keybase.io/crypto
wsBcBAABCgAGBQJUGjSoAAoJEISvsyhSVj73HngIAI9x2C7BQ3ElRCV9EVoH4l6Z
ixeIrD+PHxgIpbjmUYNhYamd5stueMaV+EQw6yvRVOw3fBfdNXPBBmFUNpo06zwH
@samuelcole
samuelcole / keybase.md
Last active August 29, 2015 14:06
keybase.md

Keybase proof

I hereby claim:

  • I am samuelcole on github.
  • I am samuelcole (https://keybase.io/samuelcole) on keybase.
  • I have a public key whose fingerprint is 1DA1 E259 A6E3 C70B 190E C7DB 8949 FB93 61B3 7BF1

To claim this, I am signing this object:

@samuelcole
samuelcole / index.js
Created November 22, 2013 19:49
requirebin sketch
// require something
var hogan = require('hogan.js');
var handlebars = require('handlebars');
var template = 'Hello {{name}}';
console.log(hogan.compile(template));
console.log(handlebars.compile(template));
<!DOCTYPE html>
<html>
<head>
<title>TIC TAC TOE</title>
<style>
td {
height: 100px;
width: 100px;
border-color: black;
border-width: 1px;
function Model(object) {
this.initialize(object);
}
Model.prototype.initialize = function (object) {
this.listeners = {};
this.listeners._global = [];
for (var key in object) {
if (object.hasOwnProperty(key)) {
this.set(key, object[key]);
@samuelcole
samuelcole / jquery.preload_background_image.js
Created March 23, 2012 21:06
A little plugin for preloading background images (for spinners 'n stuff).
(function ($) {
function background_image_url($object) {
var string = $object.css('backgroundImage'),
url_regex = /[("]([^()"]+)[")]/;
return url_regex.exec(string)[1];
}
$.fn.preload_background_image = function () {
return $(this).each(function () {
(new Image()).src = background_image_url($(this));
@samuelcole
samuelcole / storage_polyfill.js
Created June 7, 2011 21:24 — forked from remy/gist:350433
Storage polyfill
/*
Storage Polyfill by Remy Sharp.
Delinted by Samuel Cole.
*/
if (typeof window.localStorage === 'undefined' || typeof window.sessionStorage === 'undefined') {
(function () {
var Storage = function (type) {
function createCookie(name, value, days) {
@samuelcole
samuelcole / ultimate_url_re.js
Created April 14, 2011 19:44
Ultimate Url Regex!
/*
Based off of Gruber's awesome url regex: http://daringfireball.net/2010/07/improved_regex_for_matching_urls
In addition:
- Should match 'example.com', 'google.net', 'google.org'. (only com, net, and org are whitelisted).
- Should not match 'sam@samuelcole.name'.
*/
var URL_RE = /(?:(?=[\s`!()\[\]{};:'".,<>?«»“”‘’])|\b)((?:[a-z][\w-]+:(?:\/{1,3}|[a-z0-9%])|www\d{0,3}[.]|[a-z0-9.\-]+[.][a-z]{2,4}\/|[a-z0-9.\-]+[.](?:com|org|net))(?:[^\s()<>]+|\(([^\s()<>]+|(\([^\s()<>]+\)))*\))*(?:\(([^\s()<>]+|(\([^\s()<>]+\)))*\)|[^\s`!()\[\]{};:'".,<>?«»“”‘’]|\b))/gi