Skip to content

Instantly share code, notes, and snippets.

View eduardo-matos's full-sized avatar

Eduardo Matos eduardo-matos

View GitHub Profile
@eduardo-matos
eduardo-matos / dtl.js
Last active December 19, 2015 23:59
Experiments DojoX DTL (Django Templating Language)
require([
'dojox/dtl',
'dojox/dtl/Context',
'dojox/dtl/filter/strings'
], function (dtl) {
var tplString = 'Hello {{ name|title }}! ' +
'seu nome tem {{ name|wordCount }} palavras!'
var tpl = new dtl.Template(tplString);
@eduardo-matos
eduardo-matos / release.profile.js
Last active December 20, 2015 10:31
Profile padrão para o build do Dojo
var profile = {
basePath: "./",
releaseDir: "./dist/",
mini: true,
optimize: 'closure',
layerOptimize: 'closure',
cssOptimize: 'comments',
stripConsole: 'all',
selectorEngine: 'lite',
@eduardo-matos
eduardo-matos / EmailOrUsernameModelBackend.py
Created August 16, 2013 11:26
Django email authentication
from django.conf import settings
from django.contrib.auth.models import User
class EmailOrUsernameModelBackend(object):
def authenticate(self, username=None, password=None):
if '@' in username:
kwargs = {'email': username}
else:
kwargs = {'username': username}
try:
from fabric.api import env, local, require
def deploy():
"""fab [environment] deploy"""
require('environment')
maintenance_on()
push()
syncdb()
migrate()
@eduardo-matos
eduardo-matos / loja.js
Created August 20, 2013 11:19
Detecção de características da loja
define('loja', ['dojo/has'], function (has) {
var id = 123;
var pagina = 'departamento'
var depto = 'eletronicos'
has.add('loja-id-' + id, true);
has.add('loja-pagina-' + pagina, true);
has.add('loja-depto-' + depto, true);
return has;
@eduardo-matos
eduardo-matos / InfiniteIterator.js
Created August 26, 2013 16:40
Infinite iterator in Dojo
define('InfiniteIterator', [
'dojox/collections/_base',
'dojo/_base/lang'
], function (
dxc,
lang
) {
'use strict';
function InfiniteIterator(array) {
@eduardo-matos
eduardo-matos / templateloader.py
Created September 1, 2013 00:39
Template loader no Django.
from django.template import TemplateDoesNotExist
def load_template_source(template_name, template_dirs=None):
try:
return open(template_name).read(), template_name
except IOError:
raise TemplateDoesNotExist, template_name
mkdir heroku
cd heroku/
virtualenv --no-site-packages env
source env/bin/activate
pip install bottle gevent
pip freeze > requirements.txt
cat >app.py <<EOF
import bottle
import os
<!DOCTYPE html>
<html>
<head>
<meta charset=utf-8 />
<title>JS Bin</title>
<link href="http://ajax.googleapis.com/ajax/libs/dojo/1.9.1/dijit/themes/claro/claro.css"
rel="stylesheet"
type="text/css"
>
<script src="http://ajax.googleapis.com/ajax/libs/dojo/1.9.1/dojo/dojo.js"
@eduardo-matos
eduardo-matos / dojo.delayedXhr.js
Last active December 25, 2015 14:59
Delayed AJAX requests
define('delayable-xhr', [
'dojo/request/xhr',
'dojo/request/util',
'dojo/Deferred'
], function (
xhr,
util,
Deferred
) {
'use strict';