Skip to content

Instantly share code, notes, and snippets.

@aheinze
aheinze / storage.js
Created September 6, 2012 10:11
Local+Session sorage wrapper
;(function(ls, ss){
var fallback = {setItem:function(){}, getItem:function(){ return null;}, removeItem:function(){}},
ls = ls || fallback},
ss = ss || fallback,
JSON = JSON || {stringify:function(){},parse:function(){}};
window.Store = {
"set": function(key, value) {
@aheinze
aheinze / gist:5704831
Last active December 18, 2015 01:38
chown -R www-data:www-data /var/www
chown -R www-data:www-data /var/www
chown -R www-data:www-data /usr/share/nginx/html
@aheinze
aheinze / password_hash (PHP)
Created August 21, 2013 12:39
A Compatibility library with PHP 5.5's simplified password hashing API.
<?php
/**
* A Compatibility library with PHP 5.5's simplified password hashing API.
*
* @author Anthony Ferrara <ircmaxell@php.net>
* @license http://www.opensource.org/licenses/mit-license.html MIT License
* @copyright 2012 The Authors
*/
if (!defined('PASSWORD_DEFAULT')) {

##Given Apache 2 and MySQL are already installed.

#Update MacPorts sudo port selfupdate;sudo port -u upgrade outdated

#Install PHP 5.4.* sudo port install php54 php54-apache2handler ##Activate Apache Module cd /opt/local/apache2/modules

var http = require("http"),
url = require("url"),
path = require("path"),
fs = require("fs"),
port = process.argv[2] || 3000,
mimeTypes = {
'asc' : 'text/plain',
'au' : 'audio/basic',
'avi' : 'video/x-msvideo',
var TemplateEngine = function(html, options) {
var re = /<%([^%>]+)?%>/g,
reExp = /(^( )?(if|for|else|switch|case|break|{|}))(.*)?/g,
code = 'var r=[];\n',
cursor = 0,
add = function(line, js) {
js? (code += line.match(reExp) ? line + '\n' : 'r.push(' + line + ');\n') :
(code += line != '' ? 'r.push("' + line.replace(/"/g, '\\"') + '");\n' : '');
return add;
};
/*
* copyright: https://github.com/atom/fuzzaldrin - https://github.com/atom/fuzzaldrin/blob/master/LICENSE.md
*/
(function(global){
var filter, scorer, FuzzySearch;
/*
Original ported from:
@aheinze
aheinze / riot.view.js
Last active August 29, 2015 14:19
riot.view.js - inline compiled view templates
/**
USAGE:
<script src="riot+compiler.min.js"></script>
<script src="riot.view.js"></script>
<script type="riot/tag" src="my-tag.tag"></script>
<div riot-view>
//
// returns a list of all elements under the cursor
//
function elementsFromPoint(x,y) {
var elements = [], previousPointerEvents = [], current, i, d;
// get all elements via elementFromPoint, and remove them from hit-testing in order
while ((current = document.elementFromPoint(x,y)) && elements.indexOf(current)===-1 && current != null) {
// push the element and its current style
@aheinze
aheinze / gist:211636e42c0c209850f1
Last active August 29, 2015 14:19
seamless-iframe.js
/**
USAGE:
Just load the script in the page loaded by the iframe.
<script src="seamless-iframe.js"></script>
**/