This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
require 'ya2yaml' # Better than to_yaml, because it saves as UTF-8 and sorts hash by keys | |
namespace :locales do | |
desc "Parses ActiveRecord models and updates locale files" | |
task :update => :environment do | |
Dir.glob(File.join(RAILS_ROOT, 'config', 'locales', '*.yml') ).each do |locale_file| | |
# Read single locale file | |
locale_hash = YAML.load(File.read(locale_file)) | |
language = locale_hash.keys.first | |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Rails-FormBuilder for creating forms with <label>-Tags | |
class LabeledFormBuilder < ActionView::Helpers::FormBuilder | |
helpers = field_helpers + | |
%w{date_select datetime_select time_select} + | |
%w{collection_select select country_select time_zone_select} - | |
%w{radio_button hidden_field label fields_for} # Don't decorate these | |
helpers.each do |name| | |
define_method(name) do |field, *args| |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Building authenticated and expiring URL for S3 | |
# Based on | |
# http://github.com/logandk/paperclip_hacks/blob/master/lib/paperclip.rb | |
# and | |
# http://thewebfellas.com/blog/2009/8/29/protecting-your-paperclip-downloads | |
module Paperclip | |
class Attachment | |
def authenticated_url(style = nil, expires_in = 5.minutes) | |
if @storage.to_s == 's3' && file? | |
AWS::S3::S3Object.url_for(path(style || default_style), bucket_name, :expires_in => expires_in, :use_ssl => s3_protocol == 'https') |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Liquid methods reflection for ActiveRecord | |
# Wanna know the defined liquid_methods for a given model? | |
# | |
# Example usage: | |
# | |
# class Person < ActiveRecord::Base | |
# liquid_methods :first_name, :last_name | |
# end | |
# | |
# Person.find(123).reflect_on_liquid_methods |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Import a posterous.com Blog into nanoc (http://nanoc.stoneship.org) | |
# Uses Nokogiri to parse the XML data from the posterous API | |
require 'rubygems' | |
require 'nanoc3' | |
require 'nokogiri' | |
require 'open-uri' | |
module Nanoc3::Extra | |
module Importers |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Monkey patch for the Rails plugin "acts_as_taggable_on" to handle dirty tracking | |
# http://github.com/mbleigh/acts-as-taggable-on/issues#issue/1 | |
module ActsAsTaggableOn::Taggable | |
module Core | |
module InstanceMethods | |
def set_tag_list_on_with_dirty_tracking(context,new_list) | |
value = new_list.to_s | |
attr = "#{context.to_s.singularize}_list" | |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
source :gemcutter | |
gem 'rails', '~> 2.3.11' | |
gem 'i18n' | |
gem 'mysql' | |
gem 'authlogic' | |
gem 'declarative_authorization' | |
gem 'configatron' | |
gem 'mime-types', :require => 'mime/types' | |
gem 'ya2yaml' |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Add this | |
public/javascripts/all.js |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Patch for ransack (https://github.com/ernie/ransack) to use scopes | |
# Helps migrating from Searchlogic or MetaSearch | |
# Place this file into config/initializer/ransack.rb of your Rails 3.2 project | |
# | |
# Usage: | |
# class Debt < ActiveRecord::Base | |
# scope :overdue, lambda { where(["status = 'open' AND due_date < ?", Date.today]) } | |
# end | |
# | |
# Ransack out of the box ignores scopes. Example: |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Using Ruby 1.9.3 on OS X, installed via rbenv | |
~ $ irb | |
irb(main):001:0> require "bigdecimal" | |
true | |
irb(main):002:0> BigDecimal("0.2") / BigDecimal("0.5") | |
0.4 |
OlderNewer