Skip to content

Instantly share code, notes, and snippets.

View bytespider's full-sized avatar

Rob Griffiths bytespider

View GitHub Profile
@bytespider
bytespider / gwladys_street_trading_number.txt
Last active December 29, 2015 17:39
Gwladys Street Trading. They spammy mother fuckers need reporting. Collecting all offending numbers owned by them.
07730 217 054
07730 217 064
07730 217 073
07730 217 076
07730 217 080
07730 217 093
07730 217 098
07730 217 100
07730 217 117
07730 217 131
@bytespider
bytespider / auth.js
Last active December 24, 2015 09:39
Authenticating Geddy.js with Passport HTTP Bearer
var passport = require('passport');
var BearerStrategy = require('passport-http-bearer').Strategy;
var Posts = function () {
var strategy = new BearerStrategy({ session: false }, function ( token, done ) {
if (token == '1234567890') {
return done(null, {username: "someuser"});
}
return done(null);
@bytespider
bytespider / pre-commit.sh
Created June 10, 2013 13:31
Useful git hooks
# stash unstaged changes so they are not included in the tests
git stash -q --keep-index
npm test
RESULT=$?
# put the unstaged changes back
git stash pop -q
[ $RESULT -ne 0 ] && exit 1
<?php
function createMVCRoute($defaults)
{
$application = \Slim\Slim::getInstance();
return function () use ($application, $defaults)
{
$controllerClass = $defaults['controller'];
$defaultAction = isset($defaults['action']) ? $defaults['action'] : 'index';
$args = func_get_args();
@bytespider
bytespider / Open in SimpleHTTPServer.applescript
Last active December 16, 2015 18:58
Serve a folder with Python SimpleHTTPServer
on run
tell application "Finder"
if selection is {} then
set finderSelection to quoted form of POSIX path of (folder of the front window as string)
else
set sel to (first item of (selection as list))
if class of sel is folder then
set finderSelection to quoted form of POSIX path of (sel as string)
else
set finderSelection to quoted form of POSIX path of ((container of sel) as string)
<?php
function is_serialized($input)
{
return is_string($value) && preg_match("/^(O|R|N|a|s|i|b|d):\d+/", $value);
}
@bytespider
bytespider / app.js
Last active December 13, 2015 21:38
Simple HTTP server using the unstable cluster module in Node.js. Using named functions reduces the amount of memory held.
var http = require('http');
var server = http.createServer(serverRequestEvent);
server.listen(8080, serverListeningEvent);
function serverRequestEvent(request, response) {
response.writeHead(200, {'Content-Type': 'text/plain'});
response.write('Hello World');
response.end();
@bytespider
bytespider / promised-server.js
Created February 6, 2013 09:10
Using promises in a node js server
var path = Url.parse(request.url).path;
router.route(path)
.then(dispatchRoute)
.then(handleResponse)
.fail(handleError) // handle application errors
.fail(handleServerError); // catch all others
@bytespider
bytespider / actual-promise.js
Last active December 12, 2015 03:38
I would expect the exception to bubble up to `promise`'s error handler, or am I wrong?
var Q = require('q');
var step1 = Q.promise(function (resolve, reject) { reject('an error on 1'); }); // <-- reject here
var step2 = Q.promise(function (resolve, reject) { resolve(2); });
var step3 = Q.promise(function (resolve, reject) { resolve(3); });
var step4 = Q.promise(function (resolve, reject) { resolve(4); });
step1.then(function (value) {
console.log(value);
return step2;