Skip to content

Instantly share code, notes, and snippets.

View madr's full-sized avatar
🤘
Elixir, React, Phoenix Liveview, Rust.

Anders Englöf Ytterström madr

🤘
Elixir, React, Phoenix Liveview, Rust.
View GitHub Profile
@madr
madr / gist:2006856
Created March 9, 2012 14:56
Factorials in JavaScript
/*jslint indent: 2 */
var factorial = function (x) {
"use strict";
var results = 1;
if (x === 0) { return results; }
results = x * factorial(x - 1);
return results;
};
@madr
madr / gist:2225916
Created March 28, 2012 12:58
sprintf i JavaScript
/*
Thank you, almighty!
http://www.nczonline.net/blog/2011/10/11/simple-maintainable-templating-with-javascript/
*/
function sprintf(text){
var i=1, args=arguments;
return text.replace(/%s/g, function(pattern){
return (i < args.length) ? args[i++] : "";
});
}
@madr
madr / gist:2406978
Created April 17, 2012 15:45
Image management in SCSS
// -----------------------------------------------------------------
// Image management helpers
//
// Returns `background` declarations in three modes: single,
// sprites, embed.
//
// * `single` will return the original image. This is default in
// dev mode.
// * `sprited` will return the images position on a already
// generated sprite map.
@madr
madr / gist:2420908
Created April 19, 2012 13:12
Simple get_collection
# coding=utf-8
from pymongo import Connection
# configuration
MONGODB_HOST = "localhost"
MONGODB_PORT = 27017
MONGODB_DB = "guidenext"
def get_collection(name):
connection = Connection(MONGODB_HOST, MONGODB_PORT)
@madr
madr / gist:2469953
Created April 23, 2012 09:56
Basic idea of conditional JavaScript execution using CSS media queries, no libraries needed
/*jslint devel:true, browser:true, indent:2, maxlen: 70 */
(function (window) {
"use strict";
var Condition, Listener, watcher;
// Requires window.matchMedia:
// https://developer.mozilla.org/en/DOM/window.matchMedia
if (typeof window.matchMedia === "undefined") { return; }
Condition = function (mq, callback) {
@madr
madr / gist:2632993
Created May 8, 2012 06:15
autocomplete field with callback
/*
By Anders Ytterström 2012.
Example use:
<script src="autocomplete.js"></script>
<script>
var values = ["Hansi", "Andre", "The Omen", "Marcus", "Prince Charles"],
callback = function (k) {
console.log(k);
};
@madr
madr / gist:2887556
Created June 7, 2012 08:57
create local html files from a site behind login using python
'''
Example htmldump_config.py:
url = "http://localhost:5000"
login = "admin@adeprimo.se"
password = "app161770"
def pages_to_validate():
pages = [
# event registration
@madr
madr / gist:2965201
Created June 21, 2012 11:22
Upload static file dir recursively to Amazon S3 using python
from os import listdir
from os.path import isdir
from simples3 import S3Bucket # pip install simples3
root = "../static"
exclude = [".DS_Store"]
A = "access key"
B = "secret key"
bucket = "guidenext"
@madr
madr / gist:2979377
Created June 23, 2012 18:39
S3 reading allowed policy
{
"Version":"2008-10-17",
"Statement":[{
"Sid":"AllowPublicRead",
"Effect":"Allow",
"Principal": {
"AWS": "*"
},
"Action":["s3:GetObject"],
"Resource":["arn:aws:s3:::bucket/*"
@madr
madr / gist:3705921
Created September 12, 2012 10:53
JSLint pre pre-commit hook using Node.js
#!/bin/sh
#
# requires node.js:
# brew install node
# npm install jslint
#
ROOT_DIR=$(git rev-parse --show-toplevel)
JSLINT="${ROOT_DIR}/node_modules/.bin/jslint"