Skip to content

Instantly share code, notes, and snippets.

@MadLittleMods
MadLittleMods / change_form.html
Created September 17, 2014 16:44
Django Admin: Save with AJAX - Override `admin/change_form.html` template
{% extends "suit:admin/change_form.html" %}
{% block extrajs %}
{{ block.super }}
<script type="text/javascript">
$(document).ready(function() {
jQuery.fn.filterFind = function(selector) {
return this.find('*') // Take the current selection and find all descendants,
@MadLittleMods
MadLittleMods / require.no-eval-define.js
Last active August 29, 2015 14:06
Does not allow defines to be run by `eval`
/** vim: et:ts=4:sw=4:sts=4
* @license RequireJS 2.1.15 Copyright (c) 2010-2014, The Dojo Foundation All Rights Reserved.
* Available via the MIT or new BSD license.
* see: http://github.com/jrburke/requirejs for details
*/
//Not using strict: uneven strict support in browsers, #392, and causes
//problems with requirejs.exec()/transpiler plugins that may not be strict.
/*jslint regexp: true, nomen: true, sloppy: true */
/*global window, navigator, document, importScripts, setTimeout, opera */
// Run the given tasks and returns their streams
// This will also take care of any task dependencies
//
// This is basically a custom gulp task orchestartor.
//
// Written for this SO question: http://stackoverflow.com/q/28334314/796832
// Gist: https://gist.github.com/MadLittleMods/d4083d2ba35e2f850161
//
// Usage:
// gulp.task('all-txt', function() {
@MadLittleMods
MadLittleMods / App-react-flux-async-dependent-store-init.js
Last active August 29, 2015 14:20
Flux: Initialize from asynchronous storage with interdependent stores - `waitFor` async - The real solution to this problem would be to create a DAO/service to feed data into the store via actions.
import React from 'react';
import SomeStore from '../stores/SomeStore';
import AppActions from '../actions/AppActions';
function gatherSomeStoreState(props, state) {
return {
myRandomNumber: SomeStore.getRandomNumber()
};
}
@MadLittleMods
MadLittleMods / mypostcss.js
Last active August 29, 2015 14:20
A custom System.js plugin to load in post css. Usage: `import 'somestyles.css!mypostcss';`
// Based off of geelen's gists: https://github.com/systemjs/plugin-css/issues/22#issuecomment-89491851
import postcss from 'postcss';
import inlineComments from 'postcss-inline-comment';
import mixins from 'postcss-mixins';
import nestedcss from 'postcss-nested';
import cssvariables from 'postcss-css-variables';
//import autoprefixer from 'autoprefixer-core';
@MadLittleMods
MadLittleMods / wrap-with-html-if.js
Created July 24, 2015 21:02
Wrap some content with a tag without having to deal with the concat hell :P
// tag: '<a href="foo.html">'
//
// ex. usage: `wrapWithHtmlIf('<a href="foo.html">', 'Hello World', function() { return true });`
// output: '<a href="foo.html">Hello World</a>'
var wrapWithHtmlIf = function(tag, content, testCb) {
if(testCb()) {
return tag + content + '</' + tag.match(/<(\w*?)(?:\s|\>)/)[1] + '>';
}
return content;
@MadLittleMods
MadLittleMods / root-eslintrc.json
Created July 30, 2015 11:05
The .eslintrc I put at the root directory. A little bit flexible to allow for others code that gets checked out, etc.
{
"env": {
"browser": 1,
"es6": true,
"amd": true,
"node": true
},
"ecmaFeatures": {
"arrowFunctions": true,
"blockBindings": true,
@MadLittleMods
MadLittleMods / bling.js
Last active September 1, 2015 11:55
My version of bling.js, https://gist.github.com/paulirish/12fb951a8b893a454b32. ES6, a little bit encapsulated.
let $ = document.querySelectorAll.bind(document);
Node.prototype.on = window.on = function(names, fn) {
names.split(/\s/).forEach(function(name) {
this.addEventListener(name, fn);
}.bind(this));
// Keep the chaining going
return this;
};
// Inspired by bling.js: https://gist.github.com/paulirish/12fb951a8b893a454b32
// But we needed full module encapsulation
// This will concat anything including array-like things(like NodeLists or HTMLCollections)
let concat = function(...args) {
return args.reduce((result, item) => {
// If array-like
if(
item && item.length !== undefined && !Array.isArray(item) &&