Skip to content

Instantly share code, notes, and snippets.

View iamnader's full-sized avatar

Nader Akhnoukh iamnader

View GitHub Profile
@iamnader
iamnader / sprite_helper.rb
Created June 26, 2012 16:43
sprite helper
def link_type_sprite(image, options = {})
sprites = {
ReferrerClassifier::FACEBOOK => {:w => 20, :h => 20, :x => 5, :y => 0},
ReferrerClassifier::TWITTER => {:w => 20, :h => 20, :x => 30, :y => 0},
ReferrerClassifier::SEARCH => {:w => 20, :h => 20, :x => 55, :y => 0},
ReferrerClassifier::BASIC => {:w => 20, :h => 20, :x => 80, :y => 0}
}
%(<div class="#{options[:class]}" style="background: url(#{path_to_image('/images/sn_icons/link-type-icon-sprite.png')}) no-repeat -#{sprites[image][:x]}px -#{sprites[image][:y]}px; width: #{sprites[image][:w]}px; height: #{sprites[image][:w]}px; #{options[:style]}" title="#{options[:title]}">#{options[:title]}</div>).html_safe
end
# in /config/devise.rb
...
# Configure the class responsible to send e-mails.
#config.mailer = "Devise::Mailer"
config.mailer = "MailerWithInfo"
...
# in /lib
class MailerInfo
def self.attributes=(attributes={})
@iamnader
iamnader / devise_mailer_with_attributes.rb
Created December 9, 2010 18:49
Extending Devise::Mailer to accept attributes available to the view
module DeviseMailerWithAttributes
class Devise::Mailer < ::ActionMailer::Base
alias_method :old_confirmation_instructions, :confirmation_instructions
alias_method :old_reset_password_instructions, :reset_password_instructions
alias_method :old_unlock_instructions, :unlock_instructions
alias_method :old_invitation_instructions, :invitation_instructions
def confirmation_instructions(record, attributes={})
set_attributes(attributes)
@iamnader
iamnader / gist:641569
Created October 22, 2010 23:58
Mongoid Set Defaults Rake Task
require 'config/environment'
require 'mongo'
namespace :mongoid do
desc 'Update defaults'
task :defaults do
db = Mongoid.config.master
models.each do |m|
m = eval m
### subdomain_test.rb
require 'integration_test_helper'
class SubdomainTest < ActionController::IntegrationTest
test "simple subdomain test" do
sub1 = "sub1"
sub2 = "sub2"
# this test passes using selenium
#Capybara.current_driver = :selenium
# /test/integration/subdomain_test.rb
require 'integration_test_helper'
class SubdomainTest < ActionController::IntegrationTest
test "simple subdomain test" do
subdomain = "something"
# this test passes using selenium, fails using the default envjs
#Capybara.current_driver = :selenium
Capybara.app_host = "http://#{subdomain}.lvh.me:9887"
### Models ###
class Post
include Mongoid::Document
references_many :properties, :stored_as => :array, :inverse_of => :posts, :index => true
end
class Property
include Mongoid::Document
field :name
references_many :posts, :stored_as => :array, :inverse_of => :properties