Skip to content

Instantly share code, notes, and snippets.

@erzr
erzr / gist:4021764
Created November 6, 2012 01:08
Stripe.Js: Display Image of Entered Credit Card
(function($) {
var defaultCardMapping = 'generic.png';
var cardMappings = [
{name: 'Visa', image:'visa.png'},
{name: 'MasterCard', image:'mastercard.png'},
{name: 'American Express', image:'amex.png'},
{name: 'Discover', image:defaultCardMapping},
{name: 'Diners Club', image:defaultCardMapping},
{name: 'JCB', image:defaultCardMapping},
@erzr
erzr / gist:4028975
Created November 7, 2012 01:28
Backbone.js and Django-Tastypie Autocomplete
var app = app || {};
app.models = app.models || {};
app.collections = app.collections || {};
app.views = app.views || {};
(function($, window) {
(function(models) {
models.Tag = Backbone.Tastypie.Model.extend({
urlRoot: '/api/v1/tag/'
@erzr
erzr / gist:4115787
Created November 20, 2012 03:35
Yahoo GeoPlanet (WOEID) Lookup In Python
import requests
from django.conf import settings
def get_woeid(text):
if not text:
return
app_id = settings.WOEID_APP_ID
if not app_id:
@erzr
erzr / gist:4254777
Created December 11, 2012 00:53
Javascript Prototype Pattern with Default Options
var Slideshow = (function($) {
function Slideshow(options) {
var defaults = {
timeout: 0.5,
selector: '.content'
};
this.options = $.extend(defaults, options);
};
@erzr
erzr / gist:4480660
Created January 8, 2013 02:51
Backbone Collection for YQL
var YqlCollection = Backbone.Collection.extend({
query: '',
url: 'http://query.yahooapis.com/v1/public/yql',
format: 'json',
timeout: 10000,
dataType: 'jsonp',
fetch: function (options) {
options = options ? _.clone(options) : {};
options.data = options.data ? _.clone(options.data) : {};
if (!options.data.q) {
@erzr
erzr / MonoTouch.Dialog Currency Element
Last active December 21, 2015 15:59
Really rough, but works well enough. Almost of an exact port of https://github.com/rodchile/UITextCurrencyField.
// Currency element, port of: https://github.com/rodchile/UITextCurrencyField
public class CurrencyElement : EntryElement
{
public CurrencyElement (string caption, string placeholder, string value)
: base(caption, placeholder, value)
{
}
private static string CleanString(string target)
@erzr
erzr / gist:8390990
Created January 12, 2014 21:46
jQuery Event Logging - Added some logging to jQuery 1.8.2 so it was easier to trace event propagation.
/*!
* jQuery JavaScript Library v1.8.2
* http://jquery.com/
*
* Includes Sizzle.js
* http://sizzlejs.com/
*
* Copyright 2012 jQuery Foundation and other contributors
* Released under the MIT license
* http://jquery.org/license
@erzr
erzr / ClientSidePlaceholder.js
Last active December 1, 2019 01:54
ClientSidePlaceholder for Sitecore JSS
import React from 'react';
import { withSitecoreContext, dataApi, Placeholder } from '@sitecore-jss/sitecore-jss-react';
import { dataFetcher } from './dataFetcher';
import config from './temp/config';
class ClientSidePlaceholder extends React.Component {
constructor(props) {
super(props);
this.state = {
@erzr
erzr / disconnected-mode-proxy.js
Created February 16, 2020 14:47
Injecting nonRoute data into Sitecore JSS context using customizeContext
/*
When the app runs in disconnected mode, and Sitecore is not present, we need to give
the app copies of the Sitecore APIs it depends on (layout service, dictionary service, content service)
to talk to so that the app can run using the locally defined disconnected data.
This is accomplished by spinning up a small Express server that mocks the APIs, and then
telling the dev server to proxy requests to the API paths to this express instance.
*/
/* eslint-disable no-console */
@erzr
erzr / create-default-disconnected-server.js
Created February 23, 2020 22:59
Disconnected Mode GraphQL for Sitecore JSS Disconnected Server
const Express = require('express');
const { join } = require('path');
const { ManifestManager } = require('../node_modules/@sitecore-jss/sitecore-jss-dev-tools/dist/manifest-manager');
const { createDisconnectedDictionaryService } = require('../node_modules/@sitecore-jss/sitecore-jss-dev-tools/dist/disconnected-server/dictionary-service');
const { createDisconnectedLayoutService } = require('../node_modules/@sitecore-jss/sitecore-jss-dev-tools/dist/disconnected-server/layout-service');
const {createGraphQLService} = require('jss-disconnected-graphql');
function createDefaultDisconnectedServer(options) {
let app = options.server;