Skip to content

Instantly share code, notes, and snippets.

@erichurst
erichurst / mod_machine.rb
Last active August 29, 2015 13:56
Simple module for dynamic values
module ModMachine
extend ActiveSupport::Concern
included do
end
module ClassMethods
#
# Builds a module with constants assigned to the index passed in the `options` array. Be sure
# to pass all arguments as you would write them manually. In other words `attribute` and any
@erichurst
erichurst / US Zip Codes from 2013 Government Data
Created December 9, 2013 23:00
All US zip codes with their corresponding latitude and longitude coordinates. Comma delimited for your database goodness. Source: http://www.census.gov/geo/maps-data/data/gazetteer.html
This file has been truncated, but you can view the full file.
ZIP,LAT,LNG
00601,18.180555, -66.749961
00602,18.361945, -67.175597
00603,18.455183, -67.119887
00606,18.158345, -66.932911
00610,18.295366, -67.125135
00612,18.402253, -66.711397
00616,18.420412, -66.671979
00617,18.445147, -66.559696
@erichurst
erichurst / User.rb
Created February 2, 2012 17:40
Custom callback notification with Rails 3
class User < ActiveRecord::Base
...
def self.new_sitter(user, params)
if user.parent?
transaction do
sitter = create! do |u|
u.sub_type = 'sitter'
u.first_name = params[:first_name]
u.last_name = params[:last_name]
u.email = params[:email]
@erichurst
erichurst / .irbrc
Created July 1, 2011 03:27
Pimp Your IRB
# Make gems available
require 'rubygems'
begin
require "ap"
alias pp ap
rescue LoadError
puts "Please install the 'awesome_print' gem."
end
gideon:beyond_the_shock eh$ cap staging deploy
triggering start callbacks for `staging'
* executing `moonshine:configure'
* executing `staging'
triggering start callbacks for `deploy'
* executing `moonshine:configure'
* executing `multistage:ensure'
triggering after callbacks for `multistage:ensure'
* executing `moonshine:configure_stage'
* executing `deploy'
@erichurst
erichurst / database.yml.example mysql2
Created May 9, 2011 02:58
Rails 3 database.yml examples
# MySQL. Versions 4.1 and 5.0 are recommended.
#
# Install the MySQL driver:
# gem install mysql2
#
# And be sure to use new-style password hashing:
# http://dev.mysql.com/doc/refman/5.0/en/old-client.html
development:
adapter: mysql2
encoding: utf8
# Bash snippet to open new shells in most recently visited dir.
# Useful if you want to open a new terminal tab at the present
# tab's location.
#
# Put this in your .bashrc or whatever.
pathed_cd () {
if [ "$1" == "" ]; then
cd
else
module ActionView::Helpers::AssetTagHelper
self.register_javascript_expansion :jquery => ["http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js", "http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.1/jquery-ui.min.js", "rails.js", "application.js"]
end
module ActionView::Helpers::AssetTagHelper
remove_const :JAVASCRIPT_DEFAULT_SOURCES
JAVASCRIPT_DEFAULT_SOURCES = %w(http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.1/jquery-ui.min.js rails.js)
reset_javascript_include_default
end
table {
border-spacing: 0;
width: 100%; }
table th {
color: #555555;
padding: 1em 0.5em;
text-align: left;
background-color: #a7d3ff; }
table td {
padding: 7px 3em 7px 0.5em; }