Skip to content

Instantly share code, notes, and snippets.

View adamzr's full-sized avatar

Adam Richeimer adamzr

View GitHub Profile

Keybase proof

I hereby claim:

  • I am adamzr on github.
  • I am adamzr (https://keybase.io/adamzr) on keybase.
  • I have a public key whose fingerprint is B35D 5DD3 7D25 C7B3 43B0 51C9 CB87 1546 C305 C2CF

To claim this, I am signing this object:

@adamzr
adamzr / DFBRestaurantStatus_Log.sql
Created March 30, 2018 00:05
SQL to track changes to the DFBRestaurantStatus table in MySQL
CREATE TABLE IF NOT EXISTS DFBRestaurantStatusLog (
DFBRestaurantStatusLogId BIGINT NOT NULL AUTO_INCREMENT,
WebRID int NOT NULL,
Operation nvarchar(1) NOT NULL,
UpdatedUTC datetime,
RestaurantStatusTypeID_Prior int,
RestaurantStatusTypeID_After int,
UpdatedBy_Prior varchar(50),
UpdatedBy_After varchar(50),
UpdatedUTC_Prior datetime,
@adamzr
adamzr / .htaccess
Created May 24, 2016 21:33
Add Link headers to preload content
<IfModule mod_headers.c>
Header add Link "</service-worker.js>; rel=preload;"
Header add Link "</favicon-16x16.png>; rel=preload;"
Header add Link "</favicon-96x96.png>; rel=preload;"
Header add Link "</android-chrome-192x192.png>; rel=preload;"
Header add Link "<https://cdn.ampproject.org/v0.js>; rel=preload; crossorigin"
Header add Link "<https://fonts.googleapis.com/css?family=PT+Sans:400,400italic,700|Abril+Fatface>; rel=preload; crossorigin"
Header add Link "<https://cdn.ampproject.org/v0/amp-analytics-0.1.js>; rel=preload; crossorigin"
Header add Link "<https://cdn.ampproject.org/v0/amp-install-serviceworker-0.1.js>; rel=preload; crossorigin"
Header add Link "<https://fonts.gstatic.com/s/abrilfatface/v8/X1g_KwGeBV3ajZIXQ9VnDgYWpCd0FFfjqwFBDnEN0bM.woff2>; rel=preload; crossorigin"

Keybase proof

I hereby claim:

  • I am adamzr on github.
  • I am adamzr (https://keybase.io/adamzr) on keybase.
  • I have a public key whose fingerprint is 0D23 C558 46B4 E49E DB88 F2FC E572 B34C D32E A2A7

To claim this, I am signing this object:

@adamzr
adamzr / error_handling.js
Created February 24, 2016 21:48
The best NodeJS Exception Handler
try {
// Something
}
catch (ex) {
response.writeHead(302, {
'Location': 'https://stackoverflow.com/search?q=[javascript] ' + ex.message
});
response.end();
}
@adamzr
adamzr / make_me_win.js
Created January 1, 2013 22:20
CSP Example: Evil Script
document.querySelectorAll("input[value='1']")[0].parentNode.submit();
@adamzr
adamzr / vote.html
Created January 1, 2013 22:16
CSP Example Compromised Joke List
<h1>List of jokes</h1>
<ul>
<li>
<p>Why did the chicken cross the road? To get to the other side!</p>
<form action="vote" method="post">
<input type="hidden" name="joke_id" value="1" />
<input type="submit" name="Vote"/>
</form>
</li>
<li>
@adamzr
adamzr / vote.html
Created January 1, 2013 20:50
CSP Example: Voting Page
<h1>List of jokes</h1>
<ul>
<li>
<p>Why did the chicken cross the road? To get to the other side!</p>
<form action="vote" method="post">
<input type="hidden" name="joke_id" value="1" />
<input type="submit" name="Vote"/>
</form>
</li>
<li>
<form action="submit_joke" method="post">
<label>Joke:<input type="text" name="joke" placeholder="Why did the chicken cross the road?" /></label>
<input type="submit" />
</form>
@adamzr
adamzr / mybot.js
Created May 25, 2011 23:12
My first node.js IRC bot
//
// My First IRC Bot
//
console.log("Bot Started...")
var irc = require('irc');
//For storing globals
var MYBOT = {};
//Channel to use